From 5b34222af664b2264fd60c3c9c16b423a435ae02 Mon Sep 17 00:00:00 2001 From: Sai Date: Fri, 31 May 2024 16:47:49 +0800 Subject: [PATCH] =?UTF-8?q?1.=20PTD=20=E7=A8=8B=E5=BC=8F=E6=95=B4=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/PTDController.cs | 54 +++-- AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs | 122 +--------- AMESCoreStudio.Web/HttpApis/AMES/IPTD.cs | 180 ++++++++++++++ AMESCoreStudio.Web/Views/PTD/PTD006.cshtml | 40 +++- .../Controllers/PTD/PTDController.cs | 225 ++++++++++++++++++ 5 files changed, 472 insertions(+), 149 deletions(-) create mode 100644 AMESCoreStudio.Web/HttpApis/AMES/IPTD.cs create mode 100644 AMESCoreStudio.WebApi/Controllers/PTD/PTDController.cs diff --git a/AMESCoreStudio.Web/Controllers/PTDController.cs b/AMESCoreStudio.Web/Controllers/PTDController.cs index 406c3e69..d5fc54cb 100644 --- a/AMESCoreStudio.Web/Controllers/PTDController.cs +++ b/AMESCoreStudio.Web/Controllers/PTDController.cs @@ -18,13 +18,15 @@ namespace AMESCoreStudio.Web.Controllers public readonly IKCS _kcsApi; public readonly IBAS _basApi; public readonly ISYS _sysApi; + public readonly IPTD _ptdApi; - public PTDController(IPCS pcsApi, IKCS kcsApi, IBAS basApi, ISYS sysApi) + public PTDController(IPCS pcsApi, IKCS kcsApi, IBAS basApi, ISYS sysApi, IPTD ptdApi) { _pcsApi = pcsApi; _kcsApi = kcsApi; _basApi = basApi; _sysApi = sysApi; + _ptdApi = ptdApi; } #region "PTD001 DN單查詢" @@ -264,7 +266,7 @@ namespace AMESCoreStudio.Web.Controllers } - List RecordTypes = await _pcsApi.GetRecordTypeInfo(); + List RecordTypes = await _ptdApi.GetRecordTypeInfo(); var allRecordType = new[] { "653", "632", "261", "262", "101R", "201", "202", "291", "292", "601", "601DB", "657", "952", "634" }; var filtered = from o in RecordTypes where allRecordType.Contains(o.ID) @@ -289,7 +291,7 @@ namespace AMESCoreStudio.Web.Controllers [HttpPost] public async Task GetZDNDetailJson(string recordNumber,string lineNo) { - var result = await _pcsApi.GetZDNDetail4PTD001(recordNumber, lineNo); + var result = await _ptdApi.GetZDNDetail4PTD001(recordNumber, lineNo); //将数据Json化并传到前台视图 return Json(new { data = result }); @@ -298,7 +300,7 @@ namespace AMESCoreStudio.Web.Controllers [HttpPost] public async Task PTD002_Commit(string data) { - var result = await _pcsApi.PostPTD002Commit(data); + var result = await _ptdApi.PostPTD002Commit(data); //将数据Json化并传到前台视图 return Json(new { data = result }); } @@ -345,7 +347,7 @@ namespace AMESCoreStudio.Web.Controllers } } - List RecordTypes = await _pcsApi.GetRecordTypes(); + List RecordTypes = await _ptdApi.GetRecordTypes(); var SelectListItem = new List(); @@ -368,7 +370,7 @@ namespace AMESCoreStudio.Web.Controllers if (autoLoad == 0) return Json(new Table() { count = 0, data = null }); - var result = await _pcsApi.GetData4PTD003(recordType, recordNumber, lineNo, materialNo, shippingSN, dateStart, dateEnd, RBU); + var result = await _ptdApi.GetData4PTD003(recordType, recordNumber, lineNo, materialNo, shippingSN, dateStart, dateEnd, RBU); if (result.DataTotal > 0) { return Json(new Table() { code = 0, msg = "", data = result.Data, count = result.DataTotal }); @@ -379,7 +381,7 @@ namespace AMESCoreStudio.Web.Controllers [HttpPost] public async Task GetCustomerJson(string recordNumber) { - string strCustomer = await _pcsApi.GetCustomer(recordNumber); + string strCustomer = await _ptdApi.GetCustomer(recordNumber); var item = new List(); @@ -406,7 +408,7 @@ namespace AMESCoreStudio.Web.Controllers public async Task PTD004UAsync(string id) { - var result = await _pcsApi.GetRecordTypeInfo(id); + var result = await _ptdApi.GetRecordTypeInfo(id); if (result.Count == 0) { @@ -416,7 +418,7 @@ namespace AMESCoreStudio.Web.Controllers } public async Task PTD004DAsync(string id) { - var result = await _pcsApi.DeleteRecordTypeInfo(id); + var result = await _ptdApi.DeleteRecordTypeInfo(id); return Json(new Result() { success = true, msg = "" }); } //頁面提交,Mode=0 添加,Mode=1 修改 @@ -430,11 +432,11 @@ namespace AMESCoreStudio.Web.Controllers if (model.Mode == 0) { - result = await _pcsApi.PostRecordTypeInfo(JsonConvert.SerializeObject(model)); + result = await _ptdApi.PostRecordTypeInfo(JsonConvert.SerializeObject(model)); } else { - result = await _pcsApi.PutRecordTypeInfo(model.ID, JsonConvert.SerializeObject(model)); + result = await _ptdApi.PutRecordTypeInfo(model.ID, JsonConvert.SerializeObject(model)); } if (result.Success) @@ -465,7 +467,7 @@ namespace AMESCoreStudio.Web.Controllers [HttpGet] public async Task GetRecordTypeInfoAsync() { - var result = await _pcsApi.GetRecordTypeInfo(); + var result = await _ptdApi.GetRecordTypeInfo(); if (result.Count > 0) { @@ -492,7 +494,7 @@ namespace AMESCoreStudio.Web.Controllers [HttpGet] public async Task PTD005UAsync(string id) { - var result = await _pcsApi.GetCustomerItemMailGroup(id); + var result = await _ptdApi.GetCustomerItemMailGroup(id); if (result.Count == 0) { @@ -503,7 +505,7 @@ namespace AMESCoreStudio.Web.Controllers public async Task PTD005DAsync(string id) { - var result = await _pcsApi.DeleteCustomerItemMailGroup(id); + var result = await _ptdApi.DeleteCustomerItemMailGroup(id); return Json(new Result() { success = true, msg = "" }); } @@ -515,11 +517,11 @@ namespace AMESCoreStudio.Web.Controllers IResultModel result; if (model.Mode == 0) { - result = await _pcsApi.PostCustomerItemMailGroup(JsonConvert.SerializeObject(model)); + result = await _ptdApi.PostCustomerItemMailGroup(JsonConvert.SerializeObject(model)); } else { - result = await _pcsApi.PutCustomerItemMailGroup(model.ItemNumber, JsonConvert.SerializeObject(model)); + result = await _ptdApi.PutCustomerItemMailGroup(model.ItemNumber, JsonConvert.SerializeObject(model)); } if (result.Success) @@ -550,7 +552,7 @@ namespace AMESCoreStudio.Web.Controllers [HttpGet] public async Task GetCustomerItemMailGroupAsync() { - var result = await _pcsApi.GetCustomerItemMailGroup(); + var result = await _ptdApi.GetCustomerItemMailGroup(); if (result.Count > 0) { @@ -578,7 +580,7 @@ namespace AMESCoreStudio.Web.Controllers } - List RecordTypes = await _pcsApi.GetRecordTypeInfo(); + List RecordTypes = await _ptdApi.GetRecordTypeInfo(); var allRecordType = new[] { "101", "601", "631", "633", "951" }; var filtered = from o in RecordTypes where allRecordType.Contains(o.ID) @@ -604,7 +606,7 @@ namespace AMESCoreStudio.Web.Controllers if (recordNumber == null || recordNumber == "") return Json(new Table() { count = 0, data = null }); - var result = await _pcsApi.GetZWHPickListDetail(recordNumber, lineNo); + var result = await _ptdApi.GetZWHPickListDetail(recordNumber, lineNo); if (result.DataTotal > 0) { return Json(new Table() { code = 0, msg = "", data = result.Data, count = result.DataTotal }); @@ -614,7 +616,7 @@ namespace AMESCoreStudio.Web.Controllers [HttpPost] public async Task PTD006AAsync(string data) { - var result = await _pcsApi.PostPTD006Commit(data); + var result = await _ptdApi.PostPTD006Commit(data); if (result.Success) { return Json(new Result() { success = true, msg = "" }); @@ -626,7 +628,7 @@ namespace AMESCoreStudio.Web.Controllers } public async Task PTD006DAsync(string sn) { - var result = await _pcsApi.DeleteZWHPickListDetail(sn); + var result = await _ptdApi.DeleteZWHPickListDetail(sn); if (result.Success) { return Json(new Result() { success = true, msg = "" }); @@ -653,7 +655,7 @@ namespace AMESCoreStudio.Web.Controllers } } - List RecordTypes = await _pcsApi.GetRecordTypeInfo(); + List RecordTypes = await _ptdApi.GetRecordTypeInfo(); var allRecordType = new[] { "101", "601", "631", "633", "951" }; var filtered = from o in RecordTypes where allRecordType.Contains(o.ID) @@ -679,7 +681,7 @@ namespace AMESCoreStudio.Web.Controllers if (recordNumber == null || recordNumber == "") return Json(new Table() { count = 0, data = null }); - var result = await _pcsApi.GetZDNDetailJoinZWHPickListDetail(recordType, recordNumber); + var result = await _ptdApi.GetZDNDetailJoinZWHPickListDetail(recordType, recordNumber); if (result.DataTotal > 0) { return Json(new Table() { code = 0, msg = "", data = result.Data, count = result.DataTotal }); @@ -690,7 +692,7 @@ namespace AMESCoreStudio.Web.Controllers [HttpPost] public async Task PTD007_Commit(string data) { - var result = await _pcsApi.PostPTD007Commit(data); + var result = await _ptdApi.PostPTD007Commit(data); //将数据Json化并传到前台视图 return Json(new { data = result }); } @@ -707,7 +709,7 @@ namespace AMESCoreStudio.Web.Controllers if (string.IsNullOrEmpty(recordNumber) || string.IsNullOrEmpty(lineNo) || string.IsNullOrEmpty(materialNo)) return Json(new Table() { count = 0, data = null }); - var result = await _pcsApi.GetData4PTD008(recordNumber, lineNo, materialNo, shippingSN); + var result = await _ptdApi.GetData4PTD008(recordNumber, lineNo, materialNo, shippingSN); if (result.DataTotal > 0) { return Json(new Table() { code = 0, msg = "", data = result.Data, count = result.DataTotal }); @@ -717,7 +719,7 @@ namespace AMESCoreStudio.Web.Controllers [HttpPost] public async Task PTD008_Commit(string data) { - var result = await _pcsApi.PostPTD008Commit(data); + var result = await _ptdApi.PostPTD008Commit(data); //将数据Json化并传到前台视图 return Json(new { data = result }); } diff --git a/AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs b/AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs index 44360d89..9e38ff25 100644 --- a/AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs +++ b/AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs @@ -1098,7 +1098,7 @@ namespace AMESCoreStudio.Web /// /// [WebApiClient.Attributes.HttpGet("api/WipClass/GetPassData4QRS010")] - ITask> GetPassData4QRS010(string lineDesc, string stationID, string wipNo); + ITask> GetPassData4QRS010(string lineDesc, string stationID, string wipNo , string dateStart = null, string dateEnd = null); #endregion @@ -1982,126 +1982,6 @@ namespace AMESCoreStudio.Web #endregion - [WebApiClient.Attributes.HttpGet("api/WipInfos/GetZDNDetail4PTD001")] - ITask> GetZDNDetail4PTD001(string dnNo, string lineNo); - [WebApiClient.Attributes.HttpGet("api/WipInfos/GetDNInfo4PTD001")] - ITask> GetDNInfo4PTD001(string dnNo, string lineNo); - - #region "PTD003 作業查詢" - [WebApiClient.Attributes.HttpGet("api/WipInfos/GetRecordTypes")] - ITask> GetRecordTypes(); - - [WebApiClient.Attributes.HttpGet("api/WipInfos/GetData4PTD003")] - ITask> GetData4PTD003(string recordType, string recordNumber, string lineNo, string materialNo, string shippingSN, string dateStart, string dateEnd, string RBU); - - [WebApiClient.Attributes.HttpGet("api/WipInfos/GetCustomer/{recordNumber}")] - ITask GetCustomer(string recordNumber); - #endregion - - #region "PTD004 單頭說明維護" - - [WebApiClient.Attributes.HttpGet("api/WipInfos/GetRecordTypeInfo")] - ITask> GetRecordTypeInfo(); - - /// - /// 根據ID獲取指定生產製程單位 - /// - /// - [WebApiClient.Attributes.HttpGet("api/WipInfos/GetRecordTypeInfo/{id}")] - ITask> GetRecordTypeInfo(string id); - - /// - /// 新增生產製程單位 - /// - /// - [WebApiClient.Attributes.HttpPost("api/WipInfos/PostRecordTypeInfo")] - ITask> PostRecordTypeInfo([FromBody, RawJsonContent] string model); - - /// - /// 更新生產製程單位 - /// - /// - [WebApiClient.Attributes.HttpPut("api/WipInfos/PutRecordTypeInfo/{id}")] - ITask> PutRecordTypeInfo(string id, [FromBody, RawJsonContent] string model); - - /// - /// 刪除生產製程單位 - /// - /// - [WebApiClient.Attributes.HttpDelete("api/WipInfos/DeleteRecordTypeInfo/{id}")] - ITask> DeleteRecordTypeInfo(string id); - - #endregion - - #region "PTD005 設定 ERP 客戶代號和客戶收件人名單" - - [WebApiClient.Attributes.HttpGet("api/WipInfos/GetCustomerItemMailGroup")] - ITask> GetCustomerItemMailGroup(); - - /// - /// 根據ID獲取指定客戶收件人名單 - /// - /// - [WebApiClient.Attributes.HttpGet("api/WipInfos/GetCustomerItemMailGroup/{id}")] - ITask> GetCustomerItemMailGroup(string id); - - /// - /// 新增客戶收件人名單 - /// - /// - [WebApiClient.Attributes.HttpPost("api/WipInfos/PostCustomerItemMailGroup")] - ITask> PostCustomerItemMailGroup([FromBody, RawJsonContent] string model); - - /// - /// 更新客戶收件人名單 - /// - /// - [WebApiClient.Attributes.HttpPut("api/WipInfos/PutCustomerItemMailGroup/{id}")] - ITask> PutCustomerItemMailGroup(string id, [FromBody, RawJsonContent] string model); - - /// - /// 刪除客戶收件人名單 - /// - /// - [WebApiClient.Attributes.HttpDelete("api/WipInfos/DeleteCustomerItemMailGroup/{id}")] - ITask> DeleteCustomerItemMailGroup(string id); - - #endregion - - #region "PTD002 PTD002 一段式入出庫作業" - [WebApiClient.Attributes.HttpPost("api/WipInfos/PostPTD002Commit")] - ITask> PostPTD002Commit([FromBody, RawJsonContent] string model); - - //[WebApiClient.Attributes.HttpGet("api/WipInfos/CheckShipQtyAsyn")] - //ITask> CheckShipQty(string recordNumber, string lineNo, int addQty); - - //[WebApiClient.Attributes.HttpGet("api/WipInfos/CheckFlowRulesAsyn")] - //ITask> CheckFlowRules(string recordType, string serialNumber); - #endregion - - #region "PTD006 備貨作業" - [WebApiClient.Attributes.HttpGet("api/WipInfos/GetZWHPickListDetail")] - ITask> GetZWHPickListDetail(string recordNumber, string LineNO); - - [WebApiClient.Attributes.HttpPost("api/WipInfos/PostPTD006Commit")] - ITask> PostPTD006Commit([FromBody, RawJsonContent] string model); - [WebApiClient.Attributes.HttpDelete("api/WipInfos/DeleteZWHPickListDetail/{sn}")] - ITask> DeleteZWHPickListDetail(string sn); - #endregion - - #region "PTD007 扣帳作業" - [WebApiClient.Attributes.HttpGet("api/WipInfos/GetZDNDetailJoinZWHPickListDetail")] - ITask> GetZDNDetailJoinZWHPickListDetail(string recordType, string recordNumber); - [WebApiClient.Attributes.HttpPost("api/WipInfos/PostPTD007Commit")] - ITask> PostPTD007Commit([FromBody, RawJsonContent] string model); - #endregion - - #region "PTD008 還原作業" - [WebApiClient.Attributes.HttpGet("api/WipInfos/GetData4PTD008")] - ITask> GetData4PTD008(string recordNumber, string lineNo, string materialNo, string shippingSN); - [WebApiClient.Attributes.HttpPost("api/WipInfos/PostPTD008Commit")] - ITask> PostPTD008Commit([FromBody, RawJsonContent] string model); - #endregion } } diff --git a/AMESCoreStudio.Web/HttpApis/AMES/IPTD.cs b/AMESCoreStudio.Web/HttpApis/AMES/IPTD.cs new file mode 100644 index 00000000..511d29e0 --- /dev/null +++ b/AMESCoreStudio.Web/HttpApis/AMES/IPTD.cs @@ -0,0 +1,180 @@ +using System.Collections.Generic; +using WebApiClient; +using WebApiClient.Attributes; +using AMESCoreStudio.WebApi; +using Microsoft.AspNetCore.Mvc; +using AMESCoreStudio.WebApi.Models.AMES; +using AMESCoreStudio.WebApi.Models.BAS; +using AMESCoreStudio.CommonTools.Result; +using AMESCoreStudio.WebApi.DTO.AMES; + +namespace AMESCoreStudio.Web +{ + [JsonReturn] + public interface IPTD : IHttpApi + { + [WebApiClient.Attributes.HttpGet("api/WipInfos/GetZDNDetail4PTD001")] + ITask> GetZDNDetail4PTD001(string dnNo, string lineNo); + + [WebApiClient.Attributes.HttpGet("api/WipInfos/GetDNInfo4PTD001")] + ITask> GetDNInfo4PTD001(string dnNo, string lineNo); + + /// + /// 查詢 RecoreType 指定 WI => WO 對應表 + /// + /// + /// + [WebApiClient.Attributes.HttpGet("api/PTD/PTD_FlowRulesById/{id}")] + ITask> GetPtdFlowRules(string id); + + /// + /// 查詢 RecordTypeInfo 維護資料表 + /// + /// + /// + [WebApiClient.Attributes.HttpGet("api/PTD/RecordTypeInfoById/{id}")] + ITask> GetRecordTypeInfoById(string id); + + /// + /// 查詢 ZSNInfo 主表 序號區間 + /// + /// + /// + [WebApiClient.Attributes.HttpGet("api/PTD/ZSNInfoByIntervalNumber")] + ITask> GetZSNInfoByIntervalNumber(string strNumber ,string endNumber); + + /// + /// 查詢 ZSNInfo 主表 By 指定序號 + /// + /// + /// + [WebApiClient.Attributes.HttpGet("api/PTD/ZSNInfoByNumber")] + ITask> GetZSNInfoByNumber(string number); + + /// + /// 查查詢 CustomerItemMailGroup By 客戶代號 + /// + /// + /// + [WebApiClient.Attributes.HttpGet("api/PTD/CustomerItemMailGroupByCustomerCode/{id}")] + ITask> GetCustomerItemMailGroupByCustomerCode(string id); + + #region "PTD003 作業查詢" + [WebApiClient.Attributes.HttpGet("api/WipInfos/GetRecordTypes")] + ITask> GetRecordTypes(); + + [WebApiClient.Attributes.HttpGet("api/WipInfos/GetData4PTD003")] + ITask> GetData4PTD003(string recordType, string recordNumber, string lineNo, string materialNo, string shippingSN, string dateStart, string dateEnd, string RBU); + + [WebApiClient.Attributes.HttpGet("api/WipInfos/GetCustomer/{recordNumber}")] + ITask GetCustomer(string recordNumber); + #endregion + + #region "PTD004 單頭說明維護" + + [WebApiClient.Attributes.HttpGet("api/WipInfos/GetRecordTypeInfo")] + ITask> GetRecordTypeInfo(); + + /// + /// 根據ID獲取指定生產製程單位 + /// + /// + [WebApiClient.Attributes.HttpGet("api/WipInfos/GetRecordTypeInfo/{id}")] + ITask> GetRecordTypeInfo(string id); + + /// + /// 新增生產製程單位 + /// + /// + [WebApiClient.Attributes.HttpPost("api/WipInfos/PostRecordTypeInfo")] + ITask> PostRecordTypeInfo([FromBody, RawJsonContent] string model); + + /// + /// 更新生產製程單位 + /// + /// + [WebApiClient.Attributes.HttpPut("api/WipInfos/PutRecordTypeInfo/{id}")] + ITask> PutRecordTypeInfo(string id, [FromBody, RawJsonContent] string model); + + /// + /// 刪除生產製程單位 + /// + /// + [WebApiClient.Attributes.HttpDelete("api/WipInfos/DeleteRecordTypeInfo/{id}")] + ITask> DeleteRecordTypeInfo(string id); + + #endregion + + #region "PTD005 設定 ERP 客戶代號和客戶收件人名單" + + [WebApiClient.Attributes.HttpGet("api/WipInfos/GetCustomerItemMailGroup")] + ITask> GetCustomerItemMailGroup(); + + /// + /// 根據ID獲取指定客戶收件人名單 + /// + /// + [WebApiClient.Attributes.HttpGet("api/WipInfos/GetCustomerItemMailGroup/{id}")] + ITask> GetCustomerItemMailGroup(string id); + + /// + /// 新增客戶收件人名單 + /// + /// + [WebApiClient.Attributes.HttpPost("api/WipInfos/PostCustomerItemMailGroup")] + ITask> PostCustomerItemMailGroup([FromBody, RawJsonContent] string model); + + /// + /// 更新客戶收件人名單 + /// + /// + [WebApiClient.Attributes.HttpPut("api/WipInfos/PutCustomerItemMailGroup/{id}")] + ITask> PutCustomerItemMailGroup(string id, [FromBody, RawJsonContent] string model); + + /// + /// 刪除客戶收件人名單 + /// + /// + [WebApiClient.Attributes.HttpDelete("api/WipInfos/DeleteCustomerItemMailGroup/{id}")] + ITask> DeleteCustomerItemMailGroup(string id); + + #endregion + + #region "PTD002 PTD002 一段式入出庫作業" + [WebApiClient.Attributes.HttpPost("api/WipInfos/PostPTD002Commit")] + ITask> PostPTD002Commit([FromBody, RawJsonContent] string model); + + //[WebApiClient.Attributes.HttpGet("api/WipInfos/CheckShipQtyAsyn")] + //ITask> CheckShipQty(string recordNumber, string lineNo, int addQty); + + //[WebApiClient.Attributes.HttpGet("api/WipInfos/CheckFlowRulesAsyn")] + //ITask> CheckFlowRules(string recordType, string serialNumber); + #endregion + + #region "PTD006 備貨作業" + [WebApiClient.Attributes.HttpGet("api/WipInfos/GetZWHPickListDetail")] + ITask> GetZWHPickListDetail(string recordNumber, string LineNO); + + [WebApiClient.Attributes.HttpPost("api/WipInfos/PostPTD006Commit")] + ITask> PostPTD006Commit([FromBody, RawJsonContent] string model); + + [WebApiClient.Attributes.HttpDelete("api/WipInfos/DeleteZWHPickListDetail/{sn}")] + ITask> DeleteZWHPickListDetail(string sn); + #endregion + + #region "PTD007 扣帳作業" + [WebApiClient.Attributes.HttpGet("api/WipInfos/GetZDNDetailJoinZWHPickListDetail")] + ITask> GetZDNDetailJoinZWHPickListDetail(string recordType, string recordNumber); + [WebApiClient.Attributes.HttpPost("api/WipInfos/PostPTD007Commit")] + ITask> PostPTD007Commit([FromBody, RawJsonContent] string model); + #endregion + + #region "PTD008 還原作業" + [WebApiClient.Attributes.HttpGet("api/WipInfos/GetData4PTD008")] + ITask> GetData4PTD008(string recordNumber, string lineNo, string materialNo, string shippingSN); + [WebApiClient.Attributes.HttpPost("api/WipInfos/PostPTD008Commit")] + ITask> PostPTD008Commit([FromBody, RawJsonContent] string model); + #endregion + + } +} diff --git a/AMESCoreStudio.Web/Views/PTD/PTD006.cshtml b/AMESCoreStudio.Web/Views/PTD/PTD006.cshtml index 2c96c1fa..c6e0c4ff 100644 --- a/AMESCoreStudio.Web/Views/PTD/PTD006.cshtml +++ b/AMESCoreStudio.Web/Views/PTD/PTD006.cshtml @@ -43,7 +43,7 @@
-
+
+ +
+ +
@@ -289,6 +293,7 @@ getItemDesc(document.getElementById('PartNumber').value); } }); + $('#frontSN').on('keypress', function (event) { if (event.keyCode == 13) { var endSN = document.getElementById('endSN'); @@ -355,6 +360,36 @@ } }); + $('#StockQty').on('keypress', function (event) { + if (event.keyCode == 13 && document.getElementById('pcs').checked && !document.getElementById('PCSUnit').checked) { + var recordType = document.getElementById('recordType'); + var frontSN = document.getElementById('frontSN'); + var StockQty = document.getElementById('StockQty'); + var dnNo = document.getElementById('recordNumber'); + var lineNo = document.getElementById('lineNo'); + var material = document.getElementById('PartNumber'); + + var prefixCode = frontSN.value.slice(0, -5); + var currentSN = parseInt(frontSN.value.slice(-5)); + + for (var i = 1; i <= parseInt(StockQty.value); i++) { + var newRowData = { + recordType: recordType.value, + dnNo: dnNo.value, + lineNo: lineNo.value, + material: material.value, + sn: prefixCode + currentSN.toString().padStart(5, "0") + }; + // Add the new row data to the table + addRow('query', newRowData); + currentSN++; + } + + frontSN.focus(); + frontSN.select(); + } + }); + $('#SNData').on('keypress', function (event) { if (event.keyCode == 13) { var recordType = document.getElementById('recordType'); @@ -387,6 +422,7 @@ event.preventDefault(); } }); + $('#delAll').on('click', function () { hg.confirm("請確認是否整批刪除?", function () { var tableData = layui.table.cache['query']; diff --git a/AMESCoreStudio.WebApi/Controllers/PTD/PTDController.cs b/AMESCoreStudio.WebApi/Controllers/PTD/PTDController.cs new file mode 100644 index 00000000..825bceb9 --- /dev/null +++ b/AMESCoreStudio.WebApi/Controllers/PTD/PTDController.cs @@ -0,0 +1,225 @@ +using AMESCoreStudio.CommonTools.Result; +using AMESCoreStudio.WebApi.Models.BAS; +using Microsoft.AspNetCore.Mvc; +using Microsoft.EntityFrameworkCore; +using System.Threading.Tasks; +using System; +using System.Net.Mail; +using Microsoft.Extensions.Configuration; +using System.Net; +using System.Linq; +using System.Text.RegularExpressions; +using System.IO; +using Dapper; +using AMESCoreStudio.WebApi.Extensions; +using AMESCoreStudio.WebApi.Models.AMES; +using System.Data; +using System.Collections.Generic; +using System.Data.SqlClient; +using Microsoft.Extensions.Options; +using static Microsoft.EntityFrameworkCore.DbLoggerCategory.Database; + +namespace AMESCoreStudio.WebApi.Controllers.PTD +{ + /// + /// TestLog 測試Log + /// + [Route("api/[controller]")] + [ApiController] + public class PTDController : Controller + { + private readonly AMESContext _context; + private readonly IConfiguration _config; + private readonly string _PTDContext; + + /// + /// 建構式 + /// + /// + public PTDController(AMESContext context, IConfiguration config) + { + _config = config; + _context = context; + _PTDContext = _config.GetConnectionString("PTDContext"); + } + + #region PTDFlowRules 指定流程 + + /// + /// 查詢 PTDFlowRules 指定流程 + /// + /// RecoreType + /// + [HttpGet("PTD_FlowRulesById/{id}")] + public async Task> GetPtdFlowRules(string id) + { + using (IDbConnection ptdConnection = new SqlConnection(_PTDContext)) + { + if (ptdConnection.State != ConnectionState.Open) + { + ptdConnection.Open(); + } + var query = @$" SELECT * FROM SFIS_PTD.dbo.PTDFlowRules WHERE FORMID=@id"; + DynamicParameters p = new DynamicParameters(); + p.Add("id", id, DbType.String); + var q = await ptdConnection.QueryAsync(query, p); + return q.ToList(); + } + } + + #endregion + + #region RecordTypeInfo RecoreType 資料維護 + + /// + /// 查詢 RecoreType 資料維護 + /// + /// RecoreType + /// + [HttpGet("RecordTypeInfoById/{id}")] + public async Task> GetRecordTypeInfoById(string id) + { + using (IDbConnection ptdConnection = new SqlConnection(_PTDContext)) + { + if (ptdConnection.State != ConnectionState.Open) + { + ptdConnection.Open(); + } + var query = @$" SELECT * FROM SFIS_PTD.dbo.RecordTypeInfo WHERE ID=@id"; + DynamicParameters p = new DynamicParameters(); + p.Add("id", id, DbType.String); + var q = await ptdConnection.QueryAsync(query, p); + return q.ToList(); + } + } + + #endregion + + #region ZSNInfo 主表 + + /// + /// 查詢 PTD ZSNInfo 主表 序號區間 + /// + /// 條碼區間起 + /// 條碼區間訖 + /// + [HttpGet("ZSNInfoByIntervalNumber")] + public async Task> GetZSNInfoByIntervalNumber(string strNumber , string endNumber) + { + using (IDbConnection ptdConnection = new SqlConnection(_PTDContext)) + { + if (ptdConnection.State != ConnectionState.Open) + { + ptdConnection.Open(); + } + var query = @$" SELECT * FROM SFIS_PTD.dbo.ZSNInfo + WHERE SerialNumber BETWEEN @strNumber AND @endNumber + AND LEN(SerialNumber) = LEN(@strNumber) "; + DynamicParameters p = new DynamicParameters(); + p.Add("strNumber", strNumber); + p.Add("endNuber", endNumber); + var q = await ptdConnection.QueryAsync(query, p); + return q.ToList(); + } + } + + /// + /// 查詢 PTD ZSNInfo 主表 指定序號 + /// + /// 指定序號 + /// + [HttpGet("ZSNInfoByNumber")] + public async Task> GetZSNInfoByNumber(string number) + { + using (IDbConnection ptdConnection = new SqlConnection(_PTDContext)) + { + if (ptdConnection.State != ConnectionState.Open) + { + ptdConnection.Open(); + } + var query = @$" SELECT * FROM SFIS_PTD.dbo.ZSNInfo + WHERE SerialNumber = @number "; + DynamicParameters p = new DynamicParameters(); + p.Add("number", number); + var q = await ptdConnection.QueryAsync(query, p); + return q.ToList(); + } + } + + #endregion + + #region CustomerItemMailGroup 客戶代號維護Mail群組 + + /// + /// 查詢 CustomerItemMailGroup By 客戶代號 + /// + /// RecoreType + /// + [HttpGet("CustomerItemMailGroupByCustomerCode/{id}")] + public async Task> GetCustomerItemMailGroup(string id) + { + using (IDbConnection ptdConnection = new SqlConnection(_PTDContext)) + { + if (ptdConnection.State != ConnectionState.Open) + { + ptdConnection.Open(); + } + var query = @$" SELECT * FROM SFIS_PTD.dbo.CustomerItemMailGroup + WHERE CustomerCode=@id"; + DynamicParameters p = new DynamicParameters(); + p.Add("id", id, DbType.String); + var q = await ptdConnection.QueryAsync(query, p); + return q.ToList(); + } + } + + #endregion + + ///// + ///// 查詢 是否有掃毒資料 + ///// + ///// 工單號碼 + ///// + //[HttpGet("AcnvirusLog/{id}")] + //public async Task> GetSacnvirus(string id) + //{ + // var context = _config.GetConnectionString("TestLogConnection"); + // using (IDbConnection _TestLog_context = new SqlConnection(context)) + // { + // if (_TestLog_context.State != ConnectionState.Open) + // { + // _TestLog_context.Open(); + // } + // var query = @$" SELECT * FROM iFactory.PE.Sacnvirus_Table_View WHERE WIP=@id"; + // DynamicParameters p = new DynamicParameters(); + // p.Add("id", id, DbType.String); + // var q = await _TestLog_context.QueryAsync(query, p); + // return q.ToList(); + // } + //} + + ///// + ///// 查詢 是否有包裝秤重 + ///// + ///// 出貨序號 + ///// + //[HttpGet("PackingWeigh/{id}")] + //public async Task> GetPackingWeighing(string id) + //{ + // var context = _config.GetConnectionString("TestLogConnection"); + // using (IDbConnection _TestLog_context = new SqlConnection(context)) + // { + // if (_TestLog_context.State != ConnectionState.Open) + // { + // _TestLog_context.Open(); + // } + // var query = @$" SELECT * FROM TestAutomate.dbo.Packing_Weighing_View + // WHERE SN =@Sn "; + // DynamicParameters p = new DynamicParameters(); + // p.Add("Sn", id, DbType.String); + // var q = await _TestLog_context.QueryAsync(query, p); + // return q.ToList(); + // } + //} + } +}