You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

285 lines
11 KiB

@model AMESCoreStudio.WebApi.Models.AMES.NgInfoAlertMaster
@{ ViewData["Title"] = "FQC014U";
// Layout = "~/Views/Shared/_FormLayout.cshtml";
Layout = "~/Views/Shared/_AMESLayout.cshtml";}
<style>
.control-label {
justify-content: flex-end !important;
}
.custom-select {
font-size: 1.2rem; /* 调整字体大小 */
padding: 0.5rem; /* 增加内边距,使其看起来更大 */
height: auto; /* 确保下拉框的高度自动适应内容 */
border-color: #d3d3d3; /* 设置淡灰色边框 */
/*background-color: #f0f0f0; 设置灰色背景 */
border-width: 1px; /* 可选,设置边框宽度 */
border-radius: 4px; /* 可选,设置圆角 */
}
</style>
<div class="layui-card">
<div class="layui-card-body">
<div class="col-sm-12">
<form enctype="multipart/form-data" method="post" asp-action="FQC014USave" id="myForm">
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<input type="hidden" asp-for="UserID" />
<input type="hidden" asp-for="CreateDate" />
<input type="hidden" asp-for="UpdateDate" value="@System.DateTime.Now" />
<input type="hidden" asp-for="FinishDate" />
<input type="hidden" asp-for="BarcodeNo" />
<input type="hidden" asp-for="WipNoH" />
<input type="hidden" asp-for="ItemNoH" />
<input type="hidden" asp-for="GetFactoryInfo.FactoryNameCh" />
<input type="hidden" asp-for="GetFactoryInfo.FactoryNameEn" />
<input type="hidden" asp-for="FactoryID" />
<input type="hidden" asp-for="StationID" />
<input type="hidden" asp-for="BarcodeNoH" />
<input type="hidden" asp-for="Source" />
<table class="layui-table">
@*// <table class="table table-bordered">*@
<tr>
<td style="width: 90px;"><label asp-for="CaseID" class="control-label"></label></td>
<td colspan="2"><input asp-for="CaseID" name="CaseID" class="layui-input" style="background-color: #D3D3D3;" readonly="readonly" /></td>
<td style="width: 90px;"><label asp-for="ModelName" class="control-label"></label></td>
<td colspan="2"><input asp-for="ModelName" class="layui-input" style="background-color: #D3D3D3;" readonly="readonly" /></td>
</tr>
<tr>
<td><label asp-for="ItemNoF" class="control-label"></label></td>
<td colspan="5"><input asp-for="ItemNoF" class="layui-input" style="background-color: #D3D3D3;" readonly="readonly" /></td>
</tr>
<tr>
<td><label asp-for="GetFactoryInfo.FactoryNo" class="control-label"></label></td>
<td style="width: 150px;"><input asp-for="GetFactoryInfo.FactoryNo" class="layui-input" style="background-color: #D3D3D3;" readonly="readonly" /></td>
<td><label asp-for="WipNoF" class="control-label"></label></td>
<td style="width: 150px;"><input asp-for="WipNoF" class="layui-input" style="background-color: #D3D3D3;" readonly="readonly" /></td>
<td><label asp-for="ReasonNo" class="control-label"></label></td>
<td><input asp-for="ReasonNo" class="layui-input" style="background-color: #D3D3D3;" readonly="readonly" /></td>
</tr>
</table>
<a style="font-weight: bold;">CASE 編輯</a>
<table class="layui-table">
<tr>
<td><label asp-for="CreateDate" class="control-label"></label></td>
<td><input class="layui-input" style="background-color: #D3D3D3;" readonly="readonly" value="@Model.CreateDate.ToString("yyyy-MM-dd")" /></td>
<td><label asp-for="FinishDate" class="control-label"></label></td>
<td><input class="layui-input" style="background-color: #D3D3D3;" readonly="readonly" value="@Model.FinishDate?.ToString("yyyy-MM-dd")" /></td>
</tr>
<tr>
<td><label asp-for="StatusNo" class="control-label"></label></td>
<td>
<select asp-for="StatusNo" class="custom-select col-sm-9">
<option value="E">處理中</option>
<option value="F">已完結</option>
</select>
</td>
</tr>
<tr>
<td><label asp-for="ShortTerm" class="control-label"></label></td>
<td colspan="3">
<textarea asp-for="ShortTerm" class="layui-textarea" rows="4" style="background-color: #FFFFE0;"></textarea>
</td>
</tr>
<tr>
<td><label asp-for="LongTerm" class="control-label"></label></td>
<td colspan="3"><textarea asp-for="LongTerm" class="layui-textarea" rows="4" style="background-color: #FFFFE0;"></textarea></td>
</tr>
<tr>
<td><label asp-for="Memos" class="control-label"></label></td>
<td colspan="3"><textarea asp-for="Memos" class="layui-textarea" rows="4" style="background-color: #FFFFE0;"></textarea></td>
</tr>
<tr>
<td><label asp-for="Link" class="control-label"></label></td>
<td colspan="3"><textarea asp-for="Link" class="layui-textarea" rows="4" style="background-color: #FFFFE0;"></textarea></td>
</tr>
<tr>
<td><label asp-for="UpdateUserID" class="control-label"></label></td>
<td colspan="3"><select asp-for="UpdateUserID" asp-items="@ViewBag.UserList" class="custom-select"></select></td>
</tr>
</table>
<span style="color: firebrick;word-break: break-all;" class="text-danger offset-sm-3">@Html.ValidationMessage("error")</span>
<div class="layui-row" style="text-align:center">
<input type="submit" value="儲存" class="layui-btn" />
</div>
<div class="form-group">
<a style="font-weight: bold;">CASE 紀錄</a>
<table class="layui-hide" id="test" lay-filter="test"></table>
</div>
</form>
</div>
</div>
</div>
@section Scripts {
@{ await Html.RenderPartialAsync("_ValidationScriptsPartial");
await Html.RenderPartialAsync("_FileinputScriptsPartial"); }
<script type="text/javascript">
$(document).ready(function () {
var error = '@Html.ValidationMessage("error")';
if ($(error).text() != '') {
parent.hg.msg(error);
}
});
var toolbar = [];
var tableCols = [[
{
field: 'caseID',
width: 100,
title: 'CaseID',
sort: true
},
{
field: 'barcodeNo',
width: 100,
title: '生產序號',
sort: true
},
{
field: 'factoryNo',
width: 100,
title: '廠別',
sort: true
},
{
field: 'wipNoF',
width: 100,
title: '系統工單',
sort: true,
templet: '#wipNoF1'
},
{
field: 'itemNoF',
width: 100,
title: '系統料號',
sort: true
},
{
field: 'modelName',
width: 100,
title: '機種',
sort: true
},
{
field: 'wipNoH',
width: 100,
title: '單板工單',
sort: true
},
{
field: 'itemNoH',
width: 100,
title: '單板料號',
sort: true
},
{
field: 'createDate',
width: 100,
title: '警報異常時間',
templet: '<div>{{ layui.util.toDateString(d.createDate, "yyyy/MM/dd") }}</div>',
sort: true
},
{
field: 'reasonNo',
width: 100,
title: '警報原因',
sort: true
},
{
field: 'stationNo',
width: 100,
title: '發生站別',
sort: true
},
{
field: 'repairNo',
width: 100,
title: '維修代碼',
sort: true
},
{
field: 'repairDesc',
width: 100,
title: '維修原因',
sort: true
},
{
field: 'userName',
width: 100,
title: '作業人員',
sort: true
},
{
field: 'right',
width: 130,
title: '操作',
fixed: 'right',
templet: function (d) {
btn = `<a class="layui-btn layui-bg-blue layui-btn-xs" lay-event="Download">下載</a>`
if (d.statusNo != "已結案") {
btn += `<a class="layui-btn layui-btn-xs" lay-event="Upload">上傳</a>`
}
return btn
}
}
]];
var caseID = $("#CaseID").val();
var table = hg.table.datatable('test', '異常不良警示資料維護', '/FQC/GetNGINFOAlertDetailByQuery?caseID=' + caseID, {}, tableCols, '', false, 'full-100');
//上傳
function Upload(obj) {
if (obj.data.caseID) {
hg.open('上傳檔案', '/FQC/FQC014R/' + obj.data.caseID, 800, 550);
}
};
//下載
function Download(obj) {
if (obj.data.caseID) {
hg.open('下載檔案', '/FQC/FQC014RV/' + obj.data.caseID, 800, 550);
}
};
</script>
}
<script type="text/html" id="wipNoF1">
{{# if(d.wipNoF === '尚未投產' ){ }}
<span style="color: #FF0000">{{ d.wipNoF }}</span>
{{# } else { }}
{{ d.wipNoF }}
{{# } }}
</script>
<script>
document.getElementById('myForm').addEventListener('submit', function (event) {
// 获取 select 元素的值
var status = document.querySelector('select[name="StatusNo"]').value;
// 如果值是 "F"(已完結),则弹出确认框
if (status === 'F') {
var confirmFinish = confirm("請問此CASE是否確定處理完成?");
// 如果用户点击了 "取消",则阻止表单提交
if (!confirmFinish) {
event.preventDefault(); // 阻止表单提交
}
// 如果用户点击 "確定",则继续执行表单提交,服务器会处理 FQC014USave
}
});
</script>