03-02-2025 10:57

feature_dev_harish
Harish Kumar 2025-02-03 10:57:42 +05:30
parent 8f95df0a27
commit f2eafc9149
11 changed files with 241 additions and 177 deletions

View File

@ -47,9 +47,6 @@
<classpathentry kind="src" output="target/test-classes" path="target/generated-test-sources/test-annotations">
<attributes>
<attribute name="optional" value="true"/>
<attribute name="maven.pomderived" value="true"/>
<attribute name="ignore_optional_problems" value="true"/>
<attribute name="m2e-apt" value="true"/>
<attribute name="test" value="true"/>
</attributes>
</classpathentry>

View File

@ -22,75 +22,73 @@ import org.springframework.data.domain.Pageable;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("/api/users")
public class UserController {
private static final Logger log = LoggerFactory.getLogger(UserController.class);
private static final Logger log = LoggerFactory.getLogger(UserController.class);
@Autowired
private UserService userService;
@PostMapping("/createUser")
public ResponseEntity<Response<List<Map<String, Object>>>> createInternalUsers(@RequestBody List<UserDTO> userDTOs) {
log.info("Received request to create/update users: {}", userDTOs);
try {
Response<List<Map<String, Object>>> response = userService.createInternalUsers(userDTOs);
log.info("Users created/updated successfully. Response: {}", response);
return ResponseEntity.status(HttpStatus.CREATED).body(response);
} catch (UserAlreadyExistsException e) {
log.warn("UserAlreadyExistsException occurred: {}", e.getMessage());
return ResponseEntity.status(HttpStatus.CONFLICT)
.body(Response.error(409, "Error: " + e.getMessage()).withData(Collections.emptyList()));
} catch (RuntimeException e) {
log.error("RuntimeException occurred: {}", e.getMessage(), e);
return ResponseEntity.status(HttpStatus.BAD_REQUEST)
.body(Response.error(400, "Error: " + e.getMessage()).withData(Collections.emptyList()));
} catch (Exception e) {
log.error("Unexpected error occurred: {}", e.getMessage(), e);
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR)
.body(Response.error(500, "An unexpected error occurred").withData(Collections.emptyList()));
}
}
@PutMapping("/update")
public ResponseEntity<Response<Map<String, Object>>> updateUser(
@RequestParam(required = false) String userEmpTransCode,
@RequestBody UserUpdateDTO userUpdateDTO) {
log.info("Received request to update user with employeeTransCode: {} or email: {}", userEmpTransCode, userUpdateDTO.getEmailId());
@Autowired
private UserService userService;
// Validate input
if ((userEmpTransCode == null || userEmpTransCode.isEmpty()) &&
(userUpdateDTO.getEmailId() == null || userUpdateDTO.getEmailId().isEmpty())) {
log.warn("Invalid request: Either employeeTransCode or email must be provided.");
return ResponseEntity.status(HttpStatus.BAD_REQUEST)
.body(Response.error(400, "Either employeeTransCode or email must be provided."));
}
@PostMapping("/createUser")
public ResponseEntity<Response<List<Map<String, Object>>>> createInternalUsers(
@RequestBody List<UserDTO> userDTOs) {
log.info("Received request to create/update users: {}", userDTOs);
try {
Response<List<Map<String, Object>>> response = userService.createInternalUsers(userDTOs);
log.info("Users created/updated successfully. Response: {}", response);
return ResponseEntity.status(HttpStatus.CREATED).body(response);
} catch (UserAlreadyExistsException e) {
log.warn("UserAlreadyExistsException occurred: {}", e.getMessage());
return ResponseEntity.status(HttpStatus.CONFLICT)
.body(Response.error(409, "Error: " + e.getMessage()).withData(Collections.emptyList()));
} catch (RuntimeException e) {
log.error("RuntimeException occurred: {}", e.getMessage(), e);
return ResponseEntity.status(HttpStatus.BAD_REQUEST)
.body(Response.error(400, "Error: " + e.getMessage()).withData(Collections.emptyList()));
} catch (Exception e) {
log.error("Unexpected error occurred: {}", e.getMessage(), e);
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR)
.body(Response.error(500, "An unexpected error occurred").withData(Collections.emptyList()));
}
}
try {
// Call the service to handle the update
Response<Map<String, Object>> response = userService.updateUser(userEmpTransCode, userUpdateDTO);
log.info("User updated successfully. Response: {}", response);
return ResponseEntity.status(HttpStatus.OK).body(response);
@PutMapping("/update")
public ResponseEntity<Response<Map<String, Object>>> updateUser(
@RequestParam(required = false) String userEmpTransCode, @RequestBody UserUpdateDTO userUpdateDTO) {
log.info("Received request to update user with employeeTransCode: {} or email: {}", userEmpTransCode,
userUpdateDTO.getEmailId());
} catch (UserNotFoundException e) {
log.warn("User not found: {}", e.getMessage());
return ResponseEntity.status(HttpStatus.NOT_FOUND)
.body(Response.error(404, e.getMessage()));
// Validate input
if ((userEmpTransCode == null || userEmpTransCode.isEmpty())
&& (userUpdateDTO.getEmailId() == null || userUpdateDTO.getEmailId().isEmpty())) {
log.warn("Invalid request: Either employeeTransCode or email must be provided.");
return ResponseEntity.status(HttpStatus.BAD_REQUEST)
.body(Response.error(400, "Either employeeTransCode or email must be provided."));
}
} catch (IllegalArgumentException e) {
log.warn("Invalid input: {}", e.getMessage());
return ResponseEntity.status(HttpStatus.BAD_REQUEST)
.body(Response.error(400, e.getMessage()));
try {
// Call the service to handle the update
Response<Map<String, Object>> response = userService.updateUser(userEmpTransCode, userUpdateDTO);
log.info("User updated successfully. Response: {}", response);
return ResponseEntity.status(HttpStatus.OK).body(response);
} catch (Exception e) {
log.error("Unexpected error occurred while updating user: {}", e.getMessage(), e);
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR)
.body(Response.error(500, "An unexpected error occurred: " + e.getMessage()));
}
}
} catch (UserNotFoundException e) {
log.warn("User not found: {}", e.getMessage());
return ResponseEntity.status(HttpStatus.NOT_FOUND).body(Response.error(404, e.getMessage()));
} catch (IllegalArgumentException e) {
log.warn("Invalid input: {}", e.getMessage());
return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(Response.error(400, e.getMessage()));
} catch (Exception e) {
log.error("Unexpected error occurred while updating user: {}", e.getMessage(), e);
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR)
.body(Response.error(500, "An unexpected error occurred: " + e.getMessage()));
}
}
// @PutMapping("/update")
// public ResponseEntity<String> updateUser(@RequestParam String userEmpTransCode,
@ -106,138 +104,115 @@ public class UserController {
// return response;
// }
@GetMapping("/getallUserWithPagination")
public ResponseEntity<Page<User>> getAllUsers(
@RequestParam(defaultValue = "0") int pageNumber,
@RequestParam(defaultValue = "10") int pageSize) {
log.info("Fetching all users with page: {} and size: {}", pageNumber, pageSize);
@GetMapping("/getallUserWithPagination")
public ResponseEntity<Page<User>> getAllUsers(@RequestParam(defaultValue = "0") int pageNumber,
@RequestParam(defaultValue = "10") int pageSize) {
log.info("Fetching all users with page: {} and size: {}", pageNumber, pageSize);
Pageable pageable = PageRequest.of(pageNumber, pageSize, Sort.by(Sort.Direction.DESC, "lastUpdatedOn"));
Pageable pageable = PageRequest.of(pageNumber, pageSize, Sort.by(Sort.Direction.DESC, "lastUpdatedOn"));
Page<User> users = userService.getAllUsers(pageable);
Page<User> users = userService.getAllUsers(pageable);
log.info("Fetched {} users", users.getTotalElements());
return ResponseEntity.ok(users);
}
log.info("Fetched {} users", users.getTotalElements());
return ResponseEntity.ok(users);
}
@GetMapping("/ActiveOrInactive")
public ResponseEntity<List<User>> getUsersByActive_Inactive(@RequestParam List<String> status) {
log.info("Fetching users by status: {}", status);
List<User> users = userService.getUsersByActive_Inactive(status);
log.info("Fetched {} users for statuses: {}", users.size(), status);
return ResponseEntity.ok(users);
}
@GetMapping("/ActiveOrInactive")
public ResponseEntity<List<User>> getUsersByActive_Inactive(@RequestParam List<String> status) {
log.info("Fetching users by status: {}", status);
List<User> users = userService.getUsersByActive_Inactive(status);
log.info("Fetched {} users for statuses: {}", users.size(), status);
return ResponseEntity.ok(users);
}
@GetMapping("/getAllAndUserWithStatus")
public Response<List<UserDTO>> getUsersByStatus(
@RequestParam(value = "status", required = false) List<String> status) {
@GetMapping("/getAllAndUserWithStatus")
public Response<List<UserDTO>> getUsersByStatus(
@RequestParam(value = "status", required = false) List<String> status) {
log.info("Fetching users with status filters: {}", status);
log.info("Fetching users with status filters: {}", status);
List<UserDTO> users;
List<UserDTO> users;
if (status == null || status.isEmpty()) {
log.info("Fetching all users as no status filter was provided");
users = userService.getAllUsers(); // Fetch all users
} else {
log.info("Fetching users filtered by status: {}", status);
users = userService.getUsersByStatus(status); // Fetch users by status
}
if (status == null || status.isEmpty()) {
log.info("Fetching all users as no status filter was provided");
users = userService.getAllUsers(); // Fetch all users
} else {
log.info("Fetching users filtered by status: {}", status);
users = userService.getUsersByStatus(status); // Fetch users by status
}
log.info("Successfully fetched {} users", users.size());
return Response.success(users).withMessage("Fetched users successfully.");
}
log.info("Successfully fetched {} users", users.size());
return Response.success(users).withMessage("Fetched users successfully.");
}
@GetMapping("/getAllAndUserWithStatusPagination")
public Response<Page<UserDTO>> getUsersWithPagination(
@RequestParam(defaultValue = "0") int pageNumber,
@RequestParam(defaultValue = "10") int pageSize,
@RequestParam(value = "status", required = false) String status) {
@GetMapping("/getAllAndUserWithStatusPagination")
public Response<Page<UserDTO>> getUsersWithPagination(@RequestParam(defaultValue = "0") int pageNumber,
@RequestParam(defaultValue = "10") int pageSize,
@RequestParam(value = "status", required = false) String status) {
log.info("Fetching users with pagination. Page: {}, Size: {}, Status filter: {}", pageNumber, pageSize, status);
log.info("Fetching users with pagination. Page: {}, Size: {}, Status filter: {}", pageNumber, pageSize, status);
Pageable pageable = PageRequest.of(pageNumber, pageSize, Sort.by(Sort.Direction.DESC, "lastUpdatedOn"));
Pageable pageable = PageRequest.of(pageNumber, pageSize, Sort.by(Sort.Direction.DESC, "lastUpdatedOn"));
Page<UserDTO> users;
if (status == null || status.isEmpty()) {
log.info("Fetching all users with pagination");
users = userService.getAllUsersWithPagination(pageable);
} else {
log.info("Fetching users with status filter and pagination");
users = userService.getUsersByStatusWithPagination(status, pageable);
}
Page<UserDTO> users;
if (status == null || status.isEmpty()) {
log.info("Fetching all users with pagination");
users = userService.getAllUsersWithPagination(pageable);
} else {
log.info("Fetching users with status filter and pagination");
users = userService.getUsersByStatusWithPagination(status, pageable);
}
log.info("Successfully fetched {} users with pagination", users.getTotalElements());
return Response.success(users).withMessage("Fetched users successfully.");
}
@PostMapping("/userdetails")
public ResponseEntity<Response<Page<Map<String, Object>>>> getUserDetails(
@RequestBody Map<String, Object> req, Pageable pageable) {
log.info("Received request to fetch user details with filters: {}", req);
try {
// Call the service to fetch user details
Page<Map<String, Object>> userDetails = userService.getUserDetails(req, pageable);
log.info("Successfully fetched {} users with pagination", users.getTotalElements());
return Response.success(users).withMessage("Fetched users successfully.");
}
// Check if the result is empty and respond accordingly
if (userDetails.isEmpty()) {
log.info("No user details found for the provided filters.");
return ResponseEntity.ok(new Response<>(204,"No User details found for the provided filters.", userDetails));
}
@PostMapping("/userdetails")
public ResponseEntity<Page<List<Map<String, Object>>>> getUserDetails(@RequestBody Map<String, Object> req,
Pageable pageable) {
log.info("Received request to fetch user details with filters: {}", req);
return ResponseEntity.status(HttpStatus.MULTI_STATUS).body(userService.getUserDetails(req, pageable));
// Return success response with transporter details
log.info("Successfully fetched user details.");
return ResponseEntity.ok(new Response<>(200,"User details fetched successfully.",userDetails));
} catch (Exception e) {
// Log the exception
log.error("Error fetching user details.", e);
}
// Return error response
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(
new Response<>(500, "An error occurred while fetching user details. Please try again later.", null)
);
}
}
@GetMapping("/userdropdown")
public ResponseEntity<Response<Map<String, Object>>> getDropDownValues() {
try {
// Fetch dropdown values from the service
Map<String, Object> dropDownValues = userService.getDropDownValues();
@GetMapping("/userdropdown")
public ResponseEntity<Response<Map<String, Object>>> getDropDownValues() {
try {
// Fetch dropdown values from the service
Map<String, Object> dropDownValues = userService.getDropDownValues();
// Check if an error occurred in the service layer
if (dropDownValues.containsKey("error")) {
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR)
.body(new Response<>(500, "Failed to fetch dropdown values.", null));
}
// Check if an error occurred in the service layer
if (dropDownValues.containsKey("error")) {
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR)
.body(new Response<>(500, "Failed to fetch dropdown values.", null));
}
// Return successful response
return ResponseEntity.ok(new Response<>(200, "Dropdown values fetched successfully.", dropDownValues));
// Return successful response
return ResponseEntity.ok(new Response<>(200, "Dropdown values fetched successfully.", dropDownValues));
} catch (Exception e) {
// Log the exception and return a generic error response
log.error("Error while fetching dropdown values: {}", e.getMessage());
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR)
.body(new Response<>(500, "An error occurred while fetching dropdown values.", null));
}
}
@GetMapping("/getUserIDByUserName")
} catch (Exception e) {
// Log the exception and return a generic error response
log.error("Error while fetching dropdown values: {}", e.getMessage());
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR)
.body(new Response<>(500, "An error occurred while fetching dropdown values.", null));
}
}
@GetMapping("/getUserIDByUserName")
public ResponseEntity<UserDTO> getUserIDByUserName(@RequestParam String userName) {
try {
log.info("Received request to get Code by key: {}", userName);
UserDTO pmDTO = userService.getUserIDByUserName(userName);
log.info("User fetched successfully.");
return ResponseEntity.status(HttpStatus.CREATED).body(pmDTO);
} catch (Exception e) {
log.error("Unexpected error occurred: {}", e.getMessage(), e);
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(null);
}
}
}

