From 595770fb0359d0425a103fb6e2106cecffe2c90b Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期一, 30 十二月 2024 11:32:45 +0800
Subject: [PATCH] PDA添加组盘入库WMS系统,不上传上游系统

---
 代码管理/WMS/WIDESEA_WMSClient/src/extension/stock/stockInfo.js                                |    1 
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/InboundOrderService.cs                   |   82 +----
 代码管理/淮安PDA/pages/stash/boxing.vue                                                          |  514 +++++++++++++++++++++++++++++++++++++++
 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task_Hty.cs                 |   18 +
 代码管理/淮安PDA/pages.json                                                                      |    8 
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Common/StockEnum/StockStatusEmun.cs                     |   18 
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderController.cs |    6 
 代码管理/淮安PDA/static/iconfont.css                                                             |   55 ++-
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_IInboundService/IInboundOrderService.cs                 |    2 
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs                          |   17 
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Core/Middlewares/ApiLogMiddleware.cs                    |    2 
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Inbound.cs                  |   15 
 12 files changed, 634 insertions(+), 104 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task_Hty.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task_Hty.cs"
new file mode 100644
index 0000000..afff1ad
--- /dev/null
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task_Hty.cs"
@@ -0,0 +1,18 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using WIDESEAWCS_Core.DB.Models;
+
+namespace WIDESEAWCS_Model.Models
+{
+    public class Dt_Task_Hty : Dt_Task, IBaseHistoryEntity
+    {
+        public int SourceId { get; set; }
+
+        public string OperateType { get; set; }
+
+        public DateTime InsertTime { get; set; }
+    }
+}
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/stock/stockInfo.js" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/stock/stockInfo.js"
index 24e1d94..6292426 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/stock/stockInfo.js"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/stock/stockInfo.js"
@@ -17,6 +17,7 @@
     methods: {
        //涓嬮潰杩欎簺鏂规硶鍙互淇濈暀涔熷彲浠ュ垹闄�
       onInit() {  
+        
       },
       onInited() {
         //妗嗘灦鍒濆鍖栭厤缃悗
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Common/StockEnum/StockStatusEmun.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Common/StockEnum/StockStatusEmun.cs"
index 86bbdf2..fa899a9 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Common/StockEnum/StockStatusEmun.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Common/StockEnum/StockStatusEmun.cs"
@@ -23,14 +23,8 @@
         [Description("缁勭洏鏆傚瓨")]
         缁勭洏鏆傚瓨 = 1,
 
-        [Description("缁勭洏鎾ら攢")]
-        缁勭洏鎾ら攢 = 2,
-
         [Description("鍏ュ簱纭")]
         鍏ュ簱纭 = 3,
-
-        [Description("鍏ュ簱鎾ら攢")]
-        鍏ュ簱鎾ら攢 = 4,
 
         [Description("鍏ュ簱瀹屾垚")]
         鍏ュ簱瀹屾垚 = 6,
@@ -49,5 +43,17 @@
 
         [Description("閫�搴�")]
         閫�搴� = 11,
+
+        [Description("鎵嬪姩缁勭洏鏆傚瓨")]
+        鎵嬪姩缁勭洏鏆傚瓨 = 12,
+
+        [Description("鎵嬪姩缁勭洏鍏ュ簱纭")]
+        鎵嬪姩缁勭洏鍏ュ簱纭 = 13,
+
+        [Description("缁勭洏鎾ら攢")]
+        缁勭洏鎾ら攢 = 99,
+
+        [Description("鍏ュ簱鎾ら攢")]
+        鍏ュ簱鎾ら攢 = 199,
     }
 }
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/Middlewares/ApiLogMiddleware.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/Middlewares/ApiLogMiddleware.cs"
index fbbfef0..e576b3d 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/Middlewares/ApiLogMiddleware.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/Middlewares/ApiLogMiddleware.cs"
@@ -61,7 +61,7 @@
 
                     ms.Position = 0;
                     await ms.CopyToAsync(originalBody);
-                    if (!((context.Request.Path.Value?.Contains("get")) ?? true) && !((context.Request.Path.Value?.Contains("Get")) ?? true) && !((context.Request.Path.Value?.Contains("query")) ?? true) && !((context.Request.Path.Value?.Contains("Query")) ?? true))
+                    if (!((context.Request.Path.Value?.Contains("get")) ?? true) && !((context.Request.Path.Value?.Contains("Get")) ?? true) && !((context.Request.Path.Value?.Contains("query")) ?? true) && !((context.Request.Path.Value?.Contains("Query")) ?? true) && !((context.Request.Path.Value?.Contains("DownLoadApp")) ?? true) && !((context.Request.Path.Value?.Contains("downLoadApp")) ?? true) && !((context.Request.Path.Value?.Contains("UploadApp")) ?? true) && !((context.Request.Path.Value?.Contains("uploadApp")) ?? true))
                         Logger.Add(requestParam, responseParam);
                 }
                 catch (Exception ex)
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IInboundService/IInboundOrderService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IInboundService/IInboundOrderService.cs"
index ad4a66d..7969fb7 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IInboundService/IInboundOrderService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IInboundService/IInboundOrderService.cs"
@@ -20,7 +20,7 @@
         WebResponseContent GetInboundOrders(SaveModel saveModel);
         WebResponseContent MaterielGroup(int inboundOrderId, string palletCode, string serNum);
 
