From 9f1c20b47db5ca023ab864def323e99fe1267f08 Mon Sep 17 00:00:00 2001
From: 南骏 池 <chiffly@163.com>
Date: 星期四, 20 二月 2025 14:49:09 +0800
Subject: [PATCH] 1.期初入库新增库存组织。 2.委外领料完成 3.委外补料正常领料完成,拆分还未测试.
---
service/Wom/WwGdManager.cs | 69 ++++++++++++++++++++++++----------
1 files changed, 49 insertions(+), 20 deletions(-)
diff --git a/service/Wom/WwGdManager.cs b/service/Wom/WwGdManager.cs
index 2254eb1..1552913 100644
--- a/service/Wom/WwGdManager.cs
+++ b/service/Wom/WwGdManager.cs
@@ -58,7 +58,9 @@
daa001 = query.daa001,
barcodeNum = barcodeNum,
splitNum = splitNum,
- barcode = query.barcode
+ barcode = query.barcode,
+ strMsg = _strMsg,
+ result = _intSum
};
return dto;
@@ -147,7 +149,7 @@
var wwgd = Db.Queryable<WwGd, MesItems>((a, i) =>
new JoinQueryInfos(JoinType.Left,
a.Daa003 == i.ItemId))
- .Where((a, i) => a.Daa001 == query.daa001)
+ .Where((a, i) => a.Daa001 == query.daa001 && (a.PcSh ?? 0) == 1)
.Select((a, i) => new
{
a.Daa001, a.RwdGuid
@@ -162,8 +164,7 @@
JoinType.Left,
a.Id == b.Pid,
JoinType.Inner,
- c.Id ==
- b.Dab003,
+ c.Id == b.Dab003,
JoinType.Inner, b.Erpid.ToString() == d.ErpId
))
.Where((a, b, c, d) =>
@@ -668,6 +669,11 @@
.Where(a => a.Daa001 == query.billNo)
.First();
+ // 妫�鏌ュ伐鍗曚俊鎭�
+ var WWRWD = Db.Queryable<ProductionOrder>()
+ .Where(a => a.OrderNo == wwgd.Daa014)
+ .First();
+
if (wwgd == null)
throw new Exception($"宸ュ崟 {query.billNo} 涓嶅瓨鍦紝璇风‘璁わ紒");
@@ -678,6 +684,11 @@
if (womdab == null)
throw new Exception($"澶囨枡鏄庣粏涓嶅瓨鍦ㄦ鐗╂枡 {stockBarcode.ItemNo} 璇风‘璁わ紒");
+
+
+ var depots = Db.Queryable<MesDepots>()
+ .Where(t => t.DepotId == stockBarcode.DepotId)
+ .First();
if (stockBarcode.Quantity > quantity)
{
@@ -707,13 +718,24 @@
// 寮�鍚簨鍔″鐞�
var success = UseTransaction(db =>
{
+ query.Type = "濮斿琛ユ枡";
+ var outNoType = "WWBL(濮斿琛ユ枡)";
+ if (query.Type == "鐢熶骇琛ユ枡")
+ {
+ outNoType = "SCBL(鐢熶骇琛ユ枡)";
+ }
+ else
+ {
+ outNoType = "SCCL(鐢熶骇瓒呴)";
+ }
+ outNoType = "WWBL(濮斿琛ユ枡)";
// 鑾峰彇鎴栧垱寤哄嚭搴撳崟
var outId = Guid.NewGuid();
- var outNo = BillNo.GetBillNo("BL(宸ュ崟琛ユ枡)");
+ var outNo = BillNo.GetBillNo(outNoType);
var existingOut = db.Queryable<MesInvItemOuts>()
- .Where(a => a.BbillNo == query.blNo
- && a.DepotCode == womdab.Dab017
+ .Where(a => a.TaskNo == query.blNo
+ && a.DepotId == stockBarcode.DepotId
&& a.OutDate.Value.Date.ToString("yyyy-MM-dd") ==
DateTime.Now.Date.ToString("yyyy-MM-dd")
&& a.BillTypeId == 200
@@ -741,33 +763,36 @@
BillTypeId = 200,
TransactionNo = 209,
Remark = mesItemBl.Bl007,
- DepotCode = womdab.Dab017,
- OutPart = wwgd.Daa013.ToString(),
+ DepotCode = depots.DepotCode,
+ OutPart = wwgd.DepartId.ToString(),
+ OutType = query.Type,
FType = 0,
Factory = stockBarcode.Factory,
Company = stockBarcode.Company,
- // WorkNo = wwgd.Daa021,
- // BoardItem = wwgd.Daa002,
+ WorkNo = WWRWD.ErpProductionOrderNo,
+ BoardItem = wwgd.Daa003.ToString(),
PbillNo = wwgd.Daa001,
OutDate = DateTime.Now,
Status = 0,
- BbillNo = query.blNo
+ DepotId = stockBarcode.DepotId,
+ THORGID = stockBarcode.StockOrgId,
+ //BbillNo = query.billNo
}).IgnoreColumns(true).ExecuteCommand();
}
// 妫�鏌ュ苟鏇存柊鍑哄簱鍗曠墿鏂欐槑缁�
var itemCount = db.Queryable<MesInvItemOutItems>()
.Where(i =>
- i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId)
+ i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId && i.ItemOutId == outId && i.DepotId == stockBarcode.DepotsId.ToString())
.Count();
if (itemCount > 0)
// 鏇存柊宸插瓨鍦ㄧ殑鐗╂枡鏄庣粏鏁伴噺
db.Updateable<MesInvItemOutItems>()
.SetColumns(i =>
- i.Quantity == i.Quantity + stockBarcode.Quantity)
+ i.TlQty == i.TlQty + stockBarcode.Quantity)
.Where(i =>
- i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId)
+ i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId && i.ItemOutId == outId && i.DepotId == stockBarcode.DepotsId.ToString())
.ExecuteCommand();
else
// 鎻掑叆鏂扮殑鐗╂枡鏄庣粏璁板綍
@@ -777,21 +802,24 @@
ItemOutId = outId,
ItemNo = blDetail.Bld002,
Quantity = stockBarcode.Quantity,
+ TlQty = stockBarcode.Quantity,
CreateBy = query.userName,
CreateDate = DateTime.Now,
LastupdateBy = query.userName,
LastupdateDate = DateTime.Now,
Factory = stockBarcode.Factory,
Company = stockBarcode.Company,
- DepotCode = womdab.Dab017,
+ DepotCode = depots.DepotCode,
TaskNo = query.blNo,
- // WorkNo = wwgd.Daa021,
+ WorkNo = WWRWD.ErpProductionOrderNo,
WorkLine = blDetail.Bld013,
ErpItemNo = womdab.Dab003.ToString(),
ErpId = womdab.Eid,
ErpAutoid = womdab.Erpid,
PbillNo = query.billNo,
- ItemId = blDetail.Bld012
+ ItemId = blDetail.Bld012,
+ DepotId = stockBarcode.DepotsId.ToString(),
+ ItemDabid = womdab.Id,
// Unit = blDetail.Bld009,
// DepotId = (int)stockBarcode.DepotsId
}).IgnoreColumns(true).ExecuteCommand();
@@ -810,7 +838,7 @@
CreateDate = DateTime.Now,
LastupdateBy = query.userName,
LastupdateDate = DateTime.Now,
- DepotCode = stockBarcode.DepotsCode,
+ DepotCode = depots.DepotCode,
DepotSectionCode = stockBarcode.DepotSectionsCode,
Remark = blDetail.Bld010,
Factory = stockBarcode.Factory,
@@ -835,7 +863,7 @@
Guid = Guid.NewGuid(),
Status = 1,
BillTypeId = 200, // p_bill_type_id
- TransactionCode = "210", // p_transaction_no
+ TransactionCode = "209", // p_transaction_no
BusinessType = -1,
ItemBarcode = stockBarcode.ItemBarcode,
ItemNo = stockBarcode.ItemNo,
@@ -871,6 +899,7 @@
.Where(it => it.Id == womdab.Id && it.Dab003 == womdab.Dab003)
.ExecuteCommand();
+
// 鏇存柊琛ユ枡鍗曟槑缁嗗凡琛ユ暟閲�
db.Updateable<MesItemBlDetail>()
.SetColumns(it => new MesItemBlDetail
--
Gitblit v1.9.3