From 070b9f3ea747fc763f999e4cc6b86b202f48a237 Mon Sep 17 00:00:00 2001
From: heshaofeng <heshaofeng@hnkhzn.com>
Date: 星期四, 12 三月 2026 18:07:51 +0800
Subject: [PATCH] 1
---
项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_Core/BaseServices/ServiceBase.cs | 5 ++
项目代码/WIDESEA_WMSClient/src/extension/outbound/extend/printView.vue | 20 +++++++---
项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_InboundService/InboundOrderService.cs | 19 ++++++++-
项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_Core/WIDESEA_Core.csproj | 4 ++
项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderService.cs | 1
项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundService.cs | 14 +++++--
项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs | 17 +++++++-
7 files changed, 66 insertions(+), 14 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/extension/outbound/extend/printView.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/extension/outbound/extend/printView.vue"
index ffb55b7..a33c195 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/extension/outbound/extend/printView.vue"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/extension/outbound/extend/printView.vue"
@@ -6,7 +6,8 @@
<div class="print-page" v-for="(item, index) in printData" :key="index">
<div class="material-card">
<div class="dual-column header-section">
- <div class="header">鍗撳姏鑳界墿鏂欐爣璇嗗崱(灏忓寘)</div>
+ <!-- 鍔ㄦ�佺粦瀹氭墦鍗板尯鍩熸爣棰� -->
+ <div class="header">{{ getHeaderTitle(item.factoryArea) }}</div>
<VueQrcode :value="generateQr(item)" :size="60" class="qrcode" />
</div>
<div class="content">
@@ -70,13 +71,14 @@
</div>
</div>
- <!-- 棰勮鍖哄煙淇濇寔涓嶅彉 -->
<div id="previewContent" class="preview-container">
- <div class="preview-header">鍗撳姏鑳界墿鏂欐爣璇嗗崱(灏忓寘) - 棰勮 (鍏眥{ printData.length }}涓�)</div>
+ <!-- 鍔ㄦ�佺粦瀹氶瑙堝尯鍩熸�绘爣棰� -->
+ <div class="preview-header">{{ printData.length > 0 ? getHeaderTitle(printData[0].factoryArea) : '鐗╂枡鏍囪瘑鍗�' }} - 棰勮 (鍏眥{ printData.length }}涓�)</div>
<div class="preview-scroll">
<div v-for="(item, idx) in printData" :key="idx" class="preview-card">
<div class="dual-column preview-card-header-qrcode">
- <div class="preview-card-header">鍗撳姏鑳界墿鏂欐爣璇嗗崱(灏忓寘)</div>
+ <!-- 鍔ㄦ�佺粦瀹氶瑙堝崱鐗囨爣棰� -->
+ <div class="preview-card-header">{{ getHeaderTitle(item.factoryArea) }}</div>
<VueQrcode :value="generateQr(item)" :size="40" class="qrcode-preview" />
</div>
<div class="preview-wrapper">
@@ -167,6 +169,13 @@
}
},
methods: {
+ getHeaderTitle(factoryArea) {
+ if (!factoryArea) return '鐗╂枡鏍囪瘑鍗�(灏忓寘)'
+ return factoryArea === '04'
+ ? '鏍奸浘鐗╂枡鏍囪瘑鍗�(灏忓寘)'
+ : '鍗撳姏鑳界墿鏂欐爣璇嗗崱(灏忓寘)'
+ },
+
generateQr(item) {
return `${item.barcode}`
},
@@ -192,7 +201,6 @@
this.$message.error('鏃犳硶鎵撳紑鎵撳嵃绐楀彛锛岃妫�鏌ユ祻瑙堝櫒寮圭獥璁剧疆')
return
}
-
printWindow.document.write(`
<!DOCTYPE html>
@@ -538,4 +546,4 @@
color: #409eff;
font-weight: bold;
}
-</style>
+</style>
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_Core/BaseServices/ServiceBase.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_Core/BaseServices/ServiceBase.cs"
index 921062c..70c700e 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_Core/BaseServices/ServiceBase.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_Core/BaseServices/ServiceBase.cs"
@@ -12,6 +12,7 @@
using System.Linq.Expressions;
using System.Reflection;
using System.Reflection.Metadata;
+using WIDESEA_Common.OrderEnum;
using WIDESEA_Core.BaseRepository;
using WIDESEA_Core.Const;
using WIDESEA_Core.DB.Models;
@@ -659,6 +660,10 @@
saveModel.MainData.Remove(keyPro.Name.FirstLetterToLower());
}
}
+ saveModel.MainData["CreateType"] = (int)OrderCreateTypeEnum.CreateInSystem;
+
+ saveModel.MainData["ReturnToMESStatus"] = 5;
+
TEntity entity = saveModel.MainData.DicToModel<TEntity>();
if (saveModel.DetailData == null || saveModel.DetailData.Count == 0)
{
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_Core/WIDESEA_Core.csproj" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_Core/WIDESEA_Core.csproj"
index be85784..454cf0e 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_Core/WIDESEA_Core.csproj"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_Core/WIDESEA_Core.csproj"
@@ -38,4 +38,8 @@
<Folder Include="SystemConfig\" />
</ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\WIDESEA_Common\WIDESEA_Common.csproj" />
+ </ItemGroup>
+
</Project>
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_InboundService/InboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_InboundService/InboundOrderService.cs"
index 3355b93..b099aa3 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_InboundService/InboundOrderService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_InboundService/InboundOrderService.cs"
@@ -50,9 +50,10 @@
private readonly IBasicService _basicService;
private readonly IRepository<Dt_AllocateOrder> _allocateOrderRepository;
private readonly IRepository<Dt_OutboundOrder> _outboundOrderRepository;
+ private readonly IRepository<Dt_OutboundOrderDetail> _outboundOrderDetailRepository;
public IRepository<Dt_InboundOrder> Repository => BaseDal;
- public InboundOrderService(IRepository<Dt_InboundOrder> BaseDal, IMapper mapper, IUnitOfWorkManage unitOfWorkManage, IRepository<Dt_InboundOrderDetail> inboundOrderDetailRepository, IRepository<Dt_Task> taskRepository, IStockService stockService, IInboundOrderDetailService inboundOrderDetailService, IMaterialUnitService materialUnitService, IRepository<Dt_StockInfoDetail> stockDetailRepository, IRepository<Dt_InboundOrder> inboundOrderRepository, IRepository<Dt_WarehouseArea> warehouseAreaRepository, IRepository<Dt_StockInfo> stockRepository, IRepository<Dt_LocationType> locationTypeRepository, IMaterielInfoService materielInfoService, IBasicService basicService, IRepository<Dt_LocationInfo> locationInfoRepository, IRepository<Dt_AllocateOrder> allocateOrderRepository, IRepository<Dt_OutboundOrder> outboundOrderRepository) : base(BaseDal)
+ public InboundOrderService(IRepository<Dt_InboundOrder> BaseDal, IMapper mapper, IUnitOfWorkManage unitOfWorkManage, IRepository<Dt_InboundOrderDetail> inboundOrderDetailRepository, IRepository<Dt_Task> taskRepository, IStockService stockService, IInboundOrderDetailService inboundOrderDetailService, IMaterialUnitService materialUnitService, IRepository<Dt_StockInfoDetail> stockDetailRepository, IRepository<Dt_InboundOrder> inboundOrderRepository, IRepository<Dt_WarehouseArea> warehouseAreaRepository, IRepository<Dt_StockInfo> stockRepository, IRepository<Dt_LocationType> locationTypeRepository, IMaterielInfoService materielInfoService, IBasicService basicService, IRepository<Dt_LocationInfo> locationInfoRepository, IRepository<Dt_AllocateOrder> allocateOrderRepository, IRepository<Dt_OutboundOrder> outboundOrderRepository, IRepository<Dt_OutboundOrderDetail> outboundOrderDetailRepository) : base(BaseDal)
{
_mapper = mapper;
_unitOfWorkManage = unitOfWorkManage;
@@ -71,6 +72,7 @@
_locationInfoRepository = locationInfoRepository;
_allocateOrderRepository = allocateOrderRepository;
_outboundOrderRepository = outboundOrderRepository;
+ _outboundOrderDetailRepository = outboundOrderDetailRepository;
}
public async Task<WebResponseContent> ReceiveInboundOrder(List<Dt_InboundOrder> models, int operateType)
@@ -1031,10 +1033,23 @@
}
else if (outbound != null)
{
- if(outbound.OrderStatus !=(int)OutOrderStatusEnum.鏈紑濮� && outbound.OrderStatus != (int)OutOrderStatusEnum.鍑哄簱涓�)
+ if(outbound.OrderStatus ==(int)OutOrderStatusEnum.鍑哄簱瀹屾垚)
{
return WebResponseContent.Instance.Error($"璇ュ崟鎹姸鎬佷笉鍙互鍏抽棴");
}
+ if(outbound.OrderStatus == (int)OutOrderStatusEnum.鍑哄簱涓�)
+ {
+ var outboundDetails = _outboundOrderDetailRepository.QueryData(x => x.OrderId == outbound.Id);
+ if (outboundDetails == null)
+ {
+ return WebResponseContent.Instance.Error("璇ュ崟鎹姸鎬佷笉鑳藉叧闂�");
+ }
+ var detailStatus = outboundDetails.All(x => x.LockQuantity == x.OverOutQuantity);
+ if (!detailStatus)
+ {
+ return WebResponseContent.Instance.Error("璇ュ崟鎹湁姝e湪鍑哄簱鐨勭墿鏂欙紝涓嶈兘鍏抽棴");
+ }
+ }
outbound.OrderStatus = (int)OutOrderStatusEnum.鍏抽棴;
outbound.Operator = App.User.UserName;
_outboundOrderRepository.UpdateData(outbound);
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderService.cs"
index 128d1e9..630dd2c 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderService.cs"
@@ -246,6 +246,7 @@
if (outboundOrder.Details.All(x => x.OverOutQuantity >= x.OrderQuantity - x.MoveQty))
{
outboundOrder.OrderStatus = (int)OutOrderStatusEnum.鍑哄簱瀹屾垚;
+ outboundOrder.ReturnToMESStatus = 1;
}
BaseDal.UpdateData(outboundOrder);
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundService.cs"
index 4b0d960..6a79f4c 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundService.cs"
@@ -1371,6 +1371,9 @@
{
_outboundLockInfoRepository.DeleteAndMoveIntoHty(stockLockInfos, WIDESEA_Core.Enums.OperateTypeEnum.鑷姩鍒犻櫎);
}
+
+ outboundOrderDetails.FirstOrDefault().OrderDetailStatus = (int)OrderDetailStatusEnum.Over;
+ _detailRepository.UpdateData(outboundOrderDetails);
}
// 妫�鏌ュ嚭搴撳崟鏄惁瀹屾垚
@@ -1802,11 +1805,14 @@
// 妫�鏌ュ嚭搴撳崟鏄惁瀹屾垚
if (CheckOutboundOrderCompleted(request.OrderNo))
{
- UpdateOutboundOrderStatus(request.OrderNo, OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt());
-
- if (outboundOrder.CreateType!=OrderCreateTypeEnum.CreateInSystem.ObjToInt())
+ if(outboundOrder.OrderType != OutOrderTypeEnum.InternalAllocat.ObjToInt())
{
- _feedbackMesService.OutboundFeedback(outboundOrder.OrderNo);
+ UpdateOutboundOrderStatus(request.OrderNo, OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt());
+
+ if (outboundOrder.CreateType != OrderCreateTypeEnum.CreateInSystem.ObjToInt())
+ {
+ _feedbackMesService.OutboundFeedback(outboundOrder.OrderNo);
+ }
}
}
}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs"
index 9a74826..9b4439a 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs"
@@ -622,6 +622,12 @@
}
}
+ if (outboundOrder.Details.All(x => x.OrderDetailStatus == (int)OrderDetailStatusEnum.Over) && !allocatInfo.Any())
+ {
+ outboundOrder.OrderStatus = (int)InOrderStatusEnum.鍏ュ簱瀹屾垚;
+ _outboundOrderService.UpdateData(outboundOrder);
+ }
+
// 7. 鍥炶皟MES
string Operator = outboundOrder.Modifier;
HttpResponseResult<MesResponseDTO> httpResponseResult = new HttpResponseResult<MesResponseDTO>();
@@ -1016,8 +1022,9 @@
await Db.Deleteable(task).ExecuteCommandAsync();
}
Dt_OutboundOrder outboundOrder = _outboundOrderService.Db.Queryable<Dt_OutboundOrder>().Where(x => x.OrderNo == stockInfo.Details.FirstOrDefault().OrderNo).Includes(x=>x.Details).First();
+
- if(outboundOrder != null)
+ if (outboundOrder != null)
{
foreach (var item in stockInfo.Details.Where(x => x.OrderNo == outboundOrder.OrderNo).ToList())
{
@@ -1030,6 +1037,12 @@
await Db.Deleteable(task).ExecuteCommandAsync();
}
}
+ }
+ var allocateMaterialInfos = _allocateMaterialInfo.QueryData(x => x.OrderNo == outboundOrder.OrderNo);
+ if (outboundOrder.Details.All(x => x.OrderDetailStatus == (int)OrderDetailStatusEnum.Over) && !allocateMaterialInfos.Any())
+ {
+ outboundOrder.OrderStatus = (int)InOrderStatusEnum.鍏ュ簱瀹屾垚;
+ _outboundOrderService.UpdateData(outboundOrder);
}
}
string Operator = outboundOrder.Modifier;
@@ -1052,7 +1065,7 @@
{
return WebResponseContent.Instance.Error($"鏋勫缓鍥炶皟瀵硅薄澶辫触");
}
- string apiUrl = AppSettings.GetValue("AllocationFeedbackUrl"); ;
+ string apiUrl = AppSettings.GetValue("AllocationFeedbackUrl");
returnDTO.ReqCode = reqCode;
returnDTO.ReqTime = reqTime;
JsonSerializerSettings settings = new JsonSerializerSettings
--
Gitblit v1.9.3