-        WebResponseContent MaterielGroup(int inboundOrderId, string palletCode, List<string> serNums);
+        WebResponseContent MaterielGroup(string palletCode, int Initiallife, int warehouseId, List<string> serNums);
 
         WebResponseContent FeedbackInboundOrder(int id);
 
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/InboundOrderService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/InboundOrderService.cs"
index 319ec37..6b37125 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/InboundOrderService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/InboundOrderService.cs"
@@ -1,5 +1,6 @@
 锘縰sing AutoMapper;
 using HslCommunication.WebSocket;
+using Microsoft.AspNetCore.Mvc.RazorPages;
 using Newtonsoft.Json;
 using SqlSugar;
 using System;
@@ -415,31 +416,16 @@
             return content;
         }
 
-        public WebResponseContent MaterielGroup(int inboundOrderId, string palletCode, List<string> serNums)
+        public WebResponseContent MaterielGroup(string palletCode, int Initiallife, int warehouseId, List<string> serNums)
         {
+            WebResponseContent content = new WebResponseContent();
             try
             {
-                Dt_InboundOrder inboundOrder = BaseDal.Db.Queryable<Dt_InboundOrder>().Where(x => x.Id == inboundOrderId).Includes(x => x.Details).First();
-                if (inboundOrder == null)
+                Dt_Warehouse warehouse = _warehouseService.Repository.QueryFirst(x => x.WarehouseId == warehouseId);
+                if (warehouse == null)
                 {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板叆搴撳崟淇℃伅");
+                    return WebResponseContent.Instance.Error($"鏈壘鍒拌浠撳簱淇℃伅");
                 }
-                if (inboundOrder.Details == null || inboundOrder.Details.Count <= 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板叆搴撳崟鏄庣粏淇℃伅");
-                }
-
-                Dt_ReceiveOrder receiveOrder = _inboundRepository.ReceiveOrderRepository.Db.Queryable<Dt_ReceiveOrder>().Where(x => x.ReceiveOrderNo == inboundOrder.UpperOrderNo).Includes(x => x.Details).First();
-                if (receiveOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板搴旂殑鏀惰揣鍗�");
-                }
-                if (receiveOrder.Details == null || receiveOrder.Details.Count <= 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板搴旂殑鏀惰揣鍗曟槑缁�");
-                }
-
-                List<string> purchaseOrderNos = receiveOrder.Details.Select(x => x.PurchaseOrderNo).ToList();
 
                 List<MatSerNumAnalysisModel> models = CodeAnalysisHelper.CodeAnalysis<MatSerNumAnalysisModel>(AnalysisCodeEnum.MatSerNumAnalysis, serNums);
 
@@ -455,17 +441,6 @@
                     return WebResponseContent.Instance.Error($"鏈壘鍒拌鐗╂枡鐨勪俊鎭�");
                 }
 
-                List<Dt_InboundOrderDetail> inboundOrderDetails = inboundOrder.Details.Where(x => x.MaterielCode == materielCode).ToList();
-
-                if (inboundOrderDetails == null || inboundOrderDetails.Count <= 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈湪鍏ュ簱鍗曟槑缁嗕腑鎵惧埌璇ョ墿鏂欎俊鎭�");
-                }
-                if (receiveOrder.Details.FirstOrDefault(x => x.MaterielCode == materielCode) == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈湪鏀惰揣鍗曟槑缁嗕腑鎵惧埌璇ョ墿鏂欎俊鎭�");
-                }
-
                 float beforeQuantity = 0;
 
                 Dt_StockInfo stockInfo = _stockRepository.StockInfoRepository.Db.Queryable<Dt_StockInfo>().Where(x => x.PalletCode == palletCode).Includes(x => x.Details).First();
@@ -474,50 +449,43 @@
                     stockInfo = new Dt_StockInfo()
                     {
                         PalletCode = palletCode,
-                        StockStatus = StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt(),
-                        WarehouseId = inboundOrder.WarehouseId,
+                        StockStatus = StockStatusEmun.鎵嬪姩缁勭洏鏆傚瓨.ObjToInt(),
+                        WarehouseId = warehouse.WarehouseId,
                         PalletType = PalletTypeEnum.SmallPallet.ObjToInt(),
                         Details = new List<Dt_StockInfoDetail>()
                     };
                 }
                 else
                 {
-                    if (stockInfo.StockStatus != StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt())
+                    if (stockInfo.StockStatus != StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt() && stockInfo.StockStatus != StockStatusEmun.鎵嬪姩缁勭洏鏆傚瓨.ObjToInt())
                     {
                         return WebResponseContent.Instance.Error($"鎵樼洏鍙烽噸澶�");
                     }
                     beforeQuantity = stockInfo.Details.Sum(x => x.StockQuantity);
                 }
 
