diff --git a/AMESCoreStudio.Web/Controllers/PCSController.cs b/AMESCoreStudio.Web/Controllers/PCSController.cs index 8658db6c..c64789b5 100644 --- a/AMESCoreStudio.Web/Controllers/PCSController.cs +++ b/AMESCoreStudio.Web/Controllers/PCSController.cs @@ -9145,21 +9145,42 @@ namespace AMESCoreStudio.Web.Controllers { if (result1.Select(s => s.SnNum).FirstOrDefault() <= EndNO) { - SerialRuleDetail model = new SerialRuleDetail - { - SerialRuleDetailID = result1.Select(s => s.SerialRuleDetailID).FirstOrDefault(), - ItemNo = result1.Select(s => s.ItemNo).FirstOrDefault(), - Rule = result1.Select(s => s.Rule).FirstOrDefault(), - YNum = result1.Select(s => s.YNum).FirstOrDefault(), - MNum = result1.Select(s => s.MNum).FirstOrDefault(), - WNum = result1.Select(s => s.WNum).FirstOrDefault(), - LotNum = result1.Select(s => s.LotNum).FirstOrDefault(), - SnNum = StartNO - 1 - }; + SerialRuleDetail model = new SerialRuleDetail(); + + model.SerialRuleDetailID = result1.Select(s => s.SerialRuleDetailID).FirstOrDefault(); + model.ItemNo = result1.Select(s => s.ItemNo).FirstOrDefault(); + model.Rule = result1.Select(s => s.Rule).FirstOrDefault(); + model.YNum = result1.Select(s => s.YNum).FirstOrDefault(); + model.MNum = result1.Select(s => s.MNum).FirstOrDefault(); + model.WNum = result1.Select(s => s.WNum).FirstOrDefault(); + model.LotNum = result1.Select(s => s.LotNum).FirstOrDefault(); + model.SnNum = StartNO - 1; + model.UpdateDate = System.DateTime.Now; + var resultPut = await _pcsApi.PutSerialRuleDetail(result1.Select(s => s.SerialRuleDetailID).FirstOrDefault(), JsonConvert.SerializeObject(model)); + + #region 修改oem其他相同規則 + if (result1.Where(w => w.ItemNo.StartsWith("OTHER")).Count() == 0) + { + var AllSerialRule = await _pcsApi.GetSerialRuleDetailbyPCS040(result1.Select(s => s.SerialRuleDetailID).FirstOrDefault()); + AllSerialRule = AllSerialRule.Where(w => w.YNum == model.YNum && w.MNum == model.MNum && w.WNum == model.WNum && w.LotNum == model.LotNum).ToList(); + foreach (var item in AllSerialRule) + { + model.SerialRuleDetailID = item.SerialRuleDetailID; + model.ItemNo = item.ItemNo; + model.Rule = item.Rule; + model.YNum = item.YNum; + model.MNum = item.MNum; + model.WNum = item.WNum; + model.LotNum = item.LotNum; + model.SnNum = StartNO - 1; + model.UpdateDate = System.DateTime.Now; + resultPut = await _pcsApi.PutSerialRuleDetail(result1.Select(s => s.SerialRuleDetailID).FirstOrDefault(), JsonConvert.SerializeObject(model)); + } + } + #endregion } - // var resultDelete = await _pcsApi.DeleteWipBarcodeOther(id); - + if (result != null) { if (result_Barcode.Count > 1) @@ -9423,6 +9444,7 @@ namespace AMESCoreStudio.Web.Controllers WNum = result1.Select(s => s.WNum).FirstOrDefault(), LotNum = result1.Select(s => s.LotNum).FirstOrDefault(), SnNum = InputEndNoQty, + UpdateDate = System.DateTime.Now }; var resultPut = await _pcsApi.PutSerialRuleDetail(result1.Select(s => s.SerialRuleDetailID).FirstOrDefault(), JsonConvert.SerializeObject(model1)); #endregion @@ -9442,6 +9464,7 @@ namespace AMESCoreStudio.Web.Controllers WNum = item.WNum, LotNum = item.LotNum, SnNum = InputEndNoQty, + UpdateDate = System.DateTime.Now }; var resultPut = await _pcsApi.PutSerialRuleDetail(item.SerialRuleDetailID, JsonConvert.SerializeObject(model1));