From 33b47abc54be9d7047936d5e93fb6b0401052933 Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期三, 11 六月 2025 00:08:07 +0800
Subject: [PATCH] 1
---
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/MesTaskService.cs | 131 ++++++++++++++++++-------------------------
1 files changed, 54 insertions(+), 77 deletions(-)
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/MesTaskService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/MesTaskService.cs"
index 9fce273..1181cd4 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/MesTaskService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/MesTaskService.cs"
@@ -29,6 +29,7 @@
using WIDESEA_DTO.Task;
using WIDESEA_DTO.Stock;
using SqlSugar;
+using OfficeOpenXml.FormulaParsing.Excel.Functions.RefAndLookup;
namespace WIDESEA_TaskInfoService
{
@@ -293,7 +294,6 @@
}
return content;
}
-
/// <summary>
///
/// </summary>
@@ -402,6 +402,7 @@
tasks.ForEach(x =>
{
x.TargetAddress = model.Line;
+ x.OrderNo = mesOutboundOrder.TaskNo;
});
_unitOfWorkManage.BeginTran();
@@ -457,11 +458,12 @@
Dt_StockInfoDetail stockInfoDetail = new Dt_StockInfoDetail()
{
+ MaterielSpec = stockInfoDetail_Hty.MaterielSpec,
BatchNo = stockInfoDetail_Hty?.BatchNo ?? "",
EffectiveDate = model.ExpirationDate,
MaterielCode = model.MaterialCode,
InboundOrderRowNo = stockInfoDetail_Hty?.InboundOrderRowNo ?? 0,
- MaterielName = model.MaterialCode,
+ MaterielName = stockInfoDetail_Hty.MaterielName,
ProductionDate = model.ProductionDate,
OrderNo = stockInfoDetail_Hty?.OrderNo ?? "",
OutboundQuantity = 0,
@@ -614,11 +616,14 @@
//}
#endregion
+ _unitOfWorkManage.BeginTran();
Db.InsertNav(mesOutboundOrder).Include(x => x.Details).ExecuteCommand();
+ _unitOfWorkManage.CommitTran();
return MesResponseContent.Instance.OK();
}
catch (Exception ex)
{
+ _unitOfWorkManage.RollbackTran();
return MesResponseContent.Instance.Error(ex.Message);
}
@@ -734,6 +739,7 @@
{
try
{
+ //涓�娆″彧鍙戜竴鍗风墿鏂欏叆搴撴槑缁�
foreach (var item in model.MaterialLotInfo)
{
//鑾峰彇鐗╂枡淇℃伅
@@ -860,7 +866,9 @@
TaskType = TaskTypeEnum.Inbound.ObjToInt(),
TaskStatus = TaskStatusEnum.New.ObjToInt(),
WarehouseId = stockInfo.WarehouseId,
- PalletType = stockInfo.PalletType
+ PalletType = stockInfo.PalletType,
+ MaterielCode = stockInfo.Details.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.MaterielCode,
+ Quantity = (float)stockInfo.Details.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.StockQuantity,
};
LocationStatusEnum lastStatus = (LocationStatusEnum)locationInfo.LocationStatus;
_unitOfWorkManage.BeginTran();
@@ -922,76 +930,8 @@
return MesResponseContent.Instance.Error(ex.Message);
}
}
- /// <summary>
- /// MES鎴愬搧鍏ュ簱鍗曟帴鏀�
- /// </summary>
- /// <returns></returns>
- public MesResponseContent BagInfoSync(MesBagInfoModel bagInfoModel)
- {
- MesResponseContent content = new MesResponseContent();
- try
- {
- Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == bagInfoModel.WarehouseCode);
- if (warehouse == null)
- {
- return content.Error("鏈壘鍒颁粨搴撲俊鎭�");
- }
- List<Dt_MesProInOrderDetail> mesProInOrderDetails = new List<Dt_MesProInOrderDetail>();
- foreach (var item in bagInfoModel.BagDetails)
- {
- mesProInOrderDetails.Add(_mapper.Map<Dt_MesProInOrderDetail>(item));
- }
- Dt_MesProInOrder mesProInOrder = new Dt_MesProInOrder()
- {
- WarehouseId = warehouse.WarehouseId,
- BatchNo = bagInfoModel.BatchNo,
- MesProStatus = InOrderStatusEnum.鏈紑濮�.ObjToInt(),
- UnPackStock = bagInfoModel.UnPackStock,
- Details = mesProInOrderDetails
- };
- Db.InsertNav(mesProInOrder).Include(x => x.Details).ExecuteCommand();
- return content.OK("鎺ユ敹鎴愬姛");
- }
- catch (Exception ex)
- {
- content.Error(ex.Message);
- }
- return content;
- }
-
- /// <summary>
- /// 鎴愬搧杩斿伐鎻愬簱
- /// </summary>
- /// <param name="model"></param>
- /// <returns></returns>
- public MesResponseContent RworkTask(RworkTaskModel model)
- {
- try
- {
- Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == WarehouseEnum.HA72.ToString());
- //鑾峰彇搴撳瓨璁板綍
- List<Dt_StockInfo> stockInfos = _stockRepository.StockInfoRepository.Db.Queryable<Dt_StockInfo>().Where(x =>
- x.WarehouseId == warehouse.WarehouseId &&
- x.StockStatus == (int)StockStatusEmun.鍏ュ簱瀹屾垚).Includes(x => x.Details).ToList();
- Dt_StockInfo? stockInfo = stockInfos.FirstOrDefault(x => x.Details.Any(x => x.BatchNo == model.ProductVersion));
- if (stockInfo == null)
- {
- return MesResponseContent.Instance.Error($"灏炬暟浠�:{model.ProductVersion}鏃犲彲鐢ㄥ簱瀛�");
- }
- Dt_Task exsit2 = Repository.QueryFirst(x => x.PalletCode == stockInfo.PalletCode);
-
-
- }
- catch (Exception ex)
- {
-
- throw;
- }
- return MesResponseContent.Instance.OK();
- }
-
-
-
+
+
/// <summary>
/// 鐢熸垚PP澶у嵎鍑哄簱浠诲姟
@@ -1484,9 +1424,46 @@
return WebResponseContent.Instance.Error(ex.Message);
}
}
-
-
-
-
+ /// <summary>
+ /// 鑾峰彇MES闃荤剨鎵规淇℃伅
+ /// </summary>
+ /// <param name="model"></param>
+ /// <returns></returns>
+ public WebResponseContent GetZHMesMaterialLot(string materialLot)
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.WMS_MES_GetProductByLot.ToString());
+ object obj = new { LotNo = materialLot };
+ MESRoot<object> root = new MESRoot<object>()
+ {
+ From = "WMS",
+ DateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
+ Content = obj
+ };
+ JsonSerializerSettings settings = new JsonSerializerSettings
+ {
+ ContractResolver = new CamelCasePropertyNamesContractResolver()
+ };
+ string request = JsonConvert.SerializeObject(root, settings);
+ string response = HttpMesHelper.Post(apiInfo.ApiAddress, request);
+ MesResponseContent mesResponseContent = response.DeserializeObject<MesResponseContent>();
+ //璋冪敤鎺ュ彛
+ if (mesResponseContent.BSucc == true)
+ {
+ content.OK(mesResponseContent.StrMsg, mesResponseContent.Content);
+ }
+ else
+ {
+ content.Error(mesResponseContent.StrMsg);
+ }
+ }
+ catch (Exception ex)
+ {
+ content.Error(ex.Message);
+ }
+ return content;
+ }
}
}
--
Gitblit v1.9.3