From 612b2285b823072809d811d456787432a3234fc3 Mon Sep 17 00:00:00 2001
From: zyf <1071160500@qq.com>
Date: 星期五, 21 十一月 2025 15:04:19 +0800
Subject: [PATCH] 首检巡检功能优化
---
MES.Service/service/QC/XJService.cs | 90 ++++++++++++++++++++++++++++++++++-----------
1 files changed, 68 insertions(+), 22 deletions(-)
diff --git a/MES.Service/service/QC/XJService.cs b/MES.Service/service/QC/XJService.cs
index 220c7cf..9af8b55 100644
--- a/MES.Service/service/QC/XJService.cs
+++ b/MES.Service/service/QC/XJService.cs
@@ -2,6 +2,7 @@
using MES.Service.Dto.service;
using MES.Service.Modes;
using MES.Service.util;
+using Newtonsoft.Json.Linq;
using SqlSugar;
using static Microsoft.EntityFrameworkCore.DbLoggerCategory;
@@ -14,7 +15,7 @@
private readonly BaseService _baseService = new();
- private readonly string[] statusArray = ["寮�宸�", "寰呭紑宸�"];
+ private readonly string[] statusArray = ["寮�宸�", "寰呭紑宸�","宸插紑宸�" ,"鏈紑宸�"];
//鐢熸垚鏈�鏂扮殑妫�楠屽崟鍙�
public string getMaxReleaseNo()
@@ -39,47 +40,71 @@
return "XJN" + date + number;
}
- public List<Womdaa> getItem(string daa001)
+ public class DaaInfoDto
+ {
+ public decimal? Id { get; set; }
+ public string Daa001 { get; set; }
+ public string? Daa003 { get; set; }
+ public string? Daa004 { get; set; }
+ public decimal? Daa008 { get; set; }
+ public string? Daa015 { get; set; }
+ public string? Daa020 { get; set; }
+ public string? ItemNo { get; set; } // 鏉ヨ嚜鍏宠仈琛�
+ public string? ItemName { get; set; }
+ }
+
+ public List<DaaInfoDto> getItem(string daa001)
{
var db = SqlSugarHelper.GetInstance();
//in鐨勫啓娉� https://www.donet5.com/Home/Doc?typeId=1187
- return db.Queryable<Womdaa>()
+ return db.Queryable<Womdaa,MesItems>((a, b) => new JoinQueryInfos(
+ JoinType.Inner, a.Daa002 == b.Id.ToString()))
.Where(a =>
a.Daa001 == daa001 &&
statusArray.Contains(a.Daa018))
+ .Select((a, b) => new DaaInfoDto
+ {
+ Daa001= daa001,
+ Daa003=a.Daa003,
+ Daa004=a.Daa004,
+ Daa008=a.Daa008,
+ Daa015=a.Daa015,
+ Daa020=a.Daa020,
+ ItemNo=b.ItemNo,
+ ItemName = b.ItemName,
+ Id =a.Id
+ })
.ToList();
}
- public List<MesLine> getLineAll()
+ public List<QCUserLine> getLineAll(string UserNo)
{
var db = SqlSugarHelper.GetInstance();
-
- return db.Queryable<Womdaa, MesLine>((a, b) =>
- new JoinQueryInfos(JoinType.Left, a.Daa015 == b.LineNo))
- .Where((a, b) => b.LineName != null &&
- statusArray.Contains(a.Daa018))
- .GroupBy((a, b) => new
+
+ return db.Queryable<QCUserLine>()
+ .Where(a => a.UserCode == UserNo)
+ .Select(a => new QCUserLine
{
- b.LineNo, b.LineName
- })
- .Select((a, b) => new MesLine
- {
- LineNo = b.LineNo,
- LineName = b.LineName
- }).OrderBy("b.LINE_NO").ToList();
+ LineNo = a.LineNo,
+ LineName = a.LineName
+ }).OrderBy("LINENO").ToList();
}
- public List<Womdaa> getDaa001(string daa020, string item)
+
+
+ public List<Womdaa> getDaa001(JObject data)
{
+ var daa020 = data["daa020"]?.ToString();
+ var item = data["item"]?.ToString();
+
var db = SqlSugarHelper.GetInstance();
return db.Queryable<Womdaa, MesItems>((a, b) =>
new JoinQueryInfos(JoinType.Inner, a.Daa002 == b.Id.ToString()))
- .Where((a, b) =>
- a.Daa015 == daa020 &&
- b.ItemNo == item &&
- statusArray.Contains(a.Daa018))
+ .WhereIF(!string.IsNullOrEmpty(daa020), (a, b) => a.Daa015 == daa020)
+ .WhereIF(!string.IsNullOrEmpty(item), (a, b) => b.ItemNo == item)
+ .Where((a, b) => statusArray.Contains(a.Daa018))
.Select<Womdaa>(a => new Womdaa
{
Id = a.Id,
@@ -347,6 +372,27 @@
.ExecuteCommand();
});
+ var db = SqlSugarHelper.GetInstance();
+ // 鍒涘缓鍙傛暟
+ var FID = new SugarParameter("P_ID", rkjDto.gid);
+
+
+ var FRes = new SugarParameter("c_result", null, true); // 杈撳嚭鍙傛暟
+ var FMsg = new SugarParameter("c_msg", null, true);
+
+ // 鎵ц瀛樺偍杩囩▼
+ db.Ado.UseStoredProcedure().GetDataTable("PRC_XJ_UPDATE_RES_JK", FID, FRes, FMsg);
+
+ int result = int.Parse((string)FRes.Value);
+ string message = FMsg.Value == DBNull.Value ? string.Empty : (string)FMsg.Value;
+ if (result == 1)
+ {
+ //瀛樺偍杩囩▼澶辫触鍒欎簨鍔¤繘琛屽洖婊�
+ //db.Ado.RollbackTran();
+ throw new Exception(message);
+ }
+
+
return useTransactionWithOracle > 0;
}
--
Gitblit v1.9.3