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
                };
            }));
        }
Esempio n. 4
0
 public async Task <IHttpActionResult> Put([FromBody] DTOServiceType serviceTypeDTO)
 {
     return(await ExecuteServiceReturnDefaultResult(() => _serviceBuilder.Parameter.ServiceTypeService.EditServiceTypeAsync(serviceTypeDTO), false));
 }