diff --git a/AMESCoreStudio.Web/Controllers/PCSController.cs b/AMESCoreStudio.Web/Controllers/PCSController.cs index b6734f33..2197dc16 100644 --- a/AMESCoreStudio.Web/Controllers/PCSController.cs +++ b/AMESCoreStudio.Web/Controllers/PCSController.cs @@ -50,7 +50,7 @@ namespace AMESCoreStudio.Web.Controllers /// </summary> /// <param name="model"></param> /// <returns></returns> - public string CheckWipInfoInsert(WipViewModel model) + public string CheckWipInfoInsert(WipDataViewModel model) { string Msg = string.Empty; @@ -601,7 +601,7 @@ namespace AMESCoreStudio.Web.Controllers var PartsBakeType = new List<SelectListItem>(){ new SelectListItem() { Text = "125℃", - Value = "123", + Value = "125", }, new SelectListItem { @@ -821,6 +821,10 @@ namespace AMESCoreStudio.Web.Controllers #endregion #region CheckboxList + /// <summary> + /// 列印方式 + /// </summary> + /// <param name="SelectedValue"></param> private void GetCheckboxPrintMode(string SelectedValue = null) { @@ -841,6 +845,10 @@ namespace AMESCoreStudio.Web.Controllers ViewBag.GetCheckboxPrintMode = q; } + /// <summary> + /// 認證Logo + /// </summary> + /// <param name="SelectedValue"></param> private void GetCheckboxApproveLogo(string SelectedValue = null) { List<string> values = new List<string>(); @@ -859,6 +867,10 @@ namespace AMESCoreStudio.Web.Controllers ViewBag.GetCheckboxApproveLogo = q; } + /// <summary> + /// 公司Logo + /// </summary> + /// <param name="SelectedValue"></param> private void GetCheckboxCompanyLogo(string SelectedValue = null) { List<string> values = new List<string>(); @@ -914,7 +926,7 @@ namespace AMESCoreStudio.Web.Controllers #region PCS001 工單資料維護 - public async Task<IActionResult> PCS001(WipViewModel model = null) + public async Task<IActionResult> PCS001(WipDataViewModel model = null) { //await GetUnitList(); await GetProductType(); @@ -948,7 +960,7 @@ namespace AMESCoreStudio.Web.Controllers //頁面提交,id=0 添加,id>0 修改 [HttpPost] - public async Task<IActionResult> PCS001Async(WipViewModel model, IFormFile formFile) + public async Task<IActionResult> PCS001Async(WipDataViewModel model, IFormFile formFile) { #region 選單 await GetProductType(); @@ -2303,7 +2315,7 @@ namespace AMESCoreStudio.Web.Controllers } - + #region 判斷下一站為完工站 var NextStopCloseStation = await _pcsApi.CheckNextStopCloseStation(model.WipNO, model.UnitNO, model.Station); @@ -2554,7 +2566,7 @@ namespace AMESCoreStudio.Web.Controllers // 確認完工數是否等於工單數 await _pcsApi.CheckWipNoBarCodeAllClost(model.WipNO, model.UnitNO, model.RuleStation); } - + return Json(new Result() { success = Success, msg = Msg, data = Data }); } #endregion @@ -3101,9 +3113,22 @@ namespace AMESCoreStudio.Web.Controllers } #endregion + public async Task<IActionResult> PCS999() + { + return View(); + } + //頁面提交,id=0 添加,id>0 修改 + [HttpPost] + public async Task<IActionResult> PCS999Async(MaterialKpDtos model) + { + var aa = "string"; + return View(model); + } } + + public static class ObjectExtension { public static T GetAttributeFrom<T>(this object instance, string propertyName) where T : Attribute diff --git a/AMESCoreStudio.Web/ViewModels/WipViewModel.cs b/AMESCoreStudio.Web/ViewModels/PCS/WipViewModel.cs similarity index 60% rename from AMESCoreStudio.Web/ViewModels/WipViewModel.cs rename to AMESCoreStudio.Web/ViewModels/PCS/WipViewModel.cs index 04f6eec1..6696be7d 100644 --- a/AMESCoreStudio.Web/ViewModels/WipViewModel.cs +++ b/AMESCoreStudio.Web/ViewModels/PCS/WipViewModel.cs @@ -4,10 +4,11 @@ using System.Linq; using System.Threading.Tasks; using AMESCoreStudio.WebApi.Models.AMES; using AMESCoreStudio.WebApi.Models.BAS; +using AMESCoreStudio.WebApi.DTO.AMES; -namespace AMESCoreStudio.Web.ViewModels +namespace AMESCoreStudio.Web.ViewModels.PCS { - public class WipViewModel + public class WipDataViewModel { /// <summary> @@ -36,16 +37,32 @@ namespace AMESCoreStudio.Web.ViewModels /// </summary> public WipSystem wipSystem { get; set; } - public LineInfo lineInfo { get; set; } + public IEnumerable<WipBarcode> wipBarcodes { get; set; } - public FactoryUnit factoryUnit { get; set; } + public IEnumerable<RuleStation> ruleStations { get; set; } + public IEnumerable<MaterialSopDto> materialSops { get; set; } + + public IEnumerable<MaterialKpDto> materialKps { get; set; } + + /// <summary> + /// + /// </summary> public WipSop wipSop { get; set; } + /// <summary> + /// 標籤 + /// </summary> public WipLabel wipLabel { get; set; } + /// <summary> + /// MAC + /// </summary> public WipMAC wipMAC { get; set; } + /// <summary> + /// 條碼區間設定 + /// </summary> public WipBarcodeOther wipBarcodeOther { get; set; } diff --git a/AMESCoreStudio.Web/Views/PCS/PCB001.cshtml b/AMESCoreStudio.Web/Views/PCS/PCB001.cshtml deleted file mode 100644 index 81be359d..00000000 --- a/AMESCoreStudio.Web/Views/PCS/PCB001.cshtml +++ /dev/null @@ -1,13 +0,0 @@ -@model AMESCoreStudio.WebApi.Models.AMES.ProductType -@{ - ViewData["Title"] = "系統資料管理"; - Layout = "~/Views/Shared/_AMESLayout.cshtml"; -} - -<h1>PCB001</h1> -<div class="form-group form-inline my-sm-1"> - <label asp-for="ProductTypeName" class="control-label col-sm-3"></label> - <select asp-for="ProductTypeName" asp-items="@ViewBag.ProductTypesList" class="custom-select col-sm-9"></select> - <span asp-validation-for="ProductTypeName" class="text-danger offset-sm-3 my-sm-1"></span> -</div> - diff --git a/AMESCoreStudio.Web/Views/PCS/PCS001.cshtml b/AMESCoreStudio.Web/Views/PCS/PCS001.cshtml index 88d9b9fa..43f92039 100644 --- a/AMESCoreStudio.Web/Views/PCS/PCS001.cshtml +++ b/AMESCoreStudio.Web/Views/PCS/PCS001.cshtml @@ -1,4 +1,4 @@ -@model AMESCoreStudio.Web.ViewModels.WipViewModel +@model AMESCoreStudio.Web.ViewModels.PCS.WipDataViewModel @{ ViewData["Title"] = "PCS001C"; @@ -222,7 +222,7 @@ </div> @* 生產流程sheet *@ - <div class="layui-tab-item"> + <div class="layui-tab-item" style="padding-left:30px"> <div class="layui-form-item"> <div class="layui-inline"> <label asp-for="wipInfo.FlowRuleID" class="layui-form-label"></label> @@ -742,7 +742,6 @@ <label class="layui-form-label">公司LOGO</label> <div class="layui-input-block"> <cl-radio asp-items="@ViewBag.GetCheckboxCompanyLogo" asp-for="wipLabel.CompanyLogo"></cl-radio> - </div> </div> <div class="layui-form-item"> @@ -1074,7 +1073,7 @@ } }] ]; - var tablesop = hg.table.datatable('wipsop', 'SOP文件查詢維護', '/PCS/PCS030Query?itemNo=' + item, {}, tableCols, false, 'full-100'); + var tablesop = hg.table.datatable('wipsop', 'SOP文件查詢維護', '/PCS/PCS030Query?itemNo=' + item, {}, tableCols, '',false, 'full-100'); hg.msghide("重新載入資料.."); tablesop; }); diff --git a/AMESCoreStudio.Web/Views/PCS/PCS999.cshtml b/AMESCoreStudio.Web/Views/PCS/PCS999.cshtml new file mode 100644 index 00000000..e95d03f1 --- /dev/null +++ b/AMESCoreStudio.Web/Views/PCS/PCS999.cshtml @@ -0,0 +1,73 @@ +@model AMESCoreStudio.WebApi.DTO.AMES.MaterialKpDtos +@{ + ViewData["Title"] = "系統資料管理"; + Layout = "~/Views/Shared/_AMESLayout.cshtml"; +} + +<div class="layui-card"> + <div class="col-sm-12"> + <form enctype="multipart/form-data" method="post" asp-action="PCS999" id="PCS999Form" class="layui-form"> + <div class="layui-form-item"> + <div style="text-align:center"> + <input type="submit" value="保存" class="layui-btn" /> + </div> + <input type="checkbox" checked="" name="open" lay-skin="switch" lay-filter="switchTest" lay-text="ON|OFF"> + <input type="checkbox" title="写作" name="MaterialKpDtos[' + key + '].kpSeq" lay-skin="primary" checked=""> + </div> + <div class="layui-form-item" style="padding-left:30px"> + <a class="layui-btn layui-btn-normal layui-btn-xs layui-icon layui-icon-read" onclick="input();">刷新</a> + <table id="tblCustomers" class="layui-table" cellpadding="0" cellspacing="0"> + <tbody id="tblCustomersBody"> + </tbody> + </table> + </div> + </form> + </div> +</div> + +@section Scripts{ + @{ await Html.RenderPartialAsync("_ValidationScriptsPartial"); + await Html.RenderPartialAsync("_FileinputScriptsPartial"); } + <script type="text/javascript"> + layui.use(['form', 'laydate'], function () { + var form = layui.form; + }); + + function input() { + //var Inputs = GetAllEmpData(); + //var data = $("#PCS999Form").serialize(); + //$.each(Inputs, function (i, item) { + // data += "&Inputs[" + i + "]=" + item; + //}); + $.ajax({ + url: "@Url.Action("MaterialKpQuery", "PCS")", + type: "POST", + async: false, + data: { 'itemNo': 'JH168-AT-X'}, + success: function (result) { + var html = ''; + $.each(result.data, function (key, item) { + html += '<tr>'; + html += '<td>'+key+ ','+ item.materialKpID + '</td>'; + html += '<td><input type="hidden" name="MaterialKpDtos[' + key + '].kpName" value=' + item.itemName+'>' + item.itemName + '</td>'; + html += '<td>' + item.kpName + '</td>'; + html += '<td>' + item.kpNo + '</td>'; + html += '<td><input type="checkbox" name="MaterialKpDtos[' + key + '].Title" lay-skin="primary" checked=""></td>'; + html += '</tr>'; + }); + $("#tblCustomers").html(html); + //$('#tblCustomers').append(html); + } + }); + xuanran(); + }; + + function xuanran() { + alert("OK"); + layui.use(['form', 'laydate'], function () { + var form = layui.form; + form.render(); + }); + } + </script> +} diff --git a/AMESCoreStudio.WebApi/DTO/AMES/MaterialKpDto.cs b/AMESCoreStudio.WebApi/DTO/AMES/MaterialKpDto.cs index 21365780..dbb0ecaf 100644 --- a/AMESCoreStudio.WebApi/DTO/AMES/MaterialKpDto.cs +++ b/AMESCoreStudio.WebApi/DTO/AMES/MaterialKpDto.cs @@ -5,6 +5,11 @@ using System.Threading.Tasks; namespace AMESCoreStudio.WebApi.DTO.AMES { + public class MaterialKpDtos + { + public List<MaterialKpDto> materialKpDtos { get; set; } + } + /// <summary> /// MaterialKpDtp Select Dto /// </summary> @@ -19,13 +24,13 @@ namespace AMESCoreStudio.WebApi.DTO.AMES /// <summary> /// 料號Name /// </summary> - + public string ItemName { get; set; } /// <summary> /// KP料號名稱 /// </summary> - + public string KpName { get; set; } /// <summary> @@ -43,7 +48,7 @@ namespace AMESCoreStudio.WebApi.DTO.AMES /// <summary> /// 前置碼 /// </summary> - + public string Title { get; set; } /// <summary>