using System; using System.Collections.Generic; using System.Data; using SuperMap.RealEstate.ServiceModel; using Business = SuperMap.RealEstate.Seller.Storage.Business; using HCC = HZQR.Common.Common; using HZQR.Common; namespace EShang.Common.GeneralMethod { /// /// 供货商相关方法 /// 2023/10/9 10:50:18自动生成 /// public class SUPPLIERHelper { #region 获取供货商列表 /// /// 获取供货商列表 /// /// 事务管理器 /// 查询结果总数 /// 查询条件对象 public static List GetSUPPLIERList(Transaction transaction, ref int TotalCount, Model.SearchModel searchModel) { List SUPPLIERList = new List(); string WhereSQL = "", RowFilterSQL = ""; if (searchModel.SearchParameter != null) { WhereSQL = OperationDataHelper.GetWhereSQL(searchModel.SearchParameter, searchModel.QueryType); if (WhereSQL != "") { WhereSQL = " WHERE " + WhereSQL; } } DataTable dtSUPPLIER = new Business.SELLERPROINST(transaction).ExecuteDataTable( "SELECT * FROM SELLER_STORAGE.T_SUPPLIER" + WhereSQL); //增加组合查询条件 if (searchModel.keyWord != null && !string.IsNullOrWhiteSpace(searchModel.keyWord.Key)) { foreach (string KeyName in searchModel.keyWord.Key.Split(',')) { RowFilterSQL += (RowFilterSQL == "" ? "" : " or ") + KeyName + " like '%" + searchModel.keyWord.Value + "%'"; } } if (RowFilterSQL != "") { dtSUPPLIER.DefaultView.RowFilter = RowFilterSQL; } //排序: dtSUPPLIER.DefaultView.Sort = searchModel.SortStr; dtSUPPLIER = dtSUPPLIER.DefaultView.ToTable(); //获取查询结果总记录条数 TotalCount = dtSUPPLIER.Rows.Count; //根据传入的页码和每页显示条数返回结果 dtSUPPLIER = CommonHelper.GetDataTableWithPageSize(dtSUPPLIER, searchModel.PageSize, searchModel.PageIndex); foreach (DataRow drSUPPLIER in dtSUPPLIER.Rows) { Model.SUPPLIERModel supplierModel = new Model.SUPPLIERModel(); //绑定供货商数据对象 BindDataRowToModel(drSUPPLIER, supplierModel); SUPPLIERList.Add(supplierModel); } return SUPPLIERList; } #region 绑定model /// /// 绑定model /// /// datarow数据源 /// model对象 public static void BindDataRowToModel(DataRow drSUPPLIER, Model.SUPPLIERModel supplierModel) { if (drSUPPLIER["SUPPLIER_ID"].ToString() != "") { supplierModel.SUPPLIER_ID = drSUPPLIER["SUPPLIER_ID"].TryParseToInt(); //内码 } if (drSUPPLIER["SUPPLIER_NATURE"].ToString() != "") { supplierModel.SUPPLIER_NATURE = drSUPPLIER["SUPPLIER_NATURE"].TryParseToInt(); //供货商性质 } supplierModel.SUPPLIER_NAME = drSUPPLIER["SUPPLIER_NAME"].ToString(); //供货商名称 supplierModel.SUPPLIER_EN = drSUPPLIER["SUPPLIER_EN"].ToString(); //供货商简称 supplierModel.TAXPAYER_IDENTIFYCODE = drSUPPLIER["TAXPAYER_IDENTIFYCODE"].ToString(); //统一信用代码 supplierModel.SUPPLIER_DRAWER = drSUPPLIER["SUPPLIER_DRAWER"].ToString(); //开票人 supplierModel.BANK_NAME = drSUPPLIER["BANK_NAME"].ToString(); //开户银行 supplierModel.BANK_ACCOUNT = drSUPPLIER["BANK_ACCOUNT"].ToString(); //银行账号 supplierModel.SUPPLIER_TEL = drSUPPLIER["SUPPLIER_TEL"].ToString(); //供货商电话 supplierModel.SUPPLIER_MOBILE = drSUPPLIER["SUPPLIER_MOBILE"].ToString(); //供货商手机 supplierModel.SUPPLIER_PERSON = drSUPPLIER["SUPPLIER_PERSON"].ToString(); //供货商 supplierModel.SUPPLIER_MAIL = drSUPPLIER["SUPPLIER_MAIL"].ToString(); //供货商邮件 supplierModel.SUPPLIER_TOPPERSON = drSUPPLIER["SUPPLIER_TOPPERSON"].ToString(); //供货商最高领导人 supplierModel.SUPPLIER_TOPMOBILE = drSUPPLIER["SUPPLIER_TOPMOBILE"].ToString(); //供货商最高手机 supplierModel.SUPPLIER_ADDRESS = drSUPPLIER["SUPPLIER_ADDRESS"].ToString(); //供货商地址 if (drSUPPLIER["SUPPLIER_TYPE"].ToString() != "") { supplierModel.SUPPLIER_TYPE = drSUPPLIER["SUPPLIER_TYPE"].TryParseToInt(); //供应商类别 } if (drSUPPLIER["DELIVER_TYPE"].ToString() != "") { supplierModel.DELIVER_TYPE = drSUPPLIER["DELIVER_TYPE"].TryParseToInt(); //配送类型 } if (drSUPPLIER["SUPPLIER_DAY"].ToString() != "") { supplierModel.SUPPLIER_DAY = drSUPPLIER["SUPPLIER_DAY"].TryParseToInt(); //到货时间 } if (drSUPPLIER["SELLER_ID"].ToString() != "") { supplierModel.SELLER_ID = drSUPPLIER["SELLER_ID"].TryParseToInt(); //商户内码 } supplierModel.SUPPLIER_CODE = drSUPPLIER["SUPPLIER_CODE"].ToString(); //供应商编码 if (drSUPPLIER["SUPPLIER_VALID"].ToString() != "") { supplierModel.SUPPLIER_VALID = drSUPPLIER["SUPPLIER_VALID"].TryParseToShort(); //有效状态 } if (drSUPPLIER["STAFF_ID"].ToString() != "") { supplierModel.STAFF_ID = drSUPPLIER["STAFF_ID"].TryParseToInt(); //操作员内码 } supplierModel.STAFF_NAME = drSUPPLIER["STAFF_NAME"].ToString(); //操作人员 if (drSUPPLIER["OPERATE_DATE"].ToString() != "") { supplierModel.OPERATE_DATE = drSUPPLIER["OPERATE_DATE"].TryParseToDateTime(); //操作时间 } supplierModel.SUPPLIER_DESC = drSUPPLIER["SUPPLIER_DESC"].ToString(); //备注 } #endregion #endregion #region 获取供货商明细 /// /// 获取供货商明细 /// /// 事务管理器 /// 供货商内码 public static Model.SUPPLIERModel GetSUPPLIERDetail(Transaction transaction, int SUPPLIERId) { Model.SUPPLIERModel supplierModel = new Model.SUPPLIERModel(); string WhereSQL = "WHERE SUPPLIER_ID = " + SUPPLIERId; //查询明细数据 DataTable dtSUPPLIER = new Business.SELLERPROINST(transaction).ExecuteDataTable( "SELECT * FROM SELLER_STORAGE.T_SUPPLIER " + WhereSQL); if (dtSUPPLIER.Rows.Count > 0) { //绑定供货商数据对象 BindDataRowToModel(dtSUPPLIER.Rows[0], supplierModel); } return supplierModel; } #endregion #region 同步供货商 /// /// 赋值供货商数据对象 /// /// 事务管理器 /// 供货商数据对象 public static bool SynchroSUPPLIER(Transaction transaction, Model.SUPPLIERModel supplierModel) { bool SynchroFlag = true; string SQLString; List excludeField = new List(); Dictionary dateFieldList = new Dictionary(); string tableName = "SELLER_STORAGE.T_SUPPLIER", keyField = "SUPPLIER_ID", seqName = "SEQ_SUPPLIER"; Business.SELLERPROINST _SELLERPROINST = new Business.SELLERPROINST(transaction); #region 添加SQL语句中需要排除在外的字段 #endregion #region 添加SQL语句中日期相关字段的执行语句 #endregion if (supplierModel.SUPPLIER_ID != null) { string WhereSQL = " WHERE SUPPLIER_ID = " + supplierModel.SUPPLIER_ID; DataTable dtSUPPLIER = _SELLERPROINST.ExecuteDataTable( "SELECT * FROM SELLER_STORAGE.T_SUPPLIER" + WhereSQL); if (dtSUPPLIER.Rows.Count > 0) { SQLString = OperationDataHelper.GetTableExcuteSQL( supplierModel, 1, tableName, keyField, seqName, dateFieldList, excludeField, WhereSQL); } else { return false; } } else { DataTable dtSUPPLIER = _SELLERPROINST.ExecuteDataTable( "SELECT " + seqName + ".NEXTVAL FROM DUAL"); supplierModel.SUPPLIER_ID = dtSUPPLIER.Rows[0][0].TryParseToInt(); SQLString = OperationDataHelper.GetTableExcuteSQL( supplierModel, 0, tableName, keyField, seqName, dateFieldList, excludeField); } _SELLERPROINST.ExecuteNonQuery(SQLString, null); return SynchroFlag; } #endregion #region 删除供货商 /// /// 删除供货商 /// /// 事务管理器 /// 供货商内码 public static bool DeleteSUPPLIER(Transaction transaction, int? SUPPLIERId) { bool DeleteFlag = false; if (SUPPLIERId != null) { string SQLString = "UPDATE SELLER_STORAGE.T_SUPPLIER SET SUPPLIER_VALID = 0 WHERE SUPPLIER_ID = " + SUPPLIERId; int ExcuteCount = new Business.SELLERPROINST(transaction).ExecuteNonQuery(SQLString, null); if (ExcuteCount > 0) { DeleteFlag = true; } } return DeleteFlag; } #endregion } }