From 77429d215b910a25178974f71aa54f9528f3d5f1 Mon Sep 17 00:00:00 2001 From: Ray Date: Wed, 8 Dec 2021 19:01:33 +0800 Subject: [PATCH] =?UTF-8?q?1.=20=E4=BF=AE=E6=AD=A3=E5=B7=A5=E5=96=AE?= =?UTF-8?q?=E5=9F=BA=E6=9C=AC=E8=B3=87=E6=96=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/PCSController.cs | 82 ++- AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs | 18 +- .../ViewModels/PCS/PCS001RViewModel.cs | 3 + AMESCoreStudio.Web/Views/PCS/PCS001.cshtml | 18 +- AMESCoreStudio.Web/Views/PCS/PCS001R.cshtml | 482 +++++++++--------- .../Controllers/AMES/BarcodeTypeController.cs | 182 +++++++ .../AMES/WipBarcodeOthersController.cs | 14 +- .../Controllers/AMES/WipBoardController.cs | 9 +- .../Controllers/AMES/WipLabelController.cs | 18 +- .../Controllers/AMES/WipSystemController.cs | 8 +- .../Models/AMES/BarcodeType.cs | 82 +++ AMESCoreStudio.WebApi/Models/AMES/WipLabel.cs | 25 +- AMESCoreStudio.WebApi/Models/AMES/WipMAC.cs | 3 + AMESCoreStudio.WebApi/Models/AMESContext.cs | 86 ++-- 開發文件/Table(wip_label).docx | Bin 14122 -> 14210 bytes 15 files changed, 662 insertions(+), 368 deletions(-) create mode 100644 AMESCoreStudio.WebApi/Controllers/AMES/BarcodeTypeController.cs create mode 100644 AMESCoreStudio.WebApi/Models/AMES/BarcodeType.cs diff --git a/AMESCoreStudio.Web/Controllers/PCSController.cs b/AMESCoreStudio.Web/Controllers/PCSController.cs index 5860979a..98b5db0b 100644 --- a/AMESCoreStudio.Web/Controllers/PCSController.cs +++ b/AMESCoreStudio.Web/Controllers/PCSController.cs @@ -760,14 +760,13 @@ namespace AMESCoreStudio.Web.Controllers await _pcsApi.PostWipAtt(JsonConvert.SerializeObject(model.wipAtt)); // 標籤 - model.wipLabel.ApproveLogo = model.wipLabel.ApproveLogos.Count==0 ? null : string.Join(',', model.wipLabel.ApproveLogos); - model.wipLabel.WipAttr = model.wipLabel.WipAttrs.Count == 0 ? null : string.Join(',', model.wipLabel.WipAttrs); - model.wipLabel.WipID = wipID; + model.wipLabel.ApproveLogo = model.wipLabel.ApproveLogos.Count == 0 ? null : string.Join(',', model.wipLabel.ApproveLogos); + model.wipLabel.WipNO = model.wipInfo.WipNO; await _pcsApi.PostWipLabel(JsonConvert.SerializeObject(model.wipLabel)); // 新增工單Log WipLog wiplog = new WipLog(); - wiplog.WipID= wipID; + wiplog.WipID = wipID; wiplog.StatusNO = "N"; wiplog.WipDesc = "."; await _pcsApi.PostWipLog(JsonConvert.SerializeObject(wiplog)); @@ -805,6 +804,26 @@ namespace AMESCoreStudio.Web.Controllers model.wipBarcode.WipNO = model.wipInfo.WipNO; model.wipBarcode.UnitNO = model.wipInfo.UnitNO; result = await _pcsApi.PostWipBarcode(JsonConvert.SerializeObject(model.wipBarcode)); + + // 工單條碼規則設定文件檔 + WipRule wipRule = new WipRule(); + wipRule.WipNO = model.wipInfo.WipNO; + wipRule.KeyNo = "00"; + wipRule.BarcodeLen = 14; + wipRule.BarcodeFormat = model.wipInfo.UnitNO; + result = await _pcsApi.PostWipRule(JsonConvert.SerializeObject(wipRule)); + } + + // 出貨序號 + if (!string.IsNullOrWhiteSpace(model.wipBarcodeOther.StartNO)) + { + var type_no = await _pcsApi.GetBarcodeTypeByTypeName("客戶條碼區間"); + if (type_no.Any()) + { + model.wipBarcodeOther.WipNO = model.wipInfo.WipNO; + model.wipBarcodeOther.TypeNO = type_no.FirstOrDefault().TypeNO; + result = await _pcsApi.PostWipBarcodeOther(JsonConvert.SerializeObject(model.wipBarcodeOther)); + } } // MAC @@ -841,6 +860,33 @@ namespace AMESCoreStudio.Web.Controllers public async Task PCS001R(int id) { + + PCS001RViewModel model = new PCS001RViewModel(); + var q = await _pcsApi.GetWipInfo(id); + if (q.Count != 0) + { + model.wipInfo = q.FirstOrDefault(); + model.wipAtt = await _pcsApi.GetWipAtt(model.wipInfo.WipNO); + model.wipBarcode = await _pcsApi.GetWipBarcode(model.wipInfo.WipNO); + model.ruleStation = await _basApi.GetRuleStationsByFlow(model.wipInfo.FlowRuleID); + model.ruleStation = model.ruleStation.OrderBy(o => o.Sequence); + + var q1 = await _pcsApi.GetWipSopQuery(itemNo: model.wipAtt.ItemNO); + model.wipSop = q1.Data; + var q2 = await _pcsApi.GetMaterialKpQuery(itemno: model.wipAtt.ItemNO); + model.materialKp = q2.Data; + + model.wipBoard = await _pcsApi.GetWipBoard(model.wipInfo.WipNO); + + model.wipSystem = await _pcsApi.GetWipSystem(model.wipInfo.WipNO); + + model.wipMAC = await _pcsApi.GetWipMAC(model.wipInfo.WipNO); + + model.wipLabel = await _pcsApi.GetWipLabel(model.wipInfo.WipNO); + + model.wipBarcodeOther = await _pcsApi.GetWipBarcodeOther(model.wipInfo.WipNO); + + } await GetProductType(); await GetFactoryInfo(); await GetFactoryUnit(); @@ -860,30 +906,10 @@ namespace AMESCoreStudio.Web.Controllers GetCustomerType(); GetPCSList1(); GetPCSOPList(); - PCS001RViewModel model = new PCS001RViewModel(); - var q = await _pcsApi.GetWipInfo(id); - if (q.Count != 0) - { - model.wipInfo = q.FirstOrDefault(); - model.wipAtt = await _pcsApi.GetWipAtt(model.wipInfo.WipNO); - model.wipBarcode = await _pcsApi.GetWipBarcode(model.wipInfo.WipNO); - model.ruleStation = await _basApi.GetRuleStationsByFlow(model.wipInfo.FlowRuleID); - model.ruleStation = model.ruleStation.OrderBy(o => o.Sequence); - - var q1 = await _pcsApi.GetWipSopQuery(itemNo: model.wipAtt.ItemNO); - model.wipSop = q1.Data; - var q2 = await _pcsApi.GetMaterialKpQuery(itemno: model.wipAtt.ItemNO); - model.materialKp = q2.Data; - - var q3 = await _pcsApi.GetWipBoard(model.wipInfo.WipNO); - model.wipBoard = q3.FirstOrDefault(); - var q4 = await _pcsApi.GetWipSystem(model.wipInfo.WipNO); - model.wipSystem = q4.FirstOrDefault(); - } - if (model.wipInfo != null) - { - - } + GetCheckboxApproveLogo(model.wipLabel != null ? model.wipLabel.ApproveLogo : null); + GetCheckboxCompanyLogo(model.wipLabel != null ? model.wipLabel.CompanyLogo : null); + GetCheckboxPrintMode(model.wipLabel != null ? model.wipLabel.PrintMode : null); + GetCheckboxWipAttr(model.wipLabel != null ? model.wipLabel.WipAttr :null); return View(model); } diff --git a/AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs b/AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs index 5efd4017..f1b17af7 100644 --- a/AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs +++ b/AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs @@ -122,7 +122,7 @@ namespace AMESCoreStudio.Web #region WipBoard 工單基本資料-板卡資訊 PCS001 [WebApiClient.Attributes.HttpGet("api/WipBoard/{id}")] - ITask> GetWipBoard(string id); + ITask GetWipBoard(string id); [WebApiClient.Attributes.HttpPost("api/WipBoard")] ITask> PostWipBoard([FromBody, RawJsonContent] string model); @@ -130,7 +130,7 @@ namespace AMESCoreStudio.Web #region WipSystem 工單基本資料-系統組裝資訊 PCS001 [WebApiClient.Attributes.HttpGet("api/WipSystem/{id}")] - ITask> GetWipSystem(string id); + ITask GetWipSystem(string id); [WebApiClient.Attributes.HttpPost("api/WipSystem")] ITask> PostWipSystem([FromBody, RawJsonContent] string model); @@ -138,15 +138,15 @@ namespace AMESCoreStudio.Web #region WipLabel 工單基本資料-標籤 PCS001 [WebApiClient.Attributes.HttpGet("api/WipLabel/{id}")] - ITask> GetWipLabel(string id); + ITask GetWipLabel(string id); - [WebApiClient.Attributes.HttpPost("api/WipSystem")] + [WebApiClient.Attributes.HttpPost("api/WipLabel")] ITask> PostWipLabel([FromBody, RawJsonContent] string model); #endregion #region WipMAC 工單MAC資料檔 PCS001 [WebApiClient.Attributes.HttpGet("api/WipMAC/{id}")] - ITask> GetWipMAC(string id); + ITask GetWipMAC(string id); [WebApiClient.Attributes.HttpPost("api/WipMAC")] ITask> PostWipMAC([FromBody, RawJsonContent] string model); @@ -178,12 +178,18 @@ namespace AMESCoreStudio.Web #region WipBarcodeOthers 工單條碼區間設定檔(除内部SN) PCS001 [WebApiClient.Attributes.HttpGet("api/WipBarcodeOther/WipNo/{id}")] - ITask> GetWipBarcodeOther(string id); + ITask GetWipBarcodeOther(string id); [WebApiClient.Attributes.HttpPost("api/WipBarcodeOther")] ITask> PostWipBarcodeOther([FromBody, RawJsonContent] string model); #endregion + #region BarcodeType 條碼類別資料檔 PCS001 + [WebApiClient.Attributes.HttpGet("api/BarcodeType/TypeName/{id}")] + ITask> GetBarcodeTypeByTypeName(string id); + + #endregion + #region WipLog 工單投產纪錄資料文件 PCS006 [WebApiClient.Attributes.HttpGet("api/WipLog")] ITask> GetWipLog(); diff --git a/AMESCoreStudio.Web/ViewModels/PCS/PCS001RViewModel.cs b/AMESCoreStudio.Web/ViewModels/PCS/PCS001RViewModel.cs index 231e3db9..ad0da06e 100644 --- a/AMESCoreStudio.Web/ViewModels/PCS/PCS001RViewModel.cs +++ b/AMESCoreStudio.Web/ViewModels/PCS/PCS001RViewModel.cs @@ -26,7 +26,10 @@ namespace AMESCoreStudio.Web.ViewModels.PCS public IEnumerable materialKp { get; set; } + public WipLabel wipLabel { get; set; } + public WipMAC wipMAC { get; set; } + public WipBarcodeOther wipBarcodeOther { get; set; } } } diff --git a/AMESCoreStudio.Web/Views/PCS/PCS001.cshtml b/AMESCoreStudio.Web/Views/PCS/PCS001.cshtml index cd5fbdfa..84ee6a9a 100644 --- a/AMESCoreStudio.Web/Views/PCS/PCS001.cshtml +++ b/AMESCoreStudio.Web/Views/PCS/PCS001.cshtml @@ -260,7 +260,11 @@
- + +
+
-
+
+
@@ -807,7 +811,7 @@
- +
@@ -835,9 +839,9 @@