+                if (warehouse.WarehouseCode == WarehouseEnum.HA64.ToString())
+                {
+                    stockInfo.Remark = Initiallife.ToString();
+                }
+
                 List<Dt_StockInfoDetail> stockInfoDetails = new List<Dt_StockInfoDetail>();
                 List<int> detailKeys = new List<int>();
                 foreach (var model in models)
                 {
-                    if (purchaseOrderNos.FirstOrDefault(x => x == model.PurchaseOrderNo) == null)
-                    {
-                        return WebResponseContent.Instance.Error($"鏈湪鏀惰揣鍗曟槑缁嗕腑鎵惧埌璇ラ噰璐崟");
-                    }
-
-                    Dt_InboundOrderDetail? notGroupDetail = inboundOrderDetails.Where(x => x.OrderDetailStatus == OrderDetailStatusEnum.New.ObjToInt() && x.OrderQuantity == model.Quantity && !detailKeys.Contains(x.Id) && x.OrderQuantity > x.ReceiptQuantity).FirstOrDefault();
-
-                    if (notGroupDetail == null)
-                    {
-                        return WebResponseContent.Instance.Error($"璇ョ墿鏂欏湪璇ュ叆搴撳崟涓凡鍏ㄩ儴缁勭洏瀹屾垚");
-                    }
-                    detailKeys.Add(notGroupDetail.Id);
                     Dt_StockInfoDetail stockInfoDetail = new Dt_StockInfoDetail()
                     {
                         BatchNo = model.LotNo,
                         MaterielCode = materielInfo.MaterielCode,
                         MaterielName = materielInfo.MaterielName,
-                        OrderNo = inboundOrder.InboundOrderNo,
+                        OrderNo = "",
                         SerialNumber = model.SerialNumber,
                         StockQuantity = model.Quantity,
                         OutboundQuantity = 0,
                         Status = StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt(),
                         ProductionDate = model.ProductionDate,
                         EffectiveDate = model.EffectiveDate,
-                        InboundOrderRowNo = notGroupDetail.RowNo,
+                        InboundOrderRowNo = 0,
                     };
 
                     if (stockInfo.Id > 0)
@@ -527,14 +495,9 @@
                     stockInfo.Details.Add(stockInfoDetail);
 
                     stockInfoDetails.Add(stockInfoDetail);
-
-                    notGroupDetail.ReceiptQuantity = model.Quantity;
-                    notGroupDetail.OrderDetailStatus = OrderDetailStatusEnum.GroupAndInbound.ObjToInt();
                 }
 
                 float totalQuantity = stockInfo.Details.Sum(x => x.StockQuantity);
-
-                inboundOrder.OrderStatus = InOrderStatusEnum.鍏ュ簱涓�.ObjToInt();
 
                 _unitOfWorkManage.BeginTran();
                 if (stockInfo.Id == 0)
@@ -545,19 +508,18 @@
                 {
                     _stockRepository.StockInfoRepository.Db.UpdateNav(stockInfo).Include(x => x.Details, new UpdateNavOptions() { OneToManyInsertOrUpdate = true }).ExecuteCommand();
                 }
-                _inboundRepository.InboundOrderDetailRepository.UpdateData(inboundOrderDetails);
-                _inboundRepository.InboundOrderRepository.UpdateData(inboundOrder);
                 _recordService.StockQuantityChangeRecordService.AddStockChangeRecord(stockInfo, stockInfoDetails, beforeQuantity, totalQuantity, StockChangeTypeEnum.MaterielGroup);
                 _unitOfWorkManage.CommitTran();
-
-                return WebResponseContent.Instance.OK();
+                content.OK();
             }
             catch (Exception ex)
             {
                 _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
+                content.Error(ex.Message);
             }
+            return content;
         }
+
         /// <summary>
         /// 鍏ュ簱瀹屾垚涓婃姤ERP
         /// </summary>
@@ -575,13 +537,13 @@
                 {
                     return WebResponseContent.Instance.Error($"鍏ュ簱鍗曟嵁宸插畬鎴�");
                 }
-                
+
                 Dt_Warehouse warehouse = _warehouseService.Repository.QueryFirst(x => x.WarehouseId == stockInfo.WarehouseId);
                 if (warehouse == null)
                 {
                     return WebResponseContent.Instance.Error($"鏈壘鍒颁粨搴撲俊鎭�");
                 }
-                
+
                 ERPInboundModel model = new ERPInboundModel()
                 {
                     Code = inboundOrder.InboundOrderNo,
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs"
index 9a267e2..056a1bc 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs"
@@ -163,7 +163,7 @@
                 LocationStatusEnum lastStatus = (LocationStatusEnum)locationInfo.LocationStatus;
                 locationInfo.LocationStatus = LocationStatusEnum.InStock.ObjToInt();
                 Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseId == task.WarehouseId);
-                
+
                 stockInfo.LocationCode = locationInfo.LocationCode;
                 Dt_InboundOrder? inboundOrder = _inboundRepository.InboundOrderRepository.Db.Queryable<Dt_InboundOrder>().Where(x => x.InboundOrderNo == stockInfo.Details.FirstOrDefault().OrderNo).Includes(x => x.Details).First();
                 List<Dt_InboundOrderDetail> inboundOrderDetails = new List<Dt_InboundOrderDetail>();
@@ -176,7 +176,7 @@
                     }
 
                     List<ERPInboundDetailModel> detailModels = new List<ERPInboundDetailModel>();
