private void ValidateRequest_Update(InfoCustomerDTO input) { if (input == null) { throw new UserException(ErrorStatusReturn.REQUEST_NULL); } }
private async Task <ConditionValidateDTO> ValidatePhoneWhenPLateFound(CarDTO carReturn, CheckInforCollectionDTO collectionInfo) { InfoCustomer inforCustomer = await GetInfoCustomerWithIdentityAndPhoneNumberIfHave(collectionInfo); if (inforCustomer == null) { return(new ConditionValidateDTO(StatusCondition.ACCEPT_RE_NEW_BRIEF_CAR, null, carReturn)); } else { InfoCustomerDTO inforReturn = Mapper.Map <InfoCustomerDTO>(inforCustomer); SetStatusForCustomerInforReturn(collectionInfo, inforCustomer, inforReturn); if (string.IsNullOrEmpty(inforCustomer.IdentityNumber)) { if (inforReturn.TransactionCode == carReturn.TransactionCode && !string.IsNullOrEmpty(inforReturn.TransactionCode) && !string.IsNullOrEmpty(carReturn.TransactionCode)) { return(new ConditionValidateDTO(StatusCondition.DENIED)); } return(new ConditionValidateDTO(StatusCondition.ACCEPT_RE_NEW_BRIEF_INFOCUSTOMER_AND_CAR, inforReturn, carReturn)); } else { if (inforReturn.TransactionCode == carReturn.TransactionCode && !string.IsNullOrEmpty(inforReturn.TransactionCode) && !string.IsNullOrEmpty(carReturn.TransactionCode)) { CollectionCarDetailDTO detailInsurance = GetCollectionCarDetailMappingWithCustomer(carReturn.Plate, inforReturn); return(ValidateSecondConditionWithPlateAndPhone(carReturn, inforReturn, collectionInfo, detailInsurance)); } else { return(new ConditionValidateDTO(StatusCondition.ACCEPT_RE_NEW_BRIEF_INFOCUSTOMER_AND_CAR, inforReturn, carReturn)); } } } }
private void IsPlateNumberHaveCollectionInThreeYear(InfoCustomerDTO input) { //foreach (CarDTO car in input.Cars) //{ // string carPlate = car.Plate.ToString().ToUpper(); // Car carFound = _carRepository.FirstOrDefault(x => x.Plate.ToString().ToUpper() == carPlate); // if (carFound != null) // { // CheckCarHaveCollectionInThreeYear(carFound, input); // } //} }
public ApiJsonResult UpdateInfoCustomerAndCar([FromBody] InfoCustomerDTO input) { try { ValidateRequest_Update(input); return(new ApiJsonResult(true, _inforCustomerService.Update(input))); } catch (Exception ex) { return(ProcessException(ex)); } }
private void CheckCarHaveCollectionInThreeYear(Car carFound, InfoCustomerDTO input) { //DateTime currentDate = DateTime.Now; //InfoCustomer inforTransaction = _inforCustomerRepository // .FirstOrDefault(x => x.TransactionCode == carFound.TransactionCode && x.CustomerPhone == input.CustomerPhone); //if (inforTransaction != null) //{ // if ((currentDate.Year - inforTransaction.TransactionDate.Value.Year) <= 3) // { // throw new UserException(ErrorStatusReturn.PLATE_COLLECTED_IN_THREE_YEAR); // } //} }
private async Task <ConditionValidateDTO> ValidatePhoneWhenPLateNotFound(CheckInforCollectionDTO collectionInfo) { InfoCustomer inforCustomer = await GetInfoCustomerWithIdentityAndPhoneNumberIfHave(collectionInfo); if (inforCustomer == null) { return(new ConditionValidateDTO(StatusCondition.ACCEPT_NEW)); } InfoCustomerDTO inforReturn = Mapper.Map <InfoCustomerDTO>(inforCustomer); SetStatusForCustomerInforReturn(collectionInfo, inforCustomer, inforReturn); return(new ConditionValidateDTO(StatusCondition.ACCEPT_RE_NEW_BRIEF_INFOCUSTOMER, inforReturn)); }
private async Task <ConditionValidateDTO> ValidatePhoneAndIdentityWhenPLateNotFound(CheckInforCollectionDTO collectionInfo) { InfoCustomer infoCustomerByPhoneNumber = await GetInfoCustomerWithPhoneNumberIfHave(collectionInfo); InfoCustomer infoCustomerByIdentityNumber = await GetInfoCustomerWithIdentityNumberIfHave(collectionInfo); if (infoCustomerByIdentityNumber != null) // identity high priority { InfoCustomerDTO inforReturn = Mapper.Map <InfoCustomerDTO>(infoCustomerByIdentityNumber); SetStatusForCustomerInforReturn(collectionInfo, infoCustomerByIdentityNumber, inforReturn); return(new ConditionValidateDTO(StatusCondition.ACCEPT_RE_NEW_BRIEF_INFOCUSTOMER, inforReturn)); } if (infoCustomerByPhoneNumber != null) // after that is phone number { InfoCustomerDTO inforReturn = Mapper.Map <InfoCustomerDTO>(infoCustomerByPhoneNumber); SetStatusForCustomerInforReturn(collectionInfo, infoCustomerByPhoneNumber, inforReturn); return(new ConditionValidateDTO(StatusCondition.ACCEPT_RE_NEW_BRIEF_INFOCUSTOMER, inforReturn)); } return(new ConditionValidateDTO(StatusCondition.ACCEPT_NEW)); }
private async Task <ConditionValidateDTO> ValidatePhoneAndIdentityWhenPLateFound(CarDTO carReturn, CheckInforCollectionDTO collectionInfo) { InfoCustomer infoCustomerByPhoneNumber = await GetInfoCustomerWithPhoneNumberIfHave(collectionInfo); InfoCustomer infoCustomerByIdentityNumber = await GetInfoCustomerWithIdentityNumberIfHave(collectionInfo); InfoCustomer infoCustomerByPhoneAndIdentity = await GetInfoCustomerWithIdentityAndPhoneNumberIfHave(collectionInfo); if (infoCustomerByPhoneNumber != null && infoCustomerByIdentityNumber != null) { if (infoCustomerByPhoneAndIdentity.TransactionCode == carReturn.TransactionCode && !string.IsNullOrEmpty(infoCustomerByPhoneAndIdentity.TransactionCode) && !string.IsNullOrEmpty(carReturn.TransactionCode)) { return(new ConditionValidateDTO(StatusCondition.DENIED)); } } if (infoCustomerByIdentityNumber != null) { InfoCustomerDTO inforReturn = Mapper.Map <InfoCustomerDTO>(infoCustomerByIdentityNumber); SetStatusForCustomerInforReturn(collectionInfo, infoCustomerByIdentityNumber, inforReturn); return(new ConditionValidateDTO(StatusCondition.ACCEPT_RE_NEW_BRIEF_INFOCUSTOMER_AND_CAR, inforReturn, carReturn)); } if (infoCustomerByPhoneNumber != null) { InfoCustomerDTO inforReturn = Mapper.Map <InfoCustomerDTO>(infoCustomerByPhoneNumber); SetStatusForCustomerInforReturn(collectionInfo, infoCustomerByPhoneNumber, inforReturn); return(new ConditionValidateDTO(StatusCondition.ACCEPT_RE_NEW_BRIEF_INFOCUSTOMER_AND_CAR, inforReturn, carReturn)); } if (infoCustomerByIdentityNumber == null && infoCustomerByPhoneNumber == null) { return(new ConditionValidateDTO(StatusCondition.ACCEPT_RE_NEW_BRIEF_CAR, null, carReturn)); } return(new ConditionValidateDTO(StatusCondition.ACCEPT_NEW)); }
public InfoCustomerDTO Update(InfoCustomerDTO input) { //var infocustome = Mapper.Map<InfoCustomerDTO, InfoCustomer>(input); // _inforCustomerRepository.Update(infocustome); //if (input.Cars != null) //{ // var oldCarItem = _carRepository.FindAll().Where(n => n.TransactionCode == input.TransactionCode); // if (oldCarItem != null && oldCarItem.Any()) // foreach (var item in oldCarItem) // { // _carRepository.Remove(item); // } // foreach (var item in input.Cars) // { // item.InforCustomerId = input.OrgId; // item.TransactionCode = input.TransactionCode; // var CarDomain = Mapper.Map<CarDTO, Car>(item); // _carRepository.Add(CarDomain); // } //} return(input); }
private ConditionValidateDTO ValidateSecondConditionWithPlateAndIdentity(CarDTO carReturn, InfoCustomerDTO inforReturn, CheckInforCollectionDTO collectionInfo, CollectionCarDetailDTO detailInsurance) { CollectionCar sheetCar = _collectionCarRepository.FindAll().OrderByDescending(x => x.CreatedDate) .FirstOrDefault(x => x.CollectionSheet.InfoCustomerId == inforReturn.Id); if (sheetCar == null) { return(new ConditionValidateDTO(StatusCondition.ACCEPT_RE_NEW_BRIEF_INFOCUSTOMER_AND_CAR, inforReturn, carReturn, detailInsurance)); } DateTime currentDate = DateTime.Now; if ((currentDate.Year - sheetCar.CollectionSheet.TransactionDate.Value.Year) <= 3) { return(new ConditionValidateDTO(StatusCondition.DENIED)); } else { if (detailInsurance == null) { return(new ConditionValidateDTO(StatusCondition.ACCEPT_RE_NEW_BRIEF_INFOCUSTOMER_AND_CAR, inforReturn, carReturn)); } return(new ConditionValidateDTO(StatusCondition.ACCEPT_RE_NEW_BRIEF_INFOCUSTOMER_AND_CAR, inforReturn, carReturn, detailInsurance)); } }
private CollectionCarDetailDTO GetCollectionCarDetailMappingWithCustomer(string plate, InfoCustomerDTO inforReturn) { IQueryable <InfoCustomerWithInsuranceInfoDTO> insuranceInfos = GetInfoCustomerAndInsuranceInfoCollectWithPlate(plate); InfoCustomerWithInsuranceInfoDTO inforFound = insuranceInfos.FirstOrDefault(x => x.InfoCustomer.Id == inforReturn.Id); if (inforFound != null) { return(CheckInsuranceDateExpiredAndReturn(inforFound)); } return(null); }
private void SetStatusForCustomerInforReturn(CheckInforCollectionDTO collectionInfo, InfoCustomer inforCustomer, InfoCustomerDTO inforReturn) { if (inforCustomer.Id > 0) { inforReturn.IsGetDataFromPTI = false; inforReturn.IsGetDataFromIC = true; } else { inforReturn.IsGetDataFromPTI = true; inforReturn.IsGetDataFromIC = false; } if (string.IsNullOrEmpty(collectionInfo.IdentityNumber)) { inforReturn.IdentityNumber = null; } }