private void SetChange(EX_GROUP_TYPE origin, List <EX_GROUP_TYPE_DETAILS> data, string userId) { var changesData = new Dictionary <string, bool>(); var originExgoodTyplDesc = string.Empty; var goodtypeslist = _repositoryGoodType.Get().ToList(); if (origin.EX_GROUP_TYPE_DETAILS != null) { var orlength = origin.EX_GROUP_TYPE_DETAILS.Count; var currOr = 0; foreach (var or in origin.EX_GROUP_TYPE_DETAILS) { currOr++; originExgoodTyplDesc += or.ZAIDM_EX_GOODTYP.EXT_TYP_DESC; if (currOr < orlength) { originExgoodTyplDesc += ","; } } } var editExgoodTyplDesc = string.Empty; if (data != null) { var newLenght = data.Count; var currNew = 0; foreach (var newdata in data) { currNew++; editExgoodTyplDesc += goodtypeslist.Where(x => x.EXC_GOOD_TYP == newdata.GOODTYPE_ID).Select(x => x.EXT_TYP_DESC).FirstOrDefault(); if (currNew < newLenght) { editExgoodTyplDesc += ","; } } } changesData.Add("Excisable Group Details", originExgoodTyplDesc == editExgoodTyplDesc); foreach (var listChange in changesData) { if (!listChange.Value) { var changes = new CHANGES_HISTORY { FORM_TYPE_ID = Core.Enums.MenuList.GoodsTypeGroup, FORM_ID = origin.EX_GROUP_TYPE_ID.ToString(), FIELD_NAME = listChange.Key, MODIFIED_BY = userId, MODIFIED_DATE = DateTime.Now }; switch (listChange.Key) { case "Excisable Group Details": changes.OLD_VALUE = originExgoodTyplDesc; changes.NEW_VALUE = editExgoodTyplDesc; break; } _changesHistoryBll.AddHistory(changes); } } }
public ActionResult Create(GoodsTypeGroupCreateViewModel model) { if (ModelState.IsValid) { if (_exGroupTypeBll.IsGroupNameExist(model.GroupName)) { ModelState.AddModelError("GroupName", "Group name already exist"); InitCreateModel(model); return(View("Create", model)); } var listGroup = new List <EX_GROUP_TYPE_DETAILS>(); foreach (var detail in model.Details.Where(detail => detail.IsChecked)) { var detailGroupType = new EX_GROUP_TYPE_DETAILS(); detailGroupType.GOODTYPE_ID = detail.GoodTypeId; listGroup.Add(detailGroupType); } var groupType = new EX_GROUP_TYPE(); groupType.GROUP_NAME = model.GroupName; groupType.EX_GROUP_TYPE_DETAILS = listGroup; if (listGroup.Count > 0) { _exGroupTypeBll.Save(groupType); AddMessageInfo(Constans.SubmitMessage.Saved, Enums.MessageInfoType.Success ); return(RedirectToAction("Index")); } ModelState.AddModelError("Details", "Choose at least one type"); } InitCreateModel(model); return(View("Create", model)); }
public void Save(EX_GROUP_TYPE GroupTypes) { _repository.InsertOrUpdate(GroupTypes); _uow.SaveChanges(); }