From ac8cd71489628366930b48ed650e2559ec98d339 Mon Sep 17 00:00:00 2001
From: 啊鑫 <t2856754968@163.com>
Date: 星期五, 15 十一月 2024 15:24:50 +0800
Subject: [PATCH] 来料入库检
---
entity/MesQaIqc.cs | 91 ++
entity/MesQaItemsDetect01.cs | 397 +++++++++++
entity/MesQaItemsDetectDetail5.cs | 194 +++++
entity/LLJView.cs | 157 ++++
entity/QsItemOqcReq.cs | 105 +++
Dto/service/LLJDto.cs | 36 +
NewPdaSqlServer.csproj | 4
entity/MesQaItemsDetectDetail12.cs | 76 ++
Dto/service/XJPageResult.cs | 11
Controllers/QC/LljController.cs | 276 ++++++++
Dto/service/ResultClass.cs | 7
service/QC/LljService.cs | 683 ++++++++++++++++++++
12 files changed, 2,033 insertions(+), 4 deletions(-)
diff --git a/Controllers/QC/LljController.cs b/Controllers/QC/LljController.cs
new file mode 100644
index 0000000..553b613
--- /dev/null
+++ b/Controllers/QC/LljController.cs
@@ -0,0 +1,276 @@
+锘縰sing System.Dynamic;
+using Microsoft.AspNetCore.Mvc;
+using NewPdaSqlServer.Dto.service;
+using NewPdaSqlServer.entity;
+using NewPdaSqlServer.service.QC;
+using NewPdaSqlServer.util;
+using Newtonsoft.Json.Linq;
+
+namespace NewPdaSqlServer.Controllers.QC;
+
+[Route("api/[controller]")]
+[ApiController]
+public class LljController : ControllerBase
+{
+ [HttpPost("getPage")]
+ public ResponseResult getPage([FromBody] XJPageResult queryObj)
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ var (item, totalCount) = new LljService().GetPage(queryObj);
+ var tbBillList =
+ resultInfos.tbBillList = item;
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos,
+ TotalCount = totalCount
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+
+ [HttpPost("setJYItem")]
+ public ResponseResult setJYItem([FromBody] JObject data)
+ {
+ var itemNo = data["itemNo"].ToString();
+ var quantity = Convert.ToDecimal(data["quantity"].ToString());
+ var releaseNo = data["releaseNo"].ToString();
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ var tbBillList =
+ new LljService().SetItems(itemNo, quantity, releaseNo);
+ resultInfos.tbBillList = tbBillList;
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ [HttpPost("saveItem")]
+ public ResponseResult saveItem([FromBody] LLJDto lljDto)
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ var tbBillList =
+ new LljService().saveItem(lljDto);
+ resultInfos.tbBillList = tbBillList;
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ //getItems
+ [HttpPost("getJYItem")]
+ public ResponseResult getJYItem([FromBody] JObject data)
+ {
+ var id = data["id"]?.ToString();
+ var releaseNo = data["releaseNo"]?.ToString();
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ var tbBillList =
+ new LljService().GetItems(releaseNo,
+ Convert.ToDecimal(id));
+ resultInfos.tbBillList = tbBillList;
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ //getXjDetail02ById
+ [HttpPost("getXjDetail02ById")]
+ public ResponseResult getXjDetail02ById([FromBody] JObject data)
+ {
+ var id = data["id"]?.ToString();
+
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ var tbBillList =
+ new LljService().getXjDetail02ById(id);
+ resultInfos.tbBillList = tbBillList;
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+
+ [HttpPost("SetQSItemDetail")]
+ public ResponseResult SetQSItemDetail(
+ [FromBody] MesQaItemsDetectDetail12 detail)
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ var tbBillList = new LljService();
+ var detail021 = tbBillList.SetQSItemDetail(detail);
+ resultInfos.tbBillList = detail021;
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ [HttpPost("UpdateQSItemDetail")]
+ public ResponseResult UpdateQSItemDetail(
+ [FromBody] MesQaItemsDetectDetail12 detail)
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ var tbBillList = new LljService();
+ var detail021 = tbBillList.UpdateQSItemDetail(detail);
+ resultInfos.tbBillList = detail021;
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ //saveRemarksGid 涓昏〃娣诲姞涓嶅悎鏍兼弿杩�
+ [HttpPost("saveRemarksGid")]
+ public ResponseResult saveRemarksGid([FromBody] LLJDto rkjDto)
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ var tbBillList =
+ new LljService().saveRemarksGid(rkjDto);
+ resultInfos.tbBillList = tbBillList;
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ //saveRemarksPid 瀛愯〃娣诲姞涓嶅悎鏍兼弿杩�
+ [HttpPost("saveRemarksPid")]
+ public ResponseResult saveRemarksPid([FromBody] LLJDto rkjDto)
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ var tbBillList =
+ new LljService().saveRemarksPid(rkjDto);
+ resultInfos.tbBillList = tbBillList;
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ //removeXJ 鍒犻櫎
+ [HttpPost("removeXJ")]
+ public ResponseResult removeXJ([FromBody] JObject data)
+ {
+ var releaseNo = data["releaseNo"]?.ToString();
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ var tbBillList =
+ new LljService().removeXJ(releaseNo);
+ resultInfos.tbBillList = tbBillList;
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+
+ //IqcQaSubmit
+ [HttpPost("IqcQaSubmit")]
+ public ResponseResult IqcQaSubmit(LLJDto rkjDto)
+ {
+ try
+ {
+ dynamic resultInfos = new ExpandoObject();
+ var tbBillList =
+ new LljService().IqcQaSubmit(rkjDto);
+ resultInfos.tbBillList = tbBillList;
+ return new ResponseResult
+ {
+ status = 0,
+ message = "OK",
+ data = resultInfos
+ };
+ }
+ catch (Exception ex)
+ {
+ return ResponseResult.ResponseError(ex);
+ }
+ }
+}
\ No newline at end of file
diff --git a/Dto/service/LLJDto.cs b/Dto/service/LLJDto.cs
new file mode 100644
index 0000000..10a2f7c
--- /dev/null
+++ b/Dto/service/LLJDto.cs
@@ -0,0 +1,36 @@
+锘縰sing NewPdaSqlServer.entity;
+
+namespace NewPdaSqlServer.Dto.service;
+
+public class LLJDto
+{
+ public string? userNo { get; set; }
+
+ //妫�楠屽崟鍙�
+ public string? releaseNo { get; set; }
+
+ //涓昏〃id
+ public string? gid { get; set; }
+
+ //瀛愯〃id
+ public string? pid { get; set; }
+
+ //瀛欒〃id
+ public string? id { get; set; }
+
+ //澶囨敞
+ public string? Remarks { get; set; }
+
+ //==========================================
+ //宸℃涓诲瓙琛ㄩ渶瑕佺殑鏁版嵁
+ public QsItemOqcReq? from { get; set; }
+
+ public List<MesQaItemsDetectDetail5>? items { get; set; }
+
+ //==========================================
+ //宸℃瀛愬瓩琛ㄩ渶瑕佺殑鏁版嵁
+
+ public MesQaItemsDetectDetail5? ItemXj01 { get; set; }
+
+ public List<MesQaItemsDetectDetail12>? ItemXj02s { get; set; }
+}
\ No newline at end of file
diff --git a/Dto/service/ResultClass.cs b/Dto/service/ResultClass.cs
new file mode 100644
index 0000000..72bd2b7
--- /dev/null
+++ b/Dto/service/ResultClass.cs
@@ -0,0 +1,7 @@
+锘縩amespace NewPdaSqlServer.Dto.service;
+
+public class ResultClass
+{
+ public decimal FSAMPLE_SIZE_WORD { get; set; }
+ public decimal Result { get; set; }
+}
\ No newline at end of file
diff --git a/Dto/service/XJPageResult.cs b/Dto/service/XJPageResult.cs
new file mode 100644
index 0000000..385520d
--- /dev/null
+++ b/Dto/service/XJPageResult.cs
@@ -0,0 +1,11 @@
+锘縰sing NewPdaSqlServer.Dto.@base;
+
+namespace NewPdaSqlServer.Dto.service;
+
+public class XJPageResult : Page
+{
+ public string? createUser { get; set; }
+ public string? result { get; set; }
+
+ public string? id { get; set; }
+}
\ No newline at end of file
diff --git a/NewPdaSqlServer.csproj b/NewPdaSqlServer.csproj
index 095432a..55d24ed 100644
--- a/NewPdaSqlServer.csproj
+++ b/NewPdaSqlServer.csproj
@@ -13,8 +13,4 @@
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.8.0" />
</ItemGroup>
- <ItemGroup>
- <Folder Include="Dto\" />
- </ItemGroup>
-
</Project>
diff --git a/entity/LLJView.cs b/entity/LLJView.cs
new file mode 100644
index 0000000..11013c8
--- /dev/null
+++ b/entity/LLJView.cs
@@ -0,0 +1,157 @@
+锘縰sing SqlSugar;
+
+namespace NewPdaSqlServer.entity;
+
+/// <summary>
+/// 鏁版嵁婧愬鍏�
+/// </summary>
+[SugarTable("V_LLJ")]
+public class LLJView
+{
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName = "guid")]
+ public Guid guid { get; set; }
+
+ [SugarColumn(ColumnName = "fsubmit")]
+ public int? fsubmit{ get; set; }
+
+ /// <summary>
+ /// 瀹℃牳鏍囪瘑
+ /// </summary>
+ [SugarColumn(ColumnName = "MODIFY1_FLAG")]
+ public decimal? Modify1Flag { get; set; }
+
+ /// <summary>
+ /// 閫佹鎵规
+ /// </summary>
+ [SugarColumn(ColumnName = "LOT_NO")]
+ public string LotNo { get; set; }
+
+ /// <summary>
+ /// 澶勭悊鏂规硶
+ /// </summary>
+ [SugarColumn(ColumnName = "FNG_HANDLE")]
+ public string FngHandle { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡鐗堟湰
+ /// </summary>
+ [SugarColumn(ColumnName = "FVERSION")]
+ public decimal? Fversion { get; set; }
+
+ /// <summary>
+ /// 澶囨敞淇℃伅
+ /// </summary>
+ [SugarColumn(ColumnName = "LOT_NO1")]
+ public string LotNo1 { get; set; }
+
+ /// <summary>
+ /// 杞崲鏁伴噺
+ /// </summary>
+ [SugarColumn(ColumnName = "FCOVERT_QTY")]
+ public string FcovertQty { get; set; }
+
+ /// <summary>
+ /// 妫�楠岀粨鏋�
+ /// </summary>
+ [SugarColumn(ColumnName = "FCHECK_RESU")]
+ public string FcheckResu { get; set; }
+
+ /// <summary>
+ /// 渚涘簲鍟嗙紪鐮�
+ /// </summary>
+ [SugarColumn(ColumnName = "SUPP_NO")]
+ public string SuppNo { get; set; }
+
+ /// <summary>
+ /// 妫�楠屽崟鍙�
+ /// </summary>
+ [SugarColumn(ColumnName = "RELEASE_NO")]
+ public string ReleaseNo { get; set; }
+
+ /// <summary>
+ /// 閲囪喘鏁伴噺
+ /// </summary>
+ [SugarColumn(ColumnName = "FBATCH_QTY")]
+ public string FbatchQty { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡缂栫爜
+ /// </summary>
+ [SugarColumn(ColumnName = "ITEM_NO")]
+ public string ItemNo { get; set; }
+
+ /// <summary>
+ /// 妫�楠屼汉鍛�
+ /// </summary>
+ [SugarColumn(ColumnName = "FCHECK_BY")]
+ public string FcheckBy { get; set; }
+
+ /// <summary>
+ /// 涓嶈壇鎻忚堪
+ /// </summary>
+ [SugarColumn(ColumnName = "FNG_DESC")]
+ public string FngDesc { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓浜�
+ /// </summary>
+ [SugarColumn(ColumnName = "CREATE_BY")]
+ public string CreateBy { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓鏃堕棿
+ /// </summary>
+ [SugarColumn(ColumnName = "CREATE_DATE")]
+ public string CreateDate { get; set; }
+
+ /// <summary>
+ /// 鏄惁鎬ユ枡
+ /// </summary>
+ [SugarColumn(ColumnName = "URGENT_FLAG")]
+ public short? UrgentFlag { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡鍚嶇О
+ /// </summary>
+ [SugarColumn(ColumnName = "ITEM_NAME")]
+ public string ItemName { get; set; }
+
+ /// <summary>
+ /// 妫�楠岀被鍨�
+ /// </summary>
+ [SugarColumn(ColumnName = "QATYPE")]
+ public string Qatype { get; set; }
+
+ /// <summary>
+ /// 妫�楠屾棩鏈�
+ /// </summary>
+ [SugarColumn(ColumnName = "DATE_01")]
+ public string Date01 { get; set; }
+
+ /// <summary>
+ /// 渚涘簲鍟嗗悕绉�
+ /// </summary>
+ [SugarColumn(ColumnName = "SUPP_NAME")]
+ public string SuppName { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡瑙勬牸
+ /// </summary>
+ [SugarColumn(ColumnName = "ITEM_MODEL")]
+ public string ItemModel { get; set; }
+
+ /// <summary>
+ /// 鍗曟嵁鐘舵��
+ /// </summary>
+ [SugarColumn(ColumnName = "STATUS")]
+ public string STATUS { get; set; }
+
+ /// <summary>
+ /// 濮斿鏍囪瘑锛�0锛氶噰璐� 銆�1锛氬澶栵級
+ /// </summary>
+ [SugarColumn(ColumnName = "F_TYPE")]
+ public bool? Ftype { get; set; }
+}
\ No newline at end of file
diff --git a/entity/MesQaIqc.cs b/entity/MesQaIqc.cs
new file mode 100644
index 0000000..35177e0
--- /dev/null
+++ b/entity/MesQaIqc.cs
@@ -0,0 +1,91 @@
+锘縰sing SqlSugar;
+
+namespace NewPdaSqlServer.entity;
+
+/// <summary>
+/// 鏁版嵁婧愬鍏�
+/// </summary>
+[SugarTable("Mes_Qa_Iqc")]
+public class MesQaIqc
+{
+ /// <summary>
+ /// 鐗╂枡id
+ /// </summary>
+ [SugarColumn(ColumnName = "ITEM_ID")]
+ public string ItemId { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡缂栫爜
+ /// </summary>
+ [SugarColumn(ColumnName = "ITEM_NO")]
+ public string ItemNo { get; set; }
+
+ /// <summary>
+ /// 鎺ユ敹姘村钩
+ /// </summary>
+ [SugarColumn(ColumnName = "FAC_LEVEL")]
+ public string FacLevel { get; set; }
+
+ /// <summary>
+ /// 妫�楠岄」鐩�
+ /// </summary>
+ [SugarColumn(ColumnName = "FCHECK_ITEM")]
+ public string FcheckItem { get; set; }
+
+ /// <summary>
+ /// 妫�楠屽伐鍏�
+ /// </summary>
+ [SugarColumn(ColumnName = "FCHECK_TOOL")]
+ public string FcheckTool { get; set; }
+
+ /// <summary>
+ /// 涓嬮檺
+ /// </summary>
+ [SugarColumn(ColumnName = "FDOWN_ALLOW")]
+ public string FdownAllow { get; set; }
+
+ /// <summary>
+ /// 妫�楠屾按骞�
+ /// </summary>
+ [SugarColumn(ColumnName = "FREQUENCY")]
+ public string FREQUENCY { get; set; }
+
+ /// <summary>
+ /// 鏍囧噯
+ /// </summary>
+ [SugarColumn(ColumnName = "FSTAND")]
+ public string FSTAND { get; set; }
+
+ /// <summary>
+ /// 涓婇檺
+ /// </summary>
+ [SugarColumn(ColumnName = "FUP_ALLOW")]
+ public string FupAllow { get; set; }
+
+ /// <summary>
+ /// 妫�楠屾按鍑嗙紪鐮�
+ /// </summary>
+ [SugarColumn(ColumnName = "SAMPLE_SIZE_NO")]
+ public string SampleSizeNo { get; set; }
+
+ /// <summary>
+ /// 瑙勬牸瑕佹眰
+ /// </summary>
+ [SugarColumn(ColumnName = "FSPEC_REQU")]
+ public string FspecRequ { get; set; }
+
+ /// <summary>
+ /// </summary>
+ [SugarColumn(ColumnName = "ISENABLED")]
+ public short? ISENABLED { get; set; }
+
+ /// <summary>
+ /// </summary>
+ [SugarColumn(ColumnName = "EE")]
+ public short? EE { get; set; }
+
+ /// <summary>
+ /// </summary>
+ [SugarColumn(ColumnName = "FTYPE")]
+ public string FTYPE { get; set; }
+}
\ No newline at end of file
diff --git a/entity/MesQaItemsDetect01.cs b/entity/MesQaItemsDetect01.cs
new file mode 100644
index 0000000..1040d23
--- /dev/null
+++ b/entity/MesQaItemsDetect01.cs
@@ -0,0 +1,397 @@
+锘縰sing SqlSugar;
+
+namespace NewPdaSqlServer.entity
+{
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarTable("MES_QA_ITEMS_DETECT_01")]
+ public class MesQaItemsDetect01
+ {
+ /// <summary>
+ ///
+ /// 榛樿鍊�: (newid())
+ ///</summary>
+ [SugarColumn(ColumnName = "guid", IsPrimaryKey = true)]
+ public Guid Guid { get; set; }
+
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName = "about_Guid")]
+ public Guid? AboutGuid { get; set; }
+
+ /// <summary>
+ /// 妫�楠屽崟鍙�
+ ///</summary>
+ [SugarColumn(ColumnName = "release_no")]
+ public string ReleaseNo { get; set; }
+
+ /// <summary>
+ /// 妫�楠屾棩鏈�
+ ///</summary>
+ [SugarColumn(ColumnName = "fcheck_date")]
+ public DateTime? FcheckDate { get; set; }
+
+ /// <summary>
+ /// 妫�楠屼汉鍛�
+ ///</summary>
+ [SugarColumn(ColumnName = "fcheck_by")]
+ public string FcheckBy { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡缂栫爜
+ ///</summary>
+ [SugarColumn(ColumnName = "item_no")]
+ public string ItemNo { get; set; }
+
+ /// <summary>
+ /// 鏉ユ枡鏁伴噺
+ ///</summary>
+ [SugarColumn(ColumnName = "fbatch_qty")]
+ public decimal? FbatchQty { get; set; }
+
+ /// <summary>
+ /// 鍒ゅ畾缁撴灉
+ ///</summary>
+ [SugarColumn(ColumnName = "frece_qty")]
+ public string FreceQty { get; set; }
+
+ /// <summary>
+ /// 渚涘簲鍟咺D
+ ///</summary>
+ [SugarColumn(ColumnName = "supp_id")]
+ public string SuppId { get; set; }
+
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName = "fng_desc")]
+ public string FngDesc { get; set; }
+
+ /// <summary>
+ /// 妫�楠岀粨鏋�
+ ///</summary>
+ [SugarColumn(ColumnName = "fcheck_resu")]
+ public string FcheckResu { get; set; }
+
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName = "freview")]
+ public string Freview { get; set; }
+
+ /// <summary>
+ /// 妫�楠屾按鍑�
+ ///</summary>
+ [SugarColumn(ColumnName = "sample_size_no")]
+ public string SampleSizeNo { get; set; }
+
+ /// <summary>
+ /// 妫�楠屾按骞�
+ ///</summary>
+ [SugarColumn(ColumnName = "fcheck_level")]
+ public string FcheckLevel { get; set; }
+
+ /// <summary>
+ /// 鎷掓敹姘村钩
+ ///</summary>
+ [SugarColumn(ColumnName = "fac_level")]
+ public string FacLevel { get; set; }
+
+ /// <summary>
+ /// 鎶芥鏁伴噺
+ ///</summary>
+ [SugarColumn(ColumnName = "check_qty")]
+ public string CheckQty { get; set; }
+
+ /// <summary>
+ /// 鎵规鍙� --鍒拌揣鍗曞彿
+ ///</summary>
+ [SugarColumn(ColumnName = "lot_no")]
+ public string LotNo { get; set; }
+
+ /// <summary>
+ /// 鏄惁鎺ㄩ��
+ ///</summary>
+ [SugarColumn(ColumnName = "fmove")]
+ public string Fmove { get; set; }
+
+ /// <summary>
+ /// 鏄惁澶勭悊
+ ///</summary>
+ [SugarColumn(ColumnName = "fhandle")]
+ public string Fhandle { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓浜�
+ ///</summary>
+ [SugarColumn(ColumnName = "create_by")]
+ public string CreateBy { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓鏃ユ湡
+ ///</summary>
+ [SugarColumn(ColumnName = "create_date")]
+ public DateTime? CreateDate { get; set; }
+
+ /// <summary>
+ /// 鏇存柊浜�
+ ///</summary>
+ [SugarColumn(ColumnName = "lastupdate_by")]
+ public string LastupdateBy { get; set; }
+
+ /// <summary>
+ /// 鏇存柊鏃ユ湡
+ ///</summary>
+ [SugarColumn(ColumnName = "lastupdate_date")]
+ public DateTime? LastupdateDate { get; set; }
+
+ /// <summary>
+ /// 鏄惁瀹℃牳
+ ///</summary>
+ [SugarColumn(ColumnName = "modify1_flag")]
+ public int? Modify1Flag { get; set; }
+
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName = "modify1_by")]
+ public string Modify1By { get; set; }
+
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName = "modify1_date")]
+ public DateTime? Modify1Date { get; set; }
+
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName = "factory")]
+ public string Factory { get; set; }
+
+ /// <summary>
+ /// XRF娴嬭瘯鎶ュ憡缂栧彿
+ ///</summary>
+ [SugarColumn(ColumnName = "fcheck_repno")]
+ public string FcheckRepno { get; set; }
+
+ /// <summary>
+ /// 绗笁鏂规姤鍛�
+ ///</summary>
+ [SugarColumn(ColumnName = "fthird_rep")]
+ public string FthirdRep { get; set; }
+
+ /// <summary>
+ /// 鏄惁浣滃簾
+ ///</summary>
+ [SugarColumn(ColumnName = "fcancel")]
+ public int? Fcancel { get; set; }
+
+ /// <summary>
+ /// 鎻愪氦鏍囪瘑
+ ///</summary>
+ [SugarColumn(ColumnName = "fsubmit")]
+ public int? Fsubmit { get; set; }
+
+ /// <summary>
+ /// 妫�楠屼緷鎹�
+ ///</summary>
+ [SugarColumn(ColumnName = "fcheck_accord")]
+ public string FcheckAccord { get; set; }
+
+ /// <summary>
+ /// 绫诲瀷(0 鏉ユ枡 1 鍦ㄥ簱)
+ ///</summary>
+ [SugarColumn(ColumnName = "ftype")]
+ public int? Ftype { get; set; }
+
+ /// <summary>
+ /// 鍗曚綅
+ ///</summary>
+ [SugarColumn(ColumnName = "item_unit")]
+ public string ItemUnit { get; set; }
+
+ /// <summary>
+ /// 鍑鸿揣鏃ユ湡
+ ///</summary>
+ [SugarColumn(ColumnName = "out_date")]
+ public string OutDate { get; set; }
+
+ /// <summary>
+ /// 鏄惁鍏嶆
+ ///</summary>
+ [SugarColumn(ColumnName = "fexemption")]
+ public int? Fexemption { get; set; }
+
+ /// <summary>
+ /// 妗d綅鏍囧噯
+ ///</summary>
+ [SugarColumn(ColumnName = "fgear_stand")]
+ public string FgearStand { get; set; }
+
+ /// <summary>
+ /// 涓嶈壇澶勭悊鏂规硶
+ ///</summary>
+ [SugarColumn(ColumnName = "fng_handle")]
+ public string FngHandle { get; set; }
+
+ /// <summary>
+ /// 绠$悊缂栧彿
+ ///</summary>
+ [SugarColumn(ColumnName = "fmanage_no")]
+ public string FmanageNo { get; set; }
+
+ /// <summary>
+ /// 杞崲鏁伴噺
+ ///</summary>
+ [SugarColumn(ColumnName = "fcovert_qty")]
+ public string FcovertQty { get; set; }
+
+ /// <summary>
+ /// 鐗堟湰
+ ///</summary>
+ [SugarColumn(ColumnName = "fversion")]
+ public int? Fversion { get; set; }
+
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName = "company")]
+ public string Company { get; set; }
+
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName = "fsecond_resu")]
+ public string FsecondResu { get; set; }
+
+ /// <summary>
+ /// 鏈�澶ф娊妫�鏁�
+ ///</summary>
+ [SugarColumn(ColumnName = "max_check_qty")]
+ public int? MaxCheckQty { get; set; }
+
+ /// <summary>
+ /// 鐗瑰畾淇敼鏄惁瀹℃牳
+ ///</summary>
+ [SugarColumn(ColumnName = "modify1_flag1")]
+ public int? Modify1Flag1 { get; set; }
+
+ /// <summary>
+ /// 鐗瑰畾淇敼瀹℃牳浜�
+ ///</summary>
+ [SugarColumn(ColumnName = "modify1_by1")]
+ public string Modify1By1 { get; set; }
+
+ /// <summary>
+ /// 鐗瑰畾淇敼瀹℃牳鏃堕棿
+ ///</summary>
+ [SugarColumn(ColumnName = "modify1_date1")]
+ public DateTime? Modify1Date1 { get; set; }
+
+ /// <summary>
+ /// 灏忔壒娆″彿
+ ///</summary>
+ [SugarColumn(ColumnName = "lot_no1")]
+ public string LotNo1 { get; set; }
+
+ /// <summary>
+ /// 閲囪喘鍗曞彿
+ ///</summary>
+ [SugarColumn(ColumnName = "lot_no2")]
+ public string LotNo2 { get; set; }
+
+ /// <summary>
+ /// 浜у搧鍨嬪彿
+ ///</summary>
+ [SugarColumn(ColumnName = "board_style")]
+ public string BoardStyle { get; set; }
+
+ /// <summary>
+ /// 浠诲姟鍗曞彿
+ ///</summary>
+ [SugarColumn(ColumnName = "work_no")]
+ public string WorkNo { get; set; }
+
+ /// <summary>
+ /// 鍒拌揣鏃堕棿
+ ///</summary>
+ [SugarColumn(ColumnName = "dha018")]
+ public string Dha018 { get; set; }
+
+ /// <summary>
+ /// 琛屽彿
+ ///</summary>
+ [SugarColumn(ColumnName = "dhb002")]
+ public int? Dhb002 { get; set; }
+
+ /// <summary>
+ /// 鍒拌揣鍗曞彿
+ ///</summary>
+ [SugarColumn(ColumnName = "dhb001")]
+ public string Dhb001 { get; set; }
+
+ /// <summary>
+ /// 渚涘簲鍟�
+ ///</summary>
+ [SugarColumn(ColumnName = "lifnr")]
+ public string Lifnr { get; set; }
+
+ /// <summary>
+ /// 閫�鏂欐柟寮�
+ ///</summary>
+ [SugarColumn(ColumnName = "fmrmode")]
+ public string Fmrmode { get; set; }
+
+ /// <summary>
+ /// erp杩斿洖淇℃伅
+ ///</summary>
+ [SugarColumn(ColumnName = "msg")]
+ public string Msg { get; set; }
+
+ /// <summary>
+ /// 鐘舵��
+ ///</summary>
+ [SugarColumn(ColumnName = "states")]
+ public string States { get; set; }
+
+ /// <summary>
+ /// IQC鎻愪氦鏃堕棿
+ ///</summary>
+ [SugarColumn(ColumnName = "iqc_date")]
+ public DateTime? IqcDate { get; set; }
+
+ /// <summary>
+ /// 閲囪喘璁㈠崟ID
+ ///</summary>
+ [SugarColumn(ColumnName = "ebeln_k3id")]
+ public int? EbelnK3id { get; set; }
+
+ /// <summary>
+ /// 閲囪喘璁㈠崟琛孖D
+ ///</summary>
+ [SugarColumn(ColumnName = "line_k3id")]
+ public int? LineK3id { get; set; }
+
+ /// <summary>
+ /// 璐ㄩ噺瀹℃牳鏍囪瘑
+ /// 榛樿鍊�: ((0))
+ ///</summary>
+ [SugarColumn(ColumnName = "quality_audit")]
+ public int? QualityAudit { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡ID
+ ///</summary>
+ [SugarColumn(ColumnName = "item_id")]
+ public int? ItemId { get; set; }
+
+ /// <summary>
+ /// 涓嶈壇鎻忚堪
+ ///</summary>
+ [SugarColumn(ColumnName = "remarks")]
+ public string Remarks { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/entity/MesQaItemsDetectDetail12.cs b/entity/MesQaItemsDetectDetail12.cs
new file mode 100644
index 0000000..73da3ee
--- /dev/null
+++ b/entity/MesQaItemsDetectDetail12.cs
@@ -0,0 +1,76 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using SqlSugar;
+
+namespace NewPdaSqlServer.entity
+{
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarTable("MES_QA_ITEMS_DETECT_DETAIL12")]
+ public class MesQaItemsDetectDetail12
+ {
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName = "guid", IsPrimaryKey = true)]
+ public Guid Guid { get; set; }
+
+ /// <summary>
+ /// 鐖朵翰Guid
+ ///</summary>
+ [SugarColumn(ColumnName = "parent_guid")]
+ public Guid? ParentGuid { get; set; }
+
+ /// <summary>
+ /// 鐖风埛Guid
+ ///</summary>
+ [SugarColumn(ColumnName = "grandpa_guid")]
+ public Guid? GrandpaGuid { get; set; }
+
+ /// <summary>
+ /// 妫�楠岀粨鏋�
+ ///</summary>
+ [SugarColumn(ColumnName = "fcheck_resu")]
+ public string? FcheckResu { get; set; }
+
+ /// <summary>
+ /// 妫�楠岄」鐩�
+ ///</summary>
+ [SugarColumn(ColumnName = "fcheck_item")]
+ public string? FcheckItem { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡鏉$爜
+ ///</summary>
+ [SugarColumn(ColumnName = "item_barcode")]
+ public string? ItemBarcode { get; set; }
+
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName = "create_date")]
+ public DateTime? CreateDate { get; set; }
+
+ /// <summary>
+ /// 鍒ゅ畾鏍囧織
+ ///</summary>
+ [SugarColumn(ColumnName = "fstand")]
+ public string? Fstand { get; set; }
+
+ /// <summary>
+ /// 鐢熸垚浜�
+ ///</summary>
+ [SugarColumn(ColumnName = "lastupdate_by")]
+ public string? LastupdateBy { get; set; }
+
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName = "create_by")]
+ public string? CreateBy { get; set; }
+
+ [SugarColumn(IsIgnore = true)] public int? count { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/entity/MesQaItemsDetectDetail5.cs b/entity/MesQaItemsDetectDetail5.cs
new file mode 100644
index 0000000..274d3bb
--- /dev/null
+++ b/entity/MesQaItemsDetectDetail5.cs
@@ -0,0 +1,194 @@
+锘縰sing SqlSugar;
+
+namespace NewPdaSqlServer.entity
+{
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarTable("MES_QA_ITEMS_DETECT_DETAIL5")]
+ public class MesQaItemsDetectDetail5
+ {
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName = "guid", IsPrimaryKey = true)]
+ public Guid Guid { get; set; }
+
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName = "parent_guid")]
+ public Guid? ParentGuid { get; set; }
+
+ /// <summary>
+ /// 鏍囧噯鍊肩被鍨�
+ ///</summary>
+ [SugarColumn(ColumnName = "ftext_type")]
+ public string? FtextType { get; set; }
+
+ /// <summary>
+ /// 鏍囧噯鍊�
+ ///</summary>
+ [SugarColumn(ColumnName = "fstand")]
+ public int? Fstand { get; set; }
+
+ /// <summary>
+ /// 涓婂叕宸�
+ ///</summary>
+ [SugarColumn(ColumnName = "fup_allow")]
+ public string? FupAllow { get; set; }
+
+ /// <summary>
+ /// 涓嬪叕宸�
+ ///</summary>
+ [SugarColumn(ColumnName = "fdown_allow")]
+ public string? FdownAllow { get; set; }
+
+ /// <summary>
+ /// 妫�楠屾按鍑�
+ ///</summary>
+ [SugarColumn(ColumnName = "sample_size_no")]
+ public string? SampleSizeNo { get; set; }
+
+ /// <summary>
+ /// 妫�楠屾按骞�
+ ///</summary>
+ [SugarColumn(ColumnName = "fcheck_level")]
+ public string? FcheckLevel { get; set; }
+
+ /// <summary>
+ /// 鎷掓敹姘村钩
+ ///</summary>
+ [SugarColumn(ColumnName = "fac_level")]
+ public string? FacLevel { get; set; }
+
+ /// <summary>
+ /// 妫�楠岄」鐩�
+ ///</summary>
+ [SugarColumn(ColumnName = "fcheck_item")]
+ public string? FcheckItem { get; set; }
+
+ /// <summary>
+ /// 瑙勬牸瑕佹眰
+ ///</summary>
+ [SugarColumn(ColumnName = "fspec_requ")]
+ public string? FspecRequ { get; set; }
+
+ /// <summary>
+ /// 鎶芥鏁伴噺
+ ///</summary>
+ [SugarColumn(ColumnName = "check_qyt")]
+ public int? CheckQyt { get; set; }
+
+ /// <summary>
+ /// 妫�楠岀粨鏋�
+ ///</summary>
+ [SugarColumn(ColumnName = "fcheck_resu")]
+ public string? FcheckResu { get; set; }
+
+ /// <summary>
+ /// AC鏁伴噺
+ ///</summary>
+ [SugarColumn(ColumnName = "fac_qty")]
+ public int? FacQty { get; set; }
+
+ /// <summary>
+ /// RE鏁伴噺
+ ///</summary>
+ [SugarColumn(ColumnName = "fre_qty")]
+ public int? FreQty { get; set; }
+
+ /// <summary>
+ /// 涓嶅悎鏍兼暟
+ ///</summary>
+ [SugarColumn(ColumnName = "fng_qty")]
+ public int? FngQty { get; set; }
+
+ /// <summary>
+ /// 涓嶈壇鐜�
+ ///</summary>
+ [SugarColumn(ColumnName = "fng_rate")]
+ public decimal? FngRate { get; set; }
+
+ /// <summary>
+ /// 宸插綍鍏ユ暟閲�
+ ///</summary>
+ [SugarColumn(ColumnName = "fenter_qty")]
+ public decimal? FenterQty { get; set; }
+
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName = "release_no")]
+ public string? ReleaseNo { get; set; }
+
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName = "company")]
+ public string? Company { get; set; }
+
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName = "factory")]
+ public string? Factory { get; set; }
+
+ /// <summary>
+ /// 妫�楠岄」鐩弿杩�
+ ///</summary>
+ [SugarColumn(ColumnName = "fcheck_item_desc")]
+ public string? FcheckItemDesc { get; set; }
+
+ /// <summary>
+ /// 宸ュ簭鍙�
+ ///</summary>
+ [SugarColumn(ColumnName = "proc_no")]
+ public string? ProcNo { get; set; }
+
+ /// <summary>
+ /// 宸ヤ綔涓績缂栫爜
+ ///</summary>
+ [SugarColumn(ColumnName = "workshop_center_code")]
+ public string? WorkshopCenterCode { get; set; }
+
+ /// <summary>
+ /// 鍗曚綅
+ ///</summary>
+ [SugarColumn(ColumnName = "funit")]
+ public string? Funit { get; set; }
+
+ /// <summary>
+ /// 鐗瑰畾淇敼
+ /// 榛樿鍊�: ((0))
+ ///</summary>
+ [SugarColumn(ColumnName = "given_modify")]
+ public int? GivenModify { get; set; }
+
+ /// <summary>
+ /// 妫�楠屽伐鍏�
+ ///</summary>
+ [SugarColumn(ColumnName = "fcheck_tool")]
+ public string? FcheckTool { get; set; }
+
+ /// <summary>
+ /// 鏇存柊浜�
+ ///</summary>
+ [SugarColumn(ColumnName = "lastupdate_by")]
+ public string? LastupdateBy { get; set; }
+
+ /// <summary>
+ /// 鏇存柊鏃堕棿
+ ///</summary>
+ [SugarColumn(ColumnName = "lastupdate_date")]
+ public DateTime? LastupdateDate { get; set; }
+
+ /// <summary>
+ /// 涓嶅悎鏍兼弿杩�
+ ///</summary>
+ [SugarColumn(ColumnName = "remarks")]
+ public string? Remarks { get; set; }
+
+ [SugarColumn(IsIgnore = true)] public int? Unqualified { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/entity/QsItemOqcReq.cs b/entity/QsItemOqcReq.cs
new file mode 100644
index 0000000..337a7f1
--- /dev/null
+++ b/entity/QsItemOqcReq.cs
@@ -0,0 +1,105 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using SqlSugar;
+namespace NewPdaSqlServer.entity
+{
+ /// <summary>
+ /// 鍏ュ簱妫�妫�楠岃〃澶�
+ ///</summary>
+ [SugarTable("QS_ITEM_OQC_REQ")]
+ public class QsItemOqcReq
+ {
+ /// <summary>
+ ///
+ /// 榛樿鍊�: (newid())
+ ///</summary>
+ [SugarColumn(ColumnName="guid" ,IsPrimaryKey = true )]
+ public Guid Guid { get; set; }
+ /// <summary>
+ /// 妫�楠屽崟鍙�
+ ///</summary>
+ [SugarColumn(ColumnName="RELEASE_NO" )]
+ public string ReleaseNo { get; set; }
+ /// <summary>
+ /// 妫�楠屾棩鏈�
+ ///</summary>
+ [SugarColumn(ColumnName="FCHECK_DATE" )]
+ public DateTime? FcheckDate { get; set; }
+ /// <summary>
+ /// 妫�楠屼汉鍛�
+ ///</summary>
+ [SugarColumn(ColumnName="FCHECK_BY" )]
+ public string FcheckBy { get; set; }
+ /// <summary>
+ /// 鐗╂枡缂栫爜
+ ///</summary>
+ [SugarColumn(ColumnName="ITEM_NO" )]
+ public string ItemNo { get; set; }
+ /// <summary>
+ /// 妫�楠岀粨鏋�
+ ///</summary>
+ [SugarColumn(ColumnName="FCHECK_RESU" )]
+ public string FcheckResu { get; set; }
+ /// <summary>
+ /// 鍒涘缓浜�
+ ///</summary>
+ [SugarColumn(ColumnName="CREATE_BY" )]
+ public string CreateBy { get; set; }
+ /// <summary>
+ /// 鍒涘缓鏃ユ湡
+ ///</summary>
+ [SugarColumn(ColumnName="CREATE_DATE" )]
+ public DateTime? CreateDate { get; set; }
+ /// <summary>
+ /// 鏇存柊浜�
+ ///</summary>
+ [SugarColumn(ColumnName="LASTUPDATE_BY" )]
+ public string LastupdateBy { get; set; }
+ /// <summary>
+ /// 鏇存柊鏃ユ湡
+ ///</summary>
+ [SugarColumn(ColumnName="LASTUPDATE_DATE" )]
+ public DateTime? LastupdateDate { get; set; }
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName="MODIFY1_BY" )]
+ public string Modify1By { get; set; }
+ /// <summary>
+ /// 鍏ュ簱鐢宠鍗曞彿
+ ///</summary>
+ [SugarColumn(ColumnName="BILL_NO" )]
+ public string BillNo { get; set; }
+ /// <summary>
+ /// 妯″叿鍙�
+ ///</summary>
+ [SugarColumn(ColumnName="MOID_NUM" )]
+ public string MoidNum { get; set; }
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName="FSUBMIT_BY" )]
+ public string FsubmitBy { get; set; }
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName="FSUBMIT_DATE" )]
+ public DateTime? FsubmitDate { get; set; }
+ /// <summary>
+ ///
+ ///</summary>
+ [SugarColumn(ColumnName="FSUBMIT" )]
+ public int? Fsubmit { get; set; }
+ /// <summary>
+ /// 澶囨敞
+ ///</summary>
+ [SugarColumn(ColumnName="REMARKS" )]
+ public string Remarks { get; set; }
+ /// <summary>
+ /// 鐗╂枡ID
+ ///</summary>
+ [SugarColumn(ColumnName="ITEM_ID" )]
+ public int? ItemId { get; set; }
+ }
+}
diff --git a/service/QC/LljService.cs b/service/QC/LljService.cs
new file mode 100644
index 0000000..d46b42c
--- /dev/null
+++ b/service/QC/LljService.cs
@@ -0,0 +1,683 @@
+锘縰sing System.Data;
+using Microsoft.IdentityModel.Tokens;
+using NewPdaSqlServer.DB;
+using NewPdaSqlServer.Dto.service;
+using NewPdaSqlServer.entity;
+using NewPdaSqlServer.util;
+using SqlSugar;
+using DbType = System.Data.DbType;
+
+
+namespace NewPdaSqlServer.service.QC;
+
+public class LljService : RepositoryNoEntity
+{
+ public (List<LLJView> item, int TotalCount) GetPage(XJPageResult queryObj)
+ {
+ var parsedGuid = Guid.Empty;
+ if (!queryObj.id.IsNullOrEmpty())
+ {
+ bool isValid = Guid.TryParse(queryObj.id, out parsedGuid);
+ if (!isValid)
+ throw new ApplicationException("GUID杞崲閿欒");
+ }
+
+
+ var totalCount = 0;
+
+ var pageList = Db.Queryable<LLJView>()
+ .WhereIF(
+ StringUtil.IsNotNullOrEmpty(queryObj.result) &&
+ "鏈畬鎴�".Equals(queryObj.result),
+ a => a.FcheckResu == null)
+ .WhereIF(
+ StringUtil.IsNotNullOrEmpty(queryObj.result) &&
+ !"鏈畬鎴�".Equals(queryObj.result),
+ a => a.FcheckResu != null)
+ .WhereIF(UtilityHelper.CheckGuid(parsedGuid),
+ a => a.guid == parsedGuid)
+ .OrderByDescending(a => a.CreateDate)
+ .ToPageList(queryObj.PageIndex, queryObj.Limit, ref totalCount);
+
+ return (pageList, totalCount);
+ }
+
+ //鏍规嵁妫�楠屾爣鍑嗘潵璁$畻妫�楠屼釜鏁�
+ public List<MesQaItemsDetectDetail5> SetItems(string itemId,
+ decimal quantity, string releaseNo)
+ {
+ var count = Db.Queryable<MesQaIqc>().Where(s => s.EE == 1 &&
+ s.ISENABLED == 1
+ && s.ItemId == itemId && s.FTYPE == "1").Count();
+
+ if (count <= 0) return [];
+
+ var mesQaIqcItem = Db
+ .Queryable<MesQaIqc>().Where(s => s.EE == 1 && s.ISENABLED == 1
+ && s.ItemId == itemId && s.FTYPE == "1").Select(
+ b => new MesQaItemsDetectDetail5
+ {
+ ReleaseNo = releaseNo,
+ FacLevel = b.FacLevel,
+ FcheckItem = b.FcheckItem,
+ FdownAllow = b.FdownAllow,
+ FcheckLevel = b.FREQUENCY,
+ Fstand = Convert.ToInt32(b.FSTAND),
+ FupAllow = b.FupAllow,
+ SampleSizeNo = b.SampleSizeNo,
+ FenterQty = 0,
+ Factory = "1000",
+ Company = "1000",
+ FcheckTool = b.FcheckTool,
+ FspecRequ = b.FspecRequ
+ }).ToList();
+
+ mesQaIqcItem.ForEach(item =>
+ {
+ string LEV = item.FcheckLevel switch
+ {
+ null => "" // 榛樿鍊�
+ ,
+ { } s when s.Contains("S1") => "B.FLEVEL_S1",
+ { } s when s.Contains("S2") => "B.FLEVEL_S2",
+ { } s when s.Contains("S3") => "B.FLEVEL_S3",
+ { } s when s.Contains("S4") => "B.FLEVEL_S4",
+ { } s when s.Contains("(I)") => "B.FLEVEL_I",
+ { } s when s.Contains("(II)") => "B.FLEVEL_II",
+ { } s when s.Contains("(III)") => "B.FLEVEL_III",
+ _ => ""
+ };
+
+ if (string.IsNullOrEmpty(LEV))
+ throw new Exception(item.SampleSizeNo + "鐨勬楠屾按骞充笉姝g‘");
+
+ var sql =
+ "SELECT " + LEV +
+ " FROM MES_QM_AQL1 A LEFT JOIN MES_QM_AQL2 B ON B.AQL1_ID=A.guid WHERE A.SAMPLE_SIZE_NO='" +
+ item.SampleSizeNo + "' AND B.LOT_FROM<= " + quantity +
+ " AND " +
+ quantity + "<=B.LOT_TO";
+
+ var maxBillNo = Db.Ado.SqlQuerySingle<string>(sql);
+
+ if (string.IsNullOrEmpty(maxBillNo))
+ throw new Exception(item.SampleSizeNo + "涓嬬殑" + quantity +
+ "杩欎釜鑼冨洿涓嬫病鏈夊尮閰嶅埌妫�楠岄」鐩�");
+
+ var result = ExtractSubstring(item.FacLevel, '(', ')');
+
+ if (string.IsNullOrEmpty(result))
+ throw new Exception(item.SampleSizeNo + "涓嬬殑" + quantity +
+ "鎷掓敹姘村钩涓嶆纭�");
+
+ sql = "SELECT FSAMPLE_SIZE_WORD, " + result +
+ " Result FROM MES_QM_AQL1 A LEFT JOIN MES_QM_AQL3 C ON C.AQL1_ID=A.ID WHERE A.SAMPLE_SIZE_NO= '" +
+ item.SampleSizeNo + "' AND SAMPLE_SIZE_WORD= '" + maxBillNo +
+ "'";
+ var resultClass = Db.Ado.SqlQuerySingle<ResultClass>(sql);
+
+ item.CheckQyt = (int)resultClass.FSAMPLE_SIZE_WORD;
+ item.FreQty = (int)resultClass.Result;
+ });
+
+ return mesQaIqcItem;
+ }
+
+ private string ExtractSubstring(string input, char startChar, char endChar)
+ {
+ var startIndex = input.IndexOf(startChar);
+ var endIndex = input.IndexOf(endChar, startIndex);
+
+ if (startIndex == -1 || endIndex == -1)
+ // 濡傛灉鏈壘鍒拌捣濮嬪瓧绗︽垨缁撴潫瀛楃锛屽垯杩斿洖绌哄瓧绗︿覆鎴栬�呮姏鍑哄紓甯革紝鏍规嵁瀹為檯鎯呭喌閫夋嫨
+ return string.Empty;
+ // 鎴栬�呮姏鍑哄紓甯�
+ // throw new ArgumentException("Start or end character not found");
+ // 鎻愬彇瀛愬瓧绗︿覆
+ var length = endIndex - startIndex - 1;
+ return input.Substring(startIndex + 1, length);
+ }
+
+ public int saveItem(LLJDto rkjDto)
+ {
+ var items = rkjDto.items;
+ var userNo = rkjDto.userNo;
+
+ UseTransaction(db =>
+ {
+ foreach (var item in items) item.ReleaseNo = rkjDto.releaseNo;
+
+ return db.Insertable(items).ExecuteCommand();
+ });
+
+ rkjDto.items = GetItems(rkjDto.releaseNo, null);
+
+
+ rkjDto.items.ForEach(s =>
+ {
+ if (s.FupAllow != null || s.Fstand != null ||
+ s.FdownAllow != null) return;
+
+ // 娌℃湁褰曞叆鍙傝�冨�硷紝鍒ゆ柇鏈夊灏戜釜NG锛岄偅涔堝綍鍏ョ殑鎶芥缁撴灉蹇呴』鏄疧K鎴栬�匩G锛孨G浠h〃涓嶅悎鏍�
+ var ifck = Db.Queryable<MesQaItemsDetectDetail12>()
+ .Where(x => x.FcheckResu == "NG" && x.ParentGuid == s.Guid)
+ .Count();
+
+ //妫�楠屾槑缁嗘�绘暟
+ var count = Db.Queryable<MesQaItemsDetectDetail12>()
+ .Where(x1 => x1.ParentGuid == s.Guid).Count();
+
+ if (ifck > s.FreQty && s.CheckQyt == count)
+ s.FcheckResu = "涓嶅悎鏍�";
+ else if (ifck < s.FreQty && s.CheckQyt == count)
+ s.FcheckResu = "鍚堟牸";
+ else
+ s.FcheckResu = "鏈畬鎴�";
+
+
+ var detail = new MesQaItemsDetectDetail12();
+ detail.ParentGuid = s.Guid;
+ // detail.ReleaseNo = rkjDto.releaseNo;
+ detail.Fstand = "鈭�";
+ detail.FcheckResu = "OK";
+ detail.LastupdateBy = rkjDto.userNo;
+ detail.count = s.CheckQyt;
+ SetQSItemDetail(detail);
+ });
+
+ return Convert.ToInt32(rkjDto.gid);
+ }
+
+ public List<MesQaItemsDetectDetail5> GetItems(string? releaseNo,
+ decimal? id)
+ {
+ return Db.Queryable<MesQaItemsDetectDetail5, MesQaItemsDetectDetail12>(
+ (a, b) =>
+ new JoinQueryInfos(JoinType.Left, a.Guid == b.ParentGuid))
+ .Where((a, b) => a.ReleaseNo == releaseNo)
+ // .WhereIF(id > 0, (a, b) => a.Id == id)
+ .GroupBy((a, b) => new
+ {
+ a.Guid,
+ a.ReleaseNo,
+ a.FacLevel,
+ a.FcheckItem,
+ a.FcheckTool,
+ a.FdownAllow,
+ a.FcheckLevel,
+ a.Fstand,
+ a.FupAllow,
+ a.SampleSizeNo,
+ a.FspecRequ,
+ a.FreQty,
+ a.CheckQyt,
+ a.FcheckResu
+ }).Select((a, b) => new MesQaItemsDetectDetail5
+ {
+ Guid = a.Guid,
+ ReleaseNo = a.ReleaseNo,
+ CheckQyt = a.CheckQyt,
+ FacLevel = a.FacLevel,
+ FcheckItem = a.FcheckItem,
+ FcheckTool = a.FcheckTool,
+ FdownAllow = a.FdownAllow,
+ FcheckLevel = a.FcheckLevel,
+ Fstand = a.Fstand,
+ FupAllow = a.FupAllow,
+ SampleSizeNo = a.SampleSizeNo,
+ FspecRequ = a.FspecRequ,
+ FreQty = a.FreQty,
+ Factory = "1000",
+ Company = "1000",
+ FenterQty = SqlFunc.AggregateCount(b.Guid),
+ FcheckResu = a.FcheckResu
+ }).ToList();
+ }
+
+ public int SetQSItemDetail(MesQaItemsDetectDetail12 detail)
+ {
+ var oracle = UseTransaction(db =>
+ {
+ List<MesQaItemsDetectDetail12> result = new();
+ for (var i = 0; i < detail.count; i++)
+ {
+ var item = new MesQaItemsDetectDetail12();
+ item.ParentGuid = detail.ParentGuid;
+ item.Fstand = detail.Fstand;
+ item.FcheckResu = detail.FcheckResu;
+ item.CreateBy = detail.LastupdateBy;
+ item.CreateDate = DateTime.Now;
+ result.Add(item);
+ }
+
+ return db.Insertable(result).ExecuteCommand();
+ });
+
+ detail.CreateBy = detail.LastupdateBy;
+
+
+ autoResult(detail);
+
+ return oracle;
+ }
+
+
+ private int autoResult(MesQaItemsDetectDetail12 detail)
+ {
+ // Single 娌℃湁鏌ヨ鍒扮粨鏋滄椂杩斿洖Null锛屽鏋滅粨鏋滃ぇ浜�1鏉′細鎶涘嚭閿欒
+ var QsItemOqcItem = Db.Queryable<MesQaItemsDetectDetail5>()
+ .Single(s => s.Guid == detail.ParentGuid);
+
+ if (QsItemOqcItem == null) return 0;
+
+ //鏌ヨ杩欎釜妫�楠岄」鐩笅鐨勬楠岀粨鏋�
+ var count = Db.Queryable<MesQaItemsDetectDetail12>()
+ .Where(s => s.ParentGuid == detail.ParentGuid).Count();
+
+ updateDetail5(detail);
+ var result = "";
+
+ //妫�楠屽疄闄呯粨鏋滀笉绛変簬搴旇妫�楠岀殑涓暟鏃剁洿鎺ユ帹鍑�
+ if (QsItemOqcItem.CheckQyt != count) return 0;
+
+ //鍚堟牸鐨勬湁澶氬皯涓�
+ var passCount = Db.Queryable<MesQaItemsDetectDetail12>()
+ .Where(s => s.ParentGuid == detail.ParentGuid && s.Fstand == "鈭�")
+ .Count();
+ //涓嶅悎鏍肩殑鏈夊灏戜釜
+ var noCount = Db.Queryable<MesQaItemsDetectDetail12>()
+ .Where(s => s.ParentGuid == detail.ParentGuid && s.Fstand == "脳")
+ .Count();
+
+ if (count == passCount)
+ result = "鍚堟牸";
+ //else if (count - passCount < QsItemOqcItem.FreQty)
+ // result = "涓嶅悎鏍�";
+ else if (noCount >= QsItemOqcItem.FreQty)
+ result = "涓嶅悎鏍�";
+ var useTransactionWithOracle = UseTransaction(
+ db =>
+ {
+ var commit = 0;
+ commit += db.Updateable<MesQaItemsDetectDetail5>()
+ .SetColumns(s => s.FcheckResu == result)
+ .SetColumns(s => s.FenterQty == count)
+ .Where(s => s.Guid == detail.ParentGuid)
+ .ExecuteCommand();
+
+ return commit;
+ });
+
+ var isNull = Db.Queryable<MesQaItemsDetectDetail5>()
+ .Where(s => s.Guid == detail.ParentGuid && s.FcheckResu == null)
+ .Count();
+
+ if (isNull > 0) return 1;
+
+
+ //鑾峰彇妫�楠屽崟鐨勬楠岄」鐩殑涓暟
+ var sum = Db.Queryable<MesQaItemsDetectDetail5>()
+ .Where(s => s.Guid == detail.ParentGuid).Count();
+
+ if (sum == 0) return 1;
+
+ //鑾峰彇妫�楠屽崟涓嬬殑鍚堟牸鐨勬楠岄」鐩釜鏁�
+ var icount = Db.Queryable<MesQaItemsDetectDetail5>()
+ .Where(s => s.Guid == detail.ParentGuid && s.FcheckResu == "鍚堟牸")
+ .Count();
+
+ var FcheckResu = "涓嶅悎鏍�";
+
+ //瀹為檯涓暟绛変簬鐞嗚涓暟鏃跺妫�楠屽崟杩涜鍒ゅ畾
+ if (sum == icount)
+ //鍚堟牸鐨勬楠岀粨鏋滅瓑浜庢�绘楠屾暟瑙嗕负鍚堟牸
+ FcheckResu = "鍚堟牸";
+
+ var sysUser = Db.Queryable<SysUser>()
+ .Where(s => s.Account == detail.CreateBy).First();
+
+ UseTransaction(db =>
+ {
+ return db.Updateable<MesQaItemsDetect01>()
+ .SetColumns(s => s.FcheckResu == FcheckResu)
+ .SetColumns(s => s.FcheckDate == DateTime.Now)
+ .SetColumns(s => s.FcheckBy == sysUser.Account)
+ .SetColumns(s => s.LastupdateBy == detail.CreateBy)
+ .SetColumns(s => s.LastupdateDate == DateTime.Now)
+ .Where(s => s.Guid == detail.GrandpaGuid)
+ .ExecuteCommand();
+ });
+ // if (FcheckResu.Equals("涓嶅悎鏍�"))
+ //鑷姩鐢熸垚鍏ュ簱妫�寮傚父瀵圭瓥
+ /// saveDetect02(detail.Id, detail.CreateBy);
+
+ return useTransactionWithOracle;
+ }
+ /* public int saveDetect02(decimal? gid, string? createBy)
+ {
+ var db = SqlSugarHelper.GetInstance();
+
+ var qsItemOqcReq =
+ db.Queryable<QsItemOqcReq>().Single(s => s.Id == gid);
+
+ var mesInvItemIns = db.Queryable<MesInvItemIns>()
+ .Single(s => s.BillNo == qsItemOqcReq.BillNo);
+
+ var mesSchemeResult = db.Queryable<MesSchemeResult>()
+ .Single(s => s.BillNo == mesInvItemIns.CbillNo);
+
+ var entity = new MesQaItemsDetect02();
+ entity.ItemNo = mesSchemeResult.BoardItem;
+ entity.BoardItem = mesSchemeResult.BoardItem;
+ entity.LineNo = mesSchemeResult.LineNo;
+ entity.Aufnr = mesSchemeResult.TaskNo;
+ entity.ReleaseNo = qsItemOqcReq.ReleaseNo;
+ entity.LotNo = qsItemOqcReq.BillNo;
+ entity.FcheckDate = qsItemOqcReq.FcheckDate;
+ entity.FcheckMemo = qsItemOqcReq.Remarks;
+ entity.Gid = qsItemOqcReq.Id;
+ // entity.PlanQty = qsItemOqcReq.FcheckDate;
+
+
+ entity.FcheckResu = "涓嶅悎鏍�";
+ entity.FcheckLevel = "涓ラ噸";
+ entity.CreateDate = DateTime.Now;
+ entity.Factory = "10000";
+ entity.Company = "1000";
+ entity.Ftype = "4";
+ entity.Fversion = 0;
+ entity.Modify1Flag = 0;
+ entity.IpqcStatus = 0;
+ entity.Fsubmit = 1;
+ entity.CreateBy = createBy;
+ entity.FcheckBy = createBy;
+
+ return SqlSugarHelper.UseTransactionWithOracle(db => db
+ .Insertable(entity)
+ .ExecuteCommand());
+ }
+ */
+
+ public LLJDto getXjDetail02ById(string? id)
+ {
+ var rkjDto = new LLJDto();
+
+ bool isValid = Guid.TryParse(id, out var parsedGuid);
+
+ if (!isValid)
+ {
+ throw new Exception("GUID杞崲閿欒");
+ }
+
+ var qsItemOqcItem =
+ Db.Queryable<MesQaItemsDetectDetail5>()
+ .Single(s => s.Guid == parsedGuid);
+
+ /* if (qsItemOqcItem.IsPass == 0)
+ qsItemOqcItem.Result = "涓嶅悎鏍�";
+ else if (qsItemOqcItem.IsPass == 1)
+ qsItemOqcItem.Result = "鍚堟牸";
+ else
+ qsItemOqcItem.Result = "鏈畬鎴�";
+
+ if (qsItemOqcItem.Picture is { Length: > 0 })
+ qsItemOqcItem.imageData =
+ Convert.ToBase64String(qsItemOqcItem.Picture);
+ */
+ //鑾峰彇涓嶅悎鏍兼暟
+ var count = Db.Queryable<MesQaItemsDetectDetail12>()
+ .Where(s => s.Fstand == "脳" && s.ParentGuid == parsedGuid).Count();
+
+ qsItemOqcItem.Unqualified = count;
+
+ rkjDto.ItemXj01 = qsItemOqcItem;
+
+
+ rkjDto.ItemXj02s = Db.Queryable<MesQaItemsDetectDetail12>()
+ .Where(s => s.ParentGuid == parsedGuid)
+ .ToList();
+
+ return rkjDto;
+ }
+
+ public int UpdateQSItemDetail(MesQaItemsDetectDetail12 detail)
+ {
+ var withOracle = UseTransaction(db =>
+ {
+ return db.Updateable<MesQaItemsDetectDetail12>()
+ .SetColumns(s => s.LastupdateBy == detail.LastupdateBy)
+ .SetColumnsIF(StringUtil.IsNotNullOrEmpty(detail.Fstand),
+ s => s.Fstand == detail.Fstand)
+ .SetColumnsIF(StringUtil.IsNotNullOrEmpty(detail.FcheckResu),
+ s => s.FcheckResu == detail.FcheckResu)
+ .Where(s => s.ParentGuid
+ == detail.ParentGuid && s.Guid == detail.Guid)
+ .ExecuteCommand();
+ });
+
+ detail.CreateBy = detail.LastupdateBy;
+
+ withOracle += autoResult(detail);
+
+ return withOracle;
+ }
+
+//鏇存柊妫�楠屾槑缁嗗凡妫�銆佷笉鍚堟牸鏁伴噺
+ private int updateDetail5(MesQaItemsDetectDetail12 detail)
+ {
+ //鏌ヨ杩欎釜妫�楠岄」鐩笅鐨勬楠屾暟閲�
+ var count = Db.Queryable<MesQaItemsDetectDetail12>()
+ .Where(s => s.ParentGuid == detail.ParentGuid).Count();
+
+ //鑾峰彇涓嶅悎鏍兼暟
+ var countNo = Db.Queryable<MesQaItemsDetectDetail12>()
+ .Where(s => s.ParentGuid == detail.ParentGuid && s.Fstand == "脳")
+ .Count();
+ //鏇存柊妫�楠屾槑缁嗗凡妫�鏁伴噺
+ var withOracle = UseTransaction(db =>
+ {
+ return db.Updateable<MesQaItemsDetectDetail5>()
+ .SetColumns(s => s.FenterQty == count)
+ .SetColumns(s => s.FngQty == countNo)
+ .Where(s => s.Guid == detail.ParentGuid)
+ .ExecuteCommand();
+ });
+
+ return withOracle;
+ }
+
+ //涓昏〃淇敼澶囨敞瀛楁
+ public int saveRemarksGid(LLJDto dto)
+ {
+ return UseTransaction(db =>
+ {
+ return db.Updateable<MesQaItemsDetect01>()
+ .SetColumns(it =>
+ it.Remarks == dto.Remarks) //SetColumns鏄彲浠ュ彔鍔犵殑 鍐�2涓氨2涓瓧娈佃祴鍊�
+ .Where(it => it.ReleaseNo == dto.releaseNo)
+ .ExecuteCommand();
+ });
+ }
+
+ //瀛愯〃淇敼澶囨敞瀛楁
+ public int saveRemarksPid(LLJDto dto)
+ {
+ bool isValid = Guid.TryParse(dto.pid, out var parsedGuid);
+
+ if (isValid)
+ {
+ return UseTransaction(db =>
+ {
+ return db.Updateable<MesQaItemsDetectDetail5>()
+ .SetColumns(it =>
+ it.Remarks == dto.Remarks)
+ .Where(it => it.Guid == parsedGuid)
+ .ExecuteCommand();
+ });
+ }
+
+ throw new Exception("GUID杞崲閿欒");
+ }
+
+ //鍒犻櫎涓昏〃骞朵笖杩炵骇鍒犻櫎瀛愯〃鍜屽瓩琛�
+ public int removeXJ(string? releaseNo)
+ {
+ var withOracle = UseTransaction(db =>
+ {
+ var commit = 0;
+ //鍒犻櫎涓昏〃
+ commit += db.Deleteable<MesQaItemsDetect01>()
+ .Where(s => s.ReleaseNo == releaseNo)
+ .ExecuteCommand();
+ //鍒犻櫎瀛愯〃
+ commit += db.Deleteable<MesQaItemsDetectDetail5>()
+ .Where(s => s.ReleaseNo == releaseNo)
+ .ExecuteCommand();
+ //鍒犻櫎瀛欒〃
+ // commit += db.Deleteable<MesQaItemsDetectDetail12>()
+ // .Where(s => s.ReleaseNo == releaseNo)
+ // .ExecuteCommand();
+ return commit;
+ });
+
+ return withOracle;
+ }
+
+ public bool IqcQaSubmit(LLJDto dto)
+ {
+ //var (factory, company) = UserUtil.GetFactory(dto.userNo);
+ var sysUser = Db.Queryable<SysUser>()
+ .Where(s => s.Account == dto.userNo).First();
+
+ if (sysUser == null)
+ return false;
+
+ var mesQaItemsDetect01 = Db.Queryable<MesQaItemsDetect01>()
+ .Where(s => s.ReleaseNo == dto.releaseNo).First();
+
+ if (mesQaItemsDetect01 == null)
+ return false;
+
+ if (mesQaItemsDetect01.Fsubmit == 1)
+ throw new Exception("璇ユ楠屽崟宸叉彁浜�");
+
+ if (mesQaItemsDetect01.FcheckDate == null)
+ throw new Exception("璇ユ娴嬪崟鏈緭鍏ユ楠屾棩鏈燂紝璇锋牳瀵广��");
+
+ if (mesQaItemsDetect01.FcheckBy.IsNullOrEmpty())
+ throw new Exception("璇ユ娴嬪崟鏈緭鍏ユ楠屼汉鍛橈紝璇锋牳瀵广��");
+
+ var list = Db.Queryable<MesQaItemsDetectDetail5>()
+ .Where(s => s.ReleaseNo == dto.releaseNo).ToList();
+
+ if (CollectionUtil.IsNullOrEmpty(list))
+ throw new Exception("鎶芥牱淇℃伅浠庤〃涓嶅厑璁镐负绌�,璇风淮鎶ゆ楠岄」鐩�");
+
+ foreach (var mesQaItemsDetectDetail5 in list)
+ {
+ mesQaItemsDetectDetail5.FenterQty ??= 0;
+ if (mesQaItemsDetectDetail5.FenterQty == 0)
+ {
+ throw new Exception("妫�楠岄」鐩�:" +
+ mesQaItemsDetectDetail5.FcheckItem +
+ " 宸插綍鍏ユ暟閲忎负0锛岃纭銆�");
+ }
+ }
+
+ var com = UseTransaction(db =>
+ {
+ var executeCommand = db.Updateable<MesQaItemsDetect01>()
+ .SetColumns(s => s.Fsubmit == 1)
+ .Where(s => s.ReleaseNo == dto.releaseNo)
+ .ExecuteCommand();
+
+ var mesInvItemArn = db.Queryable<MesInvItemArn>()
+ .Where(b => b.BillNo == mesQaItemsDetect01.LotNo).First();
+
+ if (mesInvItemArn == null)
+ throw new Exception(mesQaItemsDetect01.LotNo + "鍒拌揣鍗曚笉瀛樺湪锛岃鏍稿銆�");
+
+ if ("鍚堟牸".Equals(mesQaItemsDetect01.FcheckResu))
+ {
+ executeCommand += db.Updateable<MesInvItemArnDetail>()
+ .SetColumns(s => s.CheckStates == "宸叉")
+ .SetColumns(s => s.CheckRes == "鍚堟牸")
+ .SetColumns(s => s.Ischeck == 1)
+ .SetColumns(s => s.CheckDate == DateTime.Now)
+ .Where(s => s.ParentGuid == mesInvItemArn.Guid
+ && s.ItemId == mesQaItemsDetect01.ItemId)
+ .ExecuteCommand();
+
+ executeCommand += db.Updateable<MesQaItemsDetect01>()
+ .SetColumns(s => s.Modify1Flag == 1)
+ .SetColumns(s => s.Modify1By == sysUser.Account)
+ .SetColumns(s => s.Modify1Date == DateTime.Now)
+ .SetColumns(s => s.FngHandle == "")
+ .SetColumns(s => s.IqcDate == DateTime.Now)
+ .SetColumns(s => s.FcheckDate == DateTime.Now)
+ .SetColumns(s => s.FcheckBy == sysUser.Account)
+ .Where(s => s.Guid == mesQaItemsDetect01.Guid)
+ .ExecuteCommand();
+
+ //MesInvItemStocks
+ executeCommand += db.Updateable<MesInvItemStocks>()
+ .SetColumns(t => t.CheckDate == DateTime.Now)
+ .SetColumns(t => t.IqcStatus == "宸叉")
+ .Where(t => t.ItemId == mesQaItemsDetect01.ItemId
+ && t.BillNo == mesQaItemsDetect01.LotNo)
+ .ExecuteCommand();
+
+ var first = db
+ .Queryable<MesInvItemArnDetail, MesInvItemArn>(
+ (b, a) => new object[]
+ {
+ JoinType.Left, b.ParentGuid == a.Guid
+ })
+ .Where((b, a) =>
+ a.BillNo == mesQaItemsDetect01.LotNo &&
+ b.ReturnFlag == 0)
+ .Select((b, a) => new
+ {
+ TotalQuantity =
+ SqlFunc.AggregateSum(b.Quantity),
+ TotalOkRkQty = SqlFunc.AggregateSum(b.OkRkqty)
+ })
+ .First();
+
+ var totalQuantity = first.TotalQuantity ?? 0;
+ var totalOkRkQty = first.TotalOkRkQty ?? 0;
+
+ if (totalQuantity == totalOkRkQty)
+ executeCommand += db.Updateable<MesInvItemArn>()
+ .SetColumns(s => s.Status == 1)
+ .Where(s => s.BillNo == mesQaItemsDetect01.LotNo)
+ .ExecuteCommand();
+ }
+ else
+ {
+ executeCommand += db.Updateable<MesInvItemArnDetail>()
+ .SetColumns(s => s.CheckStates == "涓嶅悎鏍煎緟瀹℃壒")
+ .SetColumns(s => s.Ischeck == 1)
+ .SetColumns(s => s.CheckRes == mesQaItemsDetect01.FcheckResu)
+ .SetColumns(s => s.CheckDate == DateTime.Now)
+ .Where(s => s.ParentGuid == mesInvItemArn.Guid
+ && s.ItemId == mesQaItemsDetect01.ItemId)
+ .ExecuteCommand();
+
+ executeCommand += db.Updateable<MesQaItemsDetect01>()
+ .SetColumns(s => s.IqcDate == DateTime.Now)
+ .SetColumns(s => s.FcheckDate == DateTime.Now)
+ .SetColumns(s => s.FcheckBy == sysUser.Account)
+ .Where(s => s.Guid == mesQaItemsDetect01.Guid)
+ .ExecuteCommand();
+ }
+
+ if (executeCommand >=3)
+ return executeCommand;
+
+ throw new Exception("鏇存柊澶辫触");
+ });
+
+ return com > 0;
+ }
+}
\ No newline at end of file
--
Gitblit v1.9.3