public void Delete(AscmGenerateTaskRule ascmGenerateTaskRule) { try { YnDaoHelper.GetInstance().nHibernateHelper.Delete<AscmGenerateTaskRule>(ascmGenerateTaskRule); } catch (Exception ex) { YnBaseClass2.Helper.LogHelper.GetLog().Error("删除失败(Delete AscmGenerateTaskRule)", ex); throw ex; } }
public ContentResult LogisticsGenerateTaskRuleSave(AscmGenerateTaskRule ascmGenerateTaskRule_Model, int? id) { JsonObjectResult jsonObjectReuslt = new JsonObjectResult(); try { string userName = string.Empty; if (User.Identity.IsAuthenticated) { userName = User.Identity.Name; } AscmGenerateTaskRule ascmGenerateTaskRule = null; if (id.HasValue) { ascmGenerateTaskRule = AscmGenerateTaskRuleService.GetInstance().Get(id.Value); ascmGenerateTaskRule.modifyTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm"); ascmGenerateTaskRule.modifyUser = userName; } else { ascmGenerateTaskRule = new AscmGenerateTaskRule(); int maxId = YnDaoHelper.GetInstance().nHibernateHelper.GetMaxId("select max(id) from AscmGenerateTaskRule"); ascmGenerateTaskRule.id = ++maxId; ascmGenerateTaskRule.createUser = userName; ascmGenerateTaskRule.createTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm"); ascmGenerateTaskRule.modifyUser = userName; ascmGenerateTaskRule.modifyTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm"); } if (ascmGenerateTaskRule == null) throw new Exception("保存生成任务规则失败!"); ascmGenerateTaskRule.identificationId = ascmGenerateTaskRule_Model.identificationId; ascmGenerateTaskRule.ruleType = ascmGenerateTaskRule_Model.ruleType; ascmGenerateTaskRule.ruleCode = ascmGenerateTaskRule_Model.ruleCode; ascmGenerateTaskRule.generateMode = ascmGenerateTaskRule_Model.generateMode; ascmGenerateTaskRule.isEnable = ascmGenerateTaskRule_Model.isEnable; ascmGenerateTaskRule.relatedRanker = ascmGenerateTaskRule_Model.relatedRanker; ascmGenerateTaskRule.others = ascmGenerateTaskRule_Model.others; ascmGenerateTaskRule.tip = ascmGenerateTaskRule_Model.tip; ascmGenerateTaskRule.isEnable = "是"; ascmGenerateTaskRule.personName2 = ascmGenerateTaskRule_Model.personName2; ascmGenerateTaskRule.description = ascmGenerateTaskRule_Model.description; switch (ascmGenerateTaskRule.ruleType) { case "TYPEOFPRESTOCK": { ascmGenerateTaskRule.generateMode = "PRODUCTLINE,SUBINVENTORY,TASKTIME,MATERIAL"; ascmGenerateTaskRule.description = "按同一产线,同一子库,同一时间,同一物料合并"; ascmGenerateTaskRule.priority = 3; } break; case "TYPEOFMIXSTOCK": { ascmGenerateTaskRule.generateMode = "PRODUCTLINE,SUBINVENTORY,TASKTIME"; ascmGenerateTaskRule.description = "按同一产线,同一子库,同一时间合并"; ascmGenerateTaskRule.priority = 3; } break; case "TYPEOFWAREHOUSE": { if (ascmGenerateTaskRule.identificationId == 1) { ascmGenerateTaskRule.generateMode = "SUBINVENTORY,PRODUCTLINE,TASKTIME"; ascmGenerateTaskRule.description = "按指定子库,同一产线,同一时间合并"; } else if (ascmGenerateTaskRule.identificationId == 2) { ascmGenerateTaskRule.generateMode = "SUBINVENTORY"; ascmGenerateTaskRule.description = "按同一子库合并"; } ascmGenerateTaskRule.priority = 2; } break; case "TYPEOFMATERIAL": { ascmGenerateTaskRule.generateMode = "MATERIAL,PRODUCTLINE,SUBINVENTORY,TASKTIME,"; ascmGenerateTaskRule.description = "按指定物料,同一产线,同一子库,同一时间合并"; ascmGenerateTaskRule.priority = 1; } break; default: { ascmGenerateTaskRule.generateMode = "MATERIAL,PRODUCTLINE,SUBINVENTORY,TASKTIME,"; ascmGenerateTaskRule.description = "按指定物料,同一产线,同一子库,同一时间合并"; } break; } AscmGenerateTaskRuleService.GetInstance().Save(ascmGenerateTaskRule); jsonObjectReuslt.result = true; jsonObjectReuslt.message = ""; jsonObjectReuslt.id = ascmGenerateTaskRule.id.ToString(); jsonObjectReuslt.entity = ascmGenerateTaskRule; } catch (Exception ex) { jsonObjectReuslt.result = false; jsonObjectReuslt.message = ex.Message; } string sReturn = JsonConvert.SerializeObject(jsonObjectReuslt); return Content(sReturn); }
//判断规则及指定关系人 public bool IsJudgeCodeAndRanker(AscmGenerateTaskRule ascmGenerateTaskRule, AscmGetMaterialTask ascmGetMaterialTask, string warehouseId, string docnumber, bool isRule, bool isRaner) { if (!string.IsNullOrEmpty(ascmGenerateTaskRule.ruleCode)) { string[] myArray = ascmGenerateTaskRule.ruleCode.Split('&'); string warehouseString = myArray[0].Substring(myArray[0].IndexOf("(") + 1, myArray[0].IndexOf(")") - myArray[0].IndexOf("(") - 1); string materialString = myArray[1].Substring(myArray[1].IndexOf("(") + 1, myArray[1].IndexOf(")") - myArray[1].IndexOf("(") - 1); if (warehouseString.Length > 0 && warehouseString.IndexOf(warehouseId) > -1) { #region if (materialString.Length > 0) { if (materialString.IndexOf("|") > -1) { string[] mtlArray = materialString.Split('|'); foreach (string mtl in mtlArray) { if (mtl.IndexOf(warehouseId) > -1) { string material = mtl.Substring(mtl.IndexOf(":") + 1, mtl.Length - mtl.IndexOf(":") - 1); if (material.IndexOf("%") > -1) { string[] materialArray = material.Split('%'); foreach (string item in materialArray) { if (item == docnumber.Substring(0, item.Length)) { isRule = true; break; } } } else { if (material == docnumber.Substring(0, material.Length)) { isRule = true; } } } } } else { if (materialString.IndexOf(warehouseId) > -1) { string material = materialString.Substring(materialString.IndexOf(":") + 1, materialString.Length - materialString.IndexOf(":") - 1); if (material.IndexOf("%") > -1) { string[] materialArray = material.Split('%'); foreach (string item in materialArray) { if (item == docnumber.Substring(0, item.Length)) { isRule = true; break; } } } else { if (material == docnumber.Substring(0, material.Length)) { isRule = true; } } } } } else { isRule = true; } #endregion } } else { isRule = true; } if (!string.IsNullOrEmpty(ascmGenerateTaskRule.relatedRanker)) { if (ascmGenerateTaskRule.relatedRanker == ascmGetMaterialTask.rankerId) isRaner = true; } else { isRaner = true; } return (isRule && isRaner); }
public void Update(AscmGenerateTaskRule ascmGenerateTaskRule) { try { using (ITransaction tx = YnDaoHelper.GetInstance().nHibernateHelper.GetCurrentSession().BeginTransaction()) { try { YnDaoHelper.GetInstance().nHibernateHelper.Update<AscmGenerateTaskRule>(ascmGenerateTaskRule); tx.Commit();//正确执行提交 } catch (Exception ex) { tx.Rollback();//回滚 YnBaseClass2.Helper.LogHelper.GetLog().Error("修改失败(Update AscmGenerateTaskRule)", ex); throw ex; } } } catch (Exception ex) { YnBaseClass2.Helper.LogHelper.GetLog().Error("修改失败(Update AscmGenerateTaskRule)", ex); throw ex; } }