public async Task <ValidationResult> Create(MobileRepair mobileRepair) { var validationResult = new ValidationResult(); try { var alreadyCreated = await MobileRepairRequestAlreadyExists(mobileRepair.MobileNumber); if (!alreadyCreated.Succeeded) { return(alreadyCreated); } mobileRepair.MobileRepairStateId = (int)MobileRepairRequestState.Created; var data = await _mobileDataService.CreateGetAsync(mobileRepair); await CreateMobileCoupon(mobileRepair.MobileNumber, mobileRepair.CouponCode); var message = $"Your request to repair is created.Request id :{data.MobileRepairId}. mumbile team will contact you on {data.MobileNumber}. Thank you for choosing mumbile.com"; _smsBusinessService.SendSMS(mobileRepair.MobileNumber.ToString(), message); validationResult.Message = "Request created successfully."; validationResult.Succeeded = true; } catch (Exception ex) { validationResult.Succeeded = false; validationResult.Message = ex.Message; } return(validationResult); }
public async Task <ActionResult> Create(MobileRepairViewModel model) { var mobileRepair = new MobileRepair() { CouponCode = model.CouponCode, Description = model.Description, MobileNumber = model.MobileNumber, ModelName = model.ModelName }; var otpResult = await _otpBusinessService.IsValidOtp(model.OTP, model.MobileNumber, (int)OtpReason.MobileRepair, DateTime.UtcNow); if (!otpResult.Succeeded) { return(this.Json(otpResult)); } if (!string.IsNullOrEmpty(model.CouponCode)) { var couponCodeResult = await _couponCodeBusinessService.IsValidCoupon(model.MobileNumber, model.CouponCode); if (!couponCodeResult.Succeeded) { return(this.Json(couponCodeResult)); } } var mobileRepairResult = await _mobileRepairBusinessService.Create(mobileRepair); return(this.JsonNet(mobileRepairResult)); }
public async Task <ValidationResult <MobileRepair> > UpdateMobileRepair(MobileRepair mobileRepair) { var validationResult = new ValidationResult <MobileRepair>(); try { mobileRepair.AppointmentDate = mobileRepair.AppointmentDate.CombineDateTime(mobileRepair.AppointmentTime); await _mobileDataService.UpdateAsync(mobileRepair); validationResult.Succeeded = true; } catch (Exception e) { validationResult.Succeeded = true; validationResult.Message = e.Message; } return(validationResult); }