From 5bc70ea9041912fd6239822b32748d55d6fb6f4b Mon Sep 17 00:00:00 2001
From: 南骏 池 <chiffly@163.com>
Date: 星期三, 02 四月 2025 14:29:13 +0800
Subject: [PATCH] 1.采购入库返回值调整,优化效率 2.新增货主类型通用类。
---
service/Warehouse/MesSttlManager.cs | 2
service/Wom/WomdaaManager.cs | 2
entity/Base/ItemDetailModel.cs | 2
service/Warehouse/MesItemTblManager.cs | 2
service/Warehouse/MesXsckManager.cs | 1
service/Warehouse/MesXsthManager.cs | 1
service/Warehouse/TransferOutManager.cs | 1
Dto/service/PurchaseInventory.cs | 10 +
service/Warehouse/MesDepotSectionsManager.cs | 11 +
NewPdaSqlServer.csproj | 12
service/Warehouse/MesStrkManager.cs | 1
service/base/WmsBaseMangeer.cs | 33 ++++
Dto/service/ProductionPickDto.cs | 4
entity/Base/ItemInBaseModel.cs | 22 +++
service/Warehouse/MesInvItemInCDetailsManager.cs | 268 +++++++++++++++++++++++--------------
Controllers/Warehouse/MesInvItemInCDetailsController.cs | 2
16 files changed, 253 insertions(+), 121 deletions(-)
diff --git a/Controllers/Warehouse/MesInvItemInCDetailsController.cs b/Controllers/Warehouse/MesInvItemInCDetailsController.cs
index 3008dcc..026df77 100644
--- a/Controllers/Warehouse/MesInvItemInCDetailsController.cs
+++ b/Controllers/Warehouse/MesInvItemInCDetailsController.cs
@@ -109,7 +109,7 @@
return new ResponseResult
{
status = 0,
- message = "OK",
+ message = resultInfos.tbBillList.Message,
data = resultInfos
};
}
diff --git a/Dto/service/ProductionPickDto.cs b/Dto/service/ProductionPickDto.cs
index cbfe51f..f45b57f 100644
--- a/Dto/service/ProductionPickDto.cs
+++ b/Dto/service/ProductionPickDto.cs
@@ -1,5 +1,5 @@
-锘縰sing MES.Service.Modes;
-using NewPdaSqlServer.entity;
+锘縰sing NewPdaSqlServer.entity;
+using NewPdaSqlServer.entity.Base;
namespace NewPdaSqlServer.Dto.service;
diff --git a/Dto/service/PurchaseInventory.cs b/Dto/service/PurchaseInventory.cs
index b74572e..2c827a1 100644
--- a/Dto/service/PurchaseInventory.cs
+++ b/Dto/service/PurchaseInventory.cs
@@ -9,11 +9,15 @@
public decimal? SumQuantity { get; set; }
public MesInvItemIns? ItemIns { get; set; }
- public List<MesInvItemInCDetails>? InvItemInCDetails { get; set; }
- public List<MesInvItemInCItems>? ItemInDetails { get; set; }
+ //鏉$爜鏄庣粏
+ public List<dynamic>? InvItemInCDetails { get; set; }
- public List<MesInvItemStocks>? ItemStocks { get; set; }
+ //鐗╂枡鏄庣粏
+ public List<dynamic>? ItemInDetails { get; set; }
+
+ //
+ public List<dynamic>? ItemStocks { get; set; }
public string? Message { get; set; }
}
\ No newline at end of file
diff --git a/NewPdaSqlServer.csproj b/NewPdaSqlServer.csproj
index c6f3641..a720b22 100644
--- a/NewPdaSqlServer.csproj
+++ b/NewPdaSqlServer.csproj
@@ -7,12 +7,12 @@
</PropertyGroup>
<ItemGroup>
- <PackageReference Include="Masuit.Tools.Core" Version="2024.5.8"/>
- <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="8.0.8"/>
- <PackageReference Include="Microsoft.AspNetCore.OpenApi" Version="8.0.10"/>
- <PackageReference Include="SqlSugarCore" Version="5.1.4.169"/>
- <PackageReference Include="Swashbuckle.AspNetCore" Version="6.8.0"/>
- <PackageReference Include="System.Data.SqlClient" Version="4.8.6"/>
+ <PackageReference Include="Masuit.Tools.Core" Version="2024.5.8" />
+ <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="8.0.8" />
+ <PackageReference Include="Microsoft.AspNetCore.OpenApi" Version="8.0.10" />
+ <PackageReference Include="SqlSugarCore" Version="5.1.4.169" />
+ <PackageReference Include="Swashbuckle.AspNetCore" Version="6.8.0" />
+ <PackageReference Include="System.Data.SqlClient" Version="4.8.6" />
</ItemGroup>
</Project>
diff --git a/entity/ItemDetailModel.cs b/entity/Base/ItemDetailModel.cs
similarity index 94%
rename from entity/ItemDetailModel.cs
rename to entity/Base/ItemDetailModel.cs
index ff3ac10..d31e62c 100644
--- a/entity/ItemDetailModel.cs
+++ b/entity/Base/ItemDetailModel.cs
@@ -1,6 +1,6 @@
锘縰sing SqlSugar;
-namespace MES.Service.Modes;
+namespace NewPdaSqlServer.entity.Base;
//璋冩嫧鍑哄叆搴撳崟閫氱敤绫�
public class ItemDetailModel
diff --git a/entity/Base/ItemInBaseModel.cs b/entity/Base/ItemInBaseModel.cs
new file mode 100644
index 0000000..dc6418e
--- /dev/null
+++ b/entity/Base/ItemInBaseModel.cs
@@ -0,0 +1,22 @@
+锘縰sing SqlSugar;
+
+namespace NewPdaSqlServer.entity.Base;
+
+//璋冩嫧鍑哄叆搴撳崟閫氱敤绫�
+public class ItemInBaseModel
+{
+ //鐗╂枡淇℃伅
+ public MesItems itemDetail { get; set; }
+ //鏉$爜鏄庣粏
+ public List<dynamic>? ItemBarCDetails { get; set; }
+ //鐗╂枡姹囨�绘槑缁�
+ public List<dynamic>? ItemInDetails { get; set; }
+ //鍑�/鍏ュ簱鍗曚俊鎭�
+ public List<dynamic>? MesInvItem { get; set; }
+
+ //杩斿洖淇℃伅
+ public string? Message { get; set; }
+
+ //鍏ュ簱鎬绘暟
+ public decimal? SumQuantity { get; set; }
+}
\ No newline at end of file
diff --git a/service/Warehouse/MesDepotSectionsManager.cs b/service/Warehouse/MesDepotSectionsManager.cs
index ec846e0..33fda90 100644
--- a/service/Warehouse/MesDepotSectionsManager.cs
+++ b/service/Warehouse/MesDepotSectionsManager.cs
@@ -7,14 +7,19 @@
public class MesDepotSectionsManager : Repository<MesDepotSections>
{
- public string GetSectionName(WarehouseQuery query)
+ public dynamic GetSectionName(WarehouseQuery query)
{
var sectionName = Db.Queryable<MesDepotSections, MesDepots>(
(a, b) =>
new JoinQueryInfos(JoinType.Inner,
- a.DepotGuid == b.Guid))
+ a.DepotGuid == b.Guid)) // 纭繚Guid绫诲瀷姝g‘姣旇緝
.Where((a, b) => a.DepotSectionCode == query.sectionCode)
- .Select((a, b) => a.DepotSectionName).Single();
+ .Select((a, b) => new // 鏀圭敤鍖垮悕绫诲瀷鏇夸唬dynamic
+ {
+ a.DepotSectionName,
+ DepotName = b.DepotName, // 鏄惧紡鎸囧畾瀛楁鍒悕
+ DepotCode = b.DepotCode
+ }).Single();
if (sectionName == null)
throw new Exception("搴撲綅缂栫爜 " + query.sectionCode + " 涓嶅瓨鍦紝璇风‘璁わ紒");
diff --git a/service/Warehouse/MesInvItemInCDetailsManager.cs b/service/Warehouse/MesInvItemInCDetailsManager.cs
index fb5e185..78c31d2 100644
--- a/service/Warehouse/MesInvItemInCDetailsManager.cs
+++ b/service/Warehouse/MesInvItemInCDetailsManager.cs
@@ -2,9 +2,12 @@
using NewPdaSqlServer.DB;
using NewPdaSqlServer.Dto.service;
using NewPdaSqlServer.entity;
+using NewPdaSqlServer.entity.Base;
+using NewPdaSqlServer.service.@base;
using NewPdaSqlServer.util;
using Newtonsoft.Json;
using SqlSugar;
+using static Microsoft.EntityFrameworkCore.DbLoggerCategory;
namespace NewPdaSqlServer.service.Warehouse;
@@ -12,7 +15,7 @@
{
//褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉�
- public PurchaseInventory SaveBarCodes(WarehouseQuery entity)
+ public ItemInBaseModel SaveBarCodes(WarehouseQuery entity)
{
string functionName = "閲囪喘鍏ュ簱", fieldName = null, inFieldVal = null;
string user = entity.userName,
@@ -23,17 +26,17 @@
var freeze = 0;
decimal cSyQty = 0;
- if (string.IsNullOrEmpty(sectionCode))
- throw new Exception("璇锋壂搴撲綅鏉$爜锛�");
+ //if (string.IsNullOrEmpty(sectionCode))
+ // throw new Exception("璇锋壂搴撲綅鏉$爜锛�");
var itemBarcodeDetails = Db.Queryable<MesInvItemBarcodes>()
.Where(it => it.ItemBarcode == itemBarcode)
.First();
- if (itemBarcodeDetails == null)
- throw new Exception("鏉$爜涓嶅瓨鍦紝璇锋牳瀵癸紒");
+ //if (itemBarcodeDetails == null)
+ // throw new Exception("鏉$爜涓嶅瓨鍦紝璇锋牳瀵癸紒");
- if (itemBarcodeDetails.ComeFlg == 0)
+ if (string.IsNullOrEmpty(itemBarcodeDetails.Memo) || itemBarcodeDetails.Memo != "閲囪喘鍏ュ簱")
throw new Exception("姝ゆ潯鐮佷笉灞炰簬鍒拌揣鏉$爜锛屾棤娉曠敤閲囪喘鍏ュ簱锛�");
var inventory = Db.Queryable<MesInvItemArn>()
@@ -60,6 +63,11 @@
if (inventoryDetails == null)
throw new Exception("姝ゆ潯鐮佹壘涓嶅埌瀵瑰簲鏀惰揣鍗曟槑缁嗭紒");
+
+ if (string.IsNullOrEmpty(inventoryDetails.CheckRes) || inventoryDetails.CheckRes != "鍚堟牸")
+ {
+ throw new Exception("璇ユ潯鐮佸搴旂殑鏀舵枡鍗曟楠屼笉鍚堟牸鎴栨湭妫�楠岋紒");
+ }
var depotCode = Db.Queryable<MesDepotSections>()
.Where(it => it.DepotSectionCode == sectionCode)
@@ -88,90 +96,111 @@
}
- num = Db.Queryable<MesInvItemInCDetails>()
- .Where(it => it.ItemBarcode == itemBarcode)
- .Count();
+ //num = Db.Queryable<MesInvItemInCDetails>()
+ // .Where(it => it.ItemBarcode == itemBarcode)
+ // .Count();
- if (num > 0)
- throw new Exception("姝ゆ潯鐮佸凡鎵爜鍏ュ簱瀹屾垚锛岃鏍稿锛�");
+ //if (num > 0)
+ // throw new Exception("姝ゆ潯鐮佸凡鎵爜鍏ュ簱瀹屾垚锛岃鏍稿锛�");
- num = Db.Queryable<MesInvItemStocks>()
- .Where(it => it.ItemBarcode == itemBarcode)
- .Count();
+ //num = Db.Queryable<MesInvItemStocks>()
+ // .Where(it => it.ItemBarcode == itemBarcode)
+ // .Count();
- if (num > 0)
- throw new Exception("姝ゆ潯鐮佸凡鎵爜鍏ュ簱锛岃鏍稿锛�");
+ //if (num > 0)
+ // throw new Exception("姝ゆ潯鐮佸凡鎵爜鍏ュ簱锛岃鏍稿锛�");
- num = Db.Queryable<MesInvItemArn>()
- .Where(a => a.BillNo == itemBarcodeDetails.BillNo)
- .InnerJoin<MesInvItemArnDetail>((a, b) =>
- b.ParentGuid == a.Guid &&
- b.ItemId == itemBarcodeDetails.ItemId && b.Ischeck == 1)
- .Count();
+ var wmsManager = new WmsBaseMangeer();
+ // 鏂板鍏ュ簱鏍¢獙锛堣皟鐢ㄥ瓨鍌ㄨ繃绋嬶級
+ var checkResult = wmsManager.pdaInvJY(
+ db: Db,
+ edtUserNo: entity.userName,
+ barcode: entity.barcode,
+ sectionCode: sectionCode,
+ stockId: mesDepost.DepotId.ToString(),
+ stockOrgId: mesDepost.FSubsidiary,
+ billNo: "", // 鏍规嵁瀹為檯鍗曟嵁鍙蜂紶鍊�
+ transactionNo: "101" // 浜嬪姟绫诲瀷涓庡瓨鍌ㄨ繃绋嬪尮閰�
+ );
- num2 = Db.Queryable<MesInvItemArn>()
- .Where(a => a.BillNo == itemBarcodeDetails.BillNo)
- .InnerJoin<MesInvItemArnDetail>((a, b) => b.ParentGuid == a.Guid
- && b.ItemId == itemBarcodeDetails.ItemId
- && (b.CheckRes == "鍚堟牸" || b.CheckStates == "鐗归噰鐩存帴浣跨敤"))
- .Count();
+ if (Convert.ToInt32(checkResult.result) < 1)
+ throw new Exception($"鍏ュ簱鏍¢獙澶辫触锛歿checkResult.strMsg}");
- switch (num)
- {
- case 0 when num2 == 0:
- case > 0 when num2 == 0:
- freeze = 1;
- break;
- case 0 when num2 > 0:
- throw new Exception("鍏ュ簱澶辫触,鍒拌揣鍗曟嵁鏈夐棶棰橈紒");
- }
- var owner_type = "";
- if (Db.Queryable<SysOrganization>().Any(x => x.Fid == cgddDetails.DemandOrg))
- {
- owner_type = "BD_OwnerOrg";
- }
- else
- {
- // 绗簩灞傚垽鏂細妫�鏌� MES_CUSTOMER
- if (Db.Queryable<MesCustomer>().Any(x => x.Id == Convert.ToInt32(cgddDetails.DemandOrg)))
- {
- owner_type = "BD_Customer";
- }
- else
- {
- // 绗笁灞傚垽鏂細妫�鏌� MES_SUPPLIER
- if (Db.Queryable<MesSupplier>().Any(x => x.Id == Convert.ToInt32(cgddDetails.DemandOrg)))
- {
- owner_type = "BD_Supplier";
- }
- else
- {
- // 绗洓灞傚垽鏂細鍐嶆妫�鏌� SYS_ORGANIZATION
- if (Db.Queryable<SysOrganization>().Any(x => x.Fid == cgddDetails.ReceivingOrg))
- {
- owner_type = "BD_OwnerOrg";
- }
- else
- {
- throw new Exception("鍏ュ簱澶辫触,鍒拌揣鍗曟嵁瀵瑰簲鐨勯渶姹傜粍缁囨湁闂锛�");
- }
- }
- }
- }
+ //num = Db.Queryable<MesInvItemArn>()
+ // .Where(a => a.BillNo == itemBarcodeDetails.BillNo)
+ // .InnerJoin<MesInvItemArnDetail>((a, b) =>
+ // b.ParentGuid == a.Guid &&
+ // b.ItemId == itemBarcodeDetails.ItemId && b.Ischeck == 1)
+ // .Count();
- var result = new PurchaseInventory();
+ //num2 = Db.Queryable<MesInvItemArn>()
+ // .Where(a => a.BillNo == itemBarcodeDetails.BillNo)
+ // .InnerJoin<MesInvItemArnDetail>((a, b) => b.ParentGuid == a.Guid
+ // && b.ItemId == itemBarcodeDetails.ItemId
+ // && (b.CheckRes == "鍚堟牸" || b.CheckStates == "鐗归噰鐩存帴浣跨敤"))
+ // .Count();
+
+ //switch (num)
+ //{
+ // case 0 when num2 == 0:
+ // case > 0 when num2 == 0:
+ // freeze = 1;
+ // break;
+ // case 0 when num2 > 0:
+ // throw new Exception("鍏ュ簱澶辫触,鍒拌揣鍗曟嵁鏈夐棶棰橈紒");
+ //}
+
+
+ // 鍒ゆ柇璐т富绫诲瀷
+ var owner_type = wmsManager.GetOwnerType(cgddDetails.DemandOrg);
+ // if (Db.Queryable<SysOrganization>().Any(x => x.Fid == cgddDetails.DemandOrg))
+ // {
+ // owner_type = "BD_OwnerOrg";
+ // }
+ // else
+ // {
+ // // 绗簩灞傚垽鏂細妫�鏌� MES_CUSTOMER
+ // if (Db.Queryable<MesCustomer>().Any(x => x.Id == Convert.ToInt32(cgddDetails.DemandOrg)))
+ // {
+ // owner_type = "BD_Customer";
+ // }
+ // else
+ // {
+ // // 绗笁灞傚垽鏂細妫�鏌� MES_SUPPLIER
+ // if (Db.Queryable<MesSupplier>().Any(x => x.Id == Convert.ToInt32(cgddDetails.DemandOrg)))
+ // {
+ // owner_type = "BD_Supplier";
+ // }
+ // else
+ // {
+
+ // // 绗洓灞傚垽鏂細鍐嶆妫�鏌� SYS_ORGANIZATION
+ // if (Db.Queryable<SysOrganization>().Any(x => x.Fid == cgddDetails.ReceivingOrg))
+ // {
+ // owner_type = "BD_OwnerOrg";
+ // }
+ // else
+ // {
+ // throw new Exception("鍏ュ簱澶辫触,鍒拌揣鍗曟嵁瀵瑰簲鐨勯渶姹傜粍缁囨湁闂锛�");
+ // }
+ // }
+ // }
+ //}
+
+ var result = new ItemInBaseModel();
UseTransaction(db =>
{
var existingRecord = db.Queryable<MesInvItemIns>()
.Where(it => it.InsDate.Value.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd")
+ && it.TaskNo == itemBarcodeDetails.BillNo
&& it.Status == 0
&& it.TransctionNo == transactionNo
+ && it.CreateBy == entity.userName
&& it.BillTypeId == billTypeId
- && it.TaskNo == itemBarcodeDetails.BillNo
- && it.DepotsCode == mesDepost.DepotCode)
+ && it.DepotsId == mesDepost.DepotId)
.Select(it => new
{
it.Guid,
@@ -488,8 +517,7 @@
it.ItemInId == cId &&
it.ItemId == detailone.ItemId &&
it.DepotId == depotCode2 &&
- it.EbelnK3id == detailone.EbelnK3id &&
- it.LineK3id == detailone.LineK3id)
+ it.itemDabid == itemBarcodeDetails.AboutGuid.ToString())
.Count();
if (existingCount == 0)
@@ -527,11 +555,10 @@
Quantity = SqlFunc.IsNull(it.Quantity, 0) + itemBarcodeDetails.Quantity // 纭繚 Quantity 涓嶄负 null
})
.Where(it =>
- it.ItemInId == cId &&
- it.ItemId == detailone.ItemId &&
- it.DepotId == depotCode2 &&
- it.EbelnK3id == detailone.EbelnK3id &&
- it.LineK3id == detailone.LineK3id)
+ it.ItemInId == cId &&
+ it.ItemId == detailone.ItemId &&
+ it.DepotId == depotCode2 &&
+ it.itemDabid == itemBarcodeDetails.AboutGuid.ToString())
//.IgnoreColumns(true) // 淇濈暀 IgnoreColumns
.ExecuteCommand();
@@ -646,18 +673,19 @@
if (itemBarcodeDetails.Hbdy != 1)
{
+ //鏇存柊鏀舵枡鍗曟槑缁�
db.Updateable<MesInvItemArnDetail>()
.SetColumns(d => new MesInvItemArnDetail
{
OkRkqty = (int)((d.OkRkqty ?? 0) + cSyQty)
})
- .Where(d => d.Guid == inventoryDetails.Guid)
+ .Where(d => d.Guid == itemBarcodeDetails.AboutGuid)
.ExecuteCommand();
var first = db
.Queryable<MesInvItemArnDetail>()
.Where(b =>
- b.Guid == inventoryDetails.Guid)
+ b.Guid == itemBarcodeDetails.AboutGuid)
.Select(b => new
{
TotalQuantity =
@@ -672,7 +700,7 @@
if (TotalQuantity == TotalOkRkQty)
db.Updateable<MesInvItemArnDetail>()
.SetColumns(s => s.IsdepsIn == true)
- .Where(s => s.Guid == inventoryDetails.Guid)
+ .Where(s => s.Guid == itemBarcodeDetails.AboutGuid)
.ExecuteCommand();
@@ -695,9 +723,9 @@
.ExecuteCommand();
var totalCDetailsQuantity = db.Queryable<MesInvItemInCDetails>()
- .Where(it => it.WorkLine == itemBarcodeDetails.WorkLine &&
+ .Where(it => it.ItemId == itemBarcodeDetails.ItemId &&
it.WorkNo == itemBarcodeDetails.WorkNo &&
- it.CbillNo == itemBarcodeDetails.BillNo)
+ it.ItemInId == cId)
.Sum(it => it.Quantity);
var detailSummary = db.Queryable<MesInvItemArnDetail>()
@@ -719,12 +747,50 @@
var mesItems = db.Queryable<MesItems>()
.Where(s => s.Id == itemBarcodeDetails.ItemId).First();
- result.Message =
- $"鏉$爜鏁伴噺 {itemBarcodeDetails.Quantity},閲囪喘璁㈠崟 {itemBarcodeDetails.WorkNo} 椤规 {itemBarcodeDetails.WorkLine} 鐗╂枡 {mesItems.ItemNo} 鏈鍏ュ簱鎬绘暟锛歿totalCDetailsQuantity} 鎬诲埌 {comeQty} 宸插叆 {invQty} 娆� {diffQty}";
+ //result.Message =
+ // $"鏉$爜鏁伴噺 {itemBarcodeDetails.Quantity},閲囪喘璁㈠崟 {itemBarcodeDetails.WorkNo} 椤规 {itemBarcodeDetails.WorkLine} 鐗╂枡 {mesItems.ItemNo} 鏈鍏ュ簱鎬绘暟锛歿totalCDetailsQuantity} 鎬诲埌 {comeQty} 宸插叆 {invQty} 娆� {diffQty}";
+ result.Message = $"鐗╂枡{mesItems.ItemNo}鍏ュ簱鎴愬姛鏁伴噺{itemBarcodeDetails.Quantity.ToString()}";
+
+ result.itemDetail = mesItems;
+
+ result.ItemInDetails = db.Queryable<MesInvItemInCItems,MesItems>(
+ (a, b) => new JoinQueryInfos(
+ JoinType.Left,
+ a.ItemId == b.ItemId)
+ )
+ .Where(a => a.ItemInId == cId && a.ItemId == itemBarcodeDetails.ItemId)
+ .Select<dynamic>((a, b) => new
+ {
+ ItemNo = b.ItemNo,
+ ItemName = b.ItemName,
+ ItemModel = b.ItemModel,
+ FQty = a.Quantity, // 鐢宠鏁伴噺
+ FMaterialId = b.ItemId,
+ Id = b.Guid.ToString()
+ })
+ .ToList();
+
+ result.ItemBarCDetails = db.Queryable<MesInvItemInCDetails, MesItems>(
+ (a, b) => new JoinQueryInfos(
+ JoinType.Left,
+ a.ItemId == b.ItemId)
+ )
+ .Where(a => a.ItemInId == cId && a.ItemId == itemBarcodeDetails.ItemId)
+ .Select<dynamic>((a, b) => new
+ {
+ ItemNo = b.ItemNo,
+ ItemName = b.ItemName,
+ ItemModel = b.ItemModel,
+ FQty = a.Quantity, // 鐢宠鏁伴噺
+ FMaterialId = b.ItemId,
+ Id = a.Guid.ToString(),
+ kw = a.DepotSectionCode
+ })
+ .ToList();
- result.ItemNo = mesItems.ItemNo;
- result.SumQuantity = Convert.ToDecimal(totalCDetailsQuantity);
+ //result.ItemNo = mesItems.ItemNo;
+ result.SumQuantity = Convert.ToDecimal(invQty);
return 1;
}
@@ -751,14 +817,12 @@
// Step 2: Calculate total sum from `mes_inv_item_in_c_details`
var totalCDetailsQuantity = db.Queryable<MesInvItemInCDetails>()
- .Where(it => it.CbillNo == itemBarcodeDetails.BillNo &&
- it.ItemId == itemBarcodeDetails.ItemId)
+ .Where(it => it.Guid == itemBarcodeDetails.AboutGuid)
.Sum(it => it.Quantity);
// Step 3: Calculate comeQty and invQty from `mes_inv_item_arn_detail`
var detailSummary = db.Queryable<MesInvItemArnDetail>()
- .Where(it => it.CbillNo == itemBarcodeDetails.BillNo &&
- it.ItemId == itemBarcodeDetails.ItemId)
+ .Where(it => it.Guid == itemBarcodeDetails.AboutGuid)
.Select(it => new
{
TotalComeQty = SqlFunc.AggregateSum(it.Quantity),
@@ -781,7 +845,7 @@
$" 鏉$爜鏁伴噺:{itemBarcodeDetails.Quantity},鐗╂枡 {mesItems.ItemNo} 鏈鍏ュ簱鎬绘暟锛歿totalCDetailsQuantity} 鎬诲埌 {comeQty} 宸插叆 {invQty} 娆� {diffQty}";
- result.ItemNo = mesItems.ItemNo;
+ //result.ItemNo = mesItems.ItemNo;
result.SumQuantity = Convert.ToDecimal(totalCDetailsQuantity);
}
@@ -796,20 +860,20 @@
var purchaseInventory = getPurchaseInventory(entity);
- result.ItemIns = purchaseInventory.ItemIns;
- result.ItemInDetails = purchaseInventory.ItemInDetails;
- result.InvItemInCDetails = purchaseInventory.InvItemInCDetails;
+
+ //result.ItemInDetails = purchaseInventory.ItemInDetails;
+ //result.InvItemInCDetails = purchaseInventory.InvItemInCDetails;
return result;
}
- public PurchaseInventory getPurchaseInventory(WarehouseQuery query)
+ public ItemInBaseModel getPurchaseInventory(WarehouseQuery query)
{
- return new PurchaseInventory
+ return new ItemInBaseModel
{
- ItemIns = GetInvItemInsList(query).Items[0],
- ItemInDetails = GetItemInDetails(query.id),
- InvItemInCDetails = GetInvItemInCDetails(query.id)
+ //ItemIns = GetInvItemInsList(query).Items[0],
+ //ItemInDetails = GetItemInDetails(query.id),
+ //InvItemInCDetails = GetInvItemInCDetails(query.id)
};
}
diff --git a/service/Warehouse/MesItemTblManager.cs b/service/Warehouse/MesItemTblManager.cs
index 0bd989f..245d931 100644
--- a/service/Warehouse/MesItemTblManager.cs
+++ b/service/Warehouse/MesItemTblManager.cs
@@ -1,8 +1,8 @@
锘縰sing Masuit.Tools;
-using MES.Service.Modes;
using NewPdaSqlServer.DB;
using NewPdaSqlServer.Dto.service;
using NewPdaSqlServer.entity;
+using NewPdaSqlServer.entity.Base;
using NewPdaSqlServer.util;
using SqlSugar;
using System.Security.Cryptography;
diff --git a/service/Warehouse/MesStrkManager.cs b/service/Warehouse/MesStrkManager.cs
index e0a12d0..3f684ad 100644
--- a/service/Warehouse/MesStrkManager.cs
+++ b/service/Warehouse/MesStrkManager.cs
@@ -4,6 +4,7 @@
using NewPdaSqlServer.DB;
using NewPdaSqlServer.Dto.service;
using NewPdaSqlServer.entity;
+using NewPdaSqlServer.entity.Base;
using NewPdaSqlServer.util;
using OracleInternal.Sharding;
using SqlSugar;
diff --git a/service/Warehouse/MesSttlManager.cs b/service/Warehouse/MesSttlManager.cs
index 22f1a79..74f90d1 100644
--- a/service/Warehouse/MesSttlManager.cs
+++ b/service/Warehouse/MesSttlManager.cs
@@ -1,9 +1,9 @@
锘縰sing Masuit.Tools;
using MES.Service.Models;
-using MES.Service.Modes;
using NewPdaSqlServer.DB;
using NewPdaSqlServer.Dto.service;
using NewPdaSqlServer.entity;
+using NewPdaSqlServer.entity.Base;
using NewPdaSqlServer.util;
using OracleInternal.Sharding;
using SqlSugar;
diff --git a/service/Warehouse/MesXsckManager.cs b/service/Warehouse/MesXsckManager.cs
index fcc2cd6..d5da216 100644
--- a/service/Warehouse/MesXsckManager.cs
+++ b/service/Warehouse/MesXsckManager.cs
@@ -3,6 +3,7 @@
using NewPdaSqlServer.DB;
using NewPdaSqlServer.Dto.service;
using NewPdaSqlServer.entity;
+using NewPdaSqlServer.entity.Base;
using NewPdaSqlServer.util;
using SqlSugar;
using SqlSugar.Extensions;
diff --git a/service/Warehouse/MesXsthManager.cs b/service/Warehouse/MesXsthManager.cs
index 5298152..56a163f 100644
--- a/service/Warehouse/MesXsthManager.cs
+++ b/service/Warehouse/MesXsthManager.cs
@@ -3,6 +3,7 @@
using NewPdaSqlServer.DB;
using NewPdaSqlServer.Dto.service;
using NewPdaSqlServer.entity;
+using NewPdaSqlServer.entity.Base;
using NewPdaSqlServer.util;
using OracleInternal.Sharding;
using SqlSugar;
diff --git a/service/Warehouse/TransferOutManager.cs b/service/Warehouse/TransferOutManager.cs
index d30ddd0..06d5955 100644
--- a/service/Warehouse/TransferOutManager.cs
+++ b/service/Warehouse/TransferOutManager.cs
@@ -4,6 +4,7 @@
using NewPdaSqlServer.DB;
using NewPdaSqlServer.Dto.service;
using NewPdaSqlServer.entity;
+using NewPdaSqlServer.entity.Base;
using SqlSugar;
namespace NewPdaSqlServer.service.Warehouse;
diff --git a/service/Wom/WomdaaManager.cs b/service/Wom/WomdaaManager.cs
index 4e169d9..2cc6490 100644
--- a/service/Wom/WomdaaManager.cs
+++ b/service/Wom/WomdaaManager.cs
@@ -1,11 +1,11 @@
锘縰sing System.Data;
using System.Data.SqlClient;
using Masuit.Tools;
-using MES.Service.Modes;
using Microsoft.SqlServer.Server;
using NewPdaSqlServer.DB;
using NewPdaSqlServer.Dto.service;
using NewPdaSqlServer.entity;
+using NewPdaSqlServer.entity.Base;
using SqlSugar;
namespace NewPdaSqlServer.service.Wom;
diff --git a/service/base/WmsBaseMangeer.cs b/service/base/WmsBaseMangeer.cs
index f36b0e0..e3eadf8 100644
--- a/service/base/WmsBaseMangeer.cs
+++ b/service/base/WmsBaseMangeer.cs
@@ -113,5 +113,38 @@
return itemInfo;
}
+
+
+ /// <summary>
+ /// 鑾峰彇璐т富绫诲瀷
+ /// </summary>
+ /// <param name="ownerId">璐т富ID</param>
+ /// <returns>璐т富绫诲瀷(BD_OwnerOrg/BD_Customer/BD_Supplier)</returns>
+ public string GetOwnerType(string ownerId)
+ {
+ if (string.IsNullOrEmpty(ownerId))
+ throw new ArgumentNullException(nameof(ownerId));
+
+ if (Db.Queryable<SysOrganization>().Any(x => x.Fid == ownerId))
+ {
+ return "BD_OwnerOrg";
+ }
+ else if (Db.Queryable<MesCustomer>().Any(x => x.Id == Convert.ToInt32(ownerId)))
+ {
+ return "BD_Customer";
+ }
+ else if (Db.Queryable<MesSupplier>().Any(x => x.Id == Convert.ToInt32(ownerId)))
+ {
+ return "BD_Supplier";
+ }
+ else if (Db.Queryable<SysOrganization>().Any(x => x.Fid == ownerId))
+ {
+ return "BD_OwnerOrg";
+ }
+
+ throw new Exception("鏃犳硶纭畾璐т富绫诲瀷锛岃妫�鏌ヨ揣涓籌D鏄惁姝g‘锛�");
+ }
+
+
}
}
\ No newline at end of file
--
Gitblit v1.9.3