From f2bc936ea7f9a0a9002bcef21f3d6b930b81b86f Mon Sep 17 00:00:00 2001
From: zhou keda <1315948824@qq.com>
Date: Sat, 12 Oct 2024 14:06:16 +0800
Subject: [PATCH 1/2] =?UTF-8?q?erp=E7=89=A9=E6=96=99=E5=90=8C=E6=AD=A5?=
=?UTF-8?q?=E5=BC=80=E5=85=B3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Tnb.BasicData.Entities/Consts/FactoryConfigConst.cs | 5 +++++
EquipMgr/Tnb.EquipMgr/EquipmentService.cs | 1 +
ProductionMgr/Tnb.ProductionMgr/TimeWorkService.cs | 3 ++-
3 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/BasicData/Tnb.BasicData.Entities/Consts/FactoryConfigConst.cs b/BasicData/Tnb.BasicData.Entities/Consts/FactoryConfigConst.cs
index 6f743894..d42718d2 100644
--- a/BasicData/Tnb.BasicData.Entities/Consts/FactoryConfigConst.cs
+++ b/BasicData/Tnb.BasicData.Entities/Consts/FactoryConfigConst.cs
@@ -49,5 +49,10 @@ namespace Tnb.BasicData
/// 换批号天数
///
public const string CHANGEBATCHDAY = "changeBatchDay";
+
+ ///
+ /// erp全物料更新
+ ///
+ public const string MATERIALALLUPDATE = "materialAllUpDate";
}
}
\ No newline at end of file
diff --git a/EquipMgr/Tnb.EquipMgr/EquipmentService.cs b/EquipMgr/Tnb.EquipMgr/EquipmentService.cs
index e6f6d370..b4b5d78b 100644
--- a/EquipMgr/Tnb.EquipMgr/EquipmentService.cs
+++ b/EquipMgr/Tnb.EquipMgr/EquipmentService.cs
@@ -78,6 +78,7 @@ namespace Tnb.EquipMgr
.WhereIF(!string.IsNullOrEmpty(code),a=>a.code.Contains(code))
.WhereIF(!string.IsNullOrEmpty(name),a=>a.name.Contains(name))
.WhereIF(!string.IsNullOrEmpty(contract_no),a=>a.contract_no.Contains(contract_no))
+ .OrderBy(a=>a.code)
.Select((a, b,c,d,e,f,g,h,i,j) => new EquipListOuput()
{
id = a.id,
diff --git a/ProductionMgr/Tnb.ProductionMgr/TimeWorkService.cs b/ProductionMgr/Tnb.ProductionMgr/TimeWorkService.cs
index 3ce5c9f0..b86cdf65 100644
--- a/ProductionMgr/Tnb.ProductionMgr/TimeWorkService.cs
+++ b/ProductionMgr/Tnb.ProductionMgr/TimeWorkService.cs
@@ -854,6 +854,7 @@ namespace Tnb.ProductionMgr
Dictionary materialcategoryDic = await _db.Queryable()
.Where(x => x.DictionaryTypeId == DictConst.MaterialCatagoryID)
.ToDictionaryAsync(x => x.FullName, y => y.EnCode);
+ BasFactoryConfig materialAllUpDate = await _db.Queryable().FirstAsync(x => x.enabled == 1 && x.key == FactoryConfigConst.MATERIALALLUPDATE);
List materials = await _db.Queryable().ToListAsync();
List basEbomHs = await _db.Queryable().ToListAsync();
List insertMaterial = new List();
@@ -975,7 +976,7 @@ namespace Tnb.ProductionMgr
string materialId = extendField?.table_id ?? "";
BasMaterial basMaterial = await _db.Queryable().SingleAsync(x => x.id == materialId);
// if (extendField.erp_modify_time==null || erpBdMaterial.MODIFIEDTIME != extendField.erp_modify_time)
- if (erpBdMaterial.MODIFIEDTIME != extendField.erp_modify_time)
+ if (materialAllUpDate.value=="1" || erpBdMaterial.MODIFIEDTIME != extendField.erp_modify_time)
{
string unitId = erpExtendFields.Find(x => x.cunitid == erpBdMaterial.PK_MEASDOC)?.table_id ?? "";
unitId = unitDic.ContainsKey(unitId) ? unitDic[unitId].ToString() : "";
From 9259c5fca51bdc4aebd04ee52c426005e2535ab3 Mon Sep 17 00:00:00 2001
From: zhou keda <1315948824@qq.com>
Date: Sat, 12 Oct 2024 17:07:17 +0800
Subject: [PATCH 2/2] =?UTF-8?q?=E5=A7=94=E5=A4=96=E5=88=B0=E8=B4=A7?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Tnb.BasicData/ThirdApiRecordService.cs | 53 +++++++
.../Dto/Inputs/OutsourceEditInput.cs | 145 ++++++++++++++++++
.../Entity/WmsOutsourceD.cs | 67 +++++---
.../Entity/WmsOutsourceH.cs | 37 +++--
.../Tnb.WarehouseMgr/WmsOutsourceDService.cs | 4 +-
.../Tnb.WarehouseMgr/WmsOutsourceService.cs | 103 ++++++-------
6 files changed, 316 insertions(+), 93 deletions(-)
create mode 100644 WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Inputs/OutsourceEditInput.cs
diff --git a/BasicData/Tnb.BasicData/ThirdApiRecordService.cs b/BasicData/Tnb.BasicData/ThirdApiRecordService.cs
index 13cdaf94..f46b7b3c 100644
--- a/BasicData/Tnb.BasicData/ThirdApiRecordService.cs
+++ b/BasicData/Tnb.BasicData/ThirdApiRecordService.cs
@@ -268,6 +268,59 @@ namespace Tnb.BasicData
}
}
+ if (thirdResult.Code == 200 && record.third_name == "BIP" && record.name == "委外到货")
+ {
+ Dictionary requestData = JsonConvert.DeserializeObject>(record.request_data);
+ //((JObject)requestData[0]["dtls"]).SelectTokens("csourcebid")
+
+ string billCode = requestData.ContainsKey("vbillcode") ? requestData["vbillcode"].ToString() : "";
+ if (string.IsNullOrEmpty(billCode))
+ {
+ Log.Error($"请求记录id{record.id}委外到货单号为空");
+ }
+ var requestDtos = ((JArray)requestData["dtls"]).Select(x => new ErpPurchaseDto()
+ {
+ csourcebid = x["csourcebid"]?.ToString(),
+ mes_detail_id = x["mes_detail_id"]?.ToString(),
+ }).ToList();
+
+ JObject data = (JObject)thirdResult.msg;
+ JToken children = data.SelectToken("children")[0];
+ var responsetDtos = children.Select(x => new ErpPurchaseDto()
+ {
+ pk_arriveorder = x["valueIndex"]["pk_arriveorder"].ToString(),
+ pk_arriveorder_b = x["valueIndex"]["pk_arriveorder_b"].ToString(),
+ csourcebid = x["valueIndex"]["csourcebid"].ToString()
+ }).ToList();
+
+ string pk_arriveorder = responsetDtos[0]?.pk_arriveorder ?? "";
+ int updateDRow = 0;
+ bool flag = !string.IsNullOrEmpty(pk_arriveorder);
+ foreach (var item in requestDtos)
+ {
+ string pk_arriveorder_b = responsetDtos.Find(x => x.csourcebid == item.csourcebid)?.pk_arriveorder_b;
+ if (string.IsNullOrEmpty(pk_arriveorder_b))
+ {
+ flag = true;
+ break;
+ }
+ updateDRow += await db.Updateable()
+ .SetColumns(x => x.erp_arriveorder_b_pk == pk_arriveorder_b)
+ .Where(x => x.id == item.mes_detail_id)
+ .ExecuteCommandAsync();
+ }
+
+ int updateRow = await db.Updateable()
+ .SetColumns(x => x.erp_arriveorder_pk == pk_arriveorder)
+ .Where(x => x.bill_code == billCode)
+ .ExecuteCommandAsync();
+
+ if (flag || updateRow <= 0 || updateDRow <= 0)
+ {
+ Log.Error($"更新失败,requestDtos:{JsonConvert.SerializeObject(requestDtos)},responsetDtos:{JsonConvert.SerializeObject(responsetDtos)}");
+ }
+ }
+
if (thirdResult.Code == 200 && record.third_name == "BIP" && record.name == "生产报告")
{
Dictionary requestData = JsonConvert.DeserializeObject>(record.request_data);
diff --git a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Inputs/OutsourceEditInput.cs b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Inputs/OutsourceEditInput.cs
new file mode 100644
index 00000000..41b7735d
--- /dev/null
+++ b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Inputs/OutsourceEditInput.cs
@@ -0,0 +1,145 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Tnb.WarehouseMgr.Entities.Entity;
+
+namespace Tnb.WarehouseMgr.Entities.Dto
+{
+ ///
+ /// 委外收货编辑输入参数
+ ///
+ public class OutsourceEditInput
+ {
+
+ public string bill_code { get; set; }
+
+ ///
+ /// 委外订单号
+ ///
+ public string? outsource_order { get; set; }
+
+ ///
+ /// 联系人
+ ///
+ public string? contact_person { get; set; }
+
+ ///
+ /// 电话
+ ///
+ public string? tel { get; set; }
+
+ ///
+ /// 供应商ID
+ ///
+ public string? supplier_id { get; set; }
+
+ ///
+ /// 供应商编号
+ ///
+ public string? supplier_code { get; set; }
+
+ ///
+ /// 供应商名称
+ ///
+ public string? supplier_name { get; set; }
+
+ ///
+ /// 备注
+ ///
+ public string? remark { get; set; }
+
+ ///
+ /// 扩展字段
+ ///
+ public string? extras { get; set; }
+
+ ///
+ /// 时间戳
+ ///
+ public string? time_stamp { get; set; }
+
+ ///
+ /// 单据类型
+ ///
+ public string? document_type { get; set; }
+
+ ///
+ /// 凭证日期
+ ///
+ public string? certificate_date { get; set; }
+
+ ///
+ /// 创建用户
+ ///
+ public string? create_id { get; set; }
+
+ ///
+ /// 创建时间
+ ///
+ public DateTime? create_time { get; set; }
+
+ ///
+ /// 修改用户
+ ///
+ public string? modify_id { get; set; }
+
+ ///
+ /// 修改时间
+ ///
+ public DateTime? modify_time { get; set; }
+
+ ///
+ /// 所属组织
+ ///
+ public string? org_id { get; set; }
+
+ ///
+ /// 流程任务Id
+ ///
+ public string? f_flowtaskid { get; set; }
+
+ ///
+ /// 流程引擎Id
+ ///
+ public string? f_flowid { get; set; }
+
+ ///
+ /// erp_pk
+ ///
+ public string? erp_pk { get; set; }
+
+ ///
+ /// erp_bill_code
+ ///
+ public string? erp_bill_code { get; set; }
+
+ ///
+ /// 供货日期
+ ///
+ public DateTime? ship_date { get; set; }
+
+ ///
+ /// 交易类型
+ ///
+ public string? transaction_type { get; set; }
+
+ ///
+ /// erp到货单主表pk
+ ///
+ public string? erp_arriveorder_pk { get; set; }
+
+ ///
+ /// 制单方式(自制 同步)
+ ///
+ public string? make_method { get; set; }
+
+ ///
+ /// erp流水号
+ ///
+ public string? service_num { get; set; }
+
+ public List details { get; set; } = new();
+ }
+}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Entity/WmsOutsourceD.cs b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Entity/WmsOutsourceD.cs
index b6999b4f..8c55ca35 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Entity/WmsOutsourceD.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Entity/WmsOutsourceD.cs
@@ -2,7 +2,7 @@
using JNPF.Common.Security;
using SqlSugar;
-namespace Tnb.WarehouseMgr.Entities.Entity;
+namespace Tnb.WarehouseMgr.Entities;
///
/// 委外收货表子表
@@ -19,6 +19,11 @@ public partial class WmsOutsourceD : BaseEntity
///
public string? fk_wms_outsource_order_id { get; set; }
+ ///
+ /// 委外订单子表id
+ ///
+ public string outsource_order_d_id { get; set; }
+
///
/// 物料id
///
@@ -40,18 +45,7 @@ public partial class WmsOutsourceD : BaseEntity
public string? unit { get; set; }
///
- /// 质检结果
- ///
- public string? qc_res { get; set; }
-
-
- ///
- /// 单位
- ///
- public string? unit_id { get; set; }
-
- ///
- /// 委外数量
+ /// 采购数量
///
public decimal? outsource_quantity { get; set; }
@@ -59,7 +53,7 @@ public partial class WmsOutsourceD : BaseEntity
/// 实收数量
///
public decimal? actual_quantity { get; set; }
-
+
///
/// 库存地点ID
///
@@ -126,7 +120,12 @@ public partial class WmsOutsourceD : BaseEntity
public DateTime? modify_time { get; set; }
///
- /// 已绑定数量
+ /// erp_line_pk
+ ///
+ public string? erp_line_pk { get; set; }
+
+ ///
+ /// 已绑定数量 本次到货数量
///
public decimal? bind_qty { get; set; }
@@ -141,17 +140,47 @@ public partial class WmsOutsourceD : BaseEntity
public string? auxprop_gys { get; set; }
///
- /// erp仓库类型
+ /// 单位id
+ ///
+ public string? unit_id { get; set; }
+
+ ///
+ /// 质检结果
+ ///
+ public string? qc_res { get; set; }
+
+ ///
+ /// erp_wh_type
///
public string? erp_wh_type { get; set; }
///
/// 单价
///
- public decimal? price { get; set; }
+ public string? price { get; set; }
///
- /// erp到货单子表pk
+ /// erp_arriveorder_b_pk
///
- public string erp_arriveorder_b_pk { get; set; }
+ public string? erp_arriveorder_b_pk { get; set; }
+
+ ///
+ /// 是否赠品
+ ///
+ public int? gift { get; set; }
+
+ ///
+ /// 委外数量
+ ///
+ public decimal? outsource_qty { get; set; }
+
+ public string erp_outsource_order_d_pk { get; set; }
+
+ public string erp_outsource_order_d_lineno { get; set; }
+
+ ///
+ /// 生产单位(厂商)
+ ///
+ public string? production_unit { get; set; }
+
}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Entity/WmsOutsourceH.cs b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Entity/WmsOutsourceH.cs
index e4b09bd5..fa5b6b18 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Entity/WmsOutsourceH.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Entity/WmsOutsourceH.cs
@@ -2,10 +2,10 @@
using JNPF.Common.Security;
using SqlSugar;
-namespace Tnb.WarehouseMgr.Entities.Entity;
+namespace Tnb.WarehouseMgr.Entities;
///
-/// 委外订单
+/// 委外收货
///
[SugarTable("wms_outsource_h")]
public partial class WmsOutsourceH : BaseEntity
@@ -14,15 +14,11 @@ public partial class WmsOutsourceH : BaseEntity
{
id = SnowflakeIdHelper.NextId();
}
-
+
///
- /// 交易类型
+ /// 委外收货单号
///
- public string? transaction_type { get; set; }
- ///
- ///
- ///
- public string? erp_bill_code { get; set; }
+ public string bill_code { get; set; }
///
/// 委外订单号
///
@@ -86,7 +82,7 @@ public partial class WmsOutsourceH : BaseEntity
///
/// 创建时间
///
- public DateTime? create_time { get; set; }
+ public DateTime create_time { get; set; }
///
/// 修改用户
@@ -113,24 +109,39 @@ public partial class WmsOutsourceH : BaseEntity
///
public string? f_flowid { get; set; }
+ ///
+ /// erp_pk
+ ///
+ public string? erp_pk { get; set; }
+
+ ///
+ /// erp_bill_code
+ ///
+ public string? erp_bill_code { get; set; }
+
///
/// 供货日期
///
public DateTime? ship_date { get; set; }
+ ///
+ /// 交易类型
+ ///
+ public string? transaction_type { get; set; }
+
///
/// erp到货单主表pk
///
- public string erp_arriveorder_pk { get; set; }
+ public string? erp_arriveorder_pk { get; set; }
///
/// 制单方式(自制 同步)
///
- public string make_method { get; set; }
+ public string? make_method { get; set; }
///
/// erp流水号
///
- public string service_num { get; set; }
+ public string? service_num { get; set; }
}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsOutsourceDService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsOutsourceDService.cs
index f22cd249..a5b937f0 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr/WmsOutsourceDService.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsOutsourceDService.cs
@@ -215,7 +215,7 @@ namespace Tnb.WarehouseMgr
["cunitid"] = erpExtendFields.Find(x => x.table_id == (unitDatas.Find(x => x.EnCode == item.unit_id)?.Id ?? ""))?.cunitid ?? "",
["cvendorid"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_id ?? "",
["cvendorvid"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_vid ?? "",
- ["dbizdate"] = wmsOutsourceH.create_time.Value.ToString("yyyy-MM-dd HH:mm:ss"),
+ ["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 ?? "",
@@ -277,7 +277,7 @@ namespace Tnb.WarehouseMgr
thirdWebapiRecord.url = WmsWareHouseConst.BIP_DOMAIN + "uapws/rest/purchaseIn/save";
thirdWebapiRecord.request_data = JsonConvert.SerializeObject(requestData);
thirdWebapiRecord.create_time = DateTime.Now;
- thirdWebapiRecord.remark = "【WmsPurchaseDService SaveCheckResult】委外收货单号:" + (wmsOutsourceH?.outsource_order ?? "")+ ",erp委外订单号:" + (wmsPurchaseOrderH?.erp_bill_code ?? "");
+ thirdWebapiRecord.remark = "【WmsOutsourceDService SaveCheckResult】委外收货单号:" + (wmsOutsourceH?.outsource_order ?? "")+ ",erp委外订单号:" + (wmsPurchaseOrderH?.erp_bill_code ?? "");
await _db.Insertable(thirdWebapiRecord).ExecuteCommandAsync();
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsOutsourceService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsOutsourceService.cs
index ffda02bf..abdd0aff 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr/WmsOutsourceService.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsOutsourceService.cs
@@ -188,19 +188,27 @@ namespace Tnb.WarehouseMgr
///
///
[HttpPost]
- public async Task Purchase(PurchaseAndReceiveUpInput input)
+ public async Task Purchase(OutsourceEditInput input)
{
var blFlag = true;
try
{
- WmsPurchaseH wmsPurchaseH = await _db.Queryable().Where(r => r.bill_code == input.bill_code).FirstAsync();
- if (wmsPurchaseH.make_method == "自制")
+ WmsOutsourceH wmsOutsourceH = await _db.Queryable().Where(r => r.bill_code == input.bill_code).FirstAsync();
+ if (wmsOutsourceH.make_method == "自制")
{
- throw Oops.Bah("自制采购收货单不能操作此按钮");
+ throw Oops.Bah("自制委外收货单不能操作此按钮");
}
await _db.Ado.BeginTranAsync();
WmsInstockH? instock = null;
- var purchaseDs = await PurchaseAndSaleUpdate(input);
+ var purchaseDs = input.details;
+ foreach (var item in input.details)
+ {
+ await _db.Updateable()
+ .SetColumns(x => x.actual_quantity == x.actual_quantity + item.bind_qty)
+ .Where(x => x.id == item.outsource_order_d_id)
+ .ExecuteCommandAsync();
+ }
+
List instockDs = new();
if (purchaseDs?.Count > 0)
{
@@ -233,28 +241,8 @@ namespace Tnb.WarehouseMgr
});
await _db.Insertable(instockDs).ExecuteCommandAsync();
- var purchase = await _db.Queryable().FirstAsync(it => it.id == purchaseDs.First().bill_id);
-
- if (string.IsNullOrEmpty(purchase.supplier_id))
- {
- BasSupplier basSupplier = await _db.Queryable().Where(x => x.supplier_code == purchase.supplier_code).FirstAsync();
- if (basSupplier != null)
- {
- await _db.Updateable()
- .SetColumns(x => x.supplier_id == basSupplier.id)
- .Where(x => x.id == purchase.id)
- .ExecuteCommandAsync();
-
- purchase.supplier_id = basSupplier.id;
- }
- }
-
- //purchase.supplier_code
-
-
-
- List dList = await _db.Queryable().Where(x => x.bill_id == purchaseDs.First().bill_id).OrderBy(x => x.id).ToListAsync();
- List materialIds = purchaseDs.Select(x => x.material_id).Distinct().ToList();
+ List dList = input.details;
+ List materialIds = purchaseDs.Select(x => x.matcode_id).Distinct().ToList();
List unitCodes = purchaseDs.Select(x => x.unit_id).Distinct().ToList();
List unitDatas = await _db.Queryable()
.LeftJoin((x, y) => x.Id == y.DictionaryTypeId)
@@ -262,20 +250,17 @@ namespace Tnb.WarehouseMgr
.Select((x, y) => y)
.ToListAsync();
List erpWarehouserelaHs = await _db.Queryable().Where(x => x.id != null).ToListAsync();
- WmsPurchaseOrderH wmsPurchaseOrderH = await _db.Queryable().SingleAsync(x => x.id == purchase.erp_bill_code);
- //todo 先取采购订单第一条
- //WmsPurchaseOrderD wmsPurchaseOrderDs = await _db.Queryable().FirstAsync(x=>x.fk_wms_purchase_order_id==purchase.erp_bill_code);
+ WmsOutsourceOrderH wmsOutsourceOrderH = await _db.Queryable().SingleAsync(x => x.id == wmsOutsourceH.erp_bill_code);
//自制的不调erp接口
- if (!string.IsNullOrEmpty(wmsPurchaseOrderH.erp_bill_code))
+ if (!string.IsNullOrEmpty(wmsOutsourceOrderH.erp_bill_code))
{
List ids = new List();
// ids.Add(_userManager.UserId);
// ids.Add(WmsWareHouseConst.AdministratorUserId);
ids.Add(WmsWareHouseConst.AdministratorOrgId);
- ids.Add(purchase.warehouse_id);
ids.AddRange(materialIds);
- ids.Add(wmsPurchaseOrderH.supplier_id);
+ ids.Add(wmsOutsourceOrderH.supplier_id);
ids.AddRange(unitDatas.Select(x => x.Id).ToList());
string userId = _userManager.UserId ?? WmsWareHouseConst.AdministratorUserId;
@@ -292,9 +277,9 @@ namespace Tnb.WarehouseMgr
erpRequestData.Add("billmaker", erpCreateId);
erpRequestData.Add("creationtime", nowStr);
erpRequestData.Add("creator", erpCreateId);
- erpRequestData.Add("dbilldate", purchase.create_time.ToString("yyyy-MM-dd HH:mm:ss"));
+ erpRequestData.Add("dbilldate", wmsOutsourceH.create_time.ToString("yyyy-MM-dd HH:mm:ss"));
erpRequestData.Add("dmakedate", nowStr);
- erpRequestData.Add("ntotalastnum", purchaseDs.Sum(x => x.purchase_arriveqty));
+ erpRequestData.Add("ntotalastnum", purchaseDs.Sum(x => x.bind_qty));
erpRequestData.Add("pk_arriveorder", null);
// erpRequestData.Add("pk_dept","1001A1100000001JFOPQ");
// erpRequestData.Add("pk_dept_v","0001A1100000000AOMIQ");
@@ -303,48 +288,48 @@ namespace Tnb.WarehouseMgr
erpRequestData.Add("pk_org_v", erpOrg.pk_org_v);
erpRequestData.Add("pk_group", erpOrg.pk_group);
erpRequestData.Add("pk_pupsndoc", "");
- erpRequestData.Add("csourceid", wmsPurchaseOrderH?.erp_pk ?? "");
+ erpRequestData.Add("csourceid", wmsOutsourceOrderH?.erp_pk ?? "");
erpRequestData.Add("pk_purchaseorg", erpOrg.pk_org);
erpRequestData.Add("pk_purchaseorg_v", erpOrg.pk_org_v);
- erpRequestData.Add("pk_supplier", erpExtendFields.Find(x => x.table_id == purchase.supplier_id)?.supplier_id ?? "");//先写死
- 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("pk_supplier", erpExtendFields.Find(x => x.table_id == wmsOutsourceH.supplier_id)?.supplier_id ?? "");//先写死
+ erpRequestData.Add("pk_supplier_v", erpExtendFields.Find(x => x.table_id == wmsOutsourceH.supplier_id)?.supplier_vid ?? "");//先写死
+ erpRequestData.Add("vbillcode", wmsOutsourceH.bill_code);
+ erpRequestData.Add("vmemo", wmsOutsourceH.remark);
erpRequestData.Add("vtrantypecode", "");
List> erpRequestDataDetails = new List>();
- foreach (WmsPurchaseD item in dList)
+ foreach (WmsOutsourceD 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 ?? "",
- ["cfirstid"] = item.erp_purchase_order_d_pk,
+ ["cfirstbid"] = wmsOutsourceOrderH?.erp_pk ?? "",
+ ["cfirstid"] = item.erp_outsource_order_d_pk,
["cfirsttypecode"] = "",
["crececountryid"] = "0001Z010000000079UJJ",
- ["crowno"] = item.erp_purchase_order_d_lineno,
+ ["crowno"] = item.erp_outsource_order_d_lineno,
["csendcountryid"] = "0001Z010000000079UJJ",
["csourcetypecode"] = "",
["ctaxcountryid"] = "0001Z010000000079UJJ",
["cunitid"] = erpExtendFields.Find(x => x.table_id == (unitDatas.Find(x => x.EnCode == item.unit_id || x.Id == item.unit_id)?.Id ?? ""))?.cunitid ?? "",
- ["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"),
+ ["dbilldate"] = wmsOutsourceH.create_time.ToString("yyyy-MM-dd HH:mm:ss"),
+ ["dplanreceivedate"] = wmsOutsourceH.create_time.ToString("yyyy-MM-dd HH:mm:ss"),
+ ["dproducedate"] = wmsOutsourceH.create_time.ToString("yyyy-MM-dd HH:mm:ss"),
// ["fbuysellflag"] = 2,
["fproductclass"] = 1,
// ["naccumchecknum"] = 0,
// ["nastnum"] = item.purchase_arriveqty,
- ["nnum"] = item.purchase_arriveqty,
+ ["nnum"] = item.bind_qty,
// ["nplanastnum"] = 0,
- ["nplannum"] = item.purchase_qty,
+ ["nplannum"] = item.outsource_qty,
["pk_apfinanceorg"] = erpOrg.corpoid,
["pk_apfinanceorg_v"] = erpOrg.corpvid,
["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_order_b"] = item.erp_purchase_order_d_pk,
+ ["pk_material"] = erpExtendFields.Find(x => x.table_id == item.matcode_id)?.cmaterialoid ?? "",
+ ["pk_order"] = wmsOutsourceOrderH?.erp_pk ?? "",
+ ["pk_order_b"] = item.erp_outsource_order_d_pk,
["pk_org"] = erpOrg.pk_org,
["pk_org_v"] = erpOrg.pk_org_v,
["pk_psfinanceorg"] = erpOrg.corpoid,
@@ -354,14 +339,14 @@ 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.matcode_id)?.cmaterialoid ?? "",
["vbatchcode"] = item.code_batch,
["Vfree1"] = item.code_batch,
["mes_detail_id"] = item.id,
["bpresent"] = item.gift == 1,
- ["csourceid"] = wmsPurchaseOrderH?.erp_pk ?? "",
- ["vsourcecode"] = wmsPurchaseOrderH.erp_bill_code,
- ["csourcebid"] = item.erp_purchase_order_d_pk,
+ ["csourceid"] = wmsOutsourceOrderH?.erp_pk ?? "",
+ ["vsourcecode"] = wmsOutsourceOrderH.erp_bill_code,
+ ["csourcebid"] = item.erp_outsource_order_d_pk,
["IsType"] = 0,
["csourcetypecode"] = null,
["vsourcerowno"] = null,
@@ -376,13 +361,13 @@ 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/purarrvial/save";
thirdWebapiRecord.url = WmsWareHouseConst.BIP_DOMAIN + "uapws/rest/purarrvial/save";
thirdWebapiRecord.request_data = JsonConvert.SerializeObject(erpRequestData);
thirdWebapiRecord.create_time = DateTime.Now;
- thirdWebapiRecord.remark = $"【WmsPurchaseService Purchase】erp采购订单:{wmsPurchaseOrderH.erp_bill_code}";
+ thirdWebapiRecord.remark = $"【WmsOutsourceService Purchase】erp委外订单:{wmsOutsourceOrderH.erp_bill_code}";
await _db.Insertable(thirdWebapiRecord).ExecuteCommandAsync();
BasFactoryConfig callErp = await _db.Queryable().FirstAsync(x => x.enabled == 1 && x.key == FactoryConfigConst.CALLERP);
@@ -402,7 +387,7 @@ namespace Tnb.WarehouseMgr
{
blFlag = false;
await _db.Ado.RollbackTranAsync();
- Log.Error("采购收货失败", ex);
+ Log.Error("委外收货失败", ex);
throw;
}
return await Task.FromResult(blFlag);