Browse Source

1. 修正工單錯誤Bug:保存時生產單位不見,工程負責人員刪除出錯

2. 工單查詢加入 開工日期
PTD
Ray 3 years ago
parent
commit
00f78d70f1
  1. 41
      AMESCoreStudio.Web/Controllers/PCSController.cs
  2. 33
      AMESCoreStudio.Web/ViewModels/PCS/PCS031ViewModel.cs
  3. 38
      AMESCoreStudio.Web/Views/PCS/PCS003.cshtml
  4. 4
      AMESCoreStudio.Web/Views/PCS/PCS004.cshtml
  5. 23
      AMESCoreStudio.Web/Views/PCS/PCS005.cshtml
  6. 4
      AMESCoreStudio.Web/Views/PCS/PCS006.cshtml
  7. 124
      AMESCoreStudio.Web/Views/PCS/PCS031.cshtml
  8. 55
      AMESCoreStudio.WebApi/Controllers/AMES/WipInfosController.cs
  9. 93
      AMESCoreStudio.WebApi/DTO/AMES/WipQueryDto.cs
  10. 2
      AMESCoreStudio.WebApi/Models/AMES/WipSystem.cs

41
AMESCoreStudio.Web/Controllers/PCSController.cs

@ -2063,7 +2063,7 @@ namespace AMESCoreStudio.Web.Controllers
try
{
#region 選單
await WipDataSelectAll(model.wipAtt.WipNO, model.wipAtt.ItemNO, model.wipInfo.UnitNO);
await WipDataSelectAll(model.wipInfo.WipNO, model.wipAtt.ItemNO, model.wipInfo.UnitNO);
GetCheckboxApproveLogo(model.wipLabel != null ? model.wipLabel.ApproveLogo : null);
GetCheckboxCompanyLogo(model.wipLabel != null ? model.wipLabel.CompanyLogo : null);
GetCheckboxPrintMode(model.wipLabel != null ? model.wipLabel.PrintMode : null);
@ -2753,7 +2753,7 @@ namespace AMESCoreStudio.Web.Controllers
/// PCS005 Query
/// </summary>
/// <param name="unitno">生產單位</param>
/// <param name="wipno">工單號碼</param>
/// <param name="wipNo">工單號碼</param>
/// <param name="itemNo">料號</param>
/// <returns></returns>
public async Task<IActionResult> PCS005QueryAsync(string unitno, string wipNo, string itemNo, int page = 0, int limit = 10)
@ -2840,14 +2840,14 @@ namespace AMESCoreStudio.Web.Controllers
result_dy.Add(new
{
item.wipID,
item.wipNO,
item.itemNO,
item.wipNo,
item.itemNo,
item.lineID,
item.lineDesc,
item.unitName,
item.planQTY,
item.createDate,
result_StatusType.Where(w => w.StatusNo == (string)item.statusNO).FirstOrDefault().StatusDesc,
result_StatusType.Where(w => w.StatusNo == (string)item.statusNo).FirstOrDefault().StatusDesc,
OnOff = result_LineInfo.Count() != 0 ? "ON" : "OFF",
ActiveStop = result_Log.StatusNO
});
@ -2893,7 +2893,6 @@ namespace AMESCoreStudio.Web.Controllers
[HttpPost]
public async Task<JsonResult> PCS006OnOffAsync(int LineID, int wipID)
{
IResultModel result;
await _pcsApi.PutLineInfoToWipNO(LineID, wipID);
var _msg = "修改成功!";
return Json(_msg);
@ -4491,17 +4490,17 @@ namespace AMESCoreStudio.Web.Controllers
return View();
}
//[HttpPost]
//public async Task<IActionResult> PCS031Asnyc(PCS031ViewModel model)
//{
[HttpPost]
public async Task<IActionResult> PCS031Asnyc(string wipNo)
{
//}
return View();
}
[HttpPost]
public async Task<IActionResult> PCS031QueryAsnyc(string wipNo)
public async Task<IActionResult> PCS031Query(string wipNo)
{
var result = new ResultModel<string>();
var result = new ResultModel<SelectListItem>();
var result_Wip = await _pcsApi.GetWipInfoByWipNO(wipNo.Trim().ToUpper());
if (result_Wip.Count == 0)
@ -4517,16 +4516,18 @@ namespace AMESCoreStudio.Web.Controllers
else
{
var FlowRule = result_Wip.FirstOrDefault().FlowRuleID;
var result_RuleStation = await _pcsApi.GetRuleStationByFlow(FlowRule);
}
if (result.Data.Count() != 0)
{
return Json(new Table() { code = 0, msg = "", data = result.Data, count = 0 });
var result_RuleStation = await _basApi.GetRuleStationsByFlow(FlowRule, 0);
result_RuleStation = result_RuleStation.Where(w => w.StationType == "M").OrderBy(o => o.Sequence).ToList();
var Stations = new List<SelectListItem>();
for (int i = 0; i < result_RuleStation.Count; i++)
{
RuleStations.Add(new SelectListItem(result_RuleStation[i].Sequence + "-" + result_RuleStation[i].StationDesc, result_RuleStation[i].RuleStationID.ToString()));
}
result.Data = RuleStations;
}
return Json(result);
}
#endregion
[HttpPost]
public JsonResult TestFunc(string number)

33
AMESCoreStudio.Web/ViewModels/PCS/PCS031ViewModel.cs

@ -0,0 +1,33 @@
using System;
using System.Collections.Generic;
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.PCS
{
public class PCS031ViewModel
{
/// <summary>
/// 工單號碼
/// </summary>
public string WipNO { get; set; }
/// <summary>
/// 工單ID
/// </summary>
public int WipID { get; set; }
/// <summary>
/// 經過作業站
/// </summary>
public int GoByRuleStation { get; set; }
/// <summary>
/// 退回目的地作業站
/// </summary>
public int RetrueRuleStation { get; set; }
}
}

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

@ -106,14 +106,13 @@
<div class="layui-inline">
<label asp-for="wipInfo.UnitNO" class="layui-form-label"></label>
<div class="layui-input-inline">
<select disabled id="unit" lay-filter="unit" asp-for="wipInfo.UnitNO" asp-items="@ViewBag.FactoryUnitByWipNo" class=""></select>
<select disabled lay-filter="unit" asp-for="wipInfo.UnitNO" asp-items="@ViewBag.FactoryUnitByWipNo" class=""></select>
</div>
<input id="unitNo" type="hidden" asp-for="wipInfo.UnitNO" />
<label asp-for="wipInfo.LineID" class="layui-form-label"></label>
<div class="layui-input-inline">
<select lay-filter="lind" asp-for="wipInfo.LineID" asp-items="@ViewBag.LineInfoList" class="">
</select>
<span asp-validation-for="wipInfo.LineID" class="layui-bg-red"></span>
</div>
<input id="lindID" type="hidden" name="lindID" value="" />
@ -121,7 +120,6 @@
<label asp-for="wipInfo.RelatedWONO" class="layui-form-label"></label>
<div class="layui-input-inline">
<input asp-for="wipInfo.RelatedWONO" class="layui-input" />
<span asp-validation-for="wipInfo.RelatedWONO" class="layui-bg-red"></span>
</div>
<label asp-for="wipInfo.OrderNO" class="layui-form-label"></label>
@ -190,12 +188,10 @@
<label asp-for="wipAtt.Boards" class="layui-form-label"></label>
<div class="layui-input-inline">
<input asp-for="wipAtt.Boards" class="layui-input" />
<span asp-validation-for="wipAtt.Boards" class="layui-bg-red"></span>
</div>
<label asp-for="wipInfo.BoxCNT" class="layui-form-label"></label>
<div class="layui-input-inline">
<input asp-for="wipInfo.BoxCNT" class="layui-input" />
<span asp-validation-for="wipInfo.BoxCNT" class="layui-bg-red"></span>
</div>
</div>
</div>
@ -218,12 +214,10 @@
<label asp-for="wipInfo.WipScheduleDate" class="layui-form-label"></label>
<div class="layui-input-inline">
<input asp-for="wipInfo.WipScheduleDate" class="layui-input" readonly="" />
<span asp-validation-for="wipInfo.WipScheduleDate" class="layui-bg-red"></span>
</div>
<label asp-for="wipInfo.WipDueDate" class="layui-form-label"></label>
<div class="layui-input-inline">
<input asp-for="wipInfo.WipDueDate" class="layui-input" readonly="" />
<span asp-validation-for="wipInfo.WipDueDate" class="layui-bg-red"></span>
</div>
</div>
</div>
@ -562,7 +556,6 @@
<label class="layui-form-label">零件烘烤時間</label>
<div class="layui-input-block">
<input asp-for="wipBoard.PartsBakeTime" class="layui-input" />
<span asp-validation-for="wipBoard.PartsBakeTime" class="layui-bg-red"></span>
</div>
</div>
</div>
@ -628,21 +621,18 @@
<label asp-for="wipBoard.BiRatio" class="layui-form-label"></label>
<div class="layui-input-block">
<input asp-for="wipBoard.BiRatio" class="layui-input" />
<span asp-validation-for="wipBoard.BiRatio" class="layui-bg-red"></span>
</div>
</div>
<div class="layui-input-inline">
<label asp-for="wipBoard.BiTemperature" class="layui-form-label"></label>
<div class="layui-input-block">
<input asp-for="wipBoard.BiTemperature" class="layui-input" />
<span asp-validation-for="wipBoard.BiTemperature" class="layui-bg-red"></span>
</div>
</div>
<div class="layui-input-inline">
<label asp-for="wipBoard.BiTime" class="layui-form-label"></label>
<div class="layui-input-block">
<input asp-for="wipBoard.BiTime" class="layui-input" />
<span asp-validation-for="wipBoard.BiTime" class="layui-bg-red"></span>
</div>
</div>
</div>
@ -696,7 +686,7 @@
<div class="layui-inline">
<label class="layui-form-label" asp-for="wipSystem.Engineer"></label>
<div class="layui-input-inline">
<input style="background-color: #acdbe36b" class="layui-input" asp-for="wipSystem.Engineer" onchange="getUserName(this);" />
<input style="background-color: #acdbe36b" class="layui-input" asp-for="wipSystem.Engineer" onchange="getUserName(this);" />
</div>
<label class="layui-form-label">姓名</label>
@ -725,14 +715,14 @@
<select asp-for="wipSystem.PowerModeType" asp-items="@ViewBag.GetWipSystemPMTypeSelect" class=""></select>
</div>
<div class="layui-input-inline">
<input style="background-color: #acdbe36b" class="layui-input" oninput="let p=this.selectionStart;this.value=this.value.toUpperCase();this.setSelectionRange(p, p);" asp-for="wipSystem.PowerMode" autocomplete="off" />
<input style="background-color: #acdbe36b" class="layui-input" oninput="let p=this.selectionStart;this.value=this.value.toUpperCase();this.setSelectionRange(p, p);" asp-for="wipSystem.PowerMode" autocomplete="off" />
</div>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">PLM生產備註</label>
<div class="layui-input-block" >
<div class="layui-input-block">
<textarea class="layui-textarea" asp-for="wipSystem.PowerMode_Desc" readonly="readonly"></textarea>
</div>
</div>
@ -742,7 +732,7 @@
<div class="layui-input-inline">
<label asp-for="wipSystem.BiRatio" class="layui-form-label"></label>
<div class="layui-input-block">
<input style="background-color: #acdbe36b" asp-for="wipSystem.BiRatio" class="layui-input" />
<input style="background-color: #acdbe36b" asp-for="wipSystem.BiRatio" class="layui-input" />
</div>
</div>
<div class="layui-input-inline">
@ -776,7 +766,7 @@
<select asp-for="wipSystem.BiosType" asp-items="@ViewBag.GetWipSystemTypeSelect" class=""></select>
</div>
<div class="layui-input-inline" style="width:150px;">
<input style="background-color: #acdbe36b" class="layui-input autocomplete" onkeypress="if( event.keyCode == 13 ) { return false; }" oninput="let p=this.selectionStart;this.value=this.value.toUpperCase();this.setSelectionRange(p, p);" asp-for="wipSystem.Bios" autocomplete="off" />
<input style="background-color: #acdbe36b" class="layui-input autocomplete" onkeypress="if( event.keyCode == 13 ) { return false; }" oninput="let p=this.selectionStart;this.value=this.value.toUpperCase();this.setSelectionRange(p, p);" asp-for="wipSystem.Bios" autocomplete="off" />
</div>
<div class="layui-input-inline" style="width:300px;">
<input class="layui-input" asp-for="wipSystem.Bios_Desc" readonly="readonly" />
@ -799,7 +789,7 @@
<select asp-for="wipSystem.ECType" asp-items="@ViewBag.GetWipSystemTypeSelect" class=""></select>
</div>
<div class="layui-input-inline" style="width:150px">
<input style="background-color: #acdbe36b" class="layui-input autocomplete" onkeypress="if( event.keyCode == 13 ) { return false; }" oninput="let p=this.selectionStart;this.value=this.value.toUpperCase();this.setSelectionRange(p, p);" asp-for="wipSystem.Ec" autocomplete="off" />
<input style="background-color: #acdbe36b" class="layui-input autocomplete" onkeypress="if( event.keyCode == 13 ) { return false; }" oninput="let p=this.selectionStart;this.value=this.value.toUpperCase();this.setSelectionRange(p, p);" asp-for="wipSystem.Ec" autocomplete="off" />
</div>
<div class="layui-input-inline" style="width:300px;">
<input class="layui-input" asp-for="wipSystem.Ec_Desc" readonly="readonly" />
@ -814,7 +804,7 @@
<select asp-for="wipSystem.FWType" asp-items="@ViewBag.GetWipSystemTypeSelect" class=""></select>
</div>
<div class="layui-input-inline" style="width:150px">
<input style="background-color: #acdbe36b" class="layui-input autocomplete" onkeypress="if( event.keyCode == 13 ) { return false; }" oninput="let p=this.selectionStart;this.value=this.value.toUpperCase();this.setSelectionRange(p, p);" asp-for="wipSystem.Fw" autocomplete="off" />
<input style="background-color: #acdbe36b" class="layui-input autocomplete" onkeypress="if( event.keyCode == 13 ) { return false; }" oninput="let p=this.selectionStart;this.value=this.value.toUpperCase();this.setSelectionRange(p, p);" asp-for="wipSystem.Fw" autocomplete="off" />
</div>
<div class="layui-input-inline" style="width: 300px;">
<input class="layui-input" asp-for="wipSystem.Fw_Desc" readonly="readonly" />
@ -893,7 +883,7 @@
<div class="layui-inline">
<label class="layui-form-label" asp-for="wipSystem.DmiBi"></label>
<div class="layui-input-inline ">
<select style="background-color: #acdbe36b" asp-for="wipSystem.DmiBi" asp-items="@ViewBag.GetWipSystemDMITypeSelect" class=""></select>
<select style="background-color: #acdbe36b" asp-for="wipSystem.DmiBi" asp-items="@ViewBag.GetWipSystemDMITypeSelect" class=""></select>
</div>
</div>
</div>
@ -1333,7 +1323,7 @@
{
url: "@Url.Action("GetMaterialFlowRuleJson", "PCS")",
dataType: 'json',
data: { "itemno": $("#wipAtt_ItemNO").val(),"unit_no": $("#unit").val()},
data: { "itemno": $("#wipAtt_ItemNO").val(), "unit_no": $("#wipInfo_UnitNO").val()},
type: 'post',
success: function (result)
{
@ -1359,7 +1349,7 @@
{
url: "@Url.Action("GetUnitLineJson", "BAS")",
dataType: 'json',
data: { "unit_no": $("#unit").val()},
data: { "unit_no": $("#wipInfo_UnitNO").val()},
type: 'post',
success: function (result)
{
@ -1383,6 +1373,7 @@
//UserName
function getUserName(val) {
if (val.value.length != 0) {
$.ajax(
{
url: "@Url.Action("getUserName", "SYS")",
@ -1397,7 +1388,8 @@
{
alert(result);
}
});
});
}
};
// RuleStation 備註
@ -1406,7 +1398,7 @@
{
url: "@Url.Action("getMaterialFlowRuleRemark", "PCS")",
dataType: 'json',
data: { "itemno": $("#wipAtt_ItemNO").val(), "unit_no": $("#unit").val(), "flowID": NewID },
data: { "itemno": $("#wipAtt_ItemNO").val(), "unit_no": $("#wipInfo_UnitNO").val(), "flowID": NewID },
type: 'post',
success: function (result)
{

4
AMESCoreStudio.Web/Views/PCS/PCS004.cshtml

@ -96,13 +96,13 @@
var tableCols = [[
{
field: 'wipNO',
field: 'wipNo',
width: 200,
title: '工單號碼',
sort: true
},
{
field: 'itemNO',
field: 'itemNo',
title: '料號',
width: 200,
sort: true

23
AMESCoreStudio.Web/Views/PCS/PCS005.cshtml

@ -2,13 +2,15 @@
ViewData["Title"] = "工單資料查詢";
Layout = "~/Views/Shared/_AMESLayout.cshtml";
}
@using Microsoft.AspNetCore.Mvc.Localization
@inject IHtmlLocalizer<AMESCoreStudio.Web.SharedResource> sharedLocalizer
<style>
/* .layui-table-col-special .layui-table-cell {
height:auto;
overflow:visible;
text-overflow:inherit;
white-space: normal;
}*/
/* .layui-table-col-special .layui-table-cell {
height:auto;
overflow:visible;
text-overflow:inherit;
white-space: normal;
}*/
</style>
<div class="layui-card">
<div class="layui-card-header">
@ -83,13 +85,13 @@
});
var tableCols = [[
{
field: 'wipNO',
field: 'wipNo',
width: 100,
title: '工單號碼',
sort: true
},
{
field: 'itemNO',
field: 'itemNo',
title: '料號',
width: 150,
sort: true
@ -126,8 +128,9 @@
templet: '<div>{{ layui.util.toDateString(d.wipScheduleDate, "yyyy/MM/dd") }}</div>'
},
{
field: 'a',
title: '開工日'
field: 'workDate',
title: '開工日',
sort: true
},
{
field: 'wipDueDate',

4
AMESCoreStudio.Web/Views/PCS/PCS006.cshtml

@ -171,13 +171,13 @@
hide: true
},
{
field: 'wipNO',
field: 'wipNo',
width: 200,
title: '工單號碼',
sort: true
},
{
field: 'itemNO',
field: 'itemNo',
title: '料號',
width: 200,
sort: true

124
AMESCoreStudio.Web/Views/PCS/PCS031.cshtml

@ -0,0 +1,124 @@
@{
ViewData["Title"] = "SOP文件查詢";
Layout = "~/Views/Shared/_AMESLayout.cshtml";
}
<style type="text/css">
.layui-table-main .layui-table-cell {
/*height: auto !important;*/
white-space: normal;
}
.layui-table img {
max-width: 60px;
max-height: 28px;
}
.layui-tree-main {
cursor: pointer;
padding-right: 10px;
float: left;
border-width: 1px;
border-style: solid;
border-color: #e6e6e6;
margin: 10px 0;
}
</style>
<div class="layui-card">
<div class="layui-card-header">
<div class="layui-form">
<div class="layui-form-item">
<div class="layui-inline"><i class="fa fa-file-text-o fa-fw"></i> @ViewBag.Title</div>
</div>
</div>
</div>
<div class="layui-card-body">
<form enctype="multipart/form-data" method="post" asp-action="PCS031" class="layui-form">
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">工單號碼</label>
<div class="layui-input-inline">
<input id="wipNo" name="wipNo" autocomplete="off" class="layui-input" placeholder="請輸入工單號碼" onchange="getSelect(this);">
</div>
</div>
</div>
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">通過站別</label>
<div class="layui-input-inline ">
<select id="goByRuleStation" lay-filter="RuleStation" class=""></select>
</div>
</div>
</div>
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">回到站別</label>
<div class="layui-input-inline ">
<select id="retureRuleStation" lay-filter="RuleStation" class=""></select>
</div>
</div>
</div>
<span style="color: firebrick;word-break: break-all;" class="text-danger offset-sm-3">@Html.ValidationMessage("error")</span>
<div class="layui-form-item">
<div class="layui-input-block">
<input type="submit" value="保存" class="layui-btn" />
</div>
</div>
</form>
</div>
</div>
@section Scripts {
@{ await Html.RenderPartialAsync("_ValidationScriptsPartial");
await Html.RenderPartialAsync("_FileinputScriptsPartial"); }
<script type="text/javascript">
layui.use(['form'], function () {
form = layui.form;
});
$(document).ready(function () {
var error = '@Html.ValidationMessage("error")';
if ($(error).text() != '') {
parent.hg.msg(error);
}
});
function getSelect(val) {
$.ajax(
{
url: "@Url.Action("PCS031Query", "PCS")",
dataType: 'json',
data: { "wipNo": val.value},
type: 'post',
success: function (result)
{
if (result.success) {
$("#goByRuleStation").empty();//清空下拉框的值
$("#retureRuleStation").empty();//清空下拉框的值
$.each(result.data, function (index, item) {
$("#goByRuleStation").append($("<option>").text(item.text).val(item.value))
$("#retureRuleStation").append($("<option>").text(item.text).val(item.value))
});
//$("#wipInfo_LineID option:eq(1)").attr("selected", 'selected'); //默认选择第一个选项
layui.form.render("select");//重新渲染 固定写法
}
else {
parent.hg.msg(result.msg);
}
},
error: function (result)
{
alert(result);
}
});
};
</script>
}

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

@ -173,38 +173,38 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
join q3 in _context.LineInfoes on q1.LineID equals q3.LineID
join q4 in _context.FactoryUnits on q1.UnitNO equals q4.UnitNo
join q5 in _context.FactoryInfos on q1.Werks equals q5.FactoryID.ToString()
//join q6 in _context.MaterialItems on q2.ItemNO equals q6.ItemNo
select new
select new WipQueryDto
{
q1.WipID,
q1.WipNO,
q1.PlanQTY,
q1.UnitNO,
q1.LineID,
q1.StatusNO,
q1.WipScheduleDate,
q1.WipDueDate,
q5.FactoryNameCh,
q1.Description,
q1.CreateDate,
q2.ItemNO,
q3.LineDesc,
q4.UnitName
wipID = q1.WipID,
wipNo = q1.WipNO,
planQTY = q1.PlanQTY,
unitNo = q1.UnitNO,
lineID = q1.LineID,
statusNo = q1.StatusNO,
wipScheduleDate = q1.WipScheduleDate,
wipDueDate = q1.WipDueDate,
factoryNameCh = q5.FactoryNameCh,
description = q1.Description,
CreateDate = q1.CreateDate,
itemNo = q2.ItemNO,
lineDesc = q3.LineDesc,
unitName = q4.UnitName
};
if (!string.IsNullOrWhiteSpace(value.unitno))
{
q = q.Where(w => w.UnitNO == value.unitno);
q = q.Where(w => w.unitNo == value.unitno);
}
if (!string.IsNullOrWhiteSpace(value.wipno))
{
q = q.Where(w => w.WipNO == value.wipno);
q = q.Where(w => w.wipNo == value.wipno);
}
if (value.lineid != 0)
{
q = q.Where(w => w.LineID == value.lineid);
q = q.Where(w => w.lineID == value.lineid);
}
if (value.date_str != null)
@ -219,7 +219,7 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
if (value.itemno != null)
{
q = q.Where(w => w.ItemNO == value.itemno);
q = q.Where(w => w.itemNo == value.itemno);
}
// 紀錄筆數
@ -231,7 +231,18 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
q = q.Skip((page - 1) * limit).Take(limit);
}
result.Data = await q.ToListAsync();
var qq = await q.ToListAsync();
// 塞入開工日
foreach (var item in qq)
{
var workDate = _context.WipStations.Where(w => w.WipID == item.wipID)
.OrderBy(s => s.CreateDate)
.FirstOrDefault();
item.workDate = workDate == null ? "" : workDate.CreateDate.ToString("yyyy/MM/dd");
}
result.Data = qq;
if (result == null)
{
@ -451,7 +462,7 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
var wipBarcodeOther = await _context.WipBarcodeOthers.Where(w => w.WipNO == id).ToListAsync();
_context.WipBarcodeOthers.RemoveRange(wipBarcodeOther);
var wipBoard = await _context.WipBoards.Where(w => w.WipNo == id).ToListAsync();
var wipBoard = await _context.WipBoards.Where(w => w.WipNo == id).ToListAsync();
_context.WipBoards.RemoveRange(wipBoard);
var wipSystem = await _context.WipSystems.Where(w => w.WipNo == id).ToListAsync();

93
AMESCoreStudio.WebApi/DTO/AMES/WipQueryDto.cs

@ -0,0 +1,93 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace AMESCoreStudio.WebApi.DTO.AMES
{
/// <summary>
/// WipQuery Select Dto
/// </summary>
public class WipQueryDto
{
/// <summary>
/// 工單ID
/// </summary>
public int wipID { get; set; }
/// <summary>
/// 工單號碼
/// </summary>
public string wipNo { get; set; }
/// <summary>
/// 工單數量
/// </summary>
public int planQTY { get; set; } = 0;
/// <summary>
/// 生產單位
/// </summary>
public string unitNo { get; set; }
/// <summary>
/// 生產單位Name
/// </summary>
public string unitName { get; set; }
/// <summary>
/// 線別ID
/// </summary>
public int? lineID { get; set; } = 0;
/// <summary>
/// 線別Name
/// </summary>
public string lineDesc { get; set; }
/// <summary>
/// 料號
/// </summary>
public string itemNo { get; set; }
/// <summary>
/// 工單狀態
/// </summary>
public string statusNo { get; set; }
/// <summary>
/// 預計開工日期
/// </summary>
public DateTime wipScheduleDate { get; set; }
/// <summary>
/// 預計完工日期
/// </summary>
public DateTime wipDueDate { get; set; }
/// <summary>
/// 廠商中文廠名
/// </summary>
public string factoryNameCh { get; set; }
/// <summary>
/// 工單描述
/// </summary>
public string description { get; set; }
/// <summary>
/// 工單建立日期
/// </summary>
public DateTime CreateDate { get; set; }
/// <summary>
/// 開工日
/// </summary>
public string workDate { get; set; }
/// <summary>
/// 檢驗日
/// </summary>
public string fqcDate { get; set; }
}
}

2
AMESCoreStudio.WebApi/Models/AMES/WipSystem.cs

@ -66,7 +66,7 @@ namespace AMESCoreStudio.WebApi.Models.AMES
[Column("BI_RATIO")]
[DataMember]
[Display(Name = "燒機比率")]
public decimal BiRatio { get; set; }
public decimal BiRatio { get; set; } = 0;
/// <summary>
/// 燒機溫度

Loading…
Cancel
Save