deleted duplicate manage employee api #42
@ -153,7 +153,7 @@ namespace MarcoBMS.Services.Controllers
|
|||||||
//}
|
//}
|
||||||
|
|
||||||
[HttpPost("manage")]
|
[HttpPost("manage")]
|
||||||
public async Task<IActionResult> CreateUser([FromForm] CreateUserDto model)
|
public async Task<IActionResult> CreateUser([FromBody] CreateUserDto model)
|
||||||
{
|
{
|
||||||
Guid tenantId = _userHelper.GetTenantId();
|
Guid tenantId = _userHelper.GetTenantId();
|
||||||
if (model == null)
|
if (model == null)
|
||||||
@ -278,132 +278,132 @@ namespace MarcoBMS.Services.Controllers
|
|||||||
}
|
}
|
||||||
return Ok(ApiResponse<object>.SuccessResponse("Success.", responsemessage, 200));
|
return Ok(ApiResponse<object>.SuccessResponse("Success.", responsemessage, 200));
|
||||||
}
|
}
|
||||||
[HttpPost("manage-mobile")]
|
//[HttpPost("manage-mobile")]
|
||||||
public async Task<IActionResult> CreateUserMoblie([FromBody] CreateUserDto model)
|
//public async Task<IActionResult> CreateUserMoblie([FromBody] CreateUserDto model)
|
||||||
{
|
//{
|
||||||
Guid tenantId = _userHelper.GetTenantId();
|
// Guid tenantId = _userHelper.GetTenantId();
|
||||||
if (model == null)
|
// if (model == null)
|
||||||
return BadRequest(ApiResponse<object>.ErrorResponse("Invalid data", "Invaild Data", 400));
|
// return BadRequest(ApiResponse<object>.ErrorResponse("Invalid data", "Invaild Data", 400));
|
||||||
|
|
||||||
if (model.FirstName == null && model.PhoneNumber == null)
|
// if (model.FirstName == null && model.PhoneNumber == null)
|
||||||
return BadRequest(ApiResponse<object>.ErrorResponse("Invalid data", "Invaild Data", 400));
|
// return BadRequest(ApiResponse<object>.ErrorResponse("Invalid data", "Invaild Data", 400));
|
||||||
|
|
||||||
string responsemessage = "";
|
// string responsemessage = "";
|
||||||
|
|
||||||
if (model.Email != null)
|
// if (model.Email != null)
|
||||||
{
|
// {
|
||||||
// Check if user already exists by email
|
// // Check if user already exists by email
|
||||||
IdentityUser? existingUser = await _userHelper.GetRegisteredUser(model.Email);
|
// IdentityUser? existingUser = await _userHelper.GetRegisteredUser(model.Email);
|
||||||
var existingEmployee = await _context.Employees.FirstOrDefaultAsync(e => e.Id == model.Id && e.IsActive == true);
|
// var existingEmployee = await _context.Employees.FirstOrDefaultAsync(e => e.Id == model.Id && e.IsActive == true);
|
||||||
var demo = existingUser != new IdentityUser();
|
// var demo = existingUser != new IdentityUser();
|
||||||
if (existingUser != null)
|
// if (existingUser != null)
|
||||||
{
|
// {
|
||||||
/* Identity user Exists - Create/update employee Employee */
|
// /* Identity user Exists - Create/update employee Employee */
|
||||||
|
|
||||||
// Update Employee record
|
// // Update Employee record
|
||||||
existingEmployee = await _context.Employees.FirstOrDefaultAsync(e => e.Email == model.Email && e.Id == model.Id && e.IsActive == true);
|
// existingEmployee = await _context.Employees.FirstOrDefaultAsync(e => e.Email == model.Email && e.Id == model.Id && e.IsActive == true);
|
||||||
if (existingEmployee != null)
|
// if (existingEmployee != null)
|
||||||
{
|
// {
|
||||||
existingEmployee = GetUpdateEmployeeModel(model, existingEmployee, existingUser);
|
// existingEmployee = GetUpdateEmployeeModel(model, existingEmployee, existingUser);
|
||||||
|
|
||||||
_context.Employees.Update(existingEmployee);
|
// _context.Employees.Update(existingEmployee);
|
||||||
await _context.SaveChangesAsync();
|
// await _context.SaveChangesAsync();
|
||||||
responsemessage = "User updated successfully.";
|
// responsemessage = "User updated successfully.";
|
||||||
}
|
// }
|
||||||
else
|
// else
|
||||||
{
|
// {
|
||||||
// Create Employee record if missing
|
// // Create Employee record if missing
|
||||||
//Employee newEmployee = GetNewEmployeeModel(model, TenantId, existingUser.Id);
|
// //Employee newEmployee = GetNewEmployeeModel(model, TenantId, existingUser.Id);
|
||||||
//_context.Employees.Add(newEmployee);
|
// //_context.Employees.Add(newEmployee);
|
||||||
return Conflict(ApiResponse<object>.ErrorResponse("Email already exist", "Email already exist", 409));
|
// return Conflict(ApiResponse<object>.ErrorResponse("Email already exist", "Email already exist", 409));
|
||||||
}
|
// }
|
||||||
|
|
||||||
|
|
||||||
}
|
// }
|
||||||
else
|
// else
|
||||||
{
|
// {
|
||||||
var user = new ApplicationUser
|
// var user = new ApplicationUser
|
||||||
{
|
// {
|
||||||
UserName = model.Email,
|
// UserName = model.Email,
|
||||||
Email = model.Email,
|
// Email = model.Email,
|
||||||
EmailConfirmed = true,
|
// EmailConfirmed = true,
|
||||||
TenantId = tenantId
|
// TenantId = tenantId
|
||||||
|
|
||||||
};
|
// };
|
||||||
|
|
||||||
// Create Identity User
|
// // Create Identity User
|
||||||
var result = await _userManager.CreateAsync(user, "User@123");
|
// var result = await _userManager.CreateAsync(user, "User@123");
|
||||||
if (!result.Succeeded)
|
// if (!result.Succeeded)
|
||||||
return Ok(ApiResponse<object>.ErrorResponse("Failed to create user", result.Errors, 400));
|
// return Ok(ApiResponse<object>.ErrorResponse("Failed to create user", result.Errors, 400));
|
||||||
|
|
||||||
if (existingEmployee == null)
|
// if (existingEmployee == null)
|
||||||
{
|
// {
|
||||||
Employee newEmployee = GetNewEmployeeModel(model, tenantId, user.Id);
|
// Employee newEmployee = GetNewEmployeeModel(model, tenantId, user.Id);
|
||||||
_context.Employees.Add(newEmployee);
|
// _context.Employees.Add(newEmployee);
|
||||||
|
|
||||||
await _context.SaveChangesAsync();
|
// await _context.SaveChangesAsync();
|
||||||
|
|
||||||
|
|
||||||
/* SEND USER REGISTRATION MAIL*/
|
// /* SEND USER REGISTRATION MAIL*/
|
||||||
var token = await _userManager.GeneratePasswordResetTokenAsync(user);
|
// var token = await _userManager.GeneratePasswordResetTokenAsync(user);
|
||||||
var resetLink = $"{_configuration["AppSettings:WebFrontendUrl"]}/reset-password?token={WebUtility.UrlEncode(token)}";
|
// var resetLink = $"{_configuration["AppSettings:WebFrontendUrl"]}/reset-password?token={WebUtility.UrlEncode(token)}";
|
||||||
if (newEmployee.FirstName != null)
|
// if (newEmployee.FirstName != null)
|
||||||
{
|
// {
|
||||||
await _emailSender.SendResetPasswordEmailOnRegister(user.Email, newEmployee.FirstName, resetLink);
|
// await _emailSender.SendResetPasswordEmailOnRegister(user.Email, newEmployee.FirstName, resetLink);
|
||||||
}
|
// }
|
||||||
|
|
||||||
}
|
// }
|
||||||
else
|
// else
|
||||||
{
|
// {
|
||||||
existingEmployee.Email = model.Email;
|
// existingEmployee.Email = model.Email;
|
||||||
existingEmployee = GetUpdateEmployeeModel(model, existingEmployee, existingUser);
|
// existingEmployee = GetUpdateEmployeeModel(model, existingEmployee, existingUser);
|
||||||
|
|
||||||
_context.Employees.Update(existingEmployee);
|
// _context.Employees.Update(existingEmployee);
|
||||||
await _context.SaveChangesAsync();
|
// await _context.SaveChangesAsync();
|
||||||
|
|
||||||
|
|
||||||
/* SEND USER REGISTRATION MAIL*/
|
// /* SEND USER REGISTRATION MAIL*/
|
||||||
var token = await _userManager.GeneratePasswordResetTokenAsync(user);
|
// var token = await _userManager.GeneratePasswordResetTokenAsync(user);
|
||||||
var resetLink = $"{_configuration["AppSettings:WebFrontendUrl"]}/reset-password?token={WebUtility.UrlEncode(token)}";
|
// var resetLink = $"{_configuration["AppSettings:WebFrontendUrl"]}/reset-password?token={WebUtility.UrlEncode(token)}";
|
||||||
if (existingEmployee.FirstName != null)
|
// if (existingEmployee.FirstName != null)
|
||||||
{
|
// {
|
||||||
await _emailSender.SendResetPasswordEmailOnRegister(user.Email, existingEmployee.FirstName, resetLink);
|
// await _emailSender.SendResetPasswordEmailOnRegister(user.Email, existingEmployee.FirstName, resetLink);
|
||||||
}
|
// }
|
||||||
|
|
||||||
}
|
// }
|
||||||
|
|
||||||
|
|
||||||
responsemessage = "User created successfully. Password reset link is sent to registered email";
|
// responsemessage = "User created successfully. Password reset link is sent to registered email";
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
else
|
// else
|
||||||
{
|
// {
|
||||||
var existingEmployee = await _context.Employees.FirstOrDefaultAsync(e => e.Id == model.Id && e.IsActive == true);
|
// var existingEmployee = await _context.Employees.FirstOrDefaultAsync(e => e.Id == model.Id && e.IsActive == true);
|
||||||
if (existingEmployee != null)
|
// if (existingEmployee != null)
|
||||||
{
|
// {
|
||||||
existingEmployee = GetUpdateEmployeeModel(model, existingEmployee);
|
// existingEmployee = GetUpdateEmployeeModel(model, existingEmployee);
|
||||||
_context.Employees.Update(existingEmployee);
|
// _context.Employees.Update(existingEmployee);
|
||||||
responsemessage = "User updated successfully.";
|
// responsemessage = "User updated successfully.";
|
||||||
}
|
// }
|
||||||
else
|
// else
|
||||||
{
|
// {
|
||||||
// Create Employee record if missing
|
// // Create Employee record if missing
|
||||||
Employee newEmployee = GetNewEmployeeModel(model, tenantId, string.Empty);
|
// Employee newEmployee = GetNewEmployeeModel(model, tenantId, string.Empty);
|
||||||
_context.Employees.Add(newEmployee);
|
// _context.Employees.Add(newEmployee);
|
||||||
}
|
// }
|
||||||
try
|
// try
|
||||||
{
|
// {
|
||||||
await _context.SaveChangesAsync();
|
// await _context.SaveChangesAsync();
|
||||||
}
|
// }
|
||||||
catch (Exception ex)
|
// catch (Exception ex)
|
||||||
{
|
// {
|
||||||
return BadRequest(ex.InnerException?.Message ?? ex.Message);
|
// return BadRequest(ex.InnerException?.Message ?? ex.Message);
|
||||||
}
|
// }
|
||||||
responsemessage = "User created successfully.";
|
// responsemessage = "User created successfully.";
|
||||||
|
|
||||||
}
|
// }
|
||||||
return Ok(ApiResponse<object>.SuccessResponse("Success.", responsemessage, 200));
|
// return Ok(ApiResponse<object>.SuccessResponse("Success.", responsemessage, 200));
|
||||||
}
|
//}
|
||||||
|
|
||||||
[HttpDelete("{id}")]
|
[HttpDelete("{id}")]
|
||||||
public async Task<IActionResult> SuspendEmployee(Guid id)
|
public async Task<IActionResult> SuspendEmployee(Guid id)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user