From 6b74e1dcf5642c8f56975471e27780d695953989 Mon Sep 17 00:00:00 2001
From: 陈勇 <竞男@ASUNA>
Date: 星期日, 26 四月 2026 15:48:01 +0800
Subject: [PATCH] 同步代码
---
项目代码/WMS/WMSServer/WIDESEA_StorageBasicServices/Stock/VV_MesLockInfoService.cs | 139 ++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 138 insertions(+), 1 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServer/WIDESEA_StorageBasicServices/Stock/VV_MesLockInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServer/WIDESEA_StorageBasicServices/Stock/VV_MesLockInfoService.cs"
index 5d007f0..72d3b7b 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServer/WIDESEA_StorageBasicServices/Stock/VV_MesLockInfoService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServer/WIDESEA_StorageBasicServices/Stock/VV_MesLockInfoService.cs"
@@ -6,13 +6,150 @@
using System.Drawing.Printing;
using System.Linq.Expressions;
using WIDESEA_Core;
+using WIDESEA_DTO.Basic;
+using WIDESEA_IStoragIntegrationServices;
namespace WIDESEA_StorageBasicService;
public class VV_MesLockInfoService : ServiceBase<VV_MesLockInfo, IVV_MesLockInfoRepository>, IVV_MesLockInfoService
{
- public VV_MesLockInfoService(IVV_MesLockInfoRepository BaseDal) : base(BaseDal)
+ private readonly IVV_StockInfoRepository _stockInfoRepository;
+ private readonly IDt_MESLockInfoRepository _MESLockInfoRepository;
+ private readonly IDt_CarBodyInfoRepository _carBodyInfoRepository;
+ private readonly IMESService _MESService;
+ public VV_MesLockInfoService(IVV_MesLockInfoRepository BaseDal, IVV_StockInfoRepository stockInfoRepository, IDt_MESLockInfoRepository MESLockInfoRepository, IDt_CarBodyInfoRepository carBodyInfoRepository, IMESService MESService) : base(BaseDal)
{
+ _stockInfoRepository = stockInfoRepository;
+ _MESLockInfoRepository = MESLockInfoRepository;
+ _carBodyInfoRepository = carBodyInfoRepository;
+ _MESService = MESService;
+ }
+
+ public WebResponseContent GetMesLockInfo()
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ List<VV_MesLockInfo> mesLockInfos = BaseDal.QueryData(x => x.LockStatue == 1 || x.LockStatue == 0).OrderBy(x => x.sequenceNo).ToList();
+ List<VV_StockInfo> stockInfos = _stockInfoRepository.QueryData(x => x.CarType == 2).OrderBy(x => x.CreateDate).Take(50).ToList();
+ List<MesLockDTO> mesLockDTOs = new List<MesLockDTO>();
+ mesLockInfos.ForEach(x =>
+ {
+ mesLockDTOs.Add(new MesLockDTO
+ {
+ lockStatue = x.LockStatue,
+ pvi = x.PVI,
+ vehicleCharacteristic = x.vehicleCharacteristic,
+ carBodyCharacteristic = x.carBodyCharacteristic
+ });
+ });
+ stockInfos.ForEach(x =>
+ {
+ mesLockDTOs.Add(new MesLockDTO
+ {
+ lockStatue = 2,
+ pvi = x.PVI,
+ vehicleCharacteristic = x.vehicleCharacteristic,
+ carBodyCharacteristic = x.carBodyCharacteristic
+ });
+ });
+ return content.OK(data: mesLockDTOs);
+ }
+ catch (Exception ex)
+ {
+ return content.Error(ex.Message);
+ }
+ }
+
+ public WebResponseContent GetStockInfo(string PVI)
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ VV_StockInfo stockInfos = _stockInfoRepository.QueryFirst(x => x.PVI == PVI);
+
+ return content.OK(data: stockInfos);
+ }
+ catch (Exception ex)
+ {
+ return content.Error(ex.Message);
+ }
+ }
+
+ public WebResponseContent MesLock(object[] keys)
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ List<Dt_CarBodyInfo> bodyInfos = new List<Dt_CarBodyInfo>();
+ List<Dt_MESLockInfo> lockinfo = new List<Dt_MESLockInfo>();
+ foreach (var item in keys)
+ {
+
+ }
+
+ if (!bodyInfos.Any()) throw new Exception("閿佽溅涓婃姤澶辫触:鏃犻攣杞︽暟鎹�");
+
+ var mesLock = _MESLockInfoRepository.QueryFirst(x => x.Id == Convert.ToInt32(keys));
+ mesLock.LockStatue = 3; //寮傚父閿佽溅
+ var carInfo = _carBodyInfoRepository.QueryFirst(x => x.Id == mesLock.carBodyID);
+ if (carInfo != null)
+ {
+ bodyInfos.Add(carInfo);
+ lockinfo.Add(mesLock);
+ }
+
+ WebResponseContent webResponse = _MESService.LockRequest(carInfo, 1);
+ if (webResponse.Status)
+ {
+ _MESLockInfoRepository.UpdateData(lockinfo);
+ content.OK();
+ }
+ else
+ {
+ content.Error();
+ }
+ }
+ catch (Exception ex)
+ {
+ content.Error(ex.Message);
+ }
+ return content;
+ }
+
+ public WebResponseContent MesUnLock(object[] keys)
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ List<Dt_CarBodyInfo> bodyInfos = new List<Dt_CarBodyInfo>();
+ foreach (var item in keys)
+ {
+
+ }
+
+ if (!bodyInfos.Any()) throw new Exception("閿佽溅涓婃姤澶辫触:鏃犻攣杞︽暟鎹�");
+
+ var mesLock = _MESLockInfoRepository.QueryFirst(x => x.Id == Convert.ToInt32(keys));
+
+ var carInfo = _carBodyInfoRepository.QueryFirst(x => x.Id == mesLock.carBodyID);
+ if (carInfo != null) bodyInfos.Add(carInfo);
+
+ WebResponseContent webResponse = _MESService.LockRequest(carInfo, 1);
+ if (webResponse.Status)
+ {
+ content.OK();
+ }
+ else
+ {
+ content.Error();
+ }
+ }
+ catch (Exception ex)
+ {
+ content.Error(ex.Message);
+ }
+ return content;
}
}
\ No newline at end of file
--
Gitblit v1.9.3