Browse Source

1. 修正FQC相關Bug

2. 過站取消更新箱號及出貨序號
PTD
Ray 2 years ago
parent
commit
050ae6eda7
  1. 110
      AMESCoreStudio.Web/Controllers/FQCController.cs
  2. 8
      AMESCoreStudio.Web/Views/FQC/FQC007.cshtml
  3. 7
      AMESCoreStudio.Web/Views/FQC/FQC007C.cshtml
  4. 4
      AMESCoreStudio.Web/Views/FQC/FQC007V.cshtml
  5. BIN
      AMESCoreStudio.Web/wwwroot/images/ElectronicSignature/ADMIN.png
  6. BIN
      AMESCoreStudio.Web/wwwroot/images/ElectronicSignature/楊其達.png
  7. BIN
      AMESCoreStudio.Web/wwwroot/images/ElectronicSignature/江旭民.png
  8. BIN
      AMESCoreStudio.Web/wwwroot/images/ElectronicSignature/沈俊輝.png
  9. BIN
      AMESCoreStudio.Web/wwwroot/images/ElectronicSignature/沈秀慧.png
  10. BIN
      AMESCoreStudio.Web/wwwroot/images/avalue.png
  11. 6
      AMESCoreStudio.WebApi/Controllers/AMES/FqcInhouseDetailController.cs
  12. 4
      AMESCoreStudio.WebApi/Controllers/AMES/FqcInhouseMasterController.cs
  13. 2
      AMESCoreStudio.WebApi/Controllers/AMES/FqcResultDetailController.cs
  14. 1
      AMESCoreStudio.WebApi/Controllers/AMES/FqcResultMasterController.cs
  15. 1
      AMESCoreStudio.WebApi/Controllers/BLL/BarCodeCheckController.cs
  16. 10
      AMESCoreStudio.WebApi/DTO/AMES/FQC010VIiew.cs
  17. 7
      AMESCoreStudio.WebApi/DTO/AMES/FqcResultDto.cs

110
AMESCoreStudio.Web/Controllers/FQCController.cs

