|
@ -1036,21 +1036,29 @@ namespace AMESCoreStudio.Web.Controllers |
|
|
return View("FQC007C", model); |
|
|
return View("FQC007C", model); |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
var FqcResultDetail = new FqcResultDetail |
|
|
var FqcResultDetails = new List<FqcResultDetail>(); |
|
|
|
|
|
foreach (var item in result_BarCodeInfo) |
|
|
{ |
|
|
{ |
|
|
BarcodeNo = result_BarCodeInfo.FirstOrDefault().BarcodeNo, |
|
|
FqcResultDetails.Add(new FqcResultDetail |
|
|
ExtraBarcodeNo = result_BarCodeInfo.FirstOrDefault().ExtraBarcodeNo, |
|
|
{ |
|
|
BoxNo = result_BarCodeInfo.FirstOrDefault().BoxNo, |
|
|
BarcodeNo = item.BarcodeNo, |
|
|
|
|
|
ExtraBarcodeNo = item.ExtraBarcodeNo, |
|
|
|
|
|
BoxNo = item.BoxNo, |
|
|
StatusNo = model.StatusNo, |
|
|
StatusNo = model.StatusNo, |
|
|
NgMemo = model.NgMemo, |
|
|
NgMemo = model.NgMemo, |
|
|
NgReasonNo = model.NgReasonNo, |
|
|
NgReasonNo = model.NgReasonNo, |
|
|
CreateUserID = GetLogInUserID(), |
|
|
CreateUserID = GetLogInUserID(), |
|
|
UpdateUserID = GetLogInUserID() |
|
|
UpdateUserID = GetLogInUserID() |
|
|
|
|
|
}); |
|
|
}; |
|
|
}; |
|
|
|
|
|
// 要抽驗的內部條碼
|
|
|
|
|
|
var AddBarCodeNo = FqcResultDetails.Select(s => s.BarcodeNo).ToList(); |
|
|
|
|
|
|
|
|
if (string.IsNullOrWhiteSpace(FqcResultDetail.ExtraBarcodeNo)) |
|
|
if (FqcResultDetails.Where(w => string.IsNullOrWhiteSpace(w.ExtraBarcodeNo)).Any()) |
|
|
{ |
|
|
{ |
|
|
ModelState.AddModelError("error", "找不到該筆資料的出貨序號"); |
|
|
var NoExtraBarcodeNo = FqcResultDetails.Where(w => string.IsNullOrWhiteSpace(w.ExtraBarcodeNo)) |
|
|
|
|
|
.Select(s => s.BarcodeNo).ToList(); |
|
|
|
|
|
ModelState.AddModelError("error", string.Join(',', NoExtraBarcodeNo) + "找不到出貨序號"); |
|
|
return View("FQC007C", model); |
|
|
return View("FQC007C", model); |
|
|
} |
|
|
} |
|
|
#endregion
|
|
|
#endregion
|
|
@ -1060,9 +1068,12 @@ namespace AMESCoreStudio.Web.Controllers |
|
|
if (result_FqcResultMaster.Count() != 0) |
|
|
if (result_FqcResultMaster.Count() != 0) |
|
|
{ |
|
|
{ |
|
|
var result_ResultDetail = await _fqcApi.GetFqcResultDetail(result_FqcResultMaster.FirstOrDefault().FqcID); |
|
|
var result_ResultDetail = await _fqcApi.GetFqcResultDetail(result_FqcResultMaster.FirstOrDefault().FqcID); |
|
|
if (result_ResultDetail.Where(w => w.BarcodeNo == FqcResultDetail.BarcodeNo).Any()) |
|
|
if (result_ResultDetail.Where(w => AddBarCodeNo.Contains(w.BarcodeNo)).Any()) |
|
|
{ |
|
|
{ |
|
|
ModelState.AddModelError("error", "內部序號【" + FqcResultDetail.BarcodeNo + "】已抽驗過"); |
|
|
var errorMag = result_ResultDetail.Where(w => AddBarCodeNo.Contains(w.BarcodeNo)) |
|
|
|
|
|
.Select(s => s.BarcodeNo).ToList(); |
|
|
|
|
|
ModelState.AddModelError("error", "內部序號【" + string.Join(",", errorMag) + "】已抽驗過"); |
|
|
|
|
|
|
|
|
return View("FQC007C", model); |
|
|
return View("FQC007C", model); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
@ -1073,7 +1084,7 @@ namespace AMESCoreStudio.Web.Controllers |
|
|
if (result_FqcResultMaster.Count != 0) |
|
|
if (result_FqcResultMaster.Count != 0) |
|
|
{ |
|
|
{ |
|
|
FqcResultMaster = result_FqcResultMaster.FirstOrDefault(); |
|
|
FqcResultMaster = result_FqcResultMaster.FirstOrDefault(); |
|
|
FqcResultMaster.QaQty += 1; |
|
|
FqcResultMaster.QaQty += AddBarCodeNo.Count(); |
|
|
FqcResultMaster.UpdateDate = DateTime.Now; |
|
|
FqcResultMaster.UpdateDate = DateTime.Now; |
|
|
FqcResultMaster.UpdateUserID = GetLogInUserID(); |
|
|
FqcResultMaster.UpdateUserID = GetLogInUserID(); |
|
|
} |
|
|
} |
|
@ -1086,7 +1097,7 @@ namespace AMESCoreStudio.Web.Controllers |
|
|
FqcResultMaster.SeqID = model.SeqID; |
|
|
FqcResultMaster.SeqID = model.SeqID; |
|
|
FqcResultMaster.LotQty = FirstFqc.InhouseQty; |
|
|
FqcResultMaster.LotQty = FirstFqc.InhouseQty; |
|
|
FqcResultMaster.WipNo = FirstFqc.WipNo; |
|
|
FqcResultMaster.WipNo = FirstFqc.WipNo; |
|
|
FqcResultMaster.QaQty = 1; |
|
|
FqcResultMaster.QaQty = AddBarCodeNo.Count(); |
|
|
FqcResultMaster.ItemNo = FirstFqc.ItemNo; |
|
|
FqcResultMaster.ItemNo = FirstFqc.ItemNo; |
|
|
FqcResultMaster.ModelNo = FirstFqc.ModelNo; |
|
|
FqcResultMaster.ModelNo = FirstFqc.ModelNo; |
|
|
FqcResultMaster.StartTime = DateTime.Now; |
|
|
FqcResultMaster.StartTime = DateTime.Now; |
|
@ -1096,28 +1107,38 @@ namespace AMESCoreStudio.Web.Controllers |
|
|
|
|
|
|
|
|
// 判斷是PASS || FAIL
|
|
|
// 判斷是PASS || FAIL
|
|
|
if (model.StatusNo == "F") |
|
|
if (model.StatusNo == "F") |
|
|
FqcResultMaster.FailQty += 1; |
|
|
FqcResultMaster.FailQty += AddBarCodeNo.Count(); |
|
|
else |
|
|
else |
|
|
{ |
|
|
{ |
|
|
FqcResultMaster.PassQty += 1; |
|
|
FqcResultMaster.PassQty += AddBarCodeNo.Count(); |
|
|
FqcResultDetail.NgReasonNo = ""; |
|
|
|
|
|
FqcResultDetail.NgMemo = ""; |
|
|
|
|
|
} |
|
|
} |
|
|
#endregion
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
IResultModel<FqcResultMaster> result; |
|
|
IResultModel<FqcResultMaster> result; |
|
|
|
|
|
var FqcID = 0; |
|
|
if (result_FqcResultMaster.Count == 0) |
|
|
if (result_FqcResultMaster.Count == 0) |
|
|
{ |
|
|
{ |
|
|
result = await _fqcApi.PostFqcResultMaster(JsonConvert.SerializeObject(FqcResultMaster)); |
|
|
result = await _fqcApi.PostFqcResultMaster(JsonConvert.SerializeObject(FqcResultMaster)); |
|
|
FqcResultDetail.FqcID = result.Data.FirstOrDefault().FqcID; |
|
|
FqcID = result.Data.FirstOrDefault().FqcID; |
|
|
} |
|
|
} |
|
|
else |
|
|
else |
|
|
{ |
|
|
{ |
|
|
result = await _fqcApi.PutFqcResultMaster(JsonConvert.SerializeObject(FqcResultMaster)); |
|
|
result = await _fqcApi.PutFqcResultMaster(JsonConvert.SerializeObject(FqcResultMaster)); |
|
|
FqcResultDetail.FqcID = result_FqcResultMaster.FirstOrDefault().FqcID; |
|
|
FqcID = result_FqcResultMaster.FirstOrDefault().FqcID; |
|
|
} |
|
|
} |
|
|
IResultModel result_detail; |
|
|
|
|
|
result_detail = await _fqcApi.PostFqcResultDetail(JsonConvert.SerializeObject(FqcResultDetail)); |
|
|
IResultModel result_detail = new ResultModel<FqcResultDetail>(); |
|
|
|
|
|
foreach (var item in FqcResultDetails) |
|
|
|
|
|
{ |
|
|
|
|
|
item.FqcID = FqcID; |
|
|
|
|
|
if (model.StatusNo == "P") |
|
|
|
|
|
{ |
|
|
|
|
|
item.NgMemo = ""; |
|
|
|
|
|
item.NgReasonNo = ""; |
|
|
|
|
|
} |
|
|
|
|
|
result_detail = await _fqcApi.PostFqcResultDetail(JsonConvert.SerializeObject(item)); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (result_detail.Success) |
|
|
if (result_detail.Success) |
|
|
{ |
|
|
{ |
|
|