From e098132f641310402f871521c01fd737f2e31dcb Mon Sep 17 00:00:00 2001 From: "MSI\\derek" Date: Fri, 31 May 2024 16:49:33 +0800 Subject: [PATCH] update --- .../ffii/tsms/modules/data/entity/Staff.java | 1 + .../tsms/modules/data/service/StaffsService.kt | 12 ++++++------ .../modules/data/web/models/NewStaffRequest.kt | 18 +++++++----------- 3 files changed, 14 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/ffii/tsms/modules/data/entity/Staff.java b/src/main/java/com/ffii/tsms/modules/data/entity/Staff.java index a72fb00..2cb3eff 100644 --- a/src/main/java/com/ffii/tsms/modules/data/entity/Staff.java +++ b/src/main/java/com/ffii/tsms/modules/data/entity/Staff.java @@ -30,6 +30,7 @@ public class Staff extends BaseEntity { @Column(name = "staffId", length = 30) private String staffId; + @NotNull @ManyToOne @JoinColumn(name = "currentPosition") private Position currentPosition; diff --git a/src/main/java/com/ffii/tsms/modules/data/service/StaffsService.kt b/src/main/java/com/ffii/tsms/modules/data/service/StaffsService.kt index add47f1..ad3b6bf 100644 --- a/src/main/java/com/ffii/tsms/modules/data/service/StaffsService.kt +++ b/src/main/java/com/ffii/tsms/modules/data/service/StaffsService.kt @@ -123,12 +123,12 @@ open class StaffsService( } } val currentPosition = positionRepository.findById(req.currentPositionId).orElseThrow() - val joinPosition = positionRepository.findById(req.joinPositionId).orElseThrow() + val joinPosition = if (req.joinPositionId != null && req.joinPositionId > 0L) positionRepository.findById(req.joinPositionId).orElseThrow() else null val company = companyRepository.findById(req.companyId).orElseThrow() - val grade = if (req.gradeId != null && req.gradeId > 0L) gradeRepository.findById(req.gradeId).orElseThrow() else null + val grade = gradeRepository.findById(req.gradeId).orElseThrow() val team = if (req.teamId != null && req.teamId > 0L) teamRepository.findById(req.teamId).orElseThrow() else null val salary = salaryRepository.findBySalaryPoint(req.salaryId).orElseThrow() - val department = departmentRepository.findById(req.departmentId).orElseThrow() + val department = if (req.departmentId != null && req.departmentId > 0L) departmentRepository.findById(req.departmentId).orElseThrow() else null val user = userRepository.saveAndFlush( User().apply { @@ -195,12 +195,12 @@ open class StaffsService( } } val currentPosition = positionRepository.findById(req.currentPositionId).orElseThrow() - val joinPosition = positionRepository.findById(req.joinPositionId).orElseThrow() + val joinPosition = if (req.joinPositionId != null && req.joinPositionId > 0L) positionRepository.findById(req.joinPositionId).orElseThrow() else null val company = companyRepository.findById(req.companyId).orElseThrow() - val grade = if (req.gradeId != null && req.gradeId > 0L) gradeRepository.findById(req.gradeId).orElseThrow() else null + val grade = gradeRepository.findById(req.gradeId).orElseThrow() val team = if (req.teamId != null && req.teamId > 0L) teamRepository.findById(req.teamId).orElseThrow() else null val salary = salaryRepository.findBySalaryPoint(req.salaryId).orElseThrow() - val department = departmentRepository.findById(req.departmentId).orElseThrow() + val department = if (req.departmentId != null && req.departmentId > 0L) departmentRepository.findById(req.departmentId).orElseThrow() else null staff.apply { joinDate = req.joinDate diff --git a/src/main/java/com/ffii/tsms/modules/data/web/models/NewStaffRequest.kt b/src/main/java/com/ffii/tsms/modules/data/web/models/NewStaffRequest.kt index 9ef5d8c..39a8feb 100644 --- a/src/main/java/com/ffii/tsms/modules/data/web/models/NewStaffRequest.kt +++ b/src/main/java/com/ffii/tsms/modules/data/web/models/NewStaffRequest.kt @@ -13,28 +13,24 @@ data class NewStaffRequest( val companyId: Long, @field:NotNull(message = "Staff salaryId cannot be empty") val salaryId: Long, -// @field:NotNull(message = "joinDate cannot be empty") - val joinDate: LocalDate, @field:NotNull(message = "Staff currentPositionId cannot be empty") val currentPositionId: Long, -// @field:NotNull(message = "Staff joinPositionId cannot be empty") - val joinPositionId: Long, -// @field:NotNull(message = "Staff departmentId cannot be empty") - val departmentId: Long, @field:NotBlank(message = "Staff phone1 cannot be empty") val phone1: String, @field:NotBlank(message = "Staff email cannot be empty") val email: String, -// @field:NotBlank(message = "Staff emergContactName cannot be empty") - val emergContactName: String, -// @field:NotBlank(message = "Staff emergContactPhone cannot be empty") - val emergContactPhone: String, @field:NotBlank(message = "Staff employType cannot be empty") val employType: String, + @field:NotBlank(message = "Staff grade cannot be empty") + val gradeId: Long, + val joinDate: LocalDate?, + val joinPositionId: Long?, + val departmentId: Long?, + val emergContactName: String?, + val emergContactPhone: String?, val id: Long?, val skillSetId: List?, - val gradeId: Long?, val phone2: String?, val teamId: Long?, val departDate: LocalDate?,