From 0705cb6170a9ba77ba48bbb6dcebb9cf3d73cbea Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期二, 14 十月 2025 02:12:25 +0800
Subject: [PATCH] Merge branch 'master' of http://115.159.85.185:8098/r/MeiRuiAn/HuaiAn
---
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/ReceiveOrderDetailService.cs | 87 ++++++++++++++++++++++++-------------------
1 files changed, 48 insertions(+), 39 deletions(-)
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/ReceiveOrderDetailService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/ReceiveOrderDetailService.cs"
index cfd7567..bf5bd87 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/ReceiveOrderDetailService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/ReceiveOrderDetailService.cs"
@@ -9,6 +9,7 @@
using System.Threading.Tasks;
using WIDESEA_Common.CommonEnum;
using WIDESEA_Common.OrderEnum;
+using WIDESEA_Common.WareHouseEnum;
using WIDESEA_Core;
using WIDESEA_Core.BaseRepository;
using WIDESEA_Core.BaseServices;
@@ -62,6 +63,7 @@
{
try
{
+ //鑾峰彇鏀惰揣鍗�
Dt_ReceiveOrder receiveOrder = _inboundRepository.ReceiveOrderRepository.Db.Queryable<Dt_ReceiveOrder>().Where(x => x.ReceiveOrderNo == orderNo).Includes(x => x.Details).First();
if (receiveOrder == null)
{
@@ -75,8 +77,7 @@
Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseId == receiveOrder.WarehouseId);
MatSerNumAnalysisModel model = CodeAnalysisHelper.CodeAnalysis<MatSerNumAnalysisModel>(AnalysisCodeEnum.MatSerNumAnalysis, serNum);
Dt_SupplierInfo supplierInfo = _supplierInfoRepository.QueryFirst(x => x.SupplierCode == receiveOrder.SuppliersId);
- //鏀惰揣澧炲姞鎵规鍗℃帶
- //鏌ヨ鏀惰揣鏄庣粏鏄惁鏈夊瓨鍦ㄥ悓涓�涓壒娆�
+ //鏀惰揣澧炲姞鎵规鍗℃帶,鏌ヨ鏀惰揣鏄庣粏鏄惁鏈夊瓨鍦ㄥ悓涓�涓壒娆�
Dt_ReceiveOrderDetail receiveOrderDetailOld = _inboundRepository.ReceiveOrderDetailRepository.QueryFirst(x => x.LotNo == model.LotNo && x.MaterielCode == model.MaterielCode);
Dt_ReceiveOrder? receiveOrderOld = null;
if (receiveOrderDetailOld!=null)
@@ -98,6 +99,7 @@
{
return WebResponseContent.Instance.Error($"搴撳瓨{stockInfo.PalletCode}涓壒娆model.LotNo}宸插瓨鍦�");
}
+ //鏃ユ湡鏍煎紡楠岃瘉
if (model!=null)
{
string format = "yyyy-MM-dd"; // 鐩爣鏍煎紡
@@ -183,6 +185,7 @@
if (materielInfo.IsCheck == WhetherEnum.True)
{
Dt_CheckOrder checkOrder = _mapper.Map<Dt_CheckOrder>(receiveOrderDetail);
+ checkOrder.OrderType = CheckTypeEnum.ReceiveCheck.ObjToInt();
checkOrder.ReceiveOrderNo = receiveOrder.ReceiveOrderNo;
checkOrder.QualifiedQuantity = receiveOrderDetail.ReceivedQuantity;
checkOrder.ReceiveDetailRowNo = receiveOrderDetail.RowNo;
@@ -274,8 +277,8 @@
ReceivedQuantity = model.Quantity,
MaterielCode = model.MaterielCode,
LotNo = model.LotNo,
- MaterielName=materielInfo.MaterielName,
- MaterielSpec=materielInfo.MaterielSpec,
+ MaterielName = materielInfo.MaterielName,
+ MaterielSpec = materielInfo.MaterielSpec,
ReceiveOrderId = receiveOrder.ReceiveOrderId,
PurchaseOrderDetailRowNo = purchaseOrderDetail.RowNo,
IfInspection = materielInfo.IsCheck.ObjToInt(),
@@ -283,7 +286,8 @@
PriceInTax = 0,
TaxRate = "",
RowNo = rowNo + 1,
- Unit = purchaseOrderDetail.Unit
+ Unit = purchaseOrderDetail.Unit,
+ IsCheckOk = WhetherEnum.False.ObjToInt()
};
if (receiveOrder.ReceiveOrderStatus == ReceiveOrderStatusEnum.NotStarted.ObjToInt())
{
@@ -329,40 +333,12 @@
}
_inboundRepository.ReceiveOrderRepository.UpdateData(receiveOrder);
_inboundRepository.PurchaseOrderDetailRepository.UpdateData(purchaseOrderDetail);
-
-
- QMSReceiveCheckModel qMSReceiveCheck = new QMSReceiveCheckModel()
+ //鐗╂枡妫�楠屼笂浼�
+ if (materielInfo.IsCheck == WhetherEnum.True && (warehouse.WarehouseCode != WarehouseEnum.HA152.ToString() && warehouse.WarehouseCode != WarehouseEnum.HA58.ToString()))
{
- EntryNumber=receiveOrder.ReceiveOrderNo,
- MaterialCode=receiveOrderDetail.MaterielCode,
- MaterialName=receiveOrderDetail.MaterielName,
- Quantity=(decimal)receiveOrderDetail.ReceivedQuantity,
- SupplierCode=receiveOrder.SuppliersId,
- SupplierName= supplierInfo.SupplierName,
- BatchNumber=receiveOrderDetail.LotNo,
- DeliveryNumber=receiveOrder.DeliveryCode,
- PurchaseNumber=receiveOrderDetail.PurchaseOrderNo,
- RowNumber= receiveOrderDetail.RowNo,
- WarehouseCode= warehouse.WarehouseCode,
- ReceiptDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
- Remark=" "
- };
- string response = _invokeQMSService.InvokeReceiveCheckApi(qMSReceiveCheck);
- MesResponseContent mesResponseContent = response.DeserializeObject<MesResponseContent>();
- if (!mesResponseContent.BSucc)
- {
- throw new Exception(mesResponseContent.StrMsg);
- }
- ReceiveResultDTO receiveResult = JsonConvert.DeserializeObject<ReceiveResultDTO>(mesResponseContent.Content.ToString());
- if (receiveResult==null)
- {
- throw new Exception("鎺ユ敹QMS缁撴灉澶辫触");
- }
- #region 娉ㄩ噴
- if (materielInfo.IsCheck == WhetherEnum.True)
- {
+ //鏀惰揣缁撴灉涓婃姤
Dt_CheckOrder checkOrder = _mapper.Map<Dt_CheckOrder>(receiveOrderDetail);
- checkOrder.CheckOrderNo = receiveResult.InspectionNumber;
+ checkOrder.OrderType = CheckTypeEnum.ReceiveCheck.ObjToInt();
checkOrder.ReceiveOrderNo = receiveOrder.ReceiveOrderNo;
checkOrder.Result = CheckAcceptEnum.NotCheckAccept.ToString();
checkOrder.QualifiedQuantity = 0;
@@ -372,9 +348,42 @@
checkOrder.MaterielSpec = materielInfo.MaterielSpec;
checkOrder.ReturnQuantity = 0;
checkOrder.DefectedQuantity = 0;
- _checkOrderRepository.AddData(checkOrder);
+ int id = _checkOrderRepository.AddData(checkOrder);
+ QMSReceiveCheckModel qMSReceiveCheck = new QMSReceiveCheckModel()
+ {
+ UniqueTag = id.ToString(),
+ EntryNumber = receiveOrder.ReceiveOrderNo,
+ MaterialCode = receiveOrderDetail.MaterielCode,
+ MaterialName = receiveOrderDetail.MaterielName,
+ Quantity = (decimal)receiveOrderDetail.ReceivedQuantity,
+ SupplierCode = receiveOrder.SuppliersId,
+ SupplierName = supplierInfo.SupplierName,
+ BatchNumber = receiveOrderDetail.LotNo,
+ DeliveryNumber = receiveOrder.DeliveryCode,
+ PurchaseNumber = receiveOrderDetail.PurchaseOrderNo,
+ RowNumber = receiveOrderDetail.RowNo,
+ WarehouseCode = warehouse.WarehouseCode,
+ ReceiptDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
+ Remark = " "
+ };
+ //璋冪敤QMS鏉ユ枡妫�楠屾帴鍙�
+ string response = _invokeQMSService.InvokeReceiveCheckApi(qMSReceiveCheck);
+ MesResponseContent mesResponseContent = response.DeserializeObject<MesResponseContent>();
+ if (!mesResponseContent.BSucc)
+ {
+ throw new Exception(mesResponseContent.StrMsg);
+ }
+ //QMS鍥炰紶缁撴灉
+ ReceiveResultDTO? receiveResult = JsonConvert.DeserializeObject<ReceiveResultDTO>(mesResponseContent.Content.ToString());
+ if (receiveResult == null)
+ {
+ throw new Exception("鎺ユ敹QMS缁撴灉澶辫触");
+ }
+ //鏇存柊妫�楠屽崟鍙�
+ Dt_CheckOrder _CheckOrder = _checkOrderRepository.QueryFirst(x => x.CheckOrderId == id);
+ _CheckOrder.CheckOrderNo = receiveResult.InspectionNumber;
+ _checkOrderRepository.UpdateData(_CheckOrder);
}
- #endregion
_unitOfWorkManage.CommitTran();
}
--
Gitblit v1.9.3