using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data; using WMS.DBUtility; using WMS.IData.IBase; using WMS.IData; using Oracle.ManagedDataAccess.Client; using WMS.Model.Base; namespace WMS.SqlServerData.BaseData { public class ProviderData : IProvider { /// /// 查询供应商的交互时间 /// /// public DataTable GetProividerGoodsData(string goodsId) { string sqlStr =@"select g.PROVIDER_ID,g.PROVIDER_NAME,min(t.GOODS_PRICE)GOODS_PRICE from T_BASE_GOODS_PROVIDER t,T_BASE_PROVIDER_DICTIONARY g where t.GOODS_ID ='" + goodsId+ "' and g.PROVIDER_ID=t.PROVIDER_ID group by g.PROVIDER_ID,g.PROVIDER_NAME "; return SystemDataObject.Instance.GetDataTable(sqlStr); } #region 查询供应商结果集 /// /// 查询供应商结果集 /// /// /// public DataSet getProviderDS(ProviderModel providerModel) { string sql =@" select t1.PROVIDER_ID , -- 供应商编号 t1.PROVIDER_NAME , -- 供应商编号 t1.PRO_TYPE_ID , -- 供应商类别编号 t1.ADDRESS , -- 详细地址 t1.LINKMAN , -- 联系人 t1.PHONE , -- 联系人手机 t1.MOBILE , -- 联系电话 t1.FAX , -- 联系传真 t1.EMAIL , -- 邮箱 t1.POSTCODE , -- 邮编编码 t1.BANK , -- 开户银行 t1.ACCOUNT_NAME , -- 账号名称 t1.ACCOUNT , -- 账号 t1.PY_NAME , -- 拼音简称 t1.ARR_DAYS, -- 到货天数 t1.PROVIDER_LEVEL, --供应商等级 t1.REMARK, --备注 t1.NATURE,--性质 t1.WEBSITE,--网站 t1.LEGALMAN,--法人代表 t1.AREA_ID,--所属地址 t1.REGADDRESS,--注册地址 t1.INVOICETITLE,--发票抬头 t1.TAXNUMBER,--税号 t1.PAY_TYPE_ID,--付款方式 t1.INVOICEADDRESS,--发票邮寄地址 t1.RECIPIENT,--收件人 t1.RECPHONE,--收件人电话 t1.RECFAX,--收件人传真 t1.RECEMAIL,--收件人邮箱 t1.VERSION --版本号 from T_BASE_PROVIDER_DICTIONARY t1 where 1 = 1 "; #region 查询条件 if (providerModel != null) { //供应商名称 if ((providerModel.PROVIDER_NAME != "") && (providerModel.PROVIDER_NAME != null)) { sql += " and t1.PROVIDER_NAME LIKE '%" + providerModel.PROVIDER_NAME + "%' "; } //联系人 if ((providerModel.LINKMAN != "") && (providerModel.LINKMAN != null)) { sql += " and t1.LINKMAN LIKE '%" + providerModel.LINKMAN + "%' "; } ////供应商类别编号 //if ((providerModel.PRO_TYPE_ID != "") && (providerModel.PRO_TYPE_ID != null) && (!"请选择".Equals(providerModel.PRO_TYPE_ID))) //{ // sql += " and t1.PRO_TYPE_ID = '" + providerModel.PRO_TYPE_ID + "' "; //} //供应商编号 if ((providerModel.PROVIDER_ID != "") && (providerModel.PROVIDER_ID != null)) { sql += " and t1.PROVIDER_ID like '%" + providerModel.PROVIDER_ID + "%' "; } } sql = sql + " order by t1.PROVIDER_ID "; #endregion return SystemDataObject.Instance.GetDataSet(sql); } #endregion #region 供应商的新增或修改 /// /// 供应商的新增或修改 /// /// 供应商Model /// 0: 新增; 1:修改 public void execProviderAddUpdate(ProviderModel providerModel, int flag) { //新增 if (0 == flag) { string strAddSql = string.Format(@"insert into T_BASE_PROVIDER_DICTIONARY ( PROVIDER_ID,--供应商编号 1 PRO_TYPE_ID,--供应商类别编号 2 PROVIDER_NAME,--供应商名称 3 ADDRESS,--详细地址 4 LINKMAN,--联系人 5 PHONE,--联系电话 6 MOBILE,--联系人手机 7 FAX,--联系传真 8 EMAIL,--邮箱 9 POSTCODE,--邮编编码 10 BANK,--开户银行 11 ACCOUNT_NAME,--账号名称 12 ACCOUNT,--账号 13 PY_NAME,--拼音简称 14 ARR_DAYS,--预计到货天数 15 PROVIDER_LEVEL,--供应商等级 16 PERCENTAGE,--合格率 17 REMARK,--备注 18 NATURE,--性质 19 WEBSITE,--网站 20 LEGALMAN,--法人代表 21 AREA_ID,--所属地址 22 REGADDRESS,--注册地址 23 INVOICETITLE,--发票抬头 24 TAXNUMBER,--税号 25 PAY_TYPE_ID,--付款方式 26 INVOICEADDRESS,--发票邮寄地址 27 RECIPIENT,--收件人 28 RECPHONE,--收件人电话 29 RECFAX,--收件人传真 30 RECEMAIL,--收件人邮箱 31 VERSION --版本号 32 ) values('{0}','{1}','{2}','{3}','{4}','{5}','{6}', '{7}','{8}','{9}','{10}','{11}', '{12}','{13}',{14},'{15}','{16}','{17}','{18}','{19}', '{20}','{21}','{22}','{23}','{24}','{25}','{26}', '{27}','{28}','{29}','{30}','31')", providerModel.PROVIDER_ID, "PRO_TYPE_ID", providerModel.PROVIDER_NAME, providerModel.ADDRESS, providerModel.LINKMAN, providerModel.PHONE, providerModel.MOBILE, providerModel.FAX, providerModel.EMAIL, providerModel.POSTCODE, providerModel.BANK, providerModel.ACCOUNT_NAME, providerModel.ACCOUNT, providerModel.PY_NAME, providerModel.ARR_DAYS, "PROVIDER_LEVEL", providerModel.PERCENTAGE, providerModel.REMARK, providerModel.NATURE, providerModel.WEBSITE, providerModel.LEGALMAN, providerModel.AREA_ID, providerModel.REGADDRESS, providerModel.INVOICETITLE, providerModel.TAXNUMBER, providerModel.PAY_TYPE_ID, providerModel.INVOICEADDRESS, providerModel.RECIPIENT, providerModel.RECPHONE, providerModel.RECFAX, providerModel.RECEMAIL, providerModel.VERSION ); SystemDataObject.Instance.ExecuteSql(strAddSql); } //修改 else if (1 == flag) { string strUpdateSql = string.Format(@"update T_BASE_PROVIDER_DICTIONARY set PRO_TYPE_ID ='{1}', PROVIDER_NAME ='{2}', ADDRESS ='{2}', LINKMAN ='{4}', PHONE ='{5}', MOBILE ='{6}', FAX ='{7}', EMAIL ='{8}', POSTCODE ='{9}', BANK ='{10}', ACCOUNT_NAME ='{11}', ACCOUNT ='{12}', PY_NAME ='{13}', ARR_DAYS ='{14}', PROVIDER_LEVEL ='{15}', PERCENTAGE ='{16}', REMARK ='{17}', NATURE ='{18}', WEBSITE ='{19}', LEGALMAN ='{20}', AREA_ID ='{21}', REGADDRESS ='{22}', INVOICETITLE ='{23}', TAXNUMBER ='{24}', PAY_TYPE_ID ='{25}', INVOICEADDRESS ='{26}', RECIPIENT ='{27}', RECPHONE ='{28}', RECFAX ='{29}', RECEMAIL ='{30}', VERSION ='{31}' where PROVIDER_ID ='{0}'" , providerModel.PROVIDER_ID, "PRO_TYPE_ID", providerModel.PROVIDER_NAME, providerModel.ADDRESS, providerModel.LINKMAN, providerModel.PHONE, providerModel.MOBILE, providerModel.FAX, providerModel.EMAIL, providerModel.POSTCODE, providerModel.BANK, providerModel.ACCOUNT_NAME, providerModel.ACCOUNT, providerModel.PY_NAME, providerModel.ARR_DAYS, "PROVIDER_LEVEL", providerModel.PERCENTAGE, providerModel.REMARK, providerModel.NATURE, providerModel.WEBSITE, providerModel.LEGALMAN, providerModel.AREA_ID, providerModel.REGADDRESS, providerModel.INVOICETITLE, providerModel.TAXNUMBER, providerModel.PAY_TYPE_ID, providerModel.INVOICEADDRESS, providerModel.RECIPIENT, providerModel.RECPHONE, providerModel.RECFAX, providerModel.RECEMAIL, providerModel.VERSION ); SystemDataObject.Instance.ExecuteSql(strUpdateSql); } } #endregion #region 删除供应商 /// /// 删除供应商 /// /// public void execProviderDel(ProviderModel providerModel) { string strDel = string.Format(@" delete T_BASE_PROVIDER_DICTIONARY where PROVIDER_ID='{0}'", providerModel.PROVIDER_ID); SystemDataObject.Instance.ExecuteSql(strDel); } #endregion } }