-                    
+
                     foreach (var item in stockInfo.Details)
                     {
                         Dt_InboundOrderDetail? inboundOrderDetail = inboundOrder.Details.FirstOrDefault(x => x.RowNo == item.InboundOrderRowNo);
@@ -213,13 +213,13 @@
                     {
                         inboundOrder.OrderStatus = InOrderStatusEnum.鍏ュ簱瀹屾垚.ObjToInt();
                     }
-                    if (!_inboundOrderService.FeedbackInboundOrder(stockInfo, inboundOrder, detailModels).Status)
+                    if (!_inboundOrderService.FeedbackInboundOrder(stockInfo, inboundOrder, detailModels).Status)//todo 淇敼澶勭悊
                     {
                         return WebResponseContent.Instance.Error($"鍏ュ簱鍚屾Erp澶辫触");
                     }
                 }
                 //娴嬭瘯鏋跺叆搴撳簱瀛樼姸鎬�
-                if (task.TaskType == TaskTypeEnum.Inbound.ObjToInt() && warehouse.WarehouseCode == WarehouseEnum.HA64.ToString())
+                if (task.TaskType == TaskTypeEnum.Inbound.ObjToInt() && warehouse.WarehouseCode == WarehouseEnum.HA64.ToString() && stockInfo.StockStatus != StockStatusEmun.鎵嬪姩缁勭洏鍏ュ簱纭.ObjToInt())
                 {
                     stockInfo.StockStatus = StockStatusEmun.鍏ュ簱瀹屾垚鏈缓鍑哄簱鍗�.ObjToInt();
                 }
@@ -239,8 +239,11 @@
                 _stockRepository.StockInfoDetailRepository.UpdateData(stockInfo.Details);
                 _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, lastStatus, LocationChangeType.InboundCompleted);
                 _recordService.StockQuantityChangeRecordService.AddStockChangeRecord(stockInfo, stockInfo.Details, stockInfo.Details.Sum(x => x.StockQuantity), stockInfo.Details.Sum(x => x.StockQuantity), StockChangeTypeEnum.Inbound, taskNum);
-                _inboundRepository.InboundOrderDetailRepository.UpdateData(inboundOrderDetails);
-                _inboundRepository.InboundOrderRepository.UpdateData(inboundOrder);
+                if (inboundOrder != null)
+                {
+                    _inboundRepository.InboundOrderDetailRepository.UpdateData(inboundOrderDetails);
+                    _inboundRepository.InboundOrderRepository.UpdateData(inboundOrder);
+                }
                 _unitOfWorkManage.CommitTran();
                 return WebResponseContent.Instance.OK();
             }
@@ -301,7 +304,7 @@
                         }
                     }
                 }
-                
+
                 if (warehouse.WarehouseCode != WarehouseEnum.HA64.ToString())
                 {
                     //鎺ㄩ�佸嚭搴撳畬鎴�
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Inbound.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Inbound.cs"
index a872ab6..ee27c47 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Inbound.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Inbound.cs"
@@ -44,7 +44,7 @@
                 {
                     return WebResponseContent.Instance.Error($"鏈壘鍒扮粍鐩樹俊鎭�");
                 }
-                if (stockInfo.StockStatus != StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt())
+                if (stockInfo.StockStatus != StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt() && stockInfo.StockStatus != StockStatusEmun.鎵嬪姩缁勭洏鏆傚瓨.ObjToInt())
                 {
                     return WebResponseContent.Instance.Error($"璇ユ墭鐩樼姸鎬佷笉姝g‘,涓嶅彲鐢宠鍏ュ簱");
                 }
@@ -71,10 +71,17 @@
                     WarehouseId = stockInfo.WarehouseId,
                     PalletType = stockInfo.PalletType
                 };
+                
 
-                stockInfo.StockStatus = StockStatusEmun.鍏ュ簱纭.ObjToInt();
-
-                _unitOfWorkManage.BeginTran();
+                if (stockInfo.StockStatus == StockStatusEmun.鎵嬪姩缁勭洏鏆傚瓨.ObjToInt())
+                {
+                    stockInfo.StockStatus = StockStatusEmun.鎵嬪姩缁勭洏鍏ュ簱纭.ObjToInt();
+                }
+                else
+                {
+                    stockInfo.StockStatus = StockStatusEmun.鍏ュ簱纭.ObjToInt();
+                }
+                    _unitOfWorkManage.BeginTran();
                 int taskId = BaseDal.AddData(newTask);
                 newTask.TaskId = taskId;
                 _stockRepository.StockInfoRepository.UpdateData(stockInfo);
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderController.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderController.cs"
index b95b45d..4e353d1 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderController.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderController.cs"
@@ -75,5 +75,11 @@
         {
             return Service.FeedbackInboundOrder(id);
         }
+
+        [HttpPost, HttpGet, Route("ManualMaterielGroup")]
+        public WebResponseContent MaterielGroup(string palletCode, int initiallife, int warehouseId, [FromBody] List<string> serNums)
+        {
+            return Service.MaterielGroup(palletCode, initiallife, warehouseId, serNums);
+        }
     }
 }
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/\346\267\256\345\256\211PDA/pages.json" "b/\344\273\243\347\240\201\347\256\241\347\220\206/\346\267\256\345\256\211PDA/pages.json"
index 767a3c3..cfd92e1 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/\346\267\256\345\256\211PDA/pages.json"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/\346\267\256\345\256\211PDA/pages.json"
@@ -43,6 +43,14 @@
 				"enablePullDownRefresh": false
 			}
 		},
