diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsOutsourceDService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsOutsourceDService.cs index cc70b442..d1b511ab 100644 --- a/WarehouseMgr/Tnb.WarehouseMgr/WmsOutsourceDService.cs +++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsOutsourceDService.cs @@ -170,77 +170,158 @@ namespace Tnb.WarehouseMgr string nowStr = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); Dictionary erpRequestData = new Dictionary(); - erpRequestData.Add("approver", erpCreateId); - erpRequestData.Add("billmaker", erpCreateId); - erpRequestData.Add("cbiztype", wmsOutsourceH?.transaction_type ?? null); - erpRequestData.Add("bitinbill", false); - erpRequestData.Add("cgeneralhid", null); - erpRequestData.Add("corpoid", erpOrg?.corpoid ?? null); - erpRequestData.Add("corpvid", erpOrg?.corpvid ?? null); - erpRequestData.Add("creationtime", nowStr); - erpRequestData.Add("creator", erpCreateId); - erpRequestData.Add("ctrantypeid", erpExtendFields.Find(x => x.table_id == tranTypeId)?.transaction_type_id ?? null); - erpRequestData.Add("cvendorid", erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_id ?? null); - erpRequestData.Add("cvendorvid", erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_vid ?? null); - // erpRequestData.Add("cwarehouseid", erpExtendFields.Find(x => x.table_id == instock.warehouse_id)?.cotherwhid ?? "");//类型视图里取 - // erpWarehouserelaHs.Find(x => x.erp_warehousecode == wmsPurchaseD.erp_wh_type)?.erp_warehouseid ?? "" - // erpRequestData.Add("cwarehouseid", "1001A11000000002OOGU"); - erpRequestData.Add("cwarehouseid", wmsOutsourceD?.erp_wh_type ?? "1001A11000000002OOGU"); - erpRequestData.Add("dbilldate", nowStr); - erpRequestData.Add("dmakedate", nowStr); - erpRequestData.Add("fbillflag", 2); - erpRequestData.Add("fbuysellflag", 2); - erpRequestData.Add("ntotalnum", allInstockDetails.Sum(x => x.qty)); - erpRequestData.Add("pk_org", erpOrg?.pk_org ?? null); - erpRequestData.Add("pk_org_v", erpOrg?.pk_org_v ?? null); - erpRequestData.Add("pk_group", erpOrg?.pk_group ?? null); - erpRequestData.Add("vbillcode", wmsOutsourceH?.outsource_order ?? null); - erpRequestData.Add("vtrantypecode", tranType?.EnCode ?? null); - erpRequestData.Add("csourcebillhid", wmsOutsourceH?.erp_arriveorder_pk ?? null); - erpRequestData.Add("vdef3", wmsOutsourceH?.service_num ?? null); + + + #region 老版代码 + //erpRequestData.Add("approver", erpCreateId); + //erpRequestData.Add("billmaker", erpCreateId); + //erpRequestData.Add("cbiztype", wmsOutsourceH?.transaction_type ?? null); + //erpRequestData.Add("bitinbill", false); + //erpRequestData.Add("cgeneralhid", null); + //erpRequestData.Add("corpoid", erpOrg?.corpoid ?? null); + //erpRequestData.Add("corpvid", erpOrg?.corpvid ?? null); + //erpRequestData.Add("creationtime", nowStr); + //erpRequestData.Add("creator", erpCreateId); + //erpRequestData.Add("ctrantypeid", erpExtendFields.Find(x => x.table_id == tranTypeId)?.transaction_type_id ?? null); + //erpRequestData.Add("cvendorid", erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_id ?? null); + //erpRequestData.Add("cvendorvid", erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_vid ?? null); + //// erpRequestData.Add("cwarehouseid", erpExtendFields.Find(x => x.table_id == instock.warehouse_id)?.cotherwhid ?? "");//类型视图里取 + //// erpWarehouserelaHs.Find(x => x.erp_warehousecode == wmsPurchaseD.erp_wh_type)?.erp_warehouseid ?? "" + //// erpRequestData.Add("cwarehouseid", "1001A11000000002OOGU"); + //erpRequestData.Add("cwarehouseid", wmsOutsourceD?.erp_wh_type ?? "1001A11000000002OOGU"); + //erpRequestData.Add("dbilldate", nowStr); + //erpRequestData.Add("dmakedate", nowStr); + //erpRequestData.Add("fbillflag", 2); + //erpRequestData.Add("fbuysellflag", 2); + //erpRequestData.Add("ntotalnum", allInstockDetails.Sum(x => x.qty)); + //erpRequestData.Add("pk_org", erpOrg?.pk_org ?? null); + //erpRequestData.Add("pk_org_v", erpOrg?.pk_org_v ?? null); + //erpRequestData.Add("pk_group", erpOrg?.pk_group ?? null); + //erpRequestData.Add("vbillcode", wmsOutsourceH?.outsource_order ?? null); + //erpRequestData.Add("vtrantypecode", tranType?.EnCode ?? null); + //erpRequestData.Add("csourcebillhid", wmsOutsourceH?.erp_arriveorder_pk ?? null); + //erpRequestData.Add("vdef3", wmsOutsourceH?.service_num ?? null); + + //List> erpRequestDataDetails = new List>(); + //foreach (WmsInstockD item in allInstockDetails) + //{ + // erpRequestDataDetails.Add(new Dictionary() + // { + // ["castunitid"] = erpExtendFields.Find(x => x.table_id == (unitDatas.Find(x => x.EnCode == item.unit_id)?.Id ?? ""))?.cunitid ?? null, + // ["cbodytranstypecode"] = erpExtendFields.Find(x => x.table_id == tranTypeId)?.transaction_type_id ?? null, + // // ["cbodywarehouseid"] = erpExtendFields.Find(x => x.table_id == instock.warehouse_id)?.cotherwhid ?? "", + // //["cbodywarehouseid"] = erpWarehouserelaHs.Find(x => x.erp_warehousecode == basWarehouse.whcode)?.erp_warehouseid ?? "", + // // ["cbodywarehouseid"] = "1001A11000000002OOGU", + // ["cbodywarehouseid"] = wmsOutsourceD?.erp_wh_type ?? "1001A11000000002OOGU", + // ["cgeneralbid"] = null, + // ["cgeneralhid"] = null, + // ["cmaterialoid"] = erpExtendFields.Find(x => x.table_id == item.material_id)?.cmaterialoid ?? null, + // ["cmaterialvid"] = erpExtendFields.Find(x => x.table_id == item.material_id)?.cmaterialvid ?? null, + // ["corpoid"] = erpOrg?.corpoid ?? null, + // ["corpvid"] = erpOrg?.corpvid ?? null, + // ["crowno"] = (allInstockDetails.FindIndex(x => x.id == item.id) + 1) * 10, + // ["cunitid"] = erpExtendFields.Find(x => x.table_id == (unitDatas.Find(x => x.EnCode == item.unit_id)?.Id ?? ""))?.cunitid ?? null, + // ["cvendorid"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_id ?? null, + // ["cvendorvid"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_vid ?? null, + // ["dbizdate"] = wmsOutsourceH.create_time.ToString("yyyy-MM-dd HH:mm:ss"), + // ["nnum"] = item.qty, + // ["nshouldnum"] = item.pr_qty, + // // ["pk_creqwareid"] = erpExtendFields.Find(x => x.table_id == instock.warehouse_id)?.cotherwhid ?? "", + // // ["pk_creqwareid"] = "1001A11000000002OOGU", + // ["pk_creqwareid"] = wmsOutsourceD?.erp_wh_type ?? "1001A11000000002OOGU", + // ["pk_group"] = erpOrg?.pk_group ?? null, + // ["pk_org"] = erpOrg?.pk_org ?? null, + // ["pk_org_v"] = erpOrg?.pk_org_v ?? null, + // ["pseudocolumn"] = (allInstockDetails.FindIndex(x => x.id == item.id) + 1) * 10, + // ["vbatchcode"] = item.code_batch, + // ["csourcebillhid"] = wmsOutsourceH?.erp_arriveorder_pk ?? null, + // ["csourcebillbid"] = wmsOutsourceD?.erp_arriveorder_b_pk ?? null, + // ["vsourcebillcode"] = wmsOutsourceH?.outsource_order ?? null, + // ["lineno"] = wmsPurchaseOrderDs?.lineno ?? null, + // ["vfree1"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_id ?? null, + // //["flargess"] = wmsOutsourceD.gift==1, + // ["ntaxprice"] = wmsOutsourceD.price ?? null, + + // }); + //} + #endregion + + #region 新版代码 + #region + erpRequestData.Add("billmaker", erpCreateId);//制单人 + erpRequestData.Add("cbizid", erpOrg?.person_id ?? null);//业务员 + erpRequestData.Add("cbiztype", wmsOutsourceH?.transaction_type ?? null);//业务流程 + erpRequestData.Add("cdptid", erpOrg?.cdptid ?? null);//部门id + erpRequestData.Add("cdptvid", erpOrg?.cdptvid ?? null);//部门vid + erpRequestData.Add("corpoid", erpOrg?.corpoid ?? null);//公司id + erpRequestData.Add("corpvid", erpOrg?.corpvid ?? null);//公司vid + erpRequestData.Add("creationtime", nowStr);//创建时间 + erpRequestData.Add("creator", erpCreateId);//创建人 + erpRequestData.Add("cscwarehouseid", null);//委外仓 + erpRequestData.Add("ctrantypeid", erpExtendFields.Find(x => x.table_id == tranTypeId)?.transaction_type_id ?? null);//出入库类型 + erpRequestData.Add("cvendorid", erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_id ?? null);//供应商 + erpRequestData.Add("cvendorvid", erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_vid ?? null);//供应商vid + erpRequestData.Add("cwarehouseid", wmsOutsourceD?.erp_wh_type ?? "1001A11000000002OOGU");//仓库id + erpRequestData.Add("dbilldate", nowStr);//单据日期 + erpRequestData.Add("dmakedate", nowStr);//制单日期 + erpRequestData.Add("fbillflag", 2);//单据状态 + erpRequestData.Add("fbuysellflag", 2);//购销类型 + erpRequestData.Add("ntotalnum", allInstockDetails.Sum(x => x.qty));//总数量 + erpRequestData.Add("pk_group", erpOrg?.pk_group ?? null);//集体 + erpRequestData.Add("pk_org", erpOrg?.pk_org ?? null);//组织 + erpRequestData.Add("pk_org_v", erpOrg?.pk_org_v ?? null);//组织vid + erpRequestData.Add("vbillcode", wmsOutsourceH?.outsource_order ?? null);//单据号 + erpRequestData.Add("vtrantypecode", tranType?.EnCode ?? null);//出入库类型编码 + erpRequestData.Add("csourcebillhid", wmsOutsourceH?.erp_arriveorder_pk ?? null);//来源单据主表id + #endregion List> erpRequestDataDetails = new List>(); foreach (WmsInstockD item in allInstockDetails) { erpRequestDataDetails.Add(new Dictionary() { - ["castunitid"] = erpExtendFields.Find(x => x.table_id == (unitDatas.Find(x => x.EnCode == item.unit_id)?.Id ?? ""))?.cunitid ?? null, - ["cbodytranstypecode"] = erpExtendFields.Find(x => x.table_id == tranTypeId)?.transaction_type_id ?? null, - // ["cbodywarehouseid"] = erpExtendFields.Find(x => x.table_id == instock.warehouse_id)?.cotherwhid ?? "", - //["cbodywarehouseid"] = erpWarehouserelaHs.Find(x => x.erp_warehousecode == basWarehouse.whcode)?.erp_warehouseid ?? "", - // ["cbodywarehouseid"] = "1001A11000000002OOGU", - ["cbodywarehouseid"] = wmsOutsourceD?.erp_wh_type ?? "1001A11000000002OOGU", - ["cgeneralbid"] = null, - ["cgeneralhid"] = null, - ["cmaterialoid"] = erpExtendFields.Find(x => x.table_id == item.material_id)?.cmaterialoid ?? null, - ["cmaterialvid"] = erpExtendFields.Find(x => x.table_id == item.material_id)?.cmaterialvid ?? null, - ["corpoid"] = erpOrg?.corpoid ?? null, - ["corpvid"] = erpOrg?.corpvid ?? null, - ["crowno"] = (allInstockDetails.FindIndex(x => x.id == item.id) + 1) * 10, - ["cunitid"] = erpExtendFields.Find(x => x.table_id == (unitDatas.Find(x => x.EnCode == item.unit_id)?.Id ?? ""))?.cunitid ?? null, - ["cvendorid"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_id ?? null, - ["cvendorvid"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_vid ?? null, - ["dbizdate"] = wmsOutsourceH.create_time.ToString("yyyy-MM-dd HH:mm:ss"), - ["nnum"] = item.qty, - ["nshouldnum"] = item.pr_qty, - // ["pk_creqwareid"] = erpExtendFields.Find(x => x.table_id == instock.warehouse_id)?.cotherwhid ?? "", - // ["pk_creqwareid"] = "1001A11000000002OOGU", - ["pk_creqwareid"] = wmsOutsourceD?.erp_wh_type ?? "1001A11000000002OOGU", - ["pk_group"] = erpOrg?.pk_group ?? null, - ["pk_org"] = erpOrg?.pk_org ?? null, - ["pk_org_v"] = erpOrg?.pk_org_v ?? null, - ["pseudocolumn"] = (allInstockDetails.FindIndex(x => x.id == item.id) + 1) * 10, - ["vbatchcode"] = item.code_batch, - ["csourcebillhid"] = wmsOutsourceH?.erp_arriveorder_pk ?? null, - ["csourcebillbid"] = wmsOutsourceD?.erp_arriveorder_b_pk ?? null, - ["vsourcebillcode"] = wmsOutsourceH?.outsource_order ?? null, - ["lineno"] = wmsPurchaseOrderDs?.lineno ?? null, - ["vfree1"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_id ?? null, - //["flargess"] = wmsOutsourceD.gift==1, - ["ntaxprice"] = wmsOutsourceD.price ?? null, + ["cbodytranstypecode"] = erpExtendFields.Find(x => x.table_id == tranTypeId)?.transaction_type_id ?? null, //出入库类型 + ["cbodywarehouseid"] = wmsOutsourceD?.erp_wh_type ?? "1001A11000000002OOGU", //库存仓库 + ["ccurrencyid"] = null, //本位币 + ["cmainmaterialoid"] = null, //主产品id + ["cmainvendorid"] = null, //主产品供应商id + ["cmainvendorvid"] = null, //主产品供应商vid - }); + ["cmaterialoid"] = erpExtendFields.Find(x => x.table_id == item.material_id)?.cmaterialoid ?? null, //物料 + ["cmaterialvid"] = erpExtendFields.Find(x => x.table_id == item.material_id)?.cmaterialvid ?? null, //物料vid + ["corigcurrencyid"] = null, //币种 + ["corpoid"] = erpOrg?.corpoid ?? null, //公司 + ["corpvid"] = erpOrg?.corpvid ?? null, //公司vid + ["cqtunitid"] = null, //报价单位 + + ["crowno"] = (allInstockDetails.FindIndex(x => x.id == item.id) + 1) * 10, //行号 + ["cunitid"] = erpExtendFields.Find(x => x.table_id == (unitDatas.Find(x => x.EnCode == item.unit_id)?.Id ?? ""))?.cunitid ?? null, //主单位 + ["cvendorid"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_id ?? null, //供应商 + ["cvendorvid"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_vid ?? null, //供应商vid + ["dbizdate"] = wmsOutsourceH.create_time.ToString("yyyy-MM-dd HH:mm:ss"), //入库日期 + ["csourcebillhid"] = wmsOutsourceH?.erp_arriveorder_pk ?? null, //来源单主表id + + ["csourcebillbid"] = wmsOutsourceD?.erp_arriveorder_b_pk ?? null, //来源单子表id + ["csourcetype"] = item.source_type ?? null, //来源单据类型 + ["csourcetranstype"] = erpExtendFields.Find(x => x.table_id == tranTypeId)?.transaction_type_id ?? null, //来源单据交易类型 + ["vsourcebillcode"] = wmsOutsourceH?.outsource_order ?? null, //来源单据号 + ["vsourcerowno"] = null, //来源单据行号 + ["nnum"] = item.qty, //实收主数量 + + ["nshouldnum"] = item.pr_qty, //应收主数量 + ["pk_batchcode"] = null, //批次主键 + ["pk_group"] = erpOrg?.pk_group ?? null, //集团 + ["pk_org"] = erpOrg?.pk_org ?? null, //组织 + ["pk_org_v"] = erpOrg?.pk_org_v ?? null, //组织vid + ["vbatchcode"] = item.code_batch, //批次号 + ["vfree1"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_id ?? null, //自由辅助属性1 + + }); } + + + #endregion + erpRequestData.Add("dtls", erpRequestDataDetails); requestData.Add(erpRequestData); } @@ -276,10 +357,10 @@ namespace Tnb.WarehouseMgr ThirdWebapiRecord thirdWebapiRecord = new ThirdWebapiRecord(); thirdWebapiRecord.id = SnowflakeIdHelper.NextId(); thirdWebapiRecord.third_name = WmsWareHouseConst.BIP; - thirdWebapiRecord.name = "委外入库"; + thirdWebapiRecord.name = "委外加工入库"; thirdWebapiRecord.method = "POST"; - thirdWebapiRecord.url = config.value + "uapws/rest/purchaseIn/save"; - //thirdWebapiRecord.url = WmsWareHouseConst.BIP_DOMAIN + "uapws/rest/purchaseIn/save"; + //thirdWebapiRecord.url = config.value + "uapws/rest/subcontIn/save"; + thirdWebapiRecord.url = WmsWareHouseConst.BIP_DOMAIN + "uapws/rest/subcontIn/save"; thirdWebapiRecord.request_data = JsonConvert.SerializeObject(requestData); thirdWebapiRecord.create_time = DateTime.Now; thirdWebapiRecord.remark = "【WmsOutsourceDService SaveCheckResult】委外收货单号:" + (wmsOutsourceH?.outsource_order ?? "")+ ",erp委外订单号:" + (wmsPurchaseOrderH?.erp_bill_code ?? ""); diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsPurchaseService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsPurchaseService.cs index 5f2c1be3..28148572 100644 --- a/WarehouseMgr/Tnb.WarehouseMgr/WmsPurchaseService.cs +++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsPurchaseService.cs @@ -298,7 +298,7 @@ namespace Tnb.WarehouseMgr erpRequestData.Add("pk_org",erpOrg.pk_org); erpRequestData.Add("pk_org_v",erpOrg.pk_org_v); erpRequestData.Add("pk_group",erpOrg.pk_group); - erpRequestData.Add("pk_pupsndoc",""); + erpRequestData.Add("pk_pupsndoc",null); erpRequestData.Add("csourceid", wmsPurchaseOrderH?.erp_pk ?? ""); erpRequestData.Add("pk_purchaseorg",erpOrg.pk_org); erpRequestData.Add("pk_purchaseorg_v",erpOrg.pk_org_v); @@ -306,23 +306,23 @@ namespace Tnb.WarehouseMgr erpRequestData.Add("pk_supplier_v",erpExtendFields.Find(x=>x.table_id==purchase.supplier_id)?.supplier_vid ?? "");//先写死 erpRequestData.Add("vbillcode",purchase.bill_code); erpRequestData.Add("vmemo",purchase.remark); - erpRequestData.Add("vtrantypecode",""); + erpRequestData.Add("vtrantypecode","23-01"); List> erpRequestDataDetails = new List>(); foreach(WmsPurchaseD item in dList) { erpRequestDataDetails.Add(new Dictionary() { - ["castunitid"] = erpExtendFields.Find(x=>x.table_id==(unitDatas.Find(x=>x.EnCode==item.unit_id || x.Id==item.unit_id)?.Id ?? ""))?.cunitid ?? "", - ["cfirstbid"] = wmsPurchaseOrderH?.erp_pk ?? "", + ["castunitid"] = erpExtendFields.Find(x=>x.table_id==(unitDatas.Find(x=>x.EnCode==item.unit_id || x.Id==item.unit_id)?.Id ?? ""))?.cunitid ?? null, + ["cfirstbid"] = wmsPurchaseOrderH?.erp_pk ?? null, ["cfirstid"] = item.erp_purchase_order_d_pk, - ["cfirsttypecode"] = "", + ["cfirsttypecode"] = null, ["crececountryid"] = "0001Z010000000079UJJ", ["crowno"] = item.erp_purchase_order_d_lineno, ["csendcountryid"] = "0001Z010000000079UJJ", - ["csourcetypecode"] = "", + ["csourcetypecode"] = null, ["ctaxcountryid"] = "0001Z010000000079UJJ", - ["cunitid"] = erpExtendFields.Find(x=>x.table_id==(unitDatas.Find(x=>x.EnCode==item.unit_id || x.Id==item.unit_id)?.Id ?? ""))?.cunitid ?? "", + ["cunitid"] = erpExtendFields.Find(x=>x.table_id==(unitDatas.Find(x=>x.EnCode==item.unit_id || x.Id==item.unit_id)?.Id ?? ""))?.cunitid ?? null, ["dbilldate"] = purchase.create_time.ToString("yyyy-MM-dd HH:mm:ss"), ["dplanreceivedate"] = purchase.create_time.ToString("yyyy-MM-dd HH:mm:ss"), ["dproducedate"] = purchase.create_time.ToString("yyyy-MM-dd HH:mm:ss"), @@ -338,8 +338,8 @@ namespace Tnb.WarehouseMgr ["pk_arriveorder"] = null, ["pk_arriveorder_b"] = null, ["pk_group"] = erpOrg.pk_group, - ["pk_material"] = erpExtendFields.Find(x=>x.table_id==item.material_id)?.cmaterialoid ?? "", - ["pk_order"] = wmsPurchaseOrderH?.erp_pk ?? "", + ["pk_material"] = erpExtendFields.Find(x=>x.table_id==item.material_id)?.cmaterialoid ?? null, + ["pk_order"] = wmsPurchaseOrderH?.erp_pk ?? null, ["pk_order_b"] = item.erp_purchase_order_d_pk, ["pk_org"] = erpOrg.pk_org, ["pk_org_v"] = erpOrg.pk_org_v, @@ -350,15 +350,15 @@ namespace Tnb.WarehouseMgr ["pk_receivestore"] = item.erp_wh_type, ["pk_reqstoorg"] = erpOrg.pk_org, ["pk_reqstoorg_v"] = erpOrg.pk_org_v, - ["pk_srcmaterial"] = erpExtendFields.Find(x=>x.table_id==item.material_id)?.cmaterialoid ?? "", + ["pk_srcmaterial"] = erpExtendFields.Find(x=>x.table_id==item.material_id)?.cmaterialoid ?? null, ["vbatchcode"] = item.code_batch, ["Vfree1"] = item.code_batch, ["mes_detail_id"] = item.id, ["bpresent"] = item.gift==1, - ["csourceid"] = wmsPurchaseOrderH?.erp_pk ?? "", + ["csourceid"] = wmsPurchaseOrderH?.erp_pk ?? null, ["vsourcecode"] = wmsPurchaseOrderH.erp_bill_code, ["csourcebid"] = item.erp_purchase_order_d_pk, - ["IsType"] = 0, + ["isType"] = 0, ["csourcetypecode"] = null, ["vsourcerowno"] = null, ["vsourcetrantype"] = null,