public async Task <IActionResult> UpdateDriverMasterAsync([FromBody] UpdateDriverMasterManagementAc updateDriverMaster) { var user = await _userManager.FindByNameAsync(User.Identity.Name); return(Ok(await _driverMasterManagementRepository.UpdateDriverMasterAsync(updateDriverMaster, user))); }
/// <summary> /// Method to update driver - SS /// </summary> /// <param name="updateDriverMaster">driver detail</param> /// <param name="loggedInUser">logged in user</param> /// <returns>response</returns> public async Task <DriverMasterManagementResponse> UpdateDriverMasterAsync(UpdateDriverMasterManagementAc updateDriverMaster, ApplicationUser loggedInUser) { if (string.IsNullOrEmpty(updateDriverMaster.Name) && string.IsNullOrEmpty(updateDriverMaster.Name.Trim())) { return new DriverMasterManagementResponse() { HasError = true, Message = "Name can't be empty", ErrorType = DriverMasterManagementResponseType.Name } } ; else if (string.IsNullOrEmpty(updateDriverMaster.MobileNumber) && string.IsNullOrEmpty(updateDriverMaster.MobileNumber.Trim())) { return new DriverMasterManagementResponse() { HasError = true, Message = "Mobile number can't be empty", ErrorType = DriverMasterManagementResponseType.MobileNumber } } ; else if (string.IsNullOrEmpty(updateDriverMaster.LicenseNumber) && string.IsNullOrEmpty(updateDriverMaster.LicenseNumber.Trim())) { return new DriverMasterManagementResponse() { HasError = true, Message = "License number can't be empty", ErrorType = DriverMasterManagementResponseType.LicenseNumber } } ; else if (string.IsNullOrEmpty(updateDriverMaster.LicenseType) && string.IsNullOrEmpty(updateDriverMaster.LicenseType.Trim())) { return new DriverMasterManagementResponse() { HasError = true, Message = "License type can't be empty", ErrorType = DriverMasterManagementResponseType.LicenseType } } ; else if (string.IsNullOrEmpty(updateDriverMaster.PlaceOfIssue) && string.IsNullOrEmpty(updateDriverMaster.PlaceOfIssue.Trim())) { return new DriverMasterManagementResponse() { HasError = true, Message = "Place of issue can't be empty", ErrorType = DriverMasterManagementResponseType.PlaceOfIssue } } ; else if (string.IsNullOrEmpty(updateDriverMaster.IssuingAuthority) && string.IsNullOrEmpty(updateDriverMaster.IssuingAuthority.Trim())) { return new DriverMasterManagementResponse() { HasError = true, Message = "Issuing authority can't be empty", ErrorType = DriverMasterManagementResponseType.IssuingAuthority } } ; else { var instituteId = await _instituteUserMappingHelperService.GetUserCurrentSelectedInstituteIdAsync(loggedInUser.Id, true); var driver = await _iMSDbContext.DriverMasters.FirstOrDefaultAsync(x => x.Id == updateDriverMaster.Id && x.InstituteId == instituteId); if (driver == null) { return new DriverMasterManagementResponse() { HasError = true, Message = "Driver not found", ErrorType = DriverMasterManagementResponseType.Id } } ; else { driver.Address = updateDriverMaster.Address; driver.DateOfBirth = updateDriverMaster.DateOfBirth; driver.DateOfIssue = updateDriverMaster.DateOfIssue; driver.IsDriver = updateDriverMaster.IsDriver; driver.IssuingAuthority = updateDriverMaster.IssuingAuthority; driver.LicenseNumber = updateDriverMaster.LicenseNumber; driver.LicenseType = updateDriverMaster.LicenseType; driver.MobileNumber = updateDriverMaster.MobileNumber; driver.Name = updateDriverMaster.Name; driver.PlaceOfIssue = updateDriverMaster.PlaceOfIssue; driver.Salary = updateDriverMaster.Salary; driver.UpdatedById = loggedInUser.Id; driver.UpdatedOn = DateTime.UtcNow; driver.ValidityTill = updateDriverMaster.ValidityTill; _iMSDbContext.DriverMasters.Update(driver); await _iMSDbContext.SaveChangesAsync(); return(new DriverMasterManagementResponse() { HasError = false, Message = "Driver updated successfully" }); } } }