+		
+		{
+			"path": "pages/stash/boxing",
+			"style": {
+				"navigationBarTitleText": "WMS鍏ュ簱",
+				"enablePullDownRefresh": false
+			}
+		},
 		{
 			"path": "pages/stash/pickingMat",
 			"style": {
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/\346\267\256\345\256\211PDA/pages/stash/boxing.vue" "b/\344\273\243\347\240\201\347\256\241\347\220\206/\346\267\256\345\256\211PDA/pages/stash/boxing.vue"
new file mode 100644
index 0000000..78e84ea
--- /dev/null
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/\346\267\256\345\256\211PDA/pages/stash/boxing.vue"
@@ -0,0 +1,514 @@
+<template>
+	<view>
+		<uni-segmented-control :current="current" :values="items" @clickItem="onClickItem">
+		</uni-segmented-control>
+		<view class="content">
+			<view v-if="current === 0" class="headerstyle">
+				<view class="itemstyle">
+					<uni-forms label-width="180">
+						<uni-forms-item label="鎵樼洏鏉$爜:">
+							<uni-easyinput type="text" placeholder="璇锋壂鎻忔墭鐩樻潯鐮�" ref='midInput' :focus="!focus"
+								v-model="barcode" @input="barcodeInput" />
+						</uni-forms-item>
+						<uni-forms-item label="鍐呯鏍囩:">
+							<uni-easyinput type="text" placeholder="璇锋壂鎻忓唴绠辨爣绛�" ref='midInput' :focus="focus"
+								v-model="materSn" @input="snInput" />
+						</uni-forms-item>
+						<uni-forms-item label="鍒濆瀵垮懡:" v-if="Test">
+							<uni-easyinput type="text" placeholder="璇疯緭鍏ュ垵濮嬪鍛�" ref='midInput' v-model="Initiallife" />
+						</uni-forms-item>
+						<!-- <uni-forms-item>
+							<checkbox checked="check">鏄惁婊$洏</checkbox>
+						</uni-forms-item> -->
+						<uni-forms-item>
+							<button @click="submit" type="primary" size="default" style="margin-top: 2%;">缁勭洏</button>
+						</uni-forms-item>
+					</uni-forms>
+					<uni-list>
+						<!-- <uni-list-item direction="column" v-for="item in matTotal" :key="item.matCode">
+							<template v-slot:body>
+								<view class="uni-list-box">
+									<view class="uni-content">
+										<view class="uni-title-sub uni-ellipsis-2">鐗╂枡缂栫爜锛歿{item.matCode}}</view>
+										<view class="uni-title-sub uni-ellipsis-2">鏁伴噺锛歿{item.matQuantity}}</view>
+									</view>
+								</view>
+							</template>
+						</uni-list-item> -->
+						<uni-list-item direction="column" v-for="(item,index) in matInfos" :key="index">
+							<template v-slot:body>
+								<view class="uni-list-box">
+									<uni-icons type="trash" size="22" style="position: absolute;right: 5%;"
+										@click="deleteList(index)">
+									</uni-icons>
+									<view class="uni-content">
+										<view class="uni-title-sub uni-ellipsis-2">閲囪喘鍗曞彿锛歿{item.purchaseOrderNo}}</view>
+										<view class="uni-note">鐗╂枡缂栫爜锛歿{item.materielCode}}</view>
+										<view class="uni-note">鎵规鍙凤細{{item.lotNo}}</view>
+										<view class="uni-note">鏁伴噺锛歿{item.quantity}}</view>
+										<view class="uni-note">鐢熶骇鏃ユ湡锛歿{item.productionDate}}</view>
+										<view class="uni-note">鏈夋晥鏈燂細{{item.effectiveDate}}</view>
+									</view>
+								</view>
+							</template>
+						</uni-list-item>
+					</uni-list>
+				</view>
+			</view>
+			<view v-if="current === 1" class="headerstyle">
+				<view class="itemstyle">
+					<uni-forms label-width="120">
+						<uni-forms-item label="鎵樼洏鏉$爜">
+							<uni-easyinput type="text" :focus="!addressFocus" v-model="inboundBarcode"
+								placeholder="璇锋壂鎻忔墭鐩樻潯鐮�" ref='midInput' @input="inputChangebarcode" />
+						</uni-forms-item>
+						<uni-forms-item label="鍦板潃鏉$爜">
+							<uni-easyinput type="text" v-model="address" placeholder="璇锋壂鎻忓湴鍧�鏉$爜" ref='midInput'
+								:focus="addressFocus" />
+						</uni-forms-item>
+						<uni-forms-item>
+							<button @click="inbound" type="primary" size="default" style="margin-top: 2%;">鍏ュ簱纭</button>
+						</uni-forms-item>
+					</uni-forms>
+				</view>
+			</view>
+			<view v-if="current === 2" class="headerstyle">
+				<view class="itemstyle">
+					<uni-list :border="true">
+						<uni-list-item direction="column" v-for="(item,index) in orderInfo" :key="index">
+							<template v-slot:body>
+								<view class="uni-list-box">
+									<view class="uni-content">
+										<view style="font-size: 18px;">鍗曟嵁鍙凤細{{orderNo}}</view>
+										<view style="font-size: 18px;">鐗╂枡缂栫爜锛歿{item.materielCode}}</view>
+										<!-- <view style="font-size: 18px;">鐗╂枡鍚嶇О锛歿{item.matName}}</view> -->
+										<view style="font-size: 18px;">鏁伴噺锛歿{item.orderQuantity}}</view>
+										<view style="font-size: 18px;">鍗曚綅锛歿{item.unit}}</view>
+										<view style="font-size: 18px;">缁勭洏鏁伴噺锛歿{item.receiptQuantity}}</view>
+									</view>
+								</view>
+							</template>
+						</uni-list-item>
+					</uni-list>
+				</view>
+			</view>
+			<view v-if="current === 3" class="headerstyle">
+				<view class="itemstyle">
+					<uni-forms label-width="120">
+						<uni-forms-item>
+							<uni-easyinput type="text" @input="releaseboxInput" v-model="value" placeholder="璇锋壂鐮�"
+								ref='midInput' :focus="true" />
+						</uni-forms-item>
+						<uni-forms-item>
+							<button @click="releasebox" type="primary" size="default">瑙g洏</button>
+						</uni-forms-item>
+					</uni-forms>
+					<uni-list>
+						<uni-list-item direction="column" v-if="value2">
+							<template v-slot:body>
+								<view class="uni-list-box">
+									<view class="uni-content">
+										<view class="uni-title-sub uni-ellipsis-2">鎵樼洏鍙凤細{{value2}}</view>
+									</view>
+								</view>
+							</template>
+						</uni-list-item>
+						<uni-list-item direction="column" v-for="item in matTotal" :key="item.matCode">
+							<template v-slot:body>
+								<view class="uni-list-box">
+									<view class="uni-content">
+										<view class="uni-title-sub uni-ellipsis-2">鐗╂枡缂栫爜锛歿{item.matCode}}</view>
+										<view class="uni-title-sub uni-ellipsis-2">鏁伴噺锛歿{item.matQuantity}}</view>
+									</view>
+								</view>
+							</template>
+						</uni-list-item>
+
+						<uni-list-item direction="column" v-for="(item,index) in matInfo" :key="index">
+							<template v-slot:body>
+								<view class="uni-list-box">
+									<view class="uni-content">
+										<view class="uni-title-sub uni-ellipsis-2" style="font-size: 1.1em;">
+											鐗╂枡缂栫爜锛歿{item.matCode}}
+										</view>
+										<view class="uni-title-sub uni-ellipsis-2" style="font-size: 1.1em;">
+											鐗╂枡鍚嶇О锛歿{item.matName}}
+										</view>
+										<view class="uni-title-sub uni-ellipsis-2" style="font-size: 1.1em;">
+											鏁伴噺锛歿{item.matQty}}
+										</view>
+									</view>
+								</view>
+							</template>
+						</uni-list-item>
+					</uni-list>
+				</view>
+			</view>
+		</view>
+		<u-toast ref="uToast" />
+	</view>
+</template>
+
+<script>
+	const innerAudioContext = uni.createInnerAudioContext();
+	export default {
+		data() {
+			return {
+				items: ['缁勭洏', '鍏ュ簱'], //, '鍗曟嵁淇℃伅', '瑙g洏'
+				current: 0,
+				matTotal: [],
+				matInfos: [],
+				orderNo: "",
+				label: "",
+				orderInfo: [],
+				focus: false,
+				barcode: "",
+				materSn: "",
+				Initiallife: 1000,
+				sns: [],
+				addressFocus: false,
+				inboundBarcode: "",
+				address: "",
+				check: true,
+				value: "",
+				matInfo: [],
+				value2: "",
+				matTotals: [],
+				warehouseId: "",
+				Test: false,
+				Testcheck: false,
+			}
+		},
+		onShow() {},
+		onLoad(res) {
+			this.focus = false;
+			this.addressFocus = false;
+			this.orderNo = res.orderNo;
+			this.warehouseId = res.warehouseId;
+			this.Test = this.warehouseId == 6; //娴嬭瘯鏋朵粨搴撳尯ID
+			this.label = "鍗曟嵁缂栧彿锛�" + this.orderNo;
+			this.getData();
+		},
+		methods: {
+			voiceSpeech(src) {
+				innerAudioContext.src = src; // '../../static/success.mp3';
+				innerAudioContext.play();
+			},
+			//瑙g洏
+			releasebox() {
+				if (this.value.length == 0) {
+					this.$refs.uToast.show({
+						title: "璇锋壂鐮�",
+						type: "error"
+					})
+					return;
+				}
+				var param;
+				var matInfo = this.value.split('|');
+				if (matInfo.length == 7) {
+					param = {
+						MainData: {
+							"innerCode": this.value
+						}
+					}
+				} else {
+					param = {
+						MainData: {
+							"barcode": this.value
+						}
+					}
+				}
+				this.$u.post('/api/StockOperate/ReleaseAllBox', param).then(resdt => {
+					if (resdt.status) {
+						uni.$showMsg('瑙g洏鎴愬姛!')
+						this.value = "";
+						this.matInfo = [];
+						this.matTotals = [];
+						this.value2 = "";
+					} else {
+						this.$refs.uToast.show({
+							title: resdt.message,
+							type: "error"
+						})
+					}
+				})
+			},
+			releaseboxInput() {
+				this.$nextTick(() => {
+					if (this.value.length == 0) {
+						return;
+					}
+					var matInfo = this.value.split('|');
+					this.matInfo = [];
+					if (matInfo.length == 7) {
+						this.$u.post('/api/StockOperate/GetStockInfoByInnerCode', {
+							MainData: {
+								"innerCode": this.value
+							}
+						}).then(res => {
+							if (res.status) {
+								this.matInfo = res.data.stockInfo;
+								this.matTotals = res.data.stockTotal;
+								this.value2 = res.data.barcode;
+							} else {
+								this.$refs.uToast.show({
+									title: res.message,
+									type: "error"
+								})
+							}
+						})
+					} else {
+						this.$u.post('/api/StockOperate/GetStockInfoByBarcode', {
+							MainData: {
+								"barcode": this.value
+							}
+						}).then(res => {
+							if (res.status) {
+								this.matInfo = res.data.stockInfo;
+								this.matTotals = res.data.stockTotal;
+								this.value2 = res.data.barcode;
+							} else {
+								this.$refs.uToast.show({
+									title: res.message,
+									type: "error"
+								})
+							}
+						})
+					}
+				})
+			},
+
+			updateFocus() {
+				debugger
+				this.$nextTick(() => {
+					this.materSn = '';
+					if (!this.focus) {
+						this.focus = true;
+					}
+				});
+			},
+			barcodeFocus() {
+				debugger
+				this.barcode = '';
+				if (this.focus) {
+					this.focus = false;
+				}
+			},
+			getData() {
+				var postData = {
+					MainData: {
+						orderNo: this.orderNo
+					},
+				}
+				this.$u.post('/api/InboundOrderDetail/GetInboundOrderDetails', postData).then((res) => {
+					if (res.status) {
+						this.orderInfo = res.data;
+						if (this.orderInfo.length > 3) {
+							this.loadVisible = true;
+						}
+					}
+				})
+			},
+			onClickItem(e) {
+				this.focus = false;
+				this.addressFocus = false;
+				if (this.current !== e.currentIndex) {
+					this.current = e.currentIndex;
+					if (this.current == 2) {
+						this.getData();
+					}
+				}
+			},
+			barcodeInput() {
+				this.$nextTick(function(x) {
+					if (this.barcode.length > 0) {
+						// if (this.barcode.substring(0, 1) == 'A' || this.barcode.substring(0, 2) == 'TP') {
+						this.focus = true;
+						// } else {
+						// 	this.$refs.uToast.show({
+						// 		title: "鎵爜閿欒,璇锋壂鎻忔墭鐩樼爜",
+						// 		type: "error"
+						// 	})
+						// }
+					}
+				})
+			},
+			snInput() {
+				this.$nextTick(() => {
+					if (this.materSn != "") {
+						this.focus = false;
+						var matSn = this.materSn;
+						setTimeout(() => {
+							this.materSn = "";
+						}, 10);
+						this.$u.post('/api/MaterielInfo/CodeAnalysis?serNum=' + matSn, {}).then((res) => {
+							this.Testcheck = false;
+							if (res.status) {
+								// debugger
+								// this.matTotal.push({
+								// 	matCode: res.data.materielCode,
+								// 	matQuantity: parseInt(res.data.quantity)
+								// });
+								this.sns.push(res.data.serialNumber);
+
+								// this.matInfos.splice(0, this.matInfos.length);
+								this.matInfos.push(res.data);
+								if (res.message) {
+									this.$refs.uToast.show({
+										title: res.message,
+										type: "error"
+									})
+									// setTimeout(this.updateFocus,200);
+									setTimeout(() => {
+										this.voiceSpeech('../../static/fail.mp3');
+									}, 100);
+									return;
+								}
+								// setTimeout(this.updateFocus,200);
+								setTimeout(() => {
+									this.voiceSpeech('../../static/success.mp3');
+								}, 100);
+							} else {
+								// this.innerCode = "";
+								this.$refs.uToast.show({
+									title: res.message,
+									type: "error"
+								})
+								// setTimeout(this.updateFocus,200);
+								setTimeout(() => {
+									this.voiceSpeech('../../static/fail.mp3');
+								}, 100);
+							}
+						})
+					}
+				})
+			},
+			inbound() {
+				if (this.inboundBarcode == "") {
+					this.$refs.uToast.show({
+						title: "璇锋壂鎻忔墭鐩樻潯鐮�",
+						type: "error"
+					})
+					return;
+				}
+				if (this.address == "") {
+					this.$refs.uToast.show({
+						title: "璇锋壂鎻忓湴鍧�鏉$爜",
+						type: "error"
+					})
+					return;
+				}
+				var postData = {
+					MainData: {
+						"barcode": this.inboundBarcode,
+						"startPoint": this.address,
+						"warehouseId": this.warehouseId
+					}
+				}
+				this.$u.post('/api/Task/RequestInboundTask', postData).then(res => {
+					if (res.status) {
+						uni.$showMsg(res.message);
+						this.inboundBarcode = "";
+						this.address = "";
+						setTimeout(() => {
+							this.addressFocus = false;
+						}, 200);
+					} else {
+						this.$refs.uToast.show({
+							title: res.message,
+							type: "error"
+						})
+					}
+				}).catch(err => {
+					this.$refs.uToast.show({
+						title: err.message,
+						type: "error"
+					})
+				})
+			},
+			inputChangebarcode() {
+				this.addressFocus = false;
+				this.$nextTick(function(x) {
+					if (this.inboundBarcode != '') {
+						this.addressFocus = true;
+					}
+				})
+			},
+			deleteList(res) {
+				this.matInfos.splice(res, 1);
+				this.sns.splice(res, 1);
+			},
+			submit() {
+				if (this.barcode == "") {
+					this.$refs.uToast.show({
+						title: "璇锋壂鎻忔墭鐩樻潯鐮�",
+						type: 'error'
+					})
+					return;
+				}
+				if (this.matInfos.length == 0) {
+					this.$refs.uToast.show({
+						title: "璇锋壂鎻忓唴绠辨爣绛�",
+						type: 'error'
+					})
+					return;
+				}
+				if (this.Test) {
+					if (!this.Testcheck) {
+						this.Testcheck = true;
+						this.$refs.uToast.show({
+							title: "璇风‘璁ゅ垵濮嬪鍛�",
+							type: 'error'
+						})
+						return;
+					}
+				}
+
+				let url = 'palletCode=' + this.barcode + '&initiallife=' + this.Initiallife + '&warehouseId=' + this.warehouseId;
+				
+				this.$u.post('/api/InboundOrder/ManualMaterielGroup?' + url, this.sns).then(res => {
+					this.Testcheck = false;
+					if (res.status) {
+						this.$refs.uToast.show({
+							title: "缁勭洏鎴愬姛",
+							type: "success"
+						})
+						this.focus = false;
+						this.barcode = "";
+						this.matInfos = [];
+						this.sns = [];
+						this.matTotal = [];
+					} else {
+						this.$refs.uToast.show({
+							title: res.message,
+							type: "error"
+						})
+					}
+				})
+			}
+		}
+	}
+</script>
+
+<style lang="scss">
+	@import '@/common/uni-ui.scss';
+
+	.content {
+		display: flex;
+		height: 150px;
+	}
+
+	.content-text {
+		font-size: 14px;
+		color: #666;
+	}
+
+	.itemstyle {
+		margin-top: 30px;
+		margin-left: 5%;
+	}
+
+	.headerstyle {
+		width: 90%;
+	}
+</style>
\ No newline at end of file
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/\346\267\256\345\256\211PDA/static/iconfont.css" "b/\344\273\243\347\240\201\347\256\241\347\220\206/\346\267\256\345\256\211PDA/static/iconfont.css"
index 099fff3..fe2baae 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/\346\267\256\345\256\211PDA/static/iconfont.css"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/\346\267\256\345\256\211PDA/static/iconfont.css"
@@ -1,77 +1,82 @@
 @font-face {
-	font-family: "custom-icon";
-	src:
-		url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2');
+  font-family: "custom-icon";
+  src: 
+       url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2');
 }
 
 .custom-icon {
-	font-family: "custom-icon" !important;
-	font-size: 16px;
-	font-style: normal;
-	-webkit-font-smoothing: antialiased;
-	-moz-osx-font-smoothing: grayscale;
+  font-family: "custom-icon" !important;
+  font-size: 16px;
+  font-style: normal;
+  -webkit-font-smoothing: antialiased;
+  -moz-osx-font-smoothing: grayscale;
+}
+
+.custom-icon-_WMS_rukuyewu:before {
+  content: "\e70f";
 }
 
 .custom-icon-chuku:before {
-	content: "\e602";
+  content: "\e602";
 }
 
 .custom-icon-ruku:before {
-	content: "\e606";
+  content: "\e606";
 }
 
 .custom-icon-zhijin:before {
-	content: "\e652";
+  content: "\e652";
 }
 
 .custom-icon-shouhuo:before {
-	content: "\e60f";
+  content: "\e60f";
 }
 
 .custom-icon-kucunpandian-:before {
-	content: "\e646";
+  content: "\e646";
 }
 
 .custom-icon-ppt:before {
-	content: "\e734";
+  content: "\e734";
 }
 
 .custom-icon-chengpinchuku:before {
-	content: "\e62f";
+  content: "\e62f";
 }
 
 .custom-icon-jianxuandan:before {
-	content: "\e62b";
+  content: "\e62b";
 }
 
 .custom-icon-kucunchaxun:before {
-	content: "\e681";
+  content: "\e681";
 }
 
 .custom-icon-zhuangxiangruku1:before {
-	content: "\e601";
+  content: "\e601";
 }
 
 .custom-icon-chanpin-youmotuliao:before {
-	content: "\e682";
+  content: "\e682";
 }
 
 .custom-icon-bancaiwuliao:before {
-	content: "\e676";
+  content: "\e676";
 }
 
 .custom-icon-ceshijiaguanli:before {
-	content: "\e678";
+  content: "\e678";
 }
 
 .custom-icon-lingliaozupan:before {
-	content: "\e77d";
+  content: "\e77d";
 }
 
 .custom-icon-chengpincangku:before {
-	content: "\e6f9";
+  content: "\e6f9";
 }
 
 .custom-icon-fuliaocangku:before {
-	content: "\e6fa";
-}
\ No newline at end of file
+  content: "\e6fa";
+}
+

--
Gitblit v1.9.3