From 891207469b41c23d22805876a4e179d75832572f Mon Sep 17 00:00:00 2001
From: leiqunqing <zhengqifeng@hnkhzn.com>
Date: 星期四, 05 三月 2026 11:03:52 +0800
Subject: [PATCH] 完整项目更新
---
代码管理/WIDESEAWCS_Server/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/BoxingDetailService.cs | 43 ++++++++++++++++++++++++++++++++++++++-----
1 files changed, 38 insertions(+), 5 deletions(-)
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/BoxingDetailService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/BoxingDetailService.cs"
index 03b6dce..fa9372b 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/BoxingDetailService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/BoxingDetailService.cs"
@@ -11,6 +11,7 @@
using WIDESEAWCS_Core.BaseServices;
using WIDESEAWCS_Core.Helper;
using WIDESEAWCS_DTO.BasicInfo;
+using WIDESEAWCS_IBasicInfoService;
using WIDESEAWCS_Model.Models;
using WIDESEAWCS_QuartzJob;
@@ -22,6 +23,10 @@
private readonly IBoxingService _boxingService;
private readonly IFormulaService _formulaService;
private readonly IFormulaDetailService _formulaDetailService;
+ private readonly IProcessInfoDetailService _processInfoDetailService;
+ private readonly IScanStationService _scanStationService;
+
+
private readonly IUnitOfWorkManage _unitOfWorkManage;
public BoxingDetailService(
@@ -29,13 +34,18 @@
IFormulaService formulaService,
IBoxingService boxingService,
IFormulaDetailService formulaDetailService,
+ IProcessInfoDetailService processInfoDetailService,
+ IScanStationService scanStationService,
IUnitOfWorkManage unitOfWorkManage
) : base(BaseDal)
{
_formulaService = formulaService;
_boxingService = boxingService;
_formulaDetailService = formulaDetailService;
+ _processInfoDetailService = processInfoDetailService;
+ _scanStationService = scanStationService;
_unitOfWorkManage = unitOfWorkManage;
+
}
public IRepository<Dt_BoxingDetail> Repository => BaseDal;
@@ -103,6 +113,7 @@
/// <returns></returns>
public string IsComponentCodesEqual(List<string> boxingDetails, List<string> formulaDetails)
{
+
// 澶勭悊null闆嗗悎锛岃閬跨┖鎸囬拡寮傚父
var boxList = boxingDetails ?? new List<string>();
var formulaList = formulaDetails ?? new List<string>();
@@ -142,15 +153,17 @@
return WebResponseContent.Instance.Error("鎻愪氦鍙傛暟涓嶈兘涓虹┖");
}
string productCode = toolingBoardSubmitDto.FinishedProductCode?.Trim();
+
+ string proCode = string.Empty;
+ string proOther = string.Empty;
+
if (!string.IsNullOrWhiteSpace(productCode))
{
- string proCode = string.Empty;
- string proOther = string.Empty;
var proCodeMatch = System.Text.RegularExpressions.Regex.Match(productCode, @"TX(\d+)(?=\s|\||$)", System.Text.RegularExpressions.RegexOptions.IgnoreCase);
if (proCodeMatch.Success)
{
- proCode = $"TX{proCodeMatch.Groups[1].Value.Trim()}"; // 鎷兼帴TX+鏁板瓧锛屼繚鎸佹牸寮忕粺涓�
+ proCode = $"TX{proCodeMatch.Groups[1].Value.Trim()}";
}
// 姝e垯2锛氬尮閰嶈繛缁殑10浣嶇函鏁板瓧锛堝叏灞�鍖归厤锛屽彇绗竴涓鍚堢殑鍗冲彲锛�
@@ -165,6 +178,12 @@
if (formulaModel == null)
{
return WebResponseContent.Instance.Error("鏃犳垚鍝侀厤鏂癸紝璇锋牳瀵规垚鍝佺紪鐮�");
+ }
+
+ Dt_ScanStation dt_ScanStation = _scanStationService.Repository.QueryFirst(x => x.StationCode == "001");
+ if (dt_ScanStation.StationEndProduct != proCode)
+ {
+ return WebResponseContent.Instance.Error("鎴愬搧缂栧彿閿欒");
}
List<Dt_FormulaDetail> dt_FormulaDetails = _formulaDetailService.Repository.QueryData(x => x.FormulaId == formulaModel.Id && x.IsScanned == 1);
@@ -193,6 +212,11 @@
if (!PalletCode.IsNotEmptyOrNull() || PalletCode == "NoRead")
{
throw new InvalidOperationException("鎵樼洏鐮佹湭鎵埌锛岃閲嶈瘯");
+ }
+ Dt_Boxing dt_Boxing = _boxingService.Repository.QueryFirst(x => x.PalletCode == PalletCode);
+ if(dt_Boxing != null)
+ {
+ throw new InvalidOperationException("鎵樼洏鐮侀噸澶嶆壂鎻�");
}
Dt_Boxing existBoxinModel = new Dt_Boxing();
existBoxinModel.PalletCode = PalletCode;
@@ -326,9 +350,18 @@
// #endregion
//}
//uow.Commit();
- //string msg = existBoxinModel == null ? "缁勭洏淇℃伅鏂板鎴愬姛锛�" : "缁勭洏淇℃伅淇敼鎴愬姛锛�";
+ string msg = null;
+ List<Dt_ProcessInfoDetail> dt_ProcessInfoDetail = _processInfoDetailService.Repository
+ .QueryData(x => x.ProductSn == proOther && x.ProductCode == proCode).ToList();
- return WebResponseContent.Instance.OK();
+ // 3. 鍒ゆ柇鏌ヨ缁撴灉锛屽瓨鍦ㄥ垯璧嬪�兼彁绀轰俊鎭�
+ if (dt_ProcessInfoDetail.Count<=3 && dt_ProcessInfoDetail.Count != 0)
+ {
+ msg = "宸叉湁娴佹按鍙�";
+ }
+
+ // 4. 杩斿洖鍝嶅簲锛堝瓨鍦ㄩ噸澶嶅垯msg鏄�"宸叉湁娴佹按鍙�"锛屼笉瀛樺湪鍒檓sg涓簄ull锛�
+ return WebResponseContent.Instance.OK(msg);
}
catch (Exception ex)
{
--
Gitblit v1.9.3