public Task <DataResult <DTOCar> > CreateAsync(DTOCar carDTO) { return(Task.Run(() => { var createdCarDTO = new DTOCar(); var passingCarOwnerId = carDTO.CurrentCarOwnerId; if (carRepository.ExistByCondition(x => x.LicensePlates == carDTO.LicensePlates && !string.IsNullOrEmpty(x.LicensePlates))) { return new DataResult <DTOCar> { Errors = new List <ErrorDescriber> { new ErrorDescriber("Existed Car License Plates") }, Target = carDTO } } ; var carEntity = _mapper.Map <Car>(carDTO); carEntity.CreatedDate = DateTime.Now; string garageShortName = garageInfoRepository.GetFirstOrDefault()?.ShortName; var identityNumber = carRepository.Identity(x => x.GenerateId) != null ? carRepository.Identity(x => x.GenerateId).GenerateId : 0; carEntity.Id = garageShortName + IdentityGenerate.Create(identityNumber, new string[] { "", EntityPrefix.Car.ToDefaultValue() }, NumberUnitType.Large); var createdCarEntity = carRepository.Insert(carEntity); _unitOfWork.SaveChanges(); createdCarDTO = _mapper.Map <DTOCar>(createdCarEntity); return new DataResult <DTOCar> { Errors = new List <ErrorDescriber>(), Target = createdCarDTO }; })); }
public Task <DataResult <DTOCustomer> > CreateAsync(DTOCustomer customerDTO, bool isCreateGenerateId = false) { return(Task.Run(() => { var createdCustomerDTO = new DTOCustomer(); //if (customerRepository.ExistByCondition(x => x.Name == customerDTO.Name)) // return new DataResult<DTOCustomer> { Errors = new List<ErrorDescriber> { new ErrorDescriber("Existed Customer Name") }, Target = customerDTO }; //if (customerRepository.ExistByCondition(x => x.Phone == customerDTO.Phone)) // return new DataResult<DTOCustomer> { Errors = new List<ErrorDescriber> { new ErrorDescriber("Existed Customer Phone") }, Target = customerDTO }; //if (customerRepository.ExistByCondition(x => !string.IsNullOrEmpty(x.Email) && x.Email == customerDTO.Email)) // return new DataResult<DTOCustomer> { Errors = new List<ErrorDescriber> { new ErrorDescriber("Existed Customer Email") }, Target = customerDTO }; var customerEntity = _mapper.Map <Customer>(customerDTO); string garageShortName = garageInfoRepository.GetFirstOrDefault()?.ShortName; var identityNumber = customerRepository.Identity(x => x.GenerateId) != null ? customerRepository.Identity(x => x.GenerateId).GenerateId : 0; customerEntity.Id = garageShortName + IdentityGenerate.Create(identityNumber, new string[] { "", EntityPrefix.Customer.ToDefaultValue() }, NumberUnitType.Large); customerEntity.CreatedDate = DateTime.Now; var createdCustomerEntity = customerRepository.Insert(customerEntity); _unitOfWork.SaveChanges(); createdCustomerDTO = _mapper.Map <DTOCustomer>(createdCustomerEntity); return new DataResult <DTOCustomer> { Errors = new List <ErrorDescriber>(), Target = createdCustomerDTO }; })); }
public Task <DataResult <DTOQuotation> > CreateQuotationAsync(DTOQuotation quotationDTO) { return(Task.Run(() => { var createdQuotationDTO = new DTOQuotation(); if (!quotationRepository.ExistByCondition(x => x.Id == quotationDTO.Id)) { var quotation = _mapper.Map <Quotation>(quotationDTO); var lastQuotation = quotationRepository.Identity(x => x.GenerateId); var identityNumber = lastQuotation != null ? lastQuotation.GenerateId : 0; quotation.Id = GetShortNameByBranchId(quotationDTO.BranchId) + IdentityGenerate.Create(identityNumber, new string[] { "", EntityPrefix.Quotation.ToDefaultValue() }, NumberUnitType.Large); quotation.StartDate = DateTime.Now; quotation.EntryDate = DateTime.Now; quotation.StatusId = (int)DTOQuotationStatusName.RequestFromCustomer; quotation.Branch = branchRepository.GetById(quotation.BranchId); quotation.Status = quotationStatusRepository.GetById(quotation.StatusId); var result = quotationRepository.Insert(quotation); _unitOfWork.SaveChanges(); createdQuotationDTO = _mapper.Map <DTOQuotation>(quotation); } return new DataResult <DTOQuotation> { Errors = new List <ErrorDescriber>(), Target = createdQuotationDTO }; })); }
public Task <DataResult <DTOCustomer> > GetCustomerByIdAsync(string customerId) { return(Task.Run(() => { var customerDTO = new DTOCustomer(); var customer = customerRepository.GetById(customerId); if (customer != null) { customerDTO = _mapper.Map <DTOCustomer>(customer); } else { var identityNumber = customerRepository.Identity(x => x.GenerateId) != null ? customerRepository.Identity(x => x.GenerateId).GenerateId : 0; customerDTO.Id = IdentityGenerate.Create(identityNumber, new string[] { "", EntityPrefix.Customer.ToDefaultValue() }, NumberUnitType.Large); } return new DataResult <DTOCustomer> { Errors = new List <ErrorDescriber>(), Target = customerDTO }; })); }
public Task <DataResult <DTOService> > GetServiceByIdAsync(string id) { return(Task.Run(() => { var serviceDTO = new DTOService(); var service = _serviceRepository.GetById(id); if (service != null) { serviceDTO = _mapper.Map <DTOService>(service); } else { var identityNumber = _serviceRepository.Identity(x => x.GenerateId) != null ? _serviceRepository.Identity(x => x.GenerateId).GenerateId : 0; serviceDTO.Id = IdentityGenerate.Create(identityNumber, new string[] { "", EntityPrefix.Service.ToDefaultValue() }, NumberUnitType.Small); } return new DataResult <DTOService> { Errors = new List <ErrorDescriber>(), Target = serviceDTO }; })); }
public Task <DataResult <DTOEmployee> > GetEmployeeByIdAsync(string employeeId) { return(Task.Run(() => { var employeeDTO = new DTOEmployee(); var employee = employeeRepository.GetById(employeeId); if (employee != null) { employeeDTO = _mapper.Map <DTOEmployee>(employee); } else { var identityNumber = employeeRepository.Identity(x => x.GenerateId) != null ? employeeRepository.Identity(x => x.GenerateId).GenerateId : 0; employeeDTO.Id = IdentityGenerate.Create(identityNumber, new string[] { "", EntityPrefix.Employee.ToDefaultValue() }, NumberUnitType.Large); } return new DataResult <DTOEmployee> { Errors = new List <ErrorDescriber>(), Target = employeeDTO }; })); }
public Task <DataResult <DTOBranch> > GetByIdAsync(string id) { return(Task.Run(() => { var branchDTO = new DTOBranch(); var branchRepository = _unitOfWork.GetRepository <Branch>(); var branch = branchRepository.GetById(id); if (branch != null) { branchDTO = _mapper.Map <DTOBranch>(branch); } else { var identityNumber = branchRepository.Identity(x => x.GenerateId) != null ? branchRepository.Identity(x => x.GenerateId).GenerateId : 0; branchDTO.Id = IdentityGenerate.Create(identityNumber, new string[] { "", EntityPrefix.Branch.ToDefaultValue() }, NumberUnitType.Tiny); } return new DataResult <DTOBranch> { Errors = new List <ErrorDescriber>(), Target = branchDTO }; })); }
public Task <DataResult <DTOAccessary> > GetAccessaryByIdAsync(string id) { return(Task.Run(() => { var accessaryDTO = new DTOAccessary(); var accessaryRepository = _unitOfWork.GetRepository <Accessary>(); var service = accessaryRepository.GetById(id); if (service != null) { accessaryDTO = _mapper.Map <DTOAccessary>(service); } else { var identityNumber = accessaryRepository.Identity(x => x.GenerateId) != null ? accessaryRepository.Identity(x => x.GenerateId).GenerateId : 0; accessaryDTO.Id = IdentityGenerate.Create(identityNumber, new string[] { "", EntityPrefix.Accessary.ToDefaultValue() }, NumberUnitType.Medium); } return new DataResult <DTOAccessary> { Errors = new List <ErrorDescriber>(), Target = accessaryDTO }; })); }