public Task <DataResult <DTOServiceType> > EditServiceTypeAsync(DTOServiceType serviceTypeDTO) { return(Task.Run(() => { var serviceTypeEntity = _mapper.Map <ServiceType>(serviceTypeDTO); var updatedServiceTypeDTO = new DTOServiceType(); if ((serviceTypeRepository.ExistByCondition(x => (x.Name == serviceTypeEntity.Name && x.Id == serviceTypeEntity.Id))) || (!serviceTypeRepository.ExistByCondition(x => x.Name == serviceTypeEntity.Name))) { var updatedServiceTypeEntity = serviceTypeRepository.Update(serviceTypeEntity); _unitOfWork.SaveChanges(); updatedServiceTypeDTO = _mapper.Map <DTOServiceType>(updatedServiceTypeEntity); return new DataResult <DTOServiceType> { Errors = new List <ErrorDescriber>(), Target = updatedServiceTypeDTO }; } else { return new DataResult <DTOServiceType> { Errors = new List <ErrorDescriber> { new ErrorDescriber("Existed Service Type Name") }, Target = updatedServiceTypeDTO }; } })); }
public Task <DataResult <DTOServiceType> > GetServiceTypeByIdAsync(int id) { return(Task.Run(() => { var serviceTypeDTO = new DTOServiceType(); var serviceType = serviceTypeRepository.GetById(id); if (serviceType != null) { serviceTypeDTO = _mapper.Map <DTOServiceType>(serviceType); } return new DataResult <DTOServiceType> { Errors = new List <ErrorDescriber>(), Target = serviceTypeDTO }; })); }
public Task <DataResult <DTOServiceType> > CreateServiceTypeAsync(DTOServiceType serviceTypeDTO) { return(Task.Run(() => { var createdServiceTypeDTO = new DTOServiceType(); var serviceTypeEntity = _mapper.Map <ServiceType>(serviceTypeDTO); if (!serviceTypeRepository.ExistByCondition(x => x.Name == serviceTypeEntity.Name)) { serviceTypeEntity.ParentId = serviceTypeEntity.ParentId > 0 ? serviceTypeEntity.ParentId : null; var createdServiceTypeEntity = serviceTypeRepository.Insert(serviceTypeEntity); _unitOfWork.SaveChanges(); createdServiceTypeDTO = _mapper.Map <DTOServiceType>(createdServiceTypeEntity); } return new DataResult <DTOServiceType> { Errors = new List <ErrorDescriber>(), Target = createdServiceTypeDTO }; })); }
public async Task <IHttpActionResult> Put([FromBody] DTOServiceType serviceTypeDTO) { return(await ExecuteServiceReturnDefaultResult(() => _serviceBuilder.Parameter.ServiceTypeService.EditServiceTypeAsync(serviceTypeDTO), false)); }