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 ++++++++++++++++++++++++----------
service/Warehouse/InventoryManager.cs | 11 +++--
Controllers/Wom/WwGdController.cs | 11 +++++
entity/WwGdDetail.cs | 20 +++++-----
4 files changed, 76 insertions(+), 35 deletions(-)
diff --git a/Controllers/Wom/WwGdController.cs b/Controllers/Wom/WwGdController.cs
index e643409..fc2baf2 100644
--- a/Controllers/Wom/WwGdController.cs
+++ b/Controllers/Wom/WwGdController.cs
@@ -20,7 +20,7 @@
/// <returns>ResponseResult瀵硅薄锛屽寘鍚姸鎬併�佹秷鎭拰鏁版嵁</returns>
/// // Demo Request:
// POST /api/WwGd/ScanCode
- // Body:
+ // BodyGetItemsByDaa001
// {
// "query": {
// "Code": "SampleCode",
@@ -35,6 +35,15 @@
// 璋冪敤WwGdManager鐨凷canCode鏂规硶杩涜鎵爜鎿嶄綔
dynamic resultInfos = new ExpandoObject();
resultInfos.tbBillList = m.ScanCode(query);
+ if (resultInfos.tbBillList.result == "2")
+ {
+ return new ResponseResult
+ {
+ status = Convert.ToInt32(resultInfos.tbBillList.result),
+ message = resultInfos.tbBillList.strMsg,
+ data = resultInfos
+ };
+ }
return new ResponseResult
{
status = 0,
diff --git a/entity/WwGdDetail.cs b/entity/WwGdDetail.cs
index 5410d89..81053bc 100644
--- a/entity/WwGdDetail.cs
+++ b/entity/WwGdDetail.cs
@@ -39,14 +39,14 @@
/// 闇�棰�
/// </summary>
[SugarColumn(ColumnName = "dab006")]
- public int? Dab006 { get; set; }
+ public decimal? Dab006 { get; set; }
/// <summary>
/// 宸查
/// 榛樿鍊�: ((0))
/// </summary>
[SugarColumn(ColumnName = "dab007")]
- public int? Dab007 { get; set; }
+ public decimal? Dab007 { get; set; }
/// <summary>
/// 鍗曚綅
@@ -59,46 +59,46 @@
/// 榛樿鍊�: ((0))
/// </summary>
[SugarColumn(ColumnName = "dab020")]
- public int? Dab020 { get; set; }
+ public decimal? Dab020 { get; set; }
/// <summary>
/// 琛ラ鏁伴噺
/// 榛樿鍊�: ((0))
/// </summary>
[SugarColumn(ColumnName = "dab021")]
- public int? Dab021 { get; set; }
+ public decimal? Dab021 { get; set; }
/// <summary>
/// 閫�鏂欐暟閲�
/// 榛樿鍊�: ((0))
/// </summary>
[SugarColumn(ColumnName = "dab022")]
- public int? Dab022 { get; set; }
+ public decimal? Dab022 { get; set; }
/// <summary>
/// 瓒呴鏁伴噺
/// 榛樿鍊�: ((0))
/// </summary>
[SugarColumn(ColumnName = "dab023")]
- public int? Dab023 { get; set; }
+ public decimal? Dab023 { get; set; }
/// <summary>
/// 鑹搧閫�鏂�
/// </summary>
[SugarColumn(ColumnName = "lp_tl")]
- public int? LpTl { get; set; }
+ public decimal? LpTl { get; set; }
/// <summary>
/// 鏉ユ枡涓嶈壇
/// </summary>
[SugarColumn(ColumnName = "ll_bl")]
- public int? LlBl { get; set; }
+ public decimal? LlBl { get; set; }
/// <summary>
/// 浣滀笟涓嶈壇
/// </summary>
[SugarColumn(ColumnName = "zy_bl")]
- public int? ZyBl { get; set; }
+ public decimal? ZyBl { get; set; }
/// <summary>
/// 浠撳簱id
@@ -122,7 +122,7 @@
/// 缁勬垚鐢ㄩ噺
/// </summary>
[SugarColumn(ColumnName = "dab012")]
- public int? Dab012 { get; set; }
+ public decimal? Dab012 { get; set; }
/// <summary>
/// 搴忓彿
diff --git a/service/Warehouse/InventoryManager.cs b/service/Warehouse/InventoryManager.cs
index 68195fe..c3ccba8 100644
--- a/service/Warehouse/InventoryManager.cs
+++ b/service/Warehouse/InventoryManager.cs
@@ -57,7 +57,7 @@
))
.Where((a, b) => a.DepotSectionCode == p_section_code)
.Select((a, b) => new
- { a.DepotSectionName, b.DepotCode, b.DepotName, b.DepotId })
+ { a.DepotSectionName, b.DepotCode, b.DepotName, b.DepotId,b.FSubsidiary })
.Single();
// 濡傛灉搴撲綅浠g爜涓嶅瓨鍦紝鍒欒繑鍥為敊璇俊鎭�
@@ -133,7 +133,8 @@
? "1"
: "0",
CbillNo = c_mes_inv_item_barcodes.BillNo,
- Fstatus = 0
+ Fstatus = 0,
+ ReceiveOrgId = depotSection.FSubsidiary,
};
db.Insertable(newMesInvItemIns)
.IgnoreColumns(true)
@@ -173,7 +174,8 @@
UrgentFlag = c_mes_inv_item_barcodes.UrgentFlag,
BoardStyle = c_mes_inv_item_barcodes.BoardStyle,
TaskNo = c_mes_inv_item_barcodes.TaskNo,
- ItemId = c_mes_inv_item_barcodes.ItemId
+ ItemId = c_mes_inv_item_barcodes.ItemId,
+ ReceiveOrgId = depotSection.FSubsidiary,
}).IgnoreColumns(true).ExecuteCommand();
@@ -228,7 +230,8 @@
// ItemUnit = c_mes_inv_item_barcodes.Unit,
SuppNo = c_mes_inv_item_barcodes.SuppNo,
ItemId = c_mes_inv_item_barcodes.ItemId,
- IndepUserCode = c_user
+ IndepUserCode = c_user,
+ StockOrgId = depotSection.FSubsidiary,
// Fsubsidiary = c_organize
}).IgnoreColumns(true).ExecuteCommand();
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