From a770206c91e495b802b3e9371e06834586ad7715 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期四, 30 十月 2025 20:17:30 +0800
Subject: [PATCH] 1
---
新建文件夹/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/Business.cs | 150 +++++++++++++++++++++++++++++++++----------------
1 files changed, 100 insertions(+), 50 deletions(-)
diff --git "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/Business.cs" "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/Business.cs"
index 02586ea..5d99726 100644
--- "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/Business.cs"
+++ "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/Business.cs"
@@ -15,6 +15,7 @@
using WIDESEA_DTO.SquareCabin;
using WIDESEA_Common;
using System.Xml.Linq;
+using WIDESEA_Common.OrderEnum;
namespace WIDESEA_WMSServer
{
@@ -65,10 +66,10 @@
// 鍙嶅簭鍒楀寲
var response = JsonConvert.DeserializeObject<UpstreamResponse<UpstreamOrderInfo>>(result);
- if (response.resultCode != "0")
+ if (response == null || response.resultCode != "0" || requestData == null)
{
// 璋冪敤寮傚父鎺ュ彛
- SendErrorToUpstream(1, "", response.resultMsg ?? "涓婃父鎺ュ彛杩斿洖澶辫触", "");
+ //SendErrorToUpstream(1, "", response.resultMsg ?? "涓婃父鎺ュ彛杩斿洖澶辫触", "");
return responseContent.Error(response.resultMsg ?? "涓婃父鎺ュ彛杩斿洖澶辫触");
}
@@ -76,8 +77,10 @@
{
return responseContent.OK("鏃犳柊鍏ュ簱鍗曟暟鎹�");
}
+ var ordernos = response.data.Select(x => x.order_no).ToList();
// 鑾峰彇鎵�鏈夊凡瀛樺湪鐨勫叆搴撳崟鍙�
var existingOrderNos = _cabinOrderServices.Db.Queryable<Dt_CabinOrder>()
+ .Where(x => ordernos.Contains(x.Order_no))
.Select(x => x.Order_no)
.Distinct().ToList();
@@ -86,7 +89,7 @@
.Where(order => !existingOrderNos.Contains(order.order_no))
.ToList();
- if (!newOrders.Any())
+ if (newOrders.Count < 1)
{
return responseContent.OK("鎵�鏈夊叆搴撳崟宸插瓨鍦紝鏃犻渶鏂板");
}
@@ -151,8 +154,8 @@
{
_unitOfWorkManage.RollbackTran();
_messageInfoService.AddMessageInfo(messageGroupBy, name, ex.Message, messageStatus);
- SendErrorToUpstream(1, "", ex.Message, "");
- return responseContent.Error("鍚屾澶辫触: " + ex.Message);
+ //SendErrorToUpstream(1, "", ex.Message, "");
+ //return responseContent.Error("鍚屾澶辫触: " + ex.Message);
}
};
return responseContent.OK("鍚屾鍏ュ簱鍗曟垚鍔�");
@@ -161,7 +164,7 @@
catch (Exception ex)
{
// 鍏ㄥ眬寮傚父鏃讹紝涔熸帹閫佸紓甯哥粰涓婃父
- SendErrorToUpstream(1, "", ex.Message, "");
+ //SendErrorToUpstream(1, "", ex.Message, "");
return responseContent.Error("鍚屾澶辫触: " + ex.Message);
}
}
@@ -174,8 +177,8 @@
var responseContent = new WebResponseContent();
try
{
- //var url = "http://121.37.118.63:80/GYZ2/95fck/outOrder";
- var url = "http://127.0.0.1:4523/m1/5660322-5340849-default/GYZ2/95fck/outOrder";
+ var url = "http://121.37.118.63:80/GYZ2/95fck/outOrder";
+ //var url = "http://127.0.0.1:4523/m1/5660322-5340849-default/GYZ2/95fck/outOrder";
if (string.IsNullOrEmpty(SearchOutDate)) SearchOutDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
//// 璇锋眰鍙傛暟
var requestData = new
@@ -190,7 +193,7 @@
if (response.resultCode != "0")
{
- SendErrorToUpstream(3, "", response.resultMsg ?? "涓婃父鎺ュ彛杩斿洖澶辫触", "");
+ //SendErrorToUpstream(3, "", response.resultMsg ?? "涓婃父鎺ュ彛杩斿洖澶辫触", "");
return responseContent.Error(response.resultMsg ?? "涓婃父鎺ュ彛杩斿洖澶辫触");
}
@@ -198,9 +201,10 @@
{
return responseContent.OK("鏃犳柊鍑哄簱鍗曟暟鎹�");
}
-
+ var ordernos = response.data.Select(x => x.order_no).ToList();
// 宸插瓨鍦ㄥ嚭搴撳崟鍙�
var existingOutOrderNos = _deliveryOrderServices.Db.Queryable<Dt_DeliveryOrder>()
+ .Where(x => ordernos.Contains(x.Out_no))
.Select(x => x.Out_no)
.Distinct().ToList();
@@ -211,7 +215,7 @@
List<string> order_no = newOutOrders.Select(x => x.order_no).ToList();
- if (!newOutOrders.Any())
+ if (newOutOrders.Count < 1)
{
return responseContent.OK("鎵�鏈夊嚭搴撳崟宸插瓨鍦紝鏃犻渶鏂板");
}
@@ -278,15 +282,15 @@
{
_unitOfWorkManage.RollbackTran();
_messageInfoService.AddMessageInfo(messageGroupBy, name, ex.Message, messageStatus);
- SendErrorToUpstream(3, "", ex.Message, "");
- return responseContent.Error("鍚屾澶辫触: " + ex.Message);
+ //SendErrorToUpstream(3, "", ex.Message, "");
+ //return responseContent.Error("鍚屾澶辫触: " + ex.Message);
}
}
return responseContent.OK($"鍚屾鍑哄簱鍗曟垚鍔燂紝鍏眥_DeliveryOrders.Count}鏉�");
}
catch (Exception ex)
{
- SendErrorToUpstream(3, "", ex.Message, "");
+ //SendErrorToUpstream(3, "", ex.Message, "");
return responseContent.Error("鍚屾澶辫触: " + ex.Message);
}
}
@@ -391,7 +395,7 @@
}
else
{
- SendErrorToUpstream(3, order.Order_no, resp?.msg ?? "WCS 鎺ㄩ�佸け璐�", "");
+ //SendErrorToUpstream(3, order.Order_no, resp?.msg ?? "WCS 鎺ㄩ�佸け璐�", "");
Console.WriteLine($"璁㈠崟 {order.Order_no} 鎺ㄩ�佸け璐ワ細{resp?.msg}");
return new WebResponseContent { Status = false, Message = "璁㈠崟鎺ㄩ�佸け璐�" };
}
@@ -480,8 +484,8 @@
};
// 4. 璋冪敤鎺ュ彛
- //var url = "http://172.16.1.2:9357/file-admin/api/out/ediOut";
- var url = "http://127.0.0.1:4523/m2/5660322-5340849-default/363076920";
+ var url = "http://172.16.1.2:9357/file-admin/api/out/ediOut";
+ //var url = "http://127.0.0.1:4523/m2/5660322-5340849-default/363076920";
var result = HttpHelper.Post(url, ediDto.ToJsonString());
var resp = JsonConvert.DeserializeObject<TowcsDto.TowcsResponse<object>>(result);
@@ -503,14 +507,14 @@
}
else
{
- SendErrorToUpstream(3, order.Out_no, resp?.msg ?? "WCS 鎺ㄩ�佸け璐�", "");
+ //SendErrorToUpstream(3, order.Out_no, resp?.msg ?? "WCS 鎺ㄩ�佸け璐�", "");
Console.WriteLine($"璁㈠崟 {order.Out_no} 鎺ㄩ�佸け璐ワ細{resp?.msg}");
}
//鍒犻櫎鍏ㄩ儴鐘朵负宸插畬鎴愮殑鏄庣粏鍜岃〃澶达紝绉诲叆鍘嗗彶琛�
}
catch (Exception ex)
{
- SendErrorToUpstream(3, order.Out_no, ex.Message, "");
+ //SendErrorToUpstream(3, order.Out_no, ex.Message, "");
Console.WriteLine($"璁㈠崟 {order.Out_no} 鎺ㄩ�佸紓甯革細{ex.Message}");
}
}
@@ -536,37 +540,61 @@
var responseContent = new WebResponseContent();
try
{
+ _unitOfWorkManage.BeginTran();
#region 鏌ユ壘鎵�鏈夊凡瀹屾垚鍏ュ簱鍗�
var inorders = _cabinOrderServices.Repository.QueryData(x => x.OdrderStatus == "宸插畬鎴�").Select(x => x.Order_no).Distinct().ToList();
foreach (var inorder in inorders)
{
- //var Orders = BaseDal.QueryData(x => x.Order_no == inorder);
var Orders = _cabinOrderServices.Db.Queryable<Dt_CabinOrder>().Where(x => x.Order_no == inorder).Includes(x => x.Details).ToList();
+
if (!Orders.Where(x => x.OdrderStatus != "宸插畬鎴�").Any())
{
- _unitOfWorkManage.BeginTran();
- _cabinOrderServices.Repository.DeleteAndMoveIntoHty(Orders, OperateTypeEnum.鑷姩瀹屾垚);
- foreach (var item in Orders)
+ if (Orders.FirstOrDefault().Order_type == InOrderTypeEnum.Allocat.ObjToInt().ToString())
{
- _cabinDetailServices.Repository.DeleteAndMoveIntoHty(item.Details, OperateTypeEnum.鑷姩瀹屾垚);
- }
- // 璋冪敤涓婃父鎺ュ彛
- var url = "http://121.37.118.63:80/GYZ2/95fck/inOrderOk";
- var result = HttpHelper.Post(url, new { order_no = inorder }.ToJsonString());
- var response = JsonConvert.DeserializeObject<UpstreamOrderResponse>(result);
- if (response.resultCode == "0")
- {
- // 鎻愪氦浜嬪姟
- _unitOfWorkManage.CommitTran();
+ foreach (var item in Orders)
+ {
+ if (item.Details != null)
+ _cabinDetailServices.Repository.DeleteAndMoveIntoHty(item.Details, OperateTypeEnum.鑷姩瀹屾垚);
+ item.Details = null;
+ }
+ _cabinOrderServices.Repository.DeleteAndMoveIntoHty(Orders, OperateTypeEnum.鑷姩瀹屾垚);
}
else
{
- _unitOfWorkManage.RollbackTran();
- SendErrorToUpstream(2, "", $"涓婃父鎺ュ彛杩斿洖澶辫触: {response.resultMsg}", inorder);
+ // 璋冪敤涓婃父鎺ュ彛
+ var url = "http://121.37.118.63:80/GYZ2/95fck/inOrderOk";
+
+
+
+ var result = HttpHelper.Post(url, new { order_no = inorder }.ToJsonString());
+ var response = JsonConvert.DeserializeObject<UpstreamOrderResponse>(result);
+ if (response.resultCode == "0")
+ {
+ foreach (var item in Orders)
+ {
+ if (item.Details != null)
+ _cabinDetailServices.Repository.DeleteAndMoveIntoHty(item.Details, OperateTypeEnum.鑷姩瀹屾垚);
+ item.Details = null;
+ }
+ _cabinOrderServices.Repository.DeleteAndMoveIntoHty(Orders, OperateTypeEnum.鑷姩瀹屾垚);
+ // 鎻愪氦浜嬪姟
+ }
+ else
+ {
+ string mess = "涓婃姤ERP鏃犲搷搴�";
+ if (response != null) mess = response.resultMsg;
+ _messageInfoService.AddMessageInfo(MessageGroupByEnum.InOrderAlarm, $"鍏ュ簱鍗曞彿銆恵inorder}銆戝畬鎴愪笂鎶RP澶辫触", mess);
+ //_unitOfWorkManage.RollbackTran();
+ //SendErrorToUpstream(2, "", $"涓婃父鎺ュ彛杩斿洖澶辫触: {response.resultMsg}", inorder);
+ continue;
+ }
}
+
+
}
}
#endregion
+ _unitOfWorkManage.CommitTran();
return responseContent.OK();
}
catch (Exception ex)
@@ -588,36 +616,58 @@
var responseContent = new WebResponseContent();
try
{
+ _unitOfWorkManage.BeginTran();
#region 鏌ユ壘鎵�鏈夊凡瀹屾垚鍑哄簱鍗�
var outorders = _deliveryOrderServices.Repository.QueryData(x => x.OutStatus == "宸插畬鎴�").Select(x => x.Out_no).Distinct().ToList();
foreach (var outorder in outorders)
{
var Orders = _deliveryOrderServices.Db.Queryable<Dt_DeliveryOrder>().Where(x => x.Out_no == outorder).Includes(x => x.Details).ToList();
+
if (!Orders.Where(x => x.OutStatus != "宸插畬鎴�").Any())
{
- _unitOfWorkManage.BeginTran();
- _deliveryOrderServices.Repository.DeleteAndMoveIntoHty(Orders, OperateTypeEnum.鑷姩瀹屾垚);
- foreach (var item in Orders)
+ if (Orders.FirstOrDefault().Out_type == OutOrderTypeEnum.Allocate.ObjToInt().ToString())
{
- _deliveryOrderDetailServices.Repository.DeleteAndMoveIntoHty(item.Details, OperateTypeEnum.鑷姩瀹屾垚);
+ foreach (var item in Orders)
+ {
+ if (item.Details != null)
+ _deliveryOrderDetailServices.Repository.DeleteAndMoveIntoHty(item.Details, OperateTypeEnum.鑷姩瀹屾垚);
+ item.Details = null;
+ }
+ _deliveryOrderServices.Repository.DeleteAndMoveIntoHty(Orders, OperateTypeEnum.鑷姩瀹屾垚);
}
- var url = "http://121.37.118.63:80/GYZ2/95fck/outOrderOk";
- var requestDate = new
- {
- order_no = outorder
- };
- var result = HttpHelper.Post(url, requestDate.ToJsonString());
- var response = JsonConvert.DeserializeObject<UpstreamOrderResponse>(result);
- if (response.resultCode == "0") _unitOfWorkManage.CommitTran();
else
{
- _unitOfWorkManage.RollbackTran();
- SendErrorToUpstream(4, "", $"涓婃父鎺ュ彛杩斿洖澶辫触: {response.resultMsg}", outorder);
+ var url = "http://121.37.118.63:80/GYZ2/95fck/outOrderOk";
+ var requestDate = new
+ {
+ order_no = outorder
+ };
+ var result = HttpHelper.Post(url, requestDate.ToJsonString());
+ var response = JsonConvert.DeserializeObject<UpstreamOrderResponse>(result);
+ if (response != null && response.resultCode == "0")
+ {
+ foreach (var item in Orders)
+ {
+ if (item.Details != null)
+ _deliveryOrderDetailServices.Repository.DeleteAndMoveIntoHty(item.Details, OperateTypeEnum.鑷姩瀹屾垚);
+ item.Details = null;
+ }
+ _deliveryOrderServices.Repository.DeleteAndMoveIntoHty(Orders, OperateTypeEnum.鑷姩瀹屾垚);
+ }
+ else
+ {
+ string mess = "涓婃姤ERP鏃犲搷搴�";
+ if (response != null) mess = response.resultMsg;
+ _messageInfoService.AddMessageInfo(MessageGroupByEnum.OutOrderAlarm, $"鍑哄簱鍗曞彿銆恵outorder}銆戝畬鎴愪笂鎶RP澶辫触", mess);
+ //_unitOfWorkManage.RollbackTran();
+ //SendErrorToUpstream(4, "", $"涓婃父鎺ュ彛杩斿洖澶辫触: {response.resultMsg}", outorder);
+ continue;
+ }
}
}
}
#endregion
-
+ _unitOfWorkManage.CommitTran();
return responseContent.OK();
}
catch (Exception ex)
--
Gitblit v1.9.3