View File

@ -45,7 +45,7 @@ public interface UserRepository extends JpaRepository<User, Integer> {
@Query(value="SELECT user_Id, usertype_id, user_name, user_fname, user_lname, user_email, user_mobile, " +
"user_emp_trans_code, user_added_channel, created_by, last_updated_by, last_updated_on, status FROM UserMaster u " +
"WHERE u.status = 'A' and u.user_name = :userName", nativeQuery = true)
"WHERE u.status = 'A' and u.user_email = :userName", nativeQuery = true)
User getUserIDByUserName(String userName);

View File

@ -48,7 +48,7 @@ public interface UserService {
List<User> getUsersByActive_Inactive(List<String> status);
Page<Map<String, Object>> getUserDetails(Map<String, Object> req, Pageable pageable);
Page<List<Map<String, Object>>> getUserDetails(Map<String, Object> req, Pageable pageable);
Response<Map<String, Object>> updateUser(String userEmpTransCode, UserUpdateDTO userUpdateDTO);

View File

@ -13,7 +13,6 @@ import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
@ -252,8 +251,9 @@ public class UserServiceImpl implements UserService {
}
// Fetch user by employeeTransCode or email
log.info("line 254");
User existingUser = userRepository.findByEmployeeTransCodeOrEmail(employeeTransCode, userUpdateDTO.getEmailId());
log.info("line 256 => "+existingUser);
if (existingUser == null) {
throw new UserNotFoundException("User not found with provided employeeTransCode or email.");
}
@ -455,7 +455,7 @@ public class UserServiceImpl implements UserService {
@Override
public Page<Map<String, Object>> getUserDetails(Map<String, Object> req, Pageable pageable) {
public Page<List<Map<String, Object>>> getUserDetails(Map<String, Object> req, Pageable pageable) {
StringBuffer userQuery = new StringBuffer(
"SELECT u.user_id, u.usertype_id, ut.usertype_name, u.user_name, u.user_fname, u.user_lname, " +
"u.user_email, u.user_mobile, u.user_emp_trans_code, u.user_added_channel, u.status, u.created_on, " +
@ -471,41 +471,43 @@ public class UserServiceImpl implements UserService {
try {
// Add filters dynamically
if (req.containsKey("userName") && req.get("userName") != null && !req.get("userName").toString().isEmpty()) {
if (req.containsKey("userName") && req.get("userName") != null && !req.get("userName").toString().equalsIgnoreCase("")) {
userQuery.append(" AND u.user_name = '").append(req.get("userName").toString()).append("'");
userCountQuery.append(" AND u.user_name = '").append(req.get("userName").toString()).append("'");
}
if (req.containsKey("Email") && req.get("Email") != null && !req.get("Email").toString().isEmpty()) {
if (req.containsKey("Email") && req.get("Email") != null && !req.get("Email").toString().equalsIgnoreCase("")) {
userQuery.append(" AND u.user_email = '").append(req.get("Email").toString()).append("'");
userCountQuery.append(" AND u.user_email = '").append(req.get("Email").toString()).append("'");
}
if (req.containsKey("userTypeName") && req.get("userTypeName") != null && !req.get("userTypeName").toString().isEmpty()) {
if (req.containsKey("userTypeName") && req.get("userTypeName") != null && !req.get("userTypeName").toString().equalsIgnoreCase("")) {
userQuery.append(" AND ut.usertype_name = '").append(req.get("userTypeName").toString()).append("'");
userCountQuery.append(" AND ut.usertype_name = '").append(req.get("userTypeName").toString()).append("'");
}
if (req.containsKey("status") && req.get("status") != null && !req.get("status").toString().isEmpty()) {
if (req.containsKey("status") && req.get("status") != null && !req.get("status").toString().equalsIgnoreCase("")) {
userQuery.append(" AND u.status = '").append(req.get("status").toString()).append("'");
userCountQuery.append(" AND u.status = '").append(req.get("status").toString()).append("'");
}
if (req.containsKey("EmployeeTransCode") && req.get("EmployeeTransCode") != null && !req.get("EmployeeTransCode").toString().isEmpty()) {
if (req.containsKey("EmployeeTransCode") && req.get("EmployeeTransCode") != null && !req.get("EmployeeTransCode").toString().equalsIgnoreCase("")) {
userQuery.append(" AND u.user_emp_trans_code = '").append(req.get("EmployeeTransCode").toString()).append("'");
userCountQuery.append(" AND u.user_emp_trans_code = '").append(req.get("EmployeeTransCode").toString()).append("'");
}
// Add sorting and pagination to the data query
userQuery.append(" ORDER BY ").append(pageable.getSort().toString().replace(":", " "));
userQuery.append(" LIMIT ").append(pageable.getPageSize()).append(" OFFSET ").append(pageable.getOffset());
// userQuery.append(" ORDER BY ").append(pageable.getSort().toString().replace(":", " "));
// userQuery.append(" LIMIT ").append(pageable.getPageSize()).append(" OFFSET ").append(pageable.getOffset());
// Execute queries
log.info("userQuery => {}",userQuery.toString());
log.info("userCountQuery => {}",userCountQuery.toString());
List<Map<String, Object>> result = temp.queryForList(userQuery.toString());
Long totalCount = temp.queryForObject(userCountQuery.toString(), Long.class);
// Return the paginated result
return new PageImpl<>(result, pageable, totalCount);
return new PageImpl<>(List.of(result), pageable, totalCount);
} catch (Exception e) {
log.error("Error while fetching user details: {}", e.getMessage());
return Page.empty();
return null;
}
}

View File

@ -23,6 +23,8 @@ spring.jpa.properties.hibernate.use_sql_comments=true
spring.jpa.properties.hibernate.jdbc.batch_size=20
spring.jpa.properties.hibernate.order_inserts=true
spring.jpa.properties.hibernate.order_updates=true
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
# ===============================
# Logging Configuration

View File

@ -1,5 +1,5 @@
#Generated by Maven Integration for Eclipse
#Sat Feb 01 09:05:48 IST 2025
#Sat Feb 01 17:48:26 IST 2025
artifactId=inbound-user-service
groupId=com.sahyog.app.inbound
m2e.projectLocation=C\:\\MyProject\\CODE\\Source Code\\Git\\Backup\\inbound-user-service

View File

@ -23,6 +23,8 @@ spring.jpa.properties.hibernate.use_sql_comments=true
spring.jpa.properties.hibernate.jdbc.batch_size=20
spring.jpa.properties.hibernate.order_inserts=true
spring.jpa.properties.hibernate.order_updates=true
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
# ===============================
# Logging Configuration

View File

@ -0,0 +1,86 @@
com\sahyog\app\inbound\user\model\UserType1.class
com\sahyog\app\inbound\user\repository\TransporterRepository.class
com\sahyog\app\inbound\user\serviceImpl\UserRoleServiceImpl.class
com\sahyog\app\inbound\user\mapper\UserTypeMapper.class
com\sahyog\app\inbound\user\serviceImpl\MaterialMasterServiceImpl.class
com\sahyog\app\inbound\user\exception\RoleNotFoundException.class
com\sahyog\app\inbound\user\controller\PlantMasterController.class
com\sahyog\app\inbound\user\controller\UserController.class
com\sahyog\app\inbound\user\service\UserPlantService.class
com\sahyog\app\inbound\user\repository\RoleRepository.class
com\sahyog\app\inbound\user\repository\MaterialMasterRepository.class
com\sahyog\app\inbound\user\enums\UserType.class
com\sahyog\app\inbound\user\exception\RoleAlreadyExistsException.class
com\sahyog\app\inbound\user\mapper\RoleMapper.class
com\sahyog\app\inbound\user\serviceImpl\UserPlantServiceImpl.class
com\sahyog\app\inbound\user\exception\UserNotFoundException.class
com\sahyog\app\inbound\user\service\TransporterService.class
com\sahyog\app\inbound\user\dto\TransporterResponse.class
com\sahyog\app\inbound\user\mapper\TransporterMapper.class
com\sahyog\app\inbound\user\controller\UserTypeController.class
com\sahyog\app\inbound\user\dto\MaterialMasterDTO.class
com\sahyog\app\inbound\user\serviceImpl\RoleServiceImpl.class
com\sahyog\app\inbound\user\dto\TransporterUpdateDTO.class
com\sahyog\app\inbound\user\controller\RoleController.class
com\sahyog\app\inbound\user\service\UserService.class
com\sahyog\app\inbound\user\service\RoleService.class
com\sahyog\app\inbound\user\utils\MaterialProcessingHelper.class
com\sahyog\app\inbound\user\exception\UserAlreadyExistsException.class
com\sahyog\app\inbound\user\dto\UserRequestDTO.class
com\sahyog\app\inbound\user\exception\TransporterUpdateException.class
com\sahyog\app\inbound\user\exception\TransporterValidationException.class
com\sahyog\app\inbound\user\filter\TransporterFilters.class
com\sahyog\app\inbound\user\dto\UserTypeDTO.class
com\sahyog\app\inbound\user\utils\UserProcessingHelper.class
com\sahyog\app\inbound\user\dto\PlantDTO.class
com\sahyog\app\inbound\user\service\PlantMasterService.class
com\sahyog\app\inbound\user\utils\TransporterProcessingHelper.class
com\sahyog\app\inbound\user\repository\UserRoleRepository.class
com\sahyog\app\inbound\user\enums\Status.class
com\sahyog\app\inbound\user\mapper\PlantMapper.class
com\sahyog\app\inbound\user\repository\UserRepository.class
com\sahyog\app\inbound\user\utils\UserConstants.class
com\sahyog\app\inbound\user\model\UserPlant.class
com\sahyog\app\inbound\user\model\PlantMaster.class
com\sahyog\app\inbound\user\repository\UserTypeRepository.class
com\sahyog\app\inbound\user\dto\UserDTO.class
com\sahyog\app\inbound\user\service\UserRoleService.class
com\sahyog\app\inbound\user\enums\RoleType.class
com\sahyog\app\inbound\user\serviceImpl\TransporterServiceImpl.class
com\sahyog\app\inbound\user\controller\TransporterController.class
com\sahyog\app\inbound\user\dto\AssignRolesRequestDTO.class
com\sahyog\app\inbound\user\exception\GlobalExceptionHandler.class
com\sahyog\app\inbound\user\model\UserRole.class
com\sahyog\app\inbound\user\dto\UserUpdateDTO.class
com\sahyog\app\inbound\user\exception\CustomException.class
com\sahyog\app\inbound\user\model\Response.class
com\sahyog\app\inbound\user\service\MaterialMasterService.class
com\sahyog\app\inbound\user\controller\UserPlantController.class
com\sahyog\app\inbound\user\dto\AssignPlantsRequestDTO.class
com\sahyog\app\inbound\user\dto\UserRoleDTO.class
com\sahyog\app\inbound\user\dto\RoleDTO.class
com\sahyog\app\inbound\user\dto\UserTypeCreateDTO.class
com\sahyog\app\inbound\user\serviceImpl\PlantMasterServiceImpl.class
com\sahyog\app\inbound\user\model\User.class
com\sahyog\app\inbound\user\controller\MaterialMasterController.class
com\sahyog\app\inbound\user\controller\UserRoleController.class
com\sahyog\app\inbound\user\repository\UserPlantRepository.class
com\sahyog\app\inbound\user\InboundUserServiceApplication.class
com\sahyog\app\inbound\user\exception\TransporterProcessingException.class
com\sahyog\app\inbound\user\model\UserType.class
com\sahyog\app\inbound\user\mapper\MaterialMapper.class
com\sahyog\app\inbound\user\config\CorsConfig.class
com\sahyog\app\inbound\user\exception\TransporterCreationException.class
com\sahyog\app\inbound\user\dto\PlantMasterDTO.class
com\sahyog\app\inbound\user\service\UserTypeService.class
com\sahyog\app\inbound\user\dto\TransporterMasterDto.class
com\sahyog\app\inbound\user\model\MaterialMaster.class
com\sahyog\app\inbound\user\mapper\UserMapper.class
com\sahyog\app\inbound\user\dto\UserPlantDTO.class
com\sahyog\app\inbound\user\model\Role.class
com\sahyog\app\inbound\user\serviceImpl\UserTypeServiceImpl.class
com\sahyog\app\inbound\user\repository\PlantRepository.class
com\sahyog\app\inbound\user\utils\PlantProcessingHelper.class
com\sahyog\app\inbound\user\serviceImpl\UserServiceImpl.class
com\sahyog\app\inbound\user\enums\UserTypeEnum.class
com\sahyog\app\inbound\user\model\Transporter.class