@ -878,9 +878,39 @@ namespace AMESCoreStudio.Web.Controllers
result_FQCResultMaster.ECN_Memo = model.ECN_Memo; result_FQCResultMaster.ECN_Memo = model.ECN_Memo;
result_FQCResultMaster.InspectionStatus = model.InspectionStatus; result_FQCResultMaster.InspectionStatus = model.InspectionStatus;
result_FQCResultMaster.PLM_ECN = model.PLMECN; result_FQCResultMaster.PLM_ECN = model.PLMECN;
result_FQCResultMaster.UpdateUserID = GetLogInUserID();
await _fqcApi.PutFqcResultMaster(JsonConvert.SerializeObject(result_FQCResultMaster)); await _fqcApi.PutFqcResultMaster(JsonConvert.SerializeObject(result_FQCResultMaster));
ModelState.AddModelError("error", "儲存成功!"); ModelState.AddModelError("error", "儲存成功!");
} }
else
{
var fqcResultMaster = new FqcResultMaster();
fqcResultMaster.InhouseNo = model.InhouseNo;
fqcResultMaster.SeqID = Convert.ToInt16(model.SeqID);
fqcResultMaster.LotQty = model.InhouseQty;
fqcResultMaster.WipNo = model.WipNo;
fqcResultMaster.QaQty = 1;
fqcResultMaster.ItemNo = model.ItemNo;
fqcResultMaster.ModelNo = model.ModelNo;
fqcResultMaster.StartTime = DateTime.Now;
fqcResultMaster.EndTime = DateTime.Now;
fqcResultMaster.CreateUserID = GetLogInUserID();
fqcResultMaster.UpdateUserID = GetLogInUserID();
fqcResultMaster.OS = model.OS;
fqcResultMaster.CPU = model.CPU;
fqcResultMaster.RAM = model.RAM;
fqcResultMaster.BIOS = model.BIOS;
fqcResultMaster.Supervisor = model.Supervisor;
fqcResultMaster.Proved = model.Proved;
fqcResultMaster.OutfitNo = model.OutfitNo;
fqcResultMaster.InspectionType = model.InspectionType;
fqcResultMaster.Note = model.Note;
fqcResultMaster.ECN_Memo = model.ECN_Memo;
fqcResultMaster.InspectionStatus = model.InspectionStatus;
fqcResultMaster.PLM_ECN = model.PLMECN;
await _fqcApi.PostFqcResultMaster(JsonConvert.SerializeObject(fqcResultMaster));
ModelState.AddModelError("error", "儲存成功!");
}
} }
if (result.Data.Count() != 0) if (result.Data.Count() != 0)
@ -939,6 +969,7 @@ namespace AMESCoreStudio.Web.Controllers
result_FQCResultMaster.ECN_Memo = model.ECN_Memo; result_FQCResultMaster.ECN_Memo = model.ECN_Memo;
result_FQCResultMaster.InspectionStatus = model.InspectionStatus; result_FQCResultMaster.InspectionStatus = model.InspectionStatus;
result_FQCResultMaster.PLM_ECN = model.PLMECN; result_FQCResultMaster.PLM_ECN = model.PLMECN;
result_FQCResultMaster.UpdateUserID = GetLogInUserID();
await _fqcApi.PutFqcResultMaster(JsonConvert.SerializeObject(result_FQCResultMaster)); await _fqcApi.PutFqcResultMaster(JsonConvert.SerializeObject(result_FQCResultMaster));
ModelState.AddModelError("error", "儲存成功!"); ModelState.AddModelError("error", "儲存成功!");
} }
@ -955,6 +986,7 @@ namespace AMESCoreStudio.Web.Controllers
fqcResultMaster.StartTime = DateTime.Now; fqcResultMaster.StartTime = DateTime.Now;
fqcResultMaster.EndTime = DateTime.Now; fqcResultMaster.EndTime = DateTime.Now;
fqcResultMaster.CreateUserID = GetLogInUserID(); fqcResultMaster.CreateUserID = GetLogInUserID();
fqcResultMaster.UpdateUserID = GetLogInUserID();
fqcResultMaster.OS = model.OS; fqcResultMaster.OS = model.OS;
fqcResultMaster.CPU = model.CPU; fqcResultMaster.CPU = model.CPU;
fqcResultMaster.RAM = model.RAM; fqcResultMaster.RAM = model.RAM;
@ -1167,8 +1199,8 @@ namespace AMESCoreStudio.Web.Controllers
var result = await _fqcApi.GetFqcQuery(model.InhouseNo, model.SeqID); var result = await _fqcApi.GetFqcQuery(model.InhouseNo, model.SeqID);
var fqcItem = result.Data.FirstOrDefault(); var fqcItem = result.Data.FirstOrDefault();
// Fail數量 小於0 才要判斷抽樣數量 // Fail數量 小於0 才要判斷抽樣數量 && 不等於免驗
if (fqcItem.FailQty <= 0) if (fqcItem.FailQty <= 0 && fqcItem.InspectionStatus != "C")
{ {
// 抽驗數量 大於 本批次送驗量 // 抽驗數量 大於 本批次送驗量
if (fqcItem.QcQty > fqcItem.InhouseQty) if (fqcItem.QcQty > fqcItem.InhouseQty)
@ -1224,34 +1256,39 @@ namespace AMESCoreStudio.Web.Controllers
{ {
var FqcQuery = await _fqcApi.GetFqcQuery(model.InhouseNo, model.SeqID); var FqcQuery = await _fqcApi.GetFqcQuery(model.InhouseNo, model.SeqID);
var fqcItem = FqcQuery.Data.FirstOrDefault(); var fqcItem = FqcQuery.Data.FirstOrDefault();
// 判斷狀態選擇
if (fqcItem.FailQty >= fqcItem.ReQty) // 免驗排除
if (fqcItem.InspectionStatus != "C")
{ {
if (model.QaResult == "P" && string.IsNullOrWhiteSpace(model.SpecialPo)) // 判斷狀態選擇
if (fqcItem.FailQty >= fqcItem.ReQty)
{ {
ModelState.AddModelError("error", "請輸入特採單號"); if (model.QaResult == "P" && string.IsNullOrWhiteSpace(model.SpecialPo))
return View("FQC007B", model); {
ModelState.AddModelError("error", "請輸入特採單號");
return View("FQC007B", model);
}
} }
}
// 判斷有Fail但抽驗量不足 不可開立允收 // 判斷有Fail但抽驗量不足 不可開立允收
if (fqcItem.FailQty > 0) if (fqcItem.FailQty > 0)
{
// 抽驗數量 大於 本批次送驗量
if (fqcItem.QcQty > fqcItem.InhouseQty)
{ {
if (fqcItem.PassQty + fqcItem.FailQty != fqcItem.InhouseQty && model.QaResult == "P") // 抽驗數量 大於 本批次送驗量
if (fqcItem.QcQty > fqcItem.InhouseQty)
{
if (fqcItem.PassQty + fqcItem.FailQty != fqcItem.InhouseQty && model.QaResult == "P")
{
ModelState.AddModelError("error", "抽樣數量不足,不可判定允收");
return View("FQC007B", model);
}
}
//當抽驗數量 小於 抽樣數量就離開
else if (fqcItem.QcQty > fqcItem.PassQty + fqcItem.FailQty && model.QaResult == "P")
{ {
ModelState.AddModelError("error", "抽樣數量不足,不可判定允收"); ModelState.AddModelError("error", "抽樣數量不足,不可判定允收");
return View("FQC007B", model); return View("FQC007B", model);
} }
} }
//當抽驗數量 小於 抽樣數量就離開
else if (fqcItem.QcQty > fqcItem.PassQty + fqcItem.FailQty && model.QaResult == "P")
{
ModelState.AddModelError("error", "抽樣數量不足,不可判定允收");
return View("FQC007B", model);
}
} }
var fqcResultMaster = await _fqcApi.GetFqcResultMaster(model.FqcID); var fqcResultMaster = await _fqcApi.GetFqcResultMaster(model.FqcID);
@ -1546,7 +1583,7 @@ namespace AMESCoreStudio.Web.Controllers
public async Task<IActionResult> FQC008QueryAsync(string barcodeNo, string wipNo public async Task<IActionResult> FQC008QueryAsync(string barcodeNo, string wipNo
, string boxNo, string inhouseNo, string dateStr, string dateEnd, string factoryID , string boxNo, string inhouseNo, string dateStr, string dateEnd, string factoryID
, string status ="A", int page = 0, int limit = 10) , string status = "A", int page = 0, int limit = 10)
{ {
IResultModel<FqcInhouseMasterDto> result = await _fqcApi.GetFqcInhouseMasterQuery(barcodeNo: barcodeNo, wipNo: wipNo IResultModel<FqcInhouseMasterDto> result = await _fqcApi.GetFqcInhouseMasterQuery(barcodeNo: barcodeNo, wipNo: wipNo
, boxNo: boxNo, inhouseNo: inhouseNo, date_str: dateStr, date_end: dateEnd , boxNo: boxNo, inhouseNo: inhouseNo, date_str: dateStr, date_end: dateEnd
@ -1725,7 +1762,7 @@ namespace AMESCoreStudio.Web.Controllers
Avalue = "AVALUE", Avalue = "AVALUE",
VIP = FqcQuery.CustomerVIP, VIP = FqcQuery.CustomerVIP,
WaiveRequisition = FqcQuery.StatusName, WaiveRequisition = FqcQuery.StatusName,
AQLType = FqcQuery.AQLType AQLType = FqcQuery.AQLType,
}; };
// 抓全部檢驗工項 // 抓全部檢驗工項
@ -1776,6 +1813,35 @@ namespace AMESCoreStudio.Web.Controllers
InspectionResults = item.StatusNo InspectionResults = item.StatusNo
}); });
} }
// 圖檔轉BASE64
string ApprovedSign = "";
string InspectorSign = "";
if (System.IO.File.Exists($"{this._env.WebRootPath}/images/ElectronicSignature/{FQC010Master.Approved}.png"))
{
using (var b = new System.Drawing.Bitmap($"{this._env.WebRootPath}/images/ElectronicSignature/{FQC010Master.Approved}.png"))
{
using (var ms = new MemoryStream())
{
b.Save(ms, System.Drawing.Imaging.ImageFormat.Bmp);
ApprovedSign = Convert.ToBase64String(ms.ToArray());
}
}
}
if (System.IO.File.Exists($"{this._env.WebRootPath}/images/ElectronicSignature/{FQC010Master.Inspector}.png"))
{
using (var b = new System.Drawing.Bitmap($"{this._env.WebRootPath}/images/ElectronicSignature/{FQC010Master.Inspector}.png"))
{
using (var ms = new MemoryStream())
{
b.Save(ms, System.Drawing.Imaging.ImageFormat.Bmp);
InspectorSign = Convert.ToBase64String(ms.ToArray());
}
}
}
FQC010Master.ApprovedSignImg = ApprovedSign;
FQC010Master.InspectorSignImg = InspectorSign;
} }
var FQC010Masters = new List<FQC010VIiew>(); var FQC010Masters = new List<FQC010VIiew>();

