Browse Source

1. 工單資訊-板卡增加欄位

2. FQC查詢-外包查詢修正
3. 生產進度表查詢UI畫面調整
4. 工單資料-修改 調整 測試備註為空時,將工單描述資料補進去 
           委外廠編號直接抓委外廠的代碼
PTD
Ray 2 years ago
parent
commit
bd8aadfd0f
  1. 1239
      AMESCoreStudio.Web/Controllers/PCSController.cs
  2. 28
      AMESCoreStudio.Web/Views/FQC/FQC008.cshtml
  3. 40
      AMESCoreStudio.Web/Views/PCS/PCS001R.cshtml
  4. 41
      AMESCoreStudio.Web/Views/PCS/PCS003.cshtml
  5. 164
      AMESCoreStudio.Web/Views/PCS/PCS034.cshtml
  6. 20
      AMESCoreStudio.Web/Views/QRS/QRS011.cshtml
  7. 29
      AMESCoreStudio.WebApi/Controllers/AMES/WipInfosController.cs
  8. 8
      AMESCoreStudio.WebApi/Models/AMES/WipBoard.cs

1239
AMESCoreStudio.Web/Controllers/PCSController.cs

File diff suppressed because it is too large

28
AMESCoreStudio.Web/Views/FQC/FQC008.cshtml

@ -47,11 +47,14 @@
<div class="layui-inline">
<label class="layui-form-label">委外廠商:</label>
<div class="layui-input-inline" style="width:140px">
<select id="factory" lay-filter="factory" name="factory" asp-items="@ViewBag.FactoryInfoList" class="">
<select id="factoryID" lay-filter="factory" name="factoryID" asp-items="@ViewBag.FactoryInfoList" class="">
@if (ViewBag.UserFactory == null)
{
<option value="">全部</option>
}
</select>
</div>
<input id="factoryID" type="hidden" name="factoryID" value="" />
@* <input id="factoryID" type="hidden" name="factoryID" />*@
<input id="factoryNo" type="hidden" name="factoryNo" value="@ViewBag.UserFactory" />
</div>
</div>
@ -135,7 +138,6 @@
@section Scripts{
<script type="text/javascript">
layui.use(['form', 'layer', 'laydate', 'table'], function () {
var table1 = layui.table;
form = layui.form;
laydate = layui.laydate;
laydate.render({
@ -153,7 +155,7 @@
});
form.on('select(factory)', function (data) {
$("#factoryID").val(data.value);
//$("#factoryID").val(data.value);
//roleName = data.elem[data.elem.selectedIndex].text;
var qs = $('button[lay-filter="querysubmit"]');
qs.click();
@ -168,9 +170,7 @@
//$("#status").val(data.value);
var qs = $('button[lay-filter="querysubmit"]');
qs.click();
});
});
//监听表单提交事件
@ -260,11 +260,12 @@
//var param = barcodeNo.value + '_' + wipNo.value + '_' + boxNo.value + '_' + inhouseNo.value + '_' + dateStr.value + '_' + dateEnd.value + '_' + $("#status").val() + '_' + factoryID.value + '_' + factoryNo.value;
var param = barcodeNo.value + '_' + wipNo.value + '_' + boxNo.value + '_' + inhouseNo.value + '_' + dateStr.value + '_' + dateEnd.value + '_' + statusNo.value + '_' + factoryID.value + '_' + factoryNo.value;
//$("#factoryID").val($("#factory").val());
//console.log($("#factoryID").val());
//alert(param);
//基本数据表格
//var table = hg.table.datatable('query', 'FQC查詢', '/FQC/FQC008Query2/' + param, {}, tableCols, '', true, 'full-100', ['filter', 'print', 'exports']);
var table = hg.table.datatable('query', 'FQC查詢', '/FQC/FQC008Query2', {}, tableCols, '', true, 'full-100', ['filter', 'print', 'exports']);
var table = hg.table.datatable('query', 'FQC查詢', '/FQC/FQC008Query2', { factoryID: $("#factoryID").val() }, tableCols, '', true, 'full-100', ['filter', 'print', 'exports']);
//通过行tool编辑,lay-event="edit"
function edit(obj) {
@ -292,17 +293,6 @@
}
}
//alert("1" + barcodeNo.value);
//alert("2" + wipNo.value);
//alert("3" + boxNo.value);
//alert("4" + inhouseNo.value);
//alert("5" + dateStr.value);
//alert("6" + dateEnd.value);
//alert("7" + $("#status").val());
//alert("8" + factoryID.value);
//alert("9" + factoryNo.value);
</script>
<script type="text/html" id="statusName">

