private MasterEntity GetOutletPriorityEntity(MasterBaseDTO masterBase) { OutletPriorityDTO dto = masterBase as OutletPriorityDTO; OutletPriority entity = new OutletPriority(masterBase.MasterId, masterBase.DateCreated, masterBase.DateLastUpdated, (EntityStatus)masterBase.StatusId); entity.EffectiveDate = dto.EffectiveDate; entity.Outlet = new CostCentreRef {Id = dto.OutletMasterId}; entity.Priority = dto.Priority; entity.Route = _routeRepository.GetById(dto.RouteMasterId); return entity; }
protected Guid CreateOutletPriority(Guid outletId, Guid route, int priority) { OutletPriority p = new OutletPriority(Guid.NewGuid()) { EffectiveDate=DateTime.Now.AddDays(-1), Outlet= new CostCentreRef{ Id=outletId}, Route=_routeRepository.GetById(route), Priority=priority }; return _outletPriorityRepository.Save(p); }
public OutletPriorityDTO Map(OutletPriority priority) { if (priority == null) return null; return Mapper.Map<OutletPriority, OutletPriorityDTO>(priority); }
public HttpResponseMessage OutletPriorityAdd(List<OutletPriorityItem> outletPriorityItems) { var response = new ResponseBool {Success = false}; using (TransactionScope scope = TransactionUtils.CreateTransactionScope()) { try { foreach (var outletPriorityItem in outletPriorityItems) { Guid id = outletPriorityItem.MasterId; OutletPriority existing = _outletPriorityRepository.GetById(id, true); if (existing != null) id = existing.Id; var item = new OutletPriority(id) { Priority = outletPriorityItem.Priority, Route = _routeRepository.GetById(outletPriorityItem.RouteId), Outlet = new CostCentreRef() {Id = outletPriorityItem.OutletId}, EffectiveDate = outletPriorityItem.EffectiveDate, _Status = (EntityStatus) outletPriorityItem.StatusId, _DateCreated = outletPriorityItem.DateCreated, _DateLastUpdated = outletPriorityItem.DateLastUpdated, }; _outletPriorityRepository.Save(item); } response.Success = true; response.ErrorInfo = "Successfully saved outlet priority"; scope.Complete(); } catch (DomainValidationException dve) { string errorMsg = dve.ValidationResults.Results.Aggregate( "Error: Invalid outlet priority fields.\n", (current, msg) => current + ("\t- " + msg.ErrorMessage + ".\n")); response.ErrorInfo = errorMsg; _log.Error(errorMsg, dve); } catch (Exception ex) //any other { response.ErrorInfo = "Error: An error occurred when saving the outlet priority."; _log.Error("Error: An error occurred when saving the outlet priority.", ex); } } return Request.CreateResponse(HttpStatusCode.OK, response); }