8
AMESCoreStudio.Web/Views/FQC/FQC007.cshtml

@ -44,6 +44,10 @@
<input type="hidden" id="hInhouseNo" value="@Model.h_InhouseNo" /> <input type="hidden" id="hInhouseNo" value="@Model.h_InhouseNo" />
<input type="hidden" id="hSeqID" value="@Model.h_SeqID" /> <input type="hidden" id="hSeqID" value="@Model.h_SeqID" />
<input type="hidden" id="hFqcID" value="@Model.FqcID" /> <input type="hidden" id="hFqcID" value="@Model.FqcID" />
<input type="hidden" asp-for="WipNo" value="@Model.WipNo" />
<input type="hidden" asp-for="InhouseQty" value="@Model.InhouseQty" />
<input type="hidden" asp-for="ItemNo" value="@Model.ItemNo" />
<input type="hidden" asp-for="ModelNo" value="@Model.ModelNo" />
<div class="layui-col-xs1"> <div class="layui-col-xs1">
<label class="layui-form-label-col" style="text-align:right;">入庫單號:</label> <label class="layui-form-label-col" style="text-align:right;">入庫單號:</label>
</div> </div>
@ -248,9 +252,9 @@
<label class="layui-form-label-col" style="text-align:right;">檢驗者:</label> <label class="layui-form-label-col" style="text-align:right;">檢驗者:</label>
</div> </div>
<div class="layui-col-xs2"> <div class="layui-col-xs2">
<div class="layui-input-inline" style="width:80px;"> @* <div class="layui-input-inline" style="width:80px;">
<input class="layui-input" type="text" asp-for="UpdateUser" onchange="getUserName(this);" /> <input class="layui-input" type="text" asp-for="UpdateUser" onchange="getUserName(this);" />
</div> </div>*@
<div class="layui-input-inline"> <div class="layui-input-inline">
<label class="layui-form-label" id="UpdateUser_Name" style="text-align: left;">@Model.UpdateUser_Name</label> <label class="layui-form-label" id="UpdateUser_Name" style="text-align: left;">@Model.UpdateUser_Name</label>
</div> </div>

7
AMESCoreStudio.Web/Views/FQC/FQC007C.cshtml

@ -9,6 +9,10 @@
.control-label { .control-label {
justify-content: flex-end !important; justify-content: flex-end !important;
} }
.layui-form-select dl {
max-height: 200px;
}
</style> </style>
<div class="layui-card"> <div class="layui-card">
@ -50,6 +54,7 @@
<label class="layui-form-label">不良群組</label> <label class="layui-form-label">不良群組</label>
<div class="layui-input-block"> <div class="layui-input-block">
<select id="ngGroup" lay-filter="ngGroup" lay-submit asp-items="@ViewBag.NGGroupSelect"> <select id="ngGroup" lay-filter="ngGroup" lay-submit asp-items="@ViewBag.NGGroupSelect">
<option value="0">N/A</option>
</select> </select>
</div> </div>
</div> </div>
@ -75,7 +80,7 @@
<div class="layui-form-item"> <div class="layui-form-item">
<label asp-for="NgMemo" class="layui-form-label"></label> <label asp-for="NgMemo" class="layui-form-label"></label>
<div class="layui-input-block"> <div class="layui-input-block">
<input asp-for="BoxNo" class="layui-input" /> <input asp-for="NgMemo" class="layui-input" />
</div> </div>
</div> </div>
</div> </div>

4
AMESCoreStudio.Web/Views/FQC/FQC007V.cshtml

@ -38,8 +38,8 @@
title: '抽驗狀態' title: '抽驗狀態'
}, },
{ {
field: 'ngReasonNo', field: 'ngReasonDesc',
title: '不良代碼' title: '不良現象'
}, },
{ {
field: 'ngMemo', field: 'ngMemo',

BIN
AMESCoreStudio.Web/wwwroot/images/ElectronicSignature/ADMIN.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

BIN
AMESCoreStudio.Web/wwwroot/images/ElectronicSignature/楊其達.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
AMESCoreStudio.Web/wwwroot/images/ElectronicSignature/江旭民.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
AMESCoreStudio.Web/wwwroot/images/ElectronicSignature/沈俊輝.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

BIN
AMESCoreStudio.Web/wwwroot/images/ElectronicSignature/沈秀慧.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

BIN
AMESCoreStudio.Web/wwwroot/images/avalue.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

6
AMESCoreStudio.WebApi/Controllers/AMES/FqcInhouseDetailController.cs

@ -89,6 +89,7 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
if (FqcResultMaster != null) if (FqcResultMaster != null)
{ {
var FqcResultDetail = await _context.FqcResultDetails.Where(w => w.FqcID == FqcResultMaster.FqcID).ToListAsync(); var FqcResultDetail = await _context.FqcResultDetails.Where(w => w.FqcID == FqcResultMaster.FqcID).ToListAsync();
var NgReasons = await _context.NGReasons.ToListAsync();
foreach (var item in FqcResultDetail) foreach (var item in FqcResultDetail)
{ {
foreach (var item2 in fqcResultDto) foreach (var item2 in fqcResultDto)
@ -97,6 +98,7 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
{ {
item2.StatusNo = item.StatusNo; item2.StatusNo = item.StatusNo;
item2.NgReasonNo = item.NgReasonNo; item2.NgReasonNo = item.NgReasonNo;
item2.NgReasonDesc = NgReasons.Where(w => w.NGReasonNo == item.NgReasonNo).FirstOrDefault() == null ? "" : NgReasons.Where(w => w.NGReasonNo == item.NgReasonNo).FirstOrDefault().NGReasonDesc;
item2.NgMemo = item.NgMemo; item2.NgMemo = item.NgMemo;
item2.CreateName = await new Helper(_context).GetUserName(item.CreateUserID); item2.CreateName = await new Helper(_context).GetUserName(item.CreateUserID);
continue; continue;
@ -158,6 +160,9 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
var FqcResultMaster = await _context.FqcResultMasters.Where(w => w.InhouseNo == item.InhouseNo var FqcResultMaster = await _context.FqcResultMasters.Where(w => w.InhouseNo == item.InhouseNo
&& w.SeqID == item.SeqID) && w.SeqID == item.SeqID)
.FirstOrDefaultAsync(); .FirstOrDefaultAsync();
var NgReasons = await _context.NGReasons.ToListAsync();
// 取抽驗結果 // 取抽驗結果
if (FqcResultMaster != null) if (FqcResultMaster != null)
{ {
@ -170,6 +175,7 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
{ {
item2.StatusNo = item1.StatusNo == "P" ? "PASS" : "NG"; item2.StatusNo = item1.StatusNo == "P" ? "PASS" : "NG";
item2.NgReasonNo = item1.NgReasonNo; item2.NgReasonNo = item1.NgReasonNo;
item2.NgReasonDesc = NgReasons.Where(w => w.NGReasonNo == item1.NgReasonNo).FirstOrDefault() == null ? "" : NgReasons.Where(w => w.NGReasonNo == item1.NgReasonNo).FirstOrDefault().NGReasonDesc;
item2.NgMemo = item1.NgMemo; item2.NgMemo = item1.NgMemo;
item2.IsSample = "Y"; item2.IsSample = "Y";
item2.CreateName = await new Helper(_context).GetUserName(item.CreateUserID); item2.CreateName = await new Helper(_context).GetUserName(item.CreateUserID);

4
AMESCoreStudio.WebApi/Controllers/AMES/FqcInhouseMasterController.cs

@ -199,7 +199,7 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
join q3 in _context.QcCriteria on q1.CritID equals q3.CritID join q3 in _context.QcCriteria on q1.CritID equals q3.CritID
join q4 in _context.WipInfos on q1.WipNo equals q4.WipNO join q4 in _context.WipInfos on q1.WipNo equals q4.WipNO
join q5 in _context.FactoryInfos on q4.Werks equals q5.FactoryID.ToString() join q5 in _context.FactoryInfos on q4.Werks equals q5.FactoryID.ToString()
join q6 in _context.UserInfoes on q2.Supervisor equals q6.UserNo into cp6 join q6 in _context.UserInfoes on "182" equals q6.UserNo into cp6
from q6 in cp6.DefaultIfEmpty() from q6 in cp6.DefaultIfEmpty()
join q7 in _context.UserInfoes on q2.Proved equals q7.UserNo into cp7 join q7 in _context.UserInfoes on q2.Proved equals q7.UserNo into cp7
from q7 in cp7.DefaultIfEmpty() from q7 in cp7.DefaultIfEmpty()
@ -228,7 +228,7 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
OS = q2.OS, OS = q2.OS,
RAM = q2.RAM, RAM = q2.RAM,
OutfitNo = q2.OutfitNo, OutfitNo = q2.OutfitNo,
Supervisor = q2.Supervisor, Supervisor = "182",
Supervisor_Name = q6.UserName, Supervisor_Name = q6.UserName,
Proved = q2.Proved, Proved = q2.Proved,
Proved_Name = q7.UserName, Proved_Name = q7.UserName,

2
AMESCoreStudio.WebApi/Controllers/AMES/FqcResultDetailController.cs

@ -56,8 +56,6 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
ResultModel<FqcResultDetail> result = new ResultModel<FqcResultDetail>(); ResultModel<FqcResultDetail> result = new ResultModel<FqcResultDetail>();
_context.Entry(fqcResultDetail).State = EntityState.Modified; _context.Entry(fqcResultDetail).State = EntityState.Modified;
fqcResultDetail.UpdateDate = DateTime.Now; fqcResultDetail.UpdateDate = DateTime.Now;
fqcResultDetail.UpdateUserID = 0;
try try
{ {
await _context.SaveChangesAsync(); await _context.SaveChangesAsync();

1
AMESCoreStudio.WebApi/Controllers/AMES/FqcResultMasterController.cs

@ -72,7 +72,6 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
ResultModel<FqcResultMaster> result = new ResultModel<FqcResultMaster>(); ResultModel<FqcResultMaster> result = new ResultModel<FqcResultMaster>();
_context.Entry(fqcResultMaster).State = EntityState.Modified; _context.Entry(fqcResultMaster).State = EntityState.Modified;
fqcResultMaster.UpdateDate = DateTime.Now; fqcResultMaster.UpdateDate = DateTime.Now;
fqcResultMaster.UpdateUserID = 0;
try try
{ {

1
AMESCoreStudio.WebApi/Controllers/BLL/BarCodeCheckController.cs

@ -740,7 +740,6 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
barcodeInfo.StatusNo = StatusNo; barcodeInfo.StatusNo = StatusNo;
barcodeInfo.WipID = barCodeCheckDto.wipID; barcodeInfo.WipID = barCodeCheckDto.wipID;
barcodeInfo.StatusID = 1; barcodeInfo.StatusID = 1;
barcodeInfo.BoxNo = "";
barcodeInfo.ExtraBarcodeNo = barCodeCheckDto.extNo; barcodeInfo.ExtraBarcodeNo = barCodeCheckDto.extNo;
if (CheckNextStopCloseStation(barCodeCheckDto.wipNo, barCodeCheckDto.unitNo, barCodeCheckDto.stationID).Result.Success) if (CheckNextStopCloseStation(barCodeCheckDto.wipNo, barCodeCheckDto.unitNo, barCodeCheckDto.stationID).Result.Success)
{ {

10
AMESCoreStudio.WebApi/DTO/AMES/FQC010VIiew.cs

@ -184,6 +184,16 @@ namespace AMESCoreStudio.WebApi.DTO.AMES
/// </summary> /// </summary>
public string Inspector { get; set; } public string Inspector { get; set; }
/// <summary>
/// 抽驗人員簽名檔
/// </summary>
public string ApprovedSignImg { get; set; }
/// <summary>
/// 主管簽名檔
/// </summary>
public string InspectorSignImg { get; set; }
public List<FQC010Detail1> Detail1 { get; set; } public List<FQC010Detail1> Detail1 { get; set; }
public List<FQC010Detail2> Detail2 { get; set; } public List<FQC010Detail2> Detail2 { get; set; }

7
AMESCoreStudio.WebApi/DTO/AMES/FqcResultDto.cs

@ -78,6 +78,13 @@ namespace AMESCoreStudio.WebApi.DTO.AMES
[Column("NG_REASON_NO")] [Column("NG_REASON_NO")]
public string NgReasonNo { get; set; } public string NgReasonNo { get; set; }
/// <summary>
/// 不良現象
/// </summary>
[Display(Name = "不良現象")]
[Column("NG_REASON_Desc")]
public string NgReasonDesc { get; set; }
/// <summary> /// <summary>
/// 不良備註 /// 不良備註
/// </summary> /// </summary>

Loading…
Cancel
Save