From b28efb19ba1f168a6a9792715815f058368726cf Mon Sep 17 00:00:00 2001 From: ray Date: Wed, 18 May 2022 00:11:31 +0800 Subject: [PATCH] =?UTF-8?q?1.=20FQC007=20=E5=8F=AF=E9=A1=AF=E7=A4=BA?= =?UTF-8?q?=E4=BA=BA=E5=93=A1No=E5=8F=8A=E5=90=8D=E5=AD=90=202.=20FQC?= =?UTF-8?q?=E6=9F=A5=E8=A9=A2=E9=80=A3=E7=B5=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/FQCController.cs | 47 +++++++++++++++++-- AMESCoreStudio.Web/Views/FQC/FQC007.cshtml | 28 ++++++----- AMESCoreStudio.Web/Views/FQC/FQC008.cshtml | 4 +- .../AMES/FqcInhouseMasterController.cs | 21 +++++++-- 4 files changed, 78 insertions(+), 22 deletions(-) diff --git a/AMESCoreStudio.Web/Controllers/FQCController.cs b/AMESCoreStudio.Web/Controllers/FQCController.cs index 384a023a..5591f409 100644 --- a/AMESCoreStudio.Web/Controllers/FQCController.cs +++ b/AMESCoreStudio.Web/Controllers/FQCController.cs @@ -651,9 +651,45 @@ namespace AMESCoreStudio.Web.Controllers #endregion #region FQC007 FQC抽驗作業 - public IActionResult FQC007() + public async Task FQC007(string inhouseNo = null, int seqID = 0) { var model = new FqcDto(); + if (!string.IsNullOrWhiteSpace(inhouseNo) && seqID != 0) + { + IResultModel result; + result = await _fqcApi.GetFqcQuery(inhouseNo, seqID); + if (result.Data.Count() != 0) + { + model = result.Data.FirstOrDefault(); + model.h_InhouseNo = model.InhouseNo; + model.h_SeqID = model.SeqID.ToString(); + + // 抓全部檢驗工項 + var result_QcItem = await _fqcApi.GetQcItemQuery(0, 0, 0); + // 取綁定工單檢驗工項資料 + var result_WipFQC = await _fqcApi.GetWipFqcItemByWipNo(model.WipNo); + if (result_WipFQC.Count == 0) + { + //工單無設定檢驗工項時 在抓料號綁定檢驗工項 + var result_MaterialFQC = await _fqcApi.GetMaterialFqcItemsByitemNo(model.ItemNo); + if (result_MaterialFQC.Count != 0) + { + model.qcItemDtos = result_QcItem.Data.Where(w => result_MaterialFQC.Select(s => s.QcItemID).Contains(w.ItemID)).ToList(); + } + } + else + { + model.qcItemDtos = result_QcItem.Data.Where(w => result_WipFQC.Select(s => s.QcItemID).Contains(w.ItemID)).ToList(); + } + } + else + { + ModelState.AddModelError("error", "找不到入庫單號【" + model.InhouseNo + "】的資料"); + model.h_InhouseNo = ""; + model.h_SeqID = ""; + } + } + return View(model); } @@ -684,6 +720,7 @@ namespace AMESCoreStudio.Web.Controllers result_FQCResultMaster.Proved = model.Proved; result_FQCResultMaster.OutfitNo = model.OutfitNo; await _fqcApi.PutFqcResultMaster(JsonConvert.SerializeObject(result_FQCResultMaster)); + ModelState.AddModelError("error", "儲存成功!"); } } @@ -718,9 +755,9 @@ namespace AMESCoreStudio.Web.Controllers model.h_SeqID = ""; } - - return View("FQC007", model); + + return View(model); } #region 抽驗 @@ -850,7 +887,11 @@ namespace AMESCoreStudio.Web.Controllers if (model.StatusNo == "F") FqcResultMaster.FailQty += 1; else + { FqcResultMaster.PassQty += 1; + FqcResultDetail.NgReasonNo = ""; + FqcResultDetail.NgMemo = ""; + } #endregion IResultModel result; diff --git a/AMESCoreStudio.Web/Views/FQC/FQC007.cshtml b/AMESCoreStudio.Web/Views/FQC/FQC007.cshtml index 2150ec6a..54da1616 100644 --- a/AMESCoreStudio.Web/Views/FQC/FQC007.cshtml +++ b/AMESCoreStudio.Web/Views/FQC/FQC007.cshtml @@ -87,8 +87,8 @@
- - + +
@@ -199,33 +199,33 @@
-
+
- +
-
+
- +
-
- +
+
- +
@@ -272,7 +272,7 @@
- +
@@ -428,7 +428,7 @@ type: 'post', success: function (result) { - $(val).closest('div.layui-inline').find('input[id*=' + val.id + '_Name]').val(result.data); + $(val).closest('div.layui-col-xs2').find('label[id*=' + val.id + '_Name]').text(result.data); }, error: function (result) { @@ -471,7 +471,7 @@ // 文件上傳 function upload() { - if (@Model.FqcID == 0) {parent.hg.msg('請搜尋入庫單號!'); + if (@Model.FqcID == 0) {parent.hg.msg('請先抽驗一筆紀錄!'); return; }; @@ -511,7 +511,9 @@ } $(document).ready(function () { - var error = '@Html.ValidationMessage("error")'; + var error = '@Html.ValidationMessage("error")'; + $("#CustomerMedical").attr("disabled", "disabled"); + $("#CustomerVIP").attr("disabled", "disabled"); if ($(error).text() != '') { parent.hg.msg(error); }; diff --git a/AMESCoreStudio.Web/Views/FQC/FQC008.cshtml b/AMESCoreStudio.Web/Views/FQC/FQC008.cshtml index 0c63b3c2..8ba73ceb 100644 --- a/AMESCoreStudio.Web/Views/FQC/FQC008.cshtml +++ b/AMESCoreStudio.Web/Views/FQC/FQC008.cshtml @@ -209,8 +209,8 @@ ]]; //通过行tool编辑,lay-event="edit" function edit(obj) { - if (obj.data.wipID) { - hg.open('修改工單資料', '/PCS/PCS003/' + obj.data.wipID, '', '', true); + if (obj.data.inhouseNo) { + hg.open('FQC抽驗作業', '/FQC/FQC007?inhouseNo=' + obj.data.inhouseNo + '&seqID=' + obj.data.seqID, '', '', true); } } diff --git a/AMESCoreStudio.WebApi/Controllers/AMES/FqcInhouseMasterController.cs b/AMESCoreStudio.WebApi/Controllers/AMES/FqcInhouseMasterController.cs index 1d3e802a..3d182ad1 100644 --- a/AMESCoreStudio.WebApi/Controllers/AMES/FqcInhouseMasterController.cs +++ b/AMESCoreStudio.WebApi/Controllers/AMES/FqcInhouseMasterController.cs @@ -97,7 +97,8 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES { var q = from q1 in _context.FqcInhouseMasters //join q2 in _context.FqcInhouseDetails on new { q1.InhouseNo, q1.SeqID } equals new { q2.InhouseNo, q2.SeqID } - join q3 in _context.FqcResultMasters on q1.InhouseNo equals q3.InhouseNo + join q3 in _context.FqcResultMasters on q1.InhouseNo equals q3.InhouseNo into j1 + from q3 in j1.DefaultIfEmpty() join q4 in _context.WipInfos on q1.WipNo equals q4.WipNO into s from q4 in s.DefaultIfEmpty() select new FqcInhouseMasterDto @@ -153,8 +154,7 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES ResultModel result = new ResultModel(); - // 紀錄筆數 - result.DataTotal = q.Count(); + // Table 頁數 if (page > 0) @@ -171,6 +171,9 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES result.Data = result.Data.Select(s => { s.StatusName = s.StatusName == "P" ? "允收" : s.StatusName == "R" ? "批退" : "未驗收完成"; return s; }) .ToList(); + // 紀錄筆數 + result.DataTotal = q.Count(); + return result; } @@ -190,6 +193,12 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES join q3 in _context.QcCriteria on q1.CritID equals q3.CritID join q4 in _context.WipInfos on q1.WipNo equals q4.WipNO join q5 in _context.FactoryInfos on q4.Werks equals q5.FactoryID.ToString() + join q6 in _context.UserInfoes on q2.Supervisor equals q6.UserNo into cp6 + from q6 in cp6.DefaultIfEmpty() + join q7 in _context.UserInfoes on q2.Proved equals q7.UserNo into cp7 + from q7 in cp7.DefaultIfEmpty() + join q8 in _context.UserInfoes on q2.UpdateUserID equals q8.UserID into cp8 + from q8 in cp8.DefaultIfEmpty() select new FqcDto { InhouseNo = q1.InhouseNo, @@ -216,7 +225,11 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES RAM = q2.RAM, OutfitNo = q2.OutfitNo, Supervisor = q2.Supervisor, - Proved = q2.Proved + Supervisor_Name = q6.UserName, + Proved = q2.Proved, + Proved_Name = q7.UserName, + UpdateUser = q8.UserNo, + UpdateUser_Name =q8.UserName }; var query = await q.Distinct().ToListAsync();