40
AMESCoreStudio.Web/Views/PCS/PCS001R.cshtml

@ -474,9 +474,6 @@
<input @if (Model.wipBoard != null) { @(Model.wipBoard.DipCarrier == "Y" ? "checked" : "") } type="checkbox" title="CARRIER" name="wipBoard.DipCarrier" />
<input @if (Model.wipBoard != null) { @(Model.wipBoard.DipTape == "Y" ? "checked" : "") } type="checkbox" title="貼付膠帶" name="wipBoard.DipTape" />
<input @if (Model.wipBoard != null) { @(Model.wipBoard.DipSolderMask == "Y" ? "checked" : "") } type="checkbox" title="點防焊膠" name="wipBoard.SmdSolderMask" />
@*<input asp-for="wipBoard.DipCarrier" type="checkbox" title="CARRIER" />
<input asp-for="wipBoard.DipTape" type="checkbox" title="貼付膠帶" />
<input asp-for="wipBoard.SmdSolderMask" type="checkbox" title="點防焊膠" />*@
</div>
</div>
</div>
@ -492,17 +489,16 @@
<div class="layui-inline">
<label class="layui-form-label">燒錄</label>
<div class="layui-input-inline">
<input @if (Model.wipBoard != null) { @(Model.wipBoard.Burn == "Y" ? "checked" : "") } type="checkbox" title="是否燒入" name="wipBoard.Burn" />
@*<input asp-for="wipBoard.Burn" type="checkbox" title="是否燒入" />*@
<input @if (Model.wipBoard != null) {
@(Model.wipBoard.Burn == "Y" ? "checked" : "")
} type="checkbox" title="是否燒入" name="wipBoard.Burn" />
</div>
<label class="layui-form-label">燒機位置</label>
<div class="layui-input-inline">
<label asp-for="wipBoard.BurnLocation" class="layui-form-label"></label>
<div class="layui-input-block">
<input asp-for="wipBoard.BurnLocation" class="layui-input" />
</div>
</div>
</div>
</div>
<div class="layui-form-item">
@ -514,19 +510,26 @@
<div class="layui-form-item">
<div class="layui-inline">
<input @if (Model.wipBoard != null) { @(Model.wipBoard.ISPartsBake == "Y" ? "checked" : "") } type="checkbox" title="零件是否需要烘烤" name="wipBoard.ISPartsBake" />
<label class="layui-form-label">零件烘烤</label>
<div class="layui-input-inline">
<input @if (Model.wipBoard != null) {
@(Model.wipBoard.ISPartsBake == "Y" ? "checked" : "")
} type="checkbox" title="零件是否需要烘烤" name="wipBoard.ISPartsBake" />
</div>
<div class="layui-inline">
<label class="layui-form-label">零件烘烤溫度</label>
<div class="layui-input-inline">
<div class="layui-input-inline" style="width:100px">
<select disabled asp-items="@ViewBag.GetPartsBakeTypeList" asp-for="wipBoard.PartsBake" class=""></select>
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label">零件烘烤時間</label>
<div class="layui-input-block">
<div class="layui-input-inline" style="width:100px">
<input asp-for="wipBoard.PartsBakeTime" class="layui-input" />
<span asp-validation-for="wipBoard.PartsBakeTime" class="layui-bg-red"></span>
</div>
<div class="layui-input-inline">
<input @if (Model.wipBoard != null) {
@(Model.wipBoard.PartsBakeOvertime == "Y" ? "checked" : "")
} type="checkbox" title="零件烘烤超過48hrs" name="wipBoard.PartsBakeOvertime" />
</div>
</div>
</div>
@ -541,6 +544,11 @@
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">PCB烘烤</label>
<div class="layui-input-inline">
<input @if (Model.wipBoard != null) {
@(Model.wipBoard.ISPcbBake == "Y" ? "checked" : "")
} type="checkbox" title="PCB是否需要烘烤" name="wipBoard.ISPcbBake" />
</div>
<div class="layui-input-inline">
<select disabled asp-items="@ViewBag.GetPCBBakeTypeSelect" asp-for="wipBoard.PcbBake" class=""></select>
</div>

41
AMESCoreStudio.Web/Views/PCS/PCS003.cshtml

@ -27,7 +27,7 @@
<input asp-for="wipInfo.WipID" type="hidden" value="@Model.wipInfo.WipID" />
<input asp-for="wipInfo.WipNO" type="hidden" value="@Model.wipInfo.WipNO" />
<input asp-for="wipAtt.ItemNO" type="hidden" value="@Model.wipAtt.ItemNO" />
@*<input asp-for="wipInfo.FlowRuleID" type="hidden" value="@Model.wipInfo.FlowRuleID" />*@
<input asp-for="wipInfo.WipType" type="hidden" value="@Model.wipInfo.WipType" />
<input asp-for="wipBarcodeOther.OtherID" type="hidden" value="@if(Model.wipBarcodeOther != null){
@Model.wipBarcodeOther.OtherID
}" />
@ -500,10 +500,7 @@
} type="checkbox" title="貼付膠帶" name="wipBoard.DipTape" />
<input @if (Model.wipBoard != null) {
@(Model.wipBoard.DipSolderMask == "Y" ? "checked" : "")
} type="checkbox" title="點防焊膠" name="wipBoard.SmdSolderMask" />
@*<input asp-for="wipBoard.DipCarrier" type="checkbox" title="CARRIER" />
<input asp-for="wipBoard.DipTape" type="checkbox" title="貼付膠帶" />
<input asp-for="wipBoard.SmdSolderMask" type="checkbox" title="點防焊膠" />*@
} type="checkbox" title="點防焊膠" name="wipBoard.DipSolderMask" />
</div>
</div>
</div>
@ -522,16 +519,13 @@
<input @if (Model.wipBoard != null) {
@(Model.wipBoard.Burn == "Y" ? "checked" : "")
} type="checkbox" title="是否燒入" name="wipBoard.Burn" />
@*<input asp-for="wipBoard.Burn" type="checkbox" title="是否燒入" />*@
</div>
<label class="layui-form-label">燒機位置</label>
<div class="layui-input-inline">
<label asp-for="wipBoard.BurnLocation" class="layui-form-label"></label>
<div class="layui-input-block">
<input asp-for="wipBoard.BurnLocation" class="layui-input" />
</div>
</div>
</div>
</div>
<div class="layui-form-item">
@ -543,21 +537,27 @@
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">零件烘烤</label>
<div class="layui-input-inline">
<input @if (Model.wipBoard != null) {
@(Model.wipBoard.ISPartsBake == "Y" ? "checked" : "")
} type="checkbox" title="零件是否需要烘烤" name="wipBoard.ISPartsBake" />
</div>
<div class="layui-inline">
<label class="layui-form-label">零件烘烤溫度</label>
<div class="layui-input-inline">
<div class="layui-input-inline" style="width:100px">
<select asp-items="@ViewBag.GetPartsBakeTypeList" asp-for="wipBoard.PartsBake" class=""></select>
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label">零件烘烤時間</label>
<div class="layui-input-block">
<div class="layui-input-inline" style="width:100px">
<input asp-for="wipBoard.PartsBakeTime" class="layui-input" />
</div>
<div class="layui-input-inline">
<input @if (Model.wipBoard != null) {
@(Model.wipBoard.PartsBakeOvertime == "Y" ? "checked" : "")
} type="checkbox" title="零件烘烤超過48hrs" name="wipBoard.PartsBakeOvertime" />
</div>
</div>
</div>
@ -571,6 +571,11 @@
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">PCB烘烤</label>
<div class="layui-input-inline">
<input @if (Model.wipBoard != null) {
@(Model.wipBoard.ISPcbBake == "Y" ? "checked" : "")
} type="checkbox" title="PCB是否需要烘烤" name="wipBoard.ISPcbBake" />
</div>
<div class="layui-input-inline">
<select asp-items="@ViewBag.GetPCBBakeTypeSelect" asp-for="wipBoard.PcbBake" class=""></select>
</div>
@ -587,7 +592,7 @@
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label" asp-for="wipBoard.SolderPaste"></label>
<div class="layui-input-block">
<div class="layui-input-inline" style="width:500px;">
<select asp-items="@ViewBag.GetSolderPasteSelect" asp-for="wipBoard.SolderPaste"></select>
</div>
</div>
@ -1116,8 +1121,6 @@
<label class="layui-form-label" asp-for="wipInfoBlob.ImageName">檔案</label>
<label class="layui-btn">
<input type="file" name="formFile">
@*<i class="layui-icon">&#xe67c;</i>上傳文件*@
</label>
<input type="hidden" asp-for="wipInfoBlob.ImageName">
</div>
@ -1441,7 +1444,6 @@
data: { "itemno": $("#wipAtt_ItemNO").val(), "unit_no": $("#wipInfo_UnitNO").val() },
type: 'post',
success: function (result) {
console.info(result.data);
$("#wipInfo_FlowRuleID").empty();//清空下拉框的值
$.each(result.data, function (index, item) {
$("#wipInfo_FlowRuleID").append($("<option>").text(item.text).val(item.value))
@ -1464,7 +1466,6 @@
data: { "unit_no": $("#wipInfo_UnitNO").val() },
type: 'post',
success: function (result) {
console.info(result.data);
var value = $("#wipInfo_LineID").val();
$("#wipInfo_LineID").empty();//清空下拉框的值
$.each(result.data, function (index, item) {

164
AMESCoreStudio.Web/Views/PCS/PCS034.cshtml

@ -1,8 +1,10 @@
@model AMESCoreStudio.Web.ViewModels.PCS.WipDataViewModel
@{ ViewData["Title"] = "PCS034";
Layout = "~/Views/Shared/_AMESLayout.cshtml"; }
@{
ViewData["Title"] = "PCS034";
Layout = "~/Views/Shared/_AMESLayout.cshtml";
}
<style>
.control-label {
@ -25,12 +27,14 @@
<input asp-for="wipInfo.WipID" type="hidden" value="@Model.wipInfo.WipID" />
<input asp-for="wipInfo.UnitNO" type="hidden" value="@Model.wipInfo.UnitNO" />
<input asp-for="wipInfo.WipNO" type="hidden" value="@Model.wipInfo.WipNO" />
@* <input asp-for="wipInfo.PlanQTY" type="hidden" value="@Model.wipInfo.PlanQTY" />*@
<input asp-for="wipInfo.WipType" type="hidden" value="@Model.wipInfo.WipType" />
@* <input asp-for="wipInfo.FlowRuleID" type="hidden" value="@Model.wipInfo.FlowRuleID" />*@
<input asp-for="wipAtt.ItemNO" type="hidden" value="@Model.wipAtt.ItemNO" />
<input asp-for="wipBarcodeOther.OtherID" type="hidden" value="@if(Model.wipBarcodeOther != null){ @Model.wipBarcodeOther.OtherID }" />
<input asp-for="wipMAC.WipNO" type="hidden" value="@if(Model.wipMAC != null){ @Model.wipMAC.WipNO }" />
<input asp-for="wipBarcodeOther.OtherID" type="hidden" value="@if(Model.wipBarcodeOther != null){
@Model.wipBarcodeOther.OtherID
}" />
<input asp-for="wipMAC.WipNO" type="hidden" value="@if(Model.wipMAC != null){
@Model.wipMAC.WipNO
}" />
<div class="layui-form-item " style="padding-left:30px">
<input @(Model.wipInfo.InputFlag == "Y" ? "checked" : "") type="checkbox" name="wipInfo.InputFlag" title="判斷前製程是否已經投入" />
</div>
@ -323,7 +327,9 @@
<a id="KPTableAdd" class="layui-btn layui-btn-xs layui-icon layui-icon-add-circle">新增</a>
<input type="hidden" value=@Model.WipKps.Count() id="WipKpCount" />
<table id="KPTable" class="layui-table">
@{int k = 0;}
@{
int k = 0;
}
<thead>
<tr>
<th>
@ -472,12 +478,15 @@
<label class="layui-form-label">DIP</label>
<div class="layui-input-block">
<cl-checkbox asp-items="@ViewBag.GetCheckboxDIP" asp-for="wipBoard.DipSides" asp-skin="defult"></cl-checkbox>
<input @if (Model.wipBoard != null) { @(Model.wipBoard.DipCarrier == "Y" ? "checked" : "") } type="checkbox" title="CARRIER" name="wipBoard.DipCarrier" />
<input @if (Model.wipBoard != null) { @(Model.wipBoard.DipTape == "Y" ? "checked" : "") } type="checkbox" title="貼付膠帶" name="wipBoard.DipTape" />
<input @if (Model.wipBoard != null) { @(Model.wipBoard.DipSolderMask == "Y" ? "checked" : "") } type="checkbox" title="點防焊膠" name="wipBoard.SmdSolderMask" />
@*<input asp-for="wipBoard.DipCarrier" type="checkbox" title="CARRIER" />
<input asp-for="wipBoard.DipTape" type="checkbox" title="貼付膠帶" />
<input asp-for="wipBoard.SmdSolderMask" type="checkbox" title="點防焊膠" />*@
<input @if (Model.wipBoard != null) {
@(Model.wipBoard.DipCarrier == "Y" ? "checked" : "")
} type="checkbox" title="CARRIER" name="wipBoard.DipCarrier" />
<input @if (Model.wipBoard != null) {
@(Model.wipBoard.DipTape == "Y" ? "checked" : "")
} type="checkbox" title="貼付膠帶" name="wipBoard.DipTape" />
<input @if (Model.wipBoard != null) {
@(Model.wipBoard.DipSolderMask == "Y" ? "checked" : "")
} type="checkbox" title="點防焊膠" name="wipBoard.DipSolderMask" />
</div>
</div>
</div>
@ -493,17 +502,16 @@
<div class="layui-inline">
<label class="layui-form-label">燒錄</label>
<div class="layui-input-inline">
<input @if (Model.wipBoard != null) { @(Model.wipBoard.Burn == "Y" ? "checked" : "") } type="checkbox" title="是否燒入" name="wipBoard.Burn" />
@*<input asp-for="wipBoard.Burn" type="checkbox" title="是否燒入" />*@
<input @if (Model.wipBoard != null) {
@(Model.wipBoard.Burn == "Y" ? "checked" : "")
} type="checkbox" title="是否燒入" name="wipBoard.Burn" />
</div>
<label class="layui-form-label">燒機位置</label>
<div class="layui-input-inline">
<label asp-for="wipBoard.BurnLocation" class="layui-form-label"></label>
<div class="layui-input-block">
<input asp-for="wipBoard.BurnLocation" class="layui-input" />
</div>
</div>
</div>
</div>
<div class="layui-form-item">
@ -515,19 +523,27 @@
<div class="layui-form-item">
<div class="layui-inline">
<input @if (Model.wipBoard != null) { @(Model.wipBoard.ISPartsBake == "Y" ? "checked" : "") } type="checkbox" title="零件是否需要烘烤" name="wipBoard.ISPartsBake" />
<label class="layui-form-label">零件烘烤</label>
<div class="layui-input-inline">
<input @if (Model.wipBoard != null) {
@(Model.wipBoard.ISPartsBake == "Y" ? "checked" : "")
} type="checkbox" title="零件是否需要烘烤" name="wipBoard.ISPartsBake" />
</div>
<div class="layui-inline">
<label class="layui-form-label">零件烘烤溫度</label>
<div class="layui-input-inline">
<div class="layui-input-inline" style="width:100px">
<select asp-items="@ViewBag.GetPartsBakeTypeList" asp-for="wipBoard.PartsBake" class=""></select>
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label">零件烘烤時間</label>
<div class="layui-input-block">
<div class="layui-input-inline" style="width:100px">
<input asp-for="wipBoard.PartsBakeTime" class="layui-input" />
</div>
<div class="layui-input-inline">
<input @if (Model.wipBoard != null) {
@(Model.wipBoard.PartsBakeOvertime == "Y" ? "checked" : "")
} type="checkbox" title="零件烘烤超過48hrs" name="wipBoard.PartsBakeOvertime" />
</div>
</div>
</div>
@ -541,6 +557,11 @@
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">PCB烘烤</label>
<div class="layui-input-inline">
<input @if (Model.wipBoard != null) {
@(Model.wipBoard.ISPcbBake == "Y" ? "checked" : "")
} type="checkbox" title="PCB是否需要烘烤" name="wipBoard.ISPcbBake" />
</div>
<div class="layui-input-inline">
<select asp-items="@ViewBag.GetPCBBakeTypeSelect" asp-for="wipBoard.PcbBake" class=""></select>
</div>
@ -557,7 +578,7 @@
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label" asp-for="wipBoard.SolderPaste"></label>
<div class="layui-input-block">
<div class="layui-input-inline" style="width:500px;">
<select asp-items="@ViewBag.GetSolderPasteSelect" asp-for="wipBoard.SolderPaste"></select>
</div>
</div>
@ -700,13 +721,11 @@
<div class="layui-form-item">
<div class="layui-inline">
<label asp-for="wipSystem.BiRatio" class="layui-form-label"></label>
<div class="layui-input-inline">
<input style="background-color: #acdbe36b" asp-for="wipSystem.BiRatio" class="layui-input" />
</div>
<label asp-for="wipSystem.BiTime" class="layui-form-label"></label>
<div class="layui-input-inline">
<input asp-for="wipSystem.BiTime" class="layui-input" />
@ -845,7 +864,9 @@
<div class="layui-inline">
<label class="layui-form-label">FINE_PACKAGE</label>
<div class="layui-input-inline">
<input @if (Model.wipSystem != null) { @(Model.wipSystem.FinePackage == "Y" ? "checked" : "") } type="checkbox" title="是否為精裝" name="wipSystem.FinePackage" />
<input @if (Model.wipSystem != null) {
@(Model.wipSystem.FinePackage == "Y" ? "checked" : "")
} type="checkbox" title="是否為精裝" name="wipSystem.FinePackage" />
</div>
</div>
</div>
@ -897,7 +918,9 @@
<a id="OutfitTableAdd" class="layui-btn layui-btn-xs layui-icon layui-icon-add-circle">新增</a>
<input type="hidden" value=@Model.WipOutfits.Count() id="WipOutfitCount" />
<table id="OutfitTable" class="layui-table">
@{int l = 0;}
@{
int l = 0;
}
<thead>
<tr>
<th>
@ -945,7 +968,9 @@
<a id="SopTableAdd" class="layui-btn layui-btn-xs layui-icon layui-icon-add-circle">新增</a>
<input type="hidden" value=@Model.WipSops.Count() id="WipSopCount" />
<table id="SopTable" class="layui-table">
@{int i = 0;}
@{
int i = 0;
}
<thead>
<tr>
<th style="width:50%;">
@ -1080,8 +1105,6 @@
<label class="layui-form-label" asp-for="wipInfoBlob.ImageName">檔案</label>
<label class="layui-btn">
<input type="file" name="formFile">
@*<i class="layui-icon">&#xe67c;</i>上傳文件*@
</label>
<input type="hidden" asp-for="wipInfoBlob.ImageName">
</div>
@ -1229,8 +1252,7 @@
if (data._msg != undefined) {
parent.hg.msg(data._msg);
}
else
{
else {
$("#wipMAC_StartNO").val(data.mix);
$("#wipMAC_EndNO").val(data.max);
$("#wipMAC_StartNO").attr("readonly", "readonly");
@ -1341,16 +1363,14 @@
$(obj).attr("href", filePath);
};
function getFlowRuleList(data)
{
function getFlowRuleList(data) {
$.ajax(
{
url: "@Url.Action("GetMaterialFlowRuleJson", "PCS")",
dataType: 'json',
data: { "itemno": $("#wipAtt_ItemNO").val(), "unit_no": $("#wipInfo_UnitNO").val() },
type: 'post',
success: function (result)
{
success: function (result) {
console.info(result.data);
$("#wipInfo_FlowRuleID").empty();//清空下拉框的值
$.each(result.data, function (index, item) {
@ -1360,23 +1380,20 @@
layui.form.render("select");//重新渲染 固定写法
},
error: function (result)
{
error: function (result) {
alert(result);
}
});
};
function getLineInfoList(data)
{
function getLineInfoList(data) {
$.ajax(
{
url: "@Url.Action("GetUnitLineJson", "BAS")",
dataType: 'json',
data: { "unit_no": $("#wipInfo_UnitNO").val() },
type: 'post',
success: function (result)
{
success: function (result) {
console.info(result.data);
var value = $("#wipInfo_LineID").val();
$("#wipInfo_LineID").empty();//清空下拉框的值
@ -1388,8 +1405,7 @@
$("#wipInfo_LineID option[value=" + value + "]").prop("selected", true);
layui.form.render("select");//重新渲染 固定写法
},
error: function (result)
{
error: function (result) {
alert(result);
}
});
@ -1404,12 +1420,10 @@
dataType: 'json',
data: { "userNo": val.value },
type: 'post',
success: function (result)
{
success: function (result) {
$(val).closest('div.layui-inline').find('input[id*=' + val.id + '_Name]').val(result.data);
},
error: function (result)
{
error: function (result) {
alert(result);
}
});
@ -1424,12 +1438,10 @@
dataType: 'json',
data: { "itemno": $("#wipAtt_ItemNO").val(), "unit_no": $("#wipInfo_UnitNO").val(), "flowID": NewID },
type: 'post',
success: function (result)
{
success: function (result) {
$("#wipInfo_FlowRemark").val(result.data);
},
error: function (result)
{
error: function (result) {
alert(result);
}
});
@ -1589,8 +1601,7 @@
};
//生產單位By工單號碼選單
function getFactoryUnitByWipNoList()
{
function getFactoryUnitByWipNoList() {
var a;
$.ajax(
{
@ -1599,12 +1610,10 @@
data: { "wipNo": $("#wipInfo_WipNO").val() },
async: false,
type: 'post',
success: function (result)
{
success: function (result) {
a = result.data;
},
error: function (result)
{
error: function (result) {
alert(result);
}
});
@ -1612,8 +1621,7 @@
};
//KP Items 選單
function getItemsList()
{
function getItemsList() {
var b;
$.ajax(
{
@ -1622,12 +1630,10 @@
data: {},
async: false,
type: 'post',
success: function (result)
{
success: function (result) {
b = result.data;
},
error: function (result)
{
error: function (result) {
alert(result);
}
});
@ -1635,8 +1641,7 @@
};
//治具種類
function getOutfitCommodityList()
{
function getOutfitCommodityList() {
var a;
$.ajax(
{
@ -1645,12 +1650,10 @@
data: {},
async: false,
type: 'post',
success: function (result)
{
success: function (result) {
a = result.data;
},
error: function (result)
{
error: function (result) {
alert(result);
}
});
@ -1658,8 +1661,7 @@
};
//流程ID對應作業站
function getRuleStationByFlowID(data)
{
function getRuleStationByFlowID(data) {
var b;
$.ajax(
{
@ -1668,12 +1670,10 @@
data: { "wipNo": $("#wipInfo_WipNO").val() },
async: false,
type: 'post',
success: function (result)
{
success: function (result) {
b = result.data;
},
error: function (result)
{
error: function (result) {
alert(result);
}
});
@ -1690,12 +1690,10 @@
data: {},
async: false,
type: 'post',
success: function (result)
{
success: function (result) {
a = result.data;
},
error: function (result)
{
error: function (result) {
alert(result);
}
});

20
AMESCoreStudio.Web/Views/QRS/QRS011.cshtml

@ -15,10 +15,10 @@
<div class="layui-form">
<div class="layui-row">
<div class="layui-form-item">
<div class="layui-col-sm2">
<div class="layui-col">
<div class="layui-inline">
<label class="layui-form-label">工單狀態:</label>
<div class="layui-input-inline" style="width:100px">
<div class="layui-input-inline" >
<select id="wipStatus" lay-filter="wipStatus" lay-verify="required" lay-submit>
<option value="A">未完工</option>
<option value="E">已完工</option>
@ -26,7 +26,7 @@
</div>
</div>
</div>
<div class="layui-col-sm3">
<div class="layui-col">
<div class="layui-inline">
<label class="layui-form-label">生產單位:</label>
<div class="layui-input-inline">
@ -37,23 +37,24 @@
<input id="unitNo" type="hidden" name="unitNo" value="*" />
</div>
</div>
<div class="layui-col-sm3">
<div class="layui-col">
<div class="layui-inline">
<label class="layui-form-label">料號:</label>
<div class="layui-input-inline" style="width:150px">
<div class="layui-input-inline">
<input id="itemNO" name="itemNo" autocomplete="off" class="layui-input" placeholder="請輸入料號">
</div>
</div>
</div>
<div class="layui-col-sm3">
<div class="layui-col">
<div class="layui-inline">
<label class="layui-form-label">工單號碼:</label>
<div class="layui-input-inline" style="width:150px">
<div class="layui-input-inline" >
<input id="wipNO" name="wipNo" autocomplete="off" class="layui-input" placeholder="請輸入工單號碼">
</div>
</div>
</div>
<div class="layui-col-sm1">
<div class="layui-col" style="text-align:center">
<div class="layui-inline layui-show-xs-block">
<button class="layui-btn layui-btn-sm layui-btn-normal" lay-submit onclick="result()" lay-filter="querysubmit">
<i class="layui-icon layui-icon-sm">&#xe615;</i>
@ -82,8 +83,7 @@
console.log(wipNO);
// 工單狀態選已完工 必須要有工單號碼
if (wipStatus == "E" && wipNO == '')
{
if (wipStatus == "E" && wipNO == '') {
layer.alert('要查詢工單狀態已完工,必須要輸入工單號碼');
return;
}

29
AMESCoreStudio.WebApi/Controllers/AMES/WipInfosController.cs

@ -13,6 +13,7 @@ using System.Data;
using System.Dynamic;
using Microsoft.Extensions.Configuration;
using Microsoft.EntityFrameworkCore.SqlServer;
using AMESCoreStudio.WebApi.Controllers.BAS;
namespace AMESCoreStudio.WebApi.Controllers.AMES
{
@ -1574,14 +1575,16 @@ and b.item_no = '{0}' and a.barcode_no = '{1}'", kp_no, barcode_no);
ResultModel<WipInfo> result = new ResultModel<WipInfo>();
Helper helper = new Helper(_context);
WipInfo.WipID = helper.GetIDKey("WIP_ID").Result;
//HttpContext.Request.Cookies.TryGetValue("UserID", out string userID);
//if (userID != null)
//{
// if (int.Parse(userID.ToString()) >= 0)
// {
// WipInfo.CreateUserID = int.Parse(userID.ToString());
// }
//}
// 工單號碼去空白
WipInfo.WipNO = WipInfo.WipNO.Trim().ToUpper();
// 委外廠編號抓WERKS廠別代碼
var q = _context.FactoryInfos.Where(w => w.FactoryID.ToString() == WipInfo.Werks).ToList();
if (q.Count() !=0)
{
WipInfo.WerksNO = q.FirstOrDefault().FactoryNo;
}
_context.WipInfos.Add(WipInfo);
try
@ -1647,6 +1650,16 @@ and b.item_no = '{0}' and a.barcode_no = '{1}'", kp_no, barcode_no);
public async Task<ResultModel<WipInfo>> PutWipinfo([FromBody] WipInfo wipInfo)
{
ResultModel<WipInfo> result = new ResultModel<WipInfo>();
// 工單號碼去空白
wipInfo.WipNO = wipInfo.WipNO.Trim().ToUpper();
// 委外廠編號抓WERKS廠別代碼
var q = _context.FactoryInfos.Where(w => w.FactoryID.ToString() == wipInfo.Werks).ToList();
if (q.Count() != 0)
{
wipInfo.WerksNO = q.FirstOrDefault().FactoryNo;
}
_context.Entry(wipInfo).State = EntityState.Modified;
_context.Entry<WipInfo>(wipInfo).Property("CompleteQTY").IsModified = false;
_context.Entry<WipInfo>(wipInfo).Property("StatusNO").IsModified = false;

8
AMESCoreStudio.WebApi/Models/AMES/WipBoard.cs

@ -169,6 +169,14 @@ namespace AMESCoreStudio.WebApi.Models.AMES
[Display(Name = "零件烘烤時間")]
public decimal PartsBakeTime { get; set; }
/// <summary>
/// 零件烘烤超過48hrs(Y/N)
/// </summary>
[Column("PARTS_BAKE_OVERTIME")]
[DataMember]
[Display(Name = "零件烘烤超過48hrs(Y/N)")]
public string PartsBakeOvertime { get; set; }
/// <summary>
/// 零件烘烤備註
/// </summary>

Loading…
Cancel
Save