public ActionResult Add(int id = 0) { #region Check Rights bool hasRights; if (id == 0) //Check export rights { hasRights = AdminHelper.CheckUserAction(ScreenEnum.ContractorRate, ActionEnum.Add); } else { hasRights = AdminHelper.CheckUserAction(ScreenEnum.ContractorRate, ActionEnum.Edit); } if (!hasRights) { return(RedirectToAction("UnAuthorized", "Home", new { area = "" })); } #endregion ContractorRateVm carrRateVm = ContractorRateHelper.GetContractorRateInfo(id); ViewBag.ContractorList = ListCommonHelper.GetContractorList(); ViewBag.ContainerList = ListCommonHelper.GetContainerList(); ViewData["AreaList"] = ListCommonHelper.GetAreaGrouped(); ViewData["CityList"] = ListCommonHelper.GetCityGrouped(); ViewData["CurrencyList"] = ListCommonHelper.GetCurrencyList(); return(View(carrRateVm)); }
private static bool CheckIfActiveRate(ContractorRateVm contractRateVm) { bool isActive = false; int contractId, containerTypeId, contractRateId; int? fromAreaId, toAreaId; contractId = contractRateVm.ContractorId; fromAreaId = contractRateVm.FromAreaId; toAreaId = contractRateVm.ToAreaId; containerTypeId = contractRateVm.ContainerTypeId; contractRateId = contractRateVm.ContractorRateId; EasyFreightEntities db = new EasyFreightEntities(); if (contractRateId == 0) { isActive = db.ContractorRates.Any(x => x.ContractorId == contractId && x.ContainerTypeId == containerTypeId && x.FromAreaId == fromAreaId && x.ToAreaId == toAreaId && x.IsValid == true); } else { isActive = db.ContractorRates.Any(x => x.ContractorId == contractId && x.ContainerTypeId == containerTypeId && x.FromAreaId == fromAreaId && x.ToAreaId == toAreaId && x.ContractorRateId != contractRateId && x.IsValid == true); } return(isActive); }
public static string AddEditContractorRate(ContractorRateVm contractRateVm) { string isSaved = "true"; EasyFreightEntities db = new EasyFreightEntities(); ContractorRate contractRateDb; bool isSameActive = CheckIfActiveRate(contractRateVm); if (isSameActive) { return("false. Another rate is active with same data"); } int contractRateVmId = contractRateVm.ContractorRateId; if (contractRateVmId == 0) { contractRateDb = new ContractorRate(); } else { contractRateDb = db.ContractorRates.Where(x => x.ContractorRateId == contractRateVmId).FirstOrDefault(); } Mapper.CreateMap <ContractorRateVm, ContractorRate>() .ForMember(x => x.Contractor, y => y.Ignore()); Mapper.Map(contractRateVm, contractRateDb); if (contractRateVmId == 0) { db.ContractorRates.Add(contractRateDb); } try { db.SaveChanges(); } catch (DbEntityValidationException e) { isSaved = "false " + e.Message; } catch (Exception e) { isSaved = "false " + e.Message; } return(isSaved); }
public static ContractorRateVm GetContractorRateInfo(int contractRateId) { ContractorRateVm contractRateVm = new ContractorRateVm(); if (contractRateId == 0) { return(contractRateVm); } EasyFreightEntities db = new EasyFreightEntities(); ContractorRate contractRateDb = db.ContractorRates.Where(x => x.ContractorRateId == contractRateId).FirstOrDefault(); Mapper.CreateMap <ContractorRate, ContractorRateVm>().IgnoreAllNonExisting(); Mapper.CreateMap <Contractor, ContractorVm>().IgnoreAllNonExisting(); Mapper.Map(contractRateDb, contractRateVm); return(contractRateVm); }
public ActionResult AddEditContractorRate(ContractorRateVm carrRateVm) { string isSaved = ContractorRateHelper.AddEditContractorRate(carrRateVm); return(Json(isSaved)); }