diff --git a/AMESCoreStudio.Web/Controllers/PCSController.cs b/AMESCoreStudio.Web/Controllers/PCSController.cs index 1f224893..d4a1aa21 100644 --- a/AMESCoreStudio.Web/Controllers/PCSController.cs +++ b/AMESCoreStudio.Web/Controllers/PCSController.cs @@ -1648,9 +1648,21 @@ namespace AMESCoreStudio.Web.Controllers } // 判斷WipKp 順序是否重複 - if (model.WipKps.Where(w => w.WipKpID != -1).GroupBy(g => g.KpSeq).Where(w => w.Count() > 1).Any()) + if (model.WipKps.Count != 0) { - Msg += " KeyParts 順序有重複 "; + if (model.WipKps.Where(w => w.WipKpID != -1).GroupBy(g => g.KpSeq).Where(w => w.Count() > 1).Any()) + { + Msg += ",KeyParts 順序有重複 "; + } + // KP料號正確 + var kpNameArray = model.WipKps.Select(s => s.KpName).Distinct().ToList(); + foreach (var item in kpNameArray) + { + if (_pcsApi.GetPlmMeterialInfo(item.Trim().ToUpper()).InvokeAsync().Result.Count == 0) + { + Msg += $",KP料號名稱【{item}】在PLM料號檔找不到 "; + } + } } // 判斷MAC是否正確 @@ -1748,7 +1760,7 @@ namespace AMESCoreStudio.Web.Controllers // } //} - + // 料號相關 var materialItem = await _pcsApi.GetMaterialItemByItemNO(model.wipAtt.ItemNO); if (materialItem != null) @@ -2567,10 +2579,21 @@ namespace AMESCoreStudio.Web.Controllers } // 判斷WipKp 順序是否重複 - if (model.WipKps.Where(w => w.WipKpID != -1).GroupBy(g => g.KpSeq).Where(w => w.Count() > 1).Any()) + if (model.WipKps.Count != 0) { - Msg += ",KeyParts 順序有重複 "; - + if (model.WipKps.Where(w => w.WipKpID != -1).GroupBy(g => g.KpSeq).Where(w => w.Count() > 1).Any()) + { + Msg += ",KeyParts 順序有重複 "; + } + // KP料號正確 + var kpNameArray = model.WipKps.Select(s => s.KpName).Distinct().ToList(); + foreach (var item in kpNameArray) + { + if (_pcsApi.GetPlmMeterialInfo(item.Trim().ToUpper()).InvokeAsync().Result.Count == 0) + { + Msg += $",KP料號名稱【{item}】在PLM料號檔找不到 "; + } + } } // 判斷SOP是否沒填文件名稱 @@ -3103,9 +3126,21 @@ namespace AMESCoreStudio.Web.Controllers var Msg = CheckWipInfoInsert(wipDataViewModel); // 判斷WipKp 順序是否重複 - if (model.WipKps.Where(w => w.WipKpID != -1).GroupBy(g => g.KpSeq).Where(w => w.Count() > 1).Any()) + if (model.WipKps.Count != 0) { - Msg += ",KeyParts 順序有重複 "; + if (model.WipKps.Where(w => w.WipKpID != -1).GroupBy(g => g.KpSeq).Where(w => w.Count() > 1).Any()) + { + Msg += ",KeyParts 順序有重複 "; + } + // KP料號正確 + var kpNameArray = model.WipKps.Select(s => s.KpName).Distinct().ToList(); + foreach(var item in kpNameArray) + { + if (_pcsApi.GetPlmMeterialInfo(item.Trim().ToUpper()).InvokeAsync().Result.Count == 0) + { + Msg += $",KP料號名稱【{item}】在PLM料號檔找不到 "; + } + } } // 判斷SOP是否沒填文件名稱 @@ -3355,7 +3390,7 @@ namespace AMESCoreStudio.Web.Controllers //} } - public async Task GetMAC(string itemno, string wipNo , int planQTY) + public async Task GetMAC(string itemno, string wipNo, int planQTY) { var q = await _pcsApi.GetMACInfo(itemno); diff --git a/AMESCoreStudio.WebApi/Controllers/AMES/PlmMeterialInfoeController.cs b/AMESCoreStudio.WebApi/Controllers/AMES/PlmMeterialInfoeController.cs index b88baf00..b6917737 100644 --- a/AMESCoreStudio.WebApi/Controllers/AMES/PlmMeterialInfoeController.cs +++ b/AMESCoreStudio.WebApi/Controllers/AMES/PlmMeterialInfoeController.cs @@ -45,10 +45,10 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES var plmMeterialInfo = await q.ToListAsync(); - if (plmMeterialInfo == null) - { - return NotFound(); - } + //if (plmMeterialInfo == null) + //{ + // return NotFound(); + //} return plmMeterialInfo; }