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); }
/// <summary> /// Will set isValid to false .. will not be deleted /// </summary> /// <param name="contractRateId"></param> /// <returns></returns> public static string Delete(int contractRateId) { string isDeleted = "true"; EasyFreightEntities db = new EasyFreightEntities(); ContractorRate contractRateDb = db.ContractorRates.Where(x => x.ContractorRateId == contractRateId).FirstOrDefault(); contractRateDb.IsValid = false; try { db.SaveChanges(); } catch (Exception ex) { isDeleted = "false" + ex.Message; } return(isDeleted); }