Browse Source

员工关系相关接口修改

zhaopeiqing 7 months ago
parent
commit
d7c12b2b54
28 changed files with 298 additions and 25 deletions
  1. 5 1
      yudao-module-personnel/yudao-module-employee-api/src/main/java/cn/iocoder/yudao/module/employee/api/dto/EmployeePageReqDTO.java
  2. 5 1
      yudao-module-personnel/yudao-module-employee-api/src/main/java/cn/iocoder/yudao/module/employee/api/dto/EmployeeQueryReqDTO.java
  3. 7 0
      yudao-module-personnel/yudao-module-employee-api/src/main/java/cn/iocoder/yudao/module/employee/api/dto/EmployeeRespDTO.java
  4. 8 0
      yudao-module-personnel/yudao-module-employee-biz/src/main/java/cn/iocoder/yudao/module/employee/controller/admin/info/vo/EmployeeInfoHistoryRespVO.java
  5. 2 4
      yudao-module-personnel/yudao-module-employee-biz/src/main/java/cn/iocoder/yudao/module/employee/service/info/EmployeeInfoServiceImpl.java
  6. 5 0
      yudao-module-personnel/yudao-module-relations-biz/pom.xml
  7. 12 0
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/contract/vo/RelationsContractRespVO.java
  8. 0 2
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/contract/vo/RelationsContractSaveReqVO.java
  9. 19 1
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/conversion/RelationsConversionController.java
  10. 6 0
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/conversion/vo/RelationsConversionRespVO.java
  11. 0 2
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/conversion/vo/RelationsConversionSaveReqVO.java
  12. 19 1
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/entry/RelationsEntryController.java
  13. 1 1
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/entry/vo/RelationsEntryPageReqVO.java
  14. 7 1
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/entry/vo/RelationsEntryRespVO.java
  15. 1 3
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/entry/vo/RelationsEntrySaveReqVO.java
  16. 20 1
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/renew/RelationsRenewController.java
  17. 6 0
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/renew/vo/RelationsRenewRespVO.java
  18. 0 2
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/renew/vo/RelationsRenewSaveReqVO.java
  19. 20 1
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/turnover/RelationsTurnoverController.java
  20. 6 0
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/turnover/vo/RelationsTurnoverRespVO.java
  21. 0 2
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/turnover/vo/RelationsTurnoverSaveReqVO.java
  22. 8 0
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/dal/dataobject/contract/RelationsContractDO.java
  23. 2 2
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/dal/dataobject/entry/RelationsEntryDO.java
  24. 19 0
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/service/contract/RelationsContractServiceImpl.java
  25. 30 0
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/service/conversion/RelationsConversionServiceImpl.java
  26. 30 0
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/service/entry/RelationsEntryServiceImpl.java
  27. 30 0
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/service/renew/RelationsRenewServiceImpl.java
  28. 30 0
      yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/service/turnover/RelationsTurnoverServiceImpl.java

+ 5 - 1
yudao-module-personnel/yudao-module-employee-api/src/main/java/cn/iocoder/yudao/module/employee/api/dto/EmployeePageReqDTO.java

@@ -11,6 +11,10 @@ import lombok.Data;
 @Data
 public class EmployeePageReqDTO extends PageParam {
 
+    /**
+     * 员工ID
+     */
+    private String id;
     /**
      * 姓名
      */
@@ -22,7 +26,7 @@ public class EmployeePageReqDTO extends PageParam {
     /**
      * 员工状态
      */
-    private Integer employeeStatus;
+    private String employeeStatus;
     /**
      * 状态
      */

+ 5 - 1
yudao-module-personnel/yudao-module-employee-api/src/main/java/cn/iocoder/yudao/module/employee/api/dto/EmployeeQueryReqDTO.java

@@ -10,6 +10,10 @@ import lombok.Data;
 @Data
 public class EmployeeQueryReqDTO {
 
+    /**
+     * 员工ID
+     */
+    private Long id;
     /**
      * 姓名
      */
@@ -21,7 +25,7 @@ public class EmployeeQueryReqDTO {
     /**
      * 员工状态
      */
-    private Integer employeeStatus;
+    private String employeeStatus;
     /**
      * 状态
      */

+ 7 - 0
yudao-module-personnel/yudao-module-employee-api/src/main/java/cn/iocoder/yudao/module/employee/api/dto/EmployeeRespDTO.java

@@ -1,5 +1,6 @@
 package cn.iocoder.yudao.module.employee.api.dto;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.*;
 
 import java.math.BigDecimal;
@@ -84,15 +85,21 @@ public class EmployeeRespDTO {
     /**
      * 最新合同开始日期
      */
+    @JsonFormat(pattern = "yyyy-MM-dd")
     private LocalDate contractStartDate;
 
     /**
      * 最新合同结束日期
      */
+    @JsonFormat(pattern = "yyyy-MM-dd")
     private LocalDate contractEndDate;
     /**
      * 用户ID
      */
     private Long userId;
+    /**
+     * 员工状态
+     */
+    private String employeeStatus;
 
 }

+ 8 - 0
yudao-module-personnel/yudao-module-employee-biz/src/main/java/cn/iocoder/yudao/module/employee/controller/admin/info/vo/EmployeeInfoHistoryRespVO.java

@@ -1,5 +1,6 @@
 package cn.iocoder.yudao.module.employee.controller.admin.info.vo;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.*;
 
@@ -47,14 +48,17 @@ public class EmployeeInfoHistoryRespVO {
 
     @Schema(description = "入职时间")
     @ExcelProperty("入职时间")
+    @JsonFormat(pattern = "yyyy-MM-dd")
     private LocalDate entryDate;
 
     @Schema(description = "试用期到期时间")
     @ExcelProperty("试用期到期时间")
+    @JsonFormat(pattern = "yyyy-MM-dd")
     private LocalDate probationEndDate;
 
     @Schema(description = "离职时间")
     @ExcelProperty("离职时间")
+    @JsonFormat(pattern = "yyyy-MM-dd")
     private LocalDate departureDate;
 
     @Schema(description = "离职原因", example = "不喜欢")
@@ -103,6 +107,7 @@ public class EmployeeInfoHistoryRespVO {
 
     @Schema(description = "毕业时间")
     @ExcelProperty("毕业时间")
+    @JsonFormat(pattern = "yyyy-MM-dd")
     private LocalDate graduationDate;
 
     @Schema(description = "银行卡名称", example = "张三")
@@ -127,6 +132,7 @@ public class EmployeeInfoHistoryRespVO {
 
     @Schema(description = "出生日期")
     @ExcelProperty("出生日期")
+    @JsonFormat(pattern = "yyyy-MM-dd")
     private LocalDate birthDate;
 
     @Schema(description = "婚姻状况", example = "1")
@@ -143,6 +149,7 @@ public class EmployeeInfoHistoryRespVO {
 
     @Schema(description = "参加工作时间")
     @ExcelProperty("参加工作时间")
+    @JsonFormat(pattern = "yyyy-MM-dd")
     private LocalDate workStartDate;
 
     @Schema(description = "薪酬")
@@ -191,6 +198,7 @@ public class EmployeeInfoHistoryRespVO {
 
     @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
     @ExcelProperty("创建时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private LocalDateTime createTime;
 
     @Schema(description = "租户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "10115")

+ 2 - 4
yudao-module-personnel/yudao-module-employee-biz/src/main/java/cn/iocoder/yudao/module/employee/service/info/EmployeeInfoServiceImpl.java

@@ -212,14 +212,12 @@ public class EmployeeInfoServiceImpl implements EmployeeInfoService {
         historySaveReqVO.setId(null);
         employeeInfoHistoryService.createInfoHistory(historySaveReqVO);// 插入历史数据
         // 更新
-        if(updateReqVO.getPostId() != null
-                && !updateReqVO.getPostId().equals(employeeInfoDO.getPostId())) {
+        if(updateReqVO.getPostId() != null) {
             PostDO post = postService.getPost(updateReqVO.getPostId());
             if (post == null) {
                 throw exception(POST_NOT_FOUND);
             }
-            employeeInfoDO.setPostId(updateReqVO.getPostId());
-            employeeInfoDO.setPosition(post.getName());
+            updateReqVO.setPosition(post.getName());
         }
         EmployeeInfoDO updateObj = BeanUtils.toBean(updateReqVO, EmployeeInfoDO.class);
         return infoMapper.updateById(updateObj);

+ 5 - 0
yudao-module-personnel/yudao-module-relations-biz/pom.xml

@@ -22,6 +22,11 @@
             <artifactId>yudao-module-relations-api</artifactId>
             <version>${revision}</version>
         </dependency>
+        <dependency>
+            <groupId>cn.iocoder.boot</groupId>
+            <artifactId>yudao-module-employee-api</artifactId>
+            <version>${revision}</version>
+        </dependency>
 
         <!-- 业务组件 -->
         <dependency>

+ 12 - 0
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/contract/vo/RelationsContractRespVO.java

@@ -1,6 +1,7 @@
 package cn.iocoder.yudao.module.relations.controller.admin.contract.vo;
 
 import cn.iocoder.yudao.module.infra.api.file.dto.FileDTO;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.*;
 
@@ -53,10 +54,12 @@ public class RelationsContractRespVO {
 
     @Schema(description = "合同开始日期", requiredMode = Schema.RequiredMode.REQUIRED)
     @ExcelProperty("合同开始日期")
+    @JsonFormat(pattern = "yyyy-MM-dd")
     private LocalDate contractStartDate;
 
     @Schema(description = "合同结束日期")
     @ExcelProperty("合同结束日期")
+    @JsonFormat(pattern = "yyyy-MM-dd")
     private LocalDate contractEndDate;
 
     @Schema(description = "合同期限")
@@ -71,8 +74,17 @@ public class RelationsContractRespVO {
     @ExcelProperty("状态")
     private Integer status;
 
+    @Schema(description = "创建人员工id", example = "11670")
+    @ExcelProperty("创建人员工id")
+    private Long creatorEmployeeId;
+
+    @Schema(description = "创建人员工姓名", example = "赵六")
+    @ExcelProperty("创建人员工姓名")
+    private String creatorEmployeeName;
+
     @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
     @ExcelProperty("创建时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private LocalDateTime createTime;
 
     @Schema(description = "员工ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "31256")

+ 0 - 2
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/contract/vo/RelationsContractSaveReqVO.java

@@ -57,7 +57,6 @@ public class RelationsContractSaveReqVO {
     private String remarks;
 
     @Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
-//    @NotNull(message = "状态不能为空")
     private Integer status;
 
     @Schema(description = "员工ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "31256")
@@ -65,7 +64,6 @@ public class RelationsContractSaveReqVO {
     private Long employeeId;
 
     @Schema(description = "租户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "4014")
-    @NotNull(message = "租户编号不能为空")
     private Long tenantId;
 
     @Schema(description = "附件主键id", example = "[1, 2]")

+ 19 - 1
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/conversion/RelationsConversionController.java

@@ -1,5 +1,8 @@
 package cn.iocoder.yudao.module.relations.controller.admin.conversion;
 
+import cn.iocoder.yudao.module.system.api.dept.DeptApi;
+import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -37,6 +40,8 @@ public class RelationsConversionController {
 
     @Resource
     private RelationsConversionService conversionService;
+    @Resource
+    private DeptApi deptApi;
 
     @PostMapping("/create")
     @Operation(summary = "创建转正信息")
@@ -75,7 +80,20 @@ public class RelationsConversionController {
     @PreAuthorize("@ss.hasPermission('relations:conversion:query')")
     public CommonResult<PageResult<RelationsConversionRespVO>> getConversionPage(@Valid RelationsConversionPageReqVO pageReqVO) {
         PageResult<RelationsConversionDO> pageResult = conversionService.getConversionPage(pageReqVO);
-        return success(BeanUtils.toBean(pageResult, RelationsConversionRespVO.class));
+        PageResult<RelationsConversionRespVO> result = BeanUtils.toBean(pageResult, RelationsConversionRespVO.class);
+        if (result != null && result.getList() != null && result.getList().size() > 0) {
+            result.getList().forEach(respVO -> {
+                // 部门
+                if (respVO.getDeptId() != null) {
+                    DeptRespDTO dept = deptApi.getDept(respVO.getDeptId());
+                    respVO.setDeptName(dept.getName());
+                    if (dept != null && StringUtils.isNotBlank(dept.getName())) {
+                        respVO.setDeptName(dept.getName());
+                    }
+                }
+            });
+        }
+        return success(result);
     }
 
     @GetMapping("/export-excel")

+ 6 - 0
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/conversion/vo/RelationsConversionRespVO.java

@@ -1,6 +1,7 @@
 package cn.iocoder.yudao.module.relations.controller.admin.conversion.vo;
 
 import cn.iocoder.yudao.module.infra.api.file.dto.FileDTO;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.*;
 import java.util.*;
@@ -52,6 +53,10 @@ public class RelationsConversionRespVO {
     @ExcelProperty("部门uuid")
     private String deptUuid;
 
+    @Schema(description = "部门名称", example = "人事部")
+    @ExcelProperty("部门名称")
+    private String deptName;
+
     @Schema(description = "职位")
     @ExcelProperty("职位")
     private String position;
@@ -98,6 +103,7 @@ public class RelationsConversionRespVO {
 
     @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
     @ExcelProperty("创建时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private LocalDateTime createTime;
 
     @Schema(description = "租户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "4014")

+ 0 - 2
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/conversion/vo/RelationsConversionSaveReqVO.java

@@ -62,7 +62,6 @@ public class RelationsConversionSaveReqVO {
     private String remarks;
 
     @Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
-    @NotNull(message = "状态不能为空")
     private Integer status;
 
     @Schema(description = "数据来源,0流程添加、1手动添加")
@@ -75,7 +74,6 @@ public class RelationsConversionSaveReqVO {
     private String creatorEmployeeName;
 
     @Schema(description = "租户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "4014")
-    @NotNull(message = "租户编号不能为空")
     private Long tenantId;
 
     @Schema(description = "附件主键id", example = "[1, 2]")

+ 19 - 1
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/entry/RelationsEntryController.java

@@ -1,5 +1,8 @@
 package cn.iocoder.yudao.module.relations.controller.admin.entry;
 
+import cn.iocoder.yudao.module.system.api.dept.DeptApi;
+import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -37,6 +40,8 @@ public class RelationsEntryController {
 
     @Resource
     private RelationsEntryService entryService;
+    @Resource
+    private DeptApi deptApi;
 
     @PostMapping("/create")
     @Operation(summary = "创建入职信息")
@@ -75,7 +80,20 @@ public class RelationsEntryController {
     @PreAuthorize("@ss.hasPermission('relations:entry:query')")
     public CommonResult<PageResult<RelationsEntryRespVO>> getEntryPage(@Valid RelationsEntryPageReqVO pageReqVO) {
         PageResult<RelationsEntryDO> pageResult = entryService.getEntryPage(pageReqVO);
-        return success(BeanUtils.toBean(pageResult, RelationsEntryRespVO.class));
+        PageResult<RelationsEntryRespVO> result = BeanUtils.toBean(pageResult, RelationsEntryRespVO.class);
+        if (result != null && result.getList() != null && result.getList().size() > 0) {
+            result.getList().forEach(respVO -> {
+                // 部门
+                if (respVO.getDeptId() != null) {
+                    DeptRespDTO dept = deptApi.getDept(respVO.getDeptId());
+                    respVO.setDeptName(dept.getName());
+                    if (dept != null && StringUtils.isNotBlank(dept.getName())) {
+                        respVO.setDeptName(dept.getName());
+                    }
+                }
+            });
+        }
+        return success(result);
     }
 
     @GetMapping("/export-excel")

+ 1 - 1
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/entry/vo/RelationsEntryPageReqVO.java

@@ -22,7 +22,7 @@ public class RelationsEntryPageReqVO extends PageParam {
     private String entryName;
 
     @Schema(description = "部门", example = "24059")
-    private String deptId;
+    private Long deptId;
 
     @Schema(description = "职位")
     private String position;

+ 7 - 1
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/entry/vo/RelationsEntryRespVO.java

@@ -1,6 +1,7 @@
 package cn.iocoder.yudao.module.relations.controller.admin.entry.vo;
 
 import cn.iocoder.yudao.module.infra.api.file.dto.FileDTO;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.*;
 import java.util.*;
@@ -26,7 +27,11 @@ public class RelationsEntryRespVO {
 
     @Schema(description = "部门", example = "24059")
     @ExcelProperty("部门")
-    private String deptId;
+    private Long deptId;
+
+    @Schema(description = "部门名称", example = "财务部")
+    @ExcelProperty("部门名称")
+    private String deptName;
 
     @Schema(description = "职位")
     @ExcelProperty("职位")
@@ -86,6 +91,7 @@ public class RelationsEntryRespVO {
 
     @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
     @ExcelProperty("创建时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private LocalDateTime createTime;
 
     @Schema(description = "租户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "17470")

+ 1 - 3
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/entry/vo/RelationsEntrySaveReqVO.java

@@ -20,7 +20,7 @@ public class RelationsEntrySaveReqVO {
     private String entryName;
 
     @Schema(description = "部门", example = "24059")
-    private String deptId;
+    private Long deptId;
 
     @Schema(description = "职位")
     private String position;
@@ -53,7 +53,6 @@ public class RelationsEntrySaveReqVO {
     private String remarks;
 
     @Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
-    @NotNull(message = "状态不能为空")
     private Integer status;
 
     @Schema(description = "数据来源,0流程添加、1手动添加")
@@ -66,7 +65,6 @@ public class RelationsEntrySaveReqVO {
     private String creatorEmployeeName;
 
     @Schema(description = "租户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "17470")
-    @NotNull(message = "租户编号不能为空")
     private Long tenantId;
 
     @Schema(description = "附件主键id", example = "[1, 2]")

+ 20 - 1
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/renew/RelationsRenewController.java

@@ -1,5 +1,9 @@
 package cn.iocoder.yudao.module.relations.controller.admin.renew;
 
+import cn.iocoder.yudao.module.relations.controller.admin.entry.vo.RelationsEntryRespVO;
+import cn.iocoder.yudao.module.system.api.dept.DeptApi;
+import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -37,6 +41,8 @@ public class RelationsRenewController {
 
     @Resource
     private RelationsRenewService renewService;
+    @Resource
+    private DeptApi deptApi;
 
     @PostMapping("/create")
     @Operation(summary = "创建续签信息")
@@ -76,7 +82,20 @@ public class RelationsRenewController {
     @PreAuthorize("@ss.hasPermission('relations:renew:query')")
     public CommonResult<PageResult<RelationsRenewRespVO>> getRenewPage(@Valid RelationsRenewPageReqVO pageReqVO) {
         PageResult<RelationsRenewDO> pageResult = renewService.getRenewPage(pageReqVO);
-        return success(BeanUtils.toBean(pageResult, RelationsRenewRespVO.class));
+        PageResult<RelationsRenewRespVO> result = BeanUtils.toBean(pageResult, RelationsRenewRespVO.class);
+        if (result != null && result.getList() != null && result.getList().size() > 0) {
+            result.getList().forEach(respVO -> {
+                // 部门
+                if (respVO.getDeptId() != null) {
+                    DeptRespDTO dept = deptApi.getDept(respVO.getDeptId());
+                    respVO.setDeptName(dept.getName());
+                    if (dept != null && StringUtils.isNotBlank(dept.getName())) {
+                        respVO.setDeptName(dept.getName());
+                    }
+                }
+            });
+        }
+        return success(result);
     }
 
     @GetMapping("/export-excel")

+ 6 - 0
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/renew/vo/RelationsRenewRespVO.java

@@ -1,6 +1,7 @@
 package cn.iocoder.yudao.module.relations.controller.admin.renew.vo;
 
 import cn.iocoder.yudao.module.infra.api.file.dto.FileDTO;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.*;
 
@@ -54,6 +55,10 @@ public class RelationsRenewRespVO {
     @ExcelProperty("部门uuid")
     private String deptUuid;
 
+    @Schema(description = "部门名称", example = "人事部")
+    @ExcelProperty("部门名称")
+    private String deptName;
+
     @Schema(description = "职位")
     @ExcelProperty("职位")
     private String position;
@@ -108,6 +113,7 @@ public class RelationsRenewRespVO {
 
     @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
     @ExcelProperty("创建时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private LocalDateTime createTime;
 
     @Schema(description = "租户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "618")

+ 0 - 2
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/renew/vo/RelationsRenewSaveReqVO.java

@@ -68,7 +68,6 @@ public class RelationsRenewSaveReqVO {
     private String remarks;
 
     @Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
-    @NotNull(message = "状态不能为空")
     private Integer status;
 
     @Schema(description = "数据来源,0流程添加、1手动添加")
@@ -81,7 +80,6 @@ public class RelationsRenewSaveReqVO {
     private String creatorEmployeeName;
 
     @Schema(description = "租户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "618")
-    @NotNull(message = "租户编号不能为空")
     private Long tenantId;
 
     @Schema(description = "附件主键id", example = "[1, 2]")

+ 20 - 1
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/turnover/RelationsTurnoverController.java

@@ -1,5 +1,9 @@
 package cn.iocoder.yudao.module.relations.controller.admin.turnover;
 
+import cn.iocoder.yudao.module.relations.controller.admin.renew.vo.RelationsRenewRespVO;
+import cn.iocoder.yudao.module.system.api.dept.DeptApi;
+import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -37,6 +41,8 @@ public class RelationsTurnoverController {
 
     @Resource
     private RelationsTurnoverService turnoverService;
+    @Resource
+    private DeptApi deptApi;
 
     @PostMapping("/create")
     @Operation(summary = "创建离职信息")
@@ -75,7 +81,20 @@ public class RelationsTurnoverController {
     @PreAuthorize("@ss.hasPermission('relations:turnover:query')")
     public CommonResult<PageResult<RelationsTurnoverRespVO>> getTurnoverPage(@Valid RelationsTurnoverPageReqVO pageReqVO) {
         PageResult<RelationsTurnoverDO> pageResult = turnoverService.getTurnoverPage(pageReqVO);
-        return success(BeanUtils.toBean(pageResult, RelationsTurnoverRespVO.class));
+        PageResult<RelationsTurnoverRespVO> result = BeanUtils.toBean(pageResult, RelationsTurnoverRespVO.class);
+        if (result != null && result.getList() != null && result.getList().size() > 0) {
+            result.getList().forEach(respVO -> {
+                // 部门
+                if (respVO.getDeptId() != null) {
+                    DeptRespDTO dept = deptApi.getDept(respVO.getDeptId());
+                    respVO.setDeptName(dept.getName());
+                    if (dept != null && StringUtils.isNotBlank(dept.getName())) {
+                        respVO.setDeptName(dept.getName());
+                    }
+                }
+            });
+        }
+        return success(result);
     }
 
     @GetMapping("/export-excel")

+ 6 - 0
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/turnover/vo/RelationsTurnoverRespVO.java

@@ -1,6 +1,7 @@
 package cn.iocoder.yudao.module.relations.controller.admin.turnover.vo;
 
 import cn.iocoder.yudao.module.infra.api.file.dto.FileDTO;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.*;
 import java.util.*;
@@ -52,6 +53,10 @@ public class RelationsTurnoverRespVO {
     @ExcelProperty("部门uuid")
     private String deptUuid;
 
+    @Schema(description = "部门名称", example = "人事部")
+    @ExcelProperty("部门名称")
+    private String deptName;
+
     @Schema(description = "职位")
     @ExcelProperty("职位")
     private String position;
@@ -90,6 +95,7 @@ public class RelationsTurnoverRespVO {
 
     @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
     @ExcelProperty("创建时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private LocalDateTime createTime;
 
     @Schema(description = "租户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "23947")

+ 0 - 2
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/controller/admin/turnover/vo/RelationsTurnoverSaveReqVO.java

@@ -56,7 +56,6 @@ public class RelationsTurnoverSaveReqVO {
     private String remarks;
 
     @Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
-    @NotNull(message = "状态不能为空")
     private Integer status;
 
     @Schema(description = "数据来源,0流程添加、1手动添加")
@@ -69,7 +68,6 @@ public class RelationsTurnoverSaveReqVO {
     private String creatorEmployeeName;
 
     @Schema(description = "租户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "23947")
-    @NotNull(message = "租户编号不能为空")
     private Long tenantId;
 
     @Schema(description = "附件主键id", example = "[1, 2]")

+ 8 - 0
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/dal/dataobject/contract/RelationsContractDO.java

@@ -78,6 +78,14 @@ public class RelationsContractDO extends BaseDO {
      * 备注信息
      */
     private String remarks;
+    /**
+     * 创建人员工id
+     */
+    private Long creatorEmployeeId;
+    /**
+     * 创建人员工姓名
+     */
+    private String creatorEmployeeName;
     /**
      * 状态
      */

+ 2 - 2
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/dal/dataobject/entry/RelationsEntryDO.java

@@ -36,9 +36,9 @@ public class RelationsEntryDO extends BaseDO {
      */
     private String entryName;
     /**
-     * 部门
+     * 部门ID
      */
-    private String deptId;
+    private Long deptId;
     /**
      * 职位
      */

+ 19 - 0
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/service/contract/RelationsContractServiceImpl.java

@@ -5,7 +5,11 @@ import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.util.IdUtil;
 import cn.hutool.core.util.StrUtil;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.framework.security.core.LoginUser;
+import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
 import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
+import cn.iocoder.yudao.module.employee.api.EmployeeApi;
+import cn.iocoder.yudao.module.employee.api.dto.EmployeeRespDTO;
 import cn.iocoder.yudao.module.infra.api.file.FileApi;
 import cn.iocoder.yudao.module.infra.api.file.dto.FileDTO;
 import cn.iocoder.yudao.module.relations.controller.admin.contract.vo.RelationsContractPageReqVO;
@@ -14,6 +18,8 @@ import cn.iocoder.yudao.module.relations.controller.admin.contract.vo.RelationsC
 import cn.iocoder.yudao.module.relations.dal.dataobject.contract.RelationsContractDO;
 import cn.iocoder.yudao.module.relations.dal.mysql.contract.RelationsContractMapper;
 import cn.iocoder.yudao.module.relations.enums.contractinfo.ContractInfoStatusEnum;
+import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
+import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
@@ -41,12 +47,19 @@ public class RelationsContractServiceImpl implements RelationsContractService {
     private RelationsContractMapper contractMapper;
     @Resource
     private FileApi fileApi;
+    @Resource
+    private EmployeeApi employeeApi;
 
     @Override
     @TenantIgnore
     public Long createContractInfo(RelationsContractSaveReqVO createReqVO) {
         // 查询该员工是否有合同存在
         List<RelationsContractDO> list = contractMapper.selectPage(new RelationsContractPageReqVO().setEmployeeId(createReqVO.getEmployeeId())).getList();
+        // 获取用户信息和租户ID
+        LoginUser user = SecurityFrameworkUtils.getLoginUser();
+        Long tenantId = user != null && user.getTenantId() != null ? user.getTenantId() : 0L;
+        Long userId = user != null && user.getId() != null ? user.getId() : 0L;
+        createReqVO.setTenantId(tenantId);
         // 检查查询结果是否为空
         if (!CollUtil.isEmpty(list)) {
             // 更新状态
@@ -65,6 +78,12 @@ public class RelationsContractServiceImpl implements RelationsContractService {
         createReqVO.setContractId(infoId);
         RelationsContractDO contractInfo = BeanUtils.toBean(createReqVO, RelationsContractDO.class);
         contractInfo.setStatus(ContractInfoStatusEnum.LATEST.getStatus());
+        // 登录员工信息
+        EmployeeRespDTO loginEmployee = employeeApi.getEmployeeByUserId(userId);// 判空检查
+        if (loginEmployee != null) {
+            contractInfo.setCreatorEmployeeId(loginEmployee.getId());
+            contractInfo.setCreatorEmployeeName(loginEmployee.getName());
+        }
         contractMapper.insert(contractInfo);
         // 保存业务uuid到附件中
         this.saveFileList(createReqVO.getFileIdList(), infoId);

+ 30 - 0
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/service/conversion/RelationsConversionServiceImpl.java

@@ -3,9 +3,16 @@ package cn.iocoder.yudao.module.relations.service.conversion;
 import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.util.IdUtil;
 import cn.hutool.core.util.StrUtil;
+import cn.iocoder.yudao.framework.security.core.LoginUser;
+import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
 import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
+import cn.iocoder.yudao.module.employee.api.EmployeeApi;
+import cn.iocoder.yudao.module.employee.api.dto.EmployeeRespDTO;
 import cn.iocoder.yudao.module.infra.api.file.FileApi;
 import cn.iocoder.yudao.module.infra.api.file.dto.FileDTO;
+import cn.iocoder.yudao.module.system.api.dept.DeptApi;
+import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
 
@@ -36,14 +43,29 @@ public class RelationsConversionServiceImpl implements RelationsConversionServic
     private RelationsConversionMapper conversionMapper;
     @Resource
     private FileApi fileApi;
+    @Resource
+    private DeptApi deptApi;
+    @Resource
+    private EmployeeApi employeeApi;
 
     @Override
     @TenantIgnore
     public Long createConversion(RelationsConversionSaveReqVO createReqVO) {
+        // 获取用户信息和租户ID
+        LoginUser user = SecurityFrameworkUtils.getLoginUser();
+        Long tenantId = user != null && user.getTenantId() != null ? user.getTenantId() : 0L;
+        Long userId = user != null && user.getId() != null ? user.getId() : 0L;
+        createReqVO.setTenantId(tenantId);
         // 插入
         String infoId = IdUtil.fastSimpleUUID();
         createReqVO.setConversionId(infoId);
         RelationsConversionDO conversion = BeanUtils.toBean(createReqVO, RelationsConversionDO.class);
+        // 登录员工信息
+        EmployeeRespDTO loginEmployee = employeeApi.getEmployeeByUserId(userId);// 判空检查
+        if (loginEmployee != null) {
+            conversion.setCreatorEmployeeId(loginEmployee.getId());
+            conversion.setCreatorEmployeeName(loginEmployee.getName());
+        }
         conversionMapper.insert(conversion);
         // 保存业务uuid到附件中
         this.saveFileList(createReqVO.getFileIdList(), infoId);
@@ -109,6 +131,14 @@ public class RelationsConversionServiceImpl implements RelationsConversionServic
             // 如果fileList不为null,则设置到VO对象中
             respVO.setFileList(fileList);
         }
+        // 部门
+        if (conversionDO.getDeptId() != null) {
+            DeptRespDTO dept = deptApi.getDept(conversionDO.getDeptId());
+            respVO.setDeptName(dept.getName());
+            if (dept != null && StringUtils.isNotBlank(dept.getName())) {
+                respVO.setDeptName(dept.getName());
+            }
+        }
         // 第五步:返回VO对象
         return respVO;
     }

+ 30 - 0
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/service/entry/RelationsEntryServiceImpl.java

@@ -3,9 +3,16 @@ package cn.iocoder.yudao.module.relations.service.entry;
 import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.util.IdUtil;
 import cn.hutool.core.util.StrUtil;
+import cn.iocoder.yudao.framework.security.core.LoginUser;
+import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
 import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
+import cn.iocoder.yudao.module.employee.api.EmployeeApi;
+import cn.iocoder.yudao.module.employee.api.dto.EmployeeRespDTO;
 import cn.iocoder.yudao.module.infra.api.file.FileApi;
 import cn.iocoder.yudao.module.infra.api.file.dto.FileDTO;
+import cn.iocoder.yudao.module.system.api.dept.DeptApi;
+import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
 
@@ -35,14 +42,29 @@ public class RelationsEntryServiceImpl implements RelationsEntryService {
     private RelationsEntryMapper entryMapper;
     @Resource
     private FileApi fileApi;
+    @Resource
+    private DeptApi deptApi;
+    @Resource
+    private EmployeeApi employeeApi;
 
     @Override
     @TenantIgnore
     public Long createEntry(RelationsEntrySaveReqVO createReqVO) {
+        // 获取用户信息和租户ID
+        LoginUser user = SecurityFrameworkUtils.getLoginUser();
+        Long tenantId = user != null && user.getTenantId() != null ? user.getTenantId() : 0L;
+        Long userId = user != null && user.getId() != null ? user.getId() : 0L;
+        createReqVO.setTenantId(tenantId);
         // 插入
         String infoId = IdUtil.fastSimpleUUID();
         createReqVO.setEntryId(infoId);
         RelationsEntryDO entry = BeanUtils.toBean(createReqVO, RelationsEntryDO.class);
+        // 登录员工信息
+        EmployeeRespDTO loginEmployee = employeeApi.getEmployeeByUserId(userId);// 判空检查
+        if (loginEmployee != null) {
+            entry.setCreatorEmployeeId(loginEmployee.getId());
+            entry.setCreatorEmployeeName(loginEmployee.getName());
+        }
         entryMapper.insert(entry);
         // 保存业务uuid到附件中
         this.saveFileList(createReqVO.getFileIdList(), infoId);
@@ -108,6 +130,14 @@ public class RelationsEntryServiceImpl implements RelationsEntryService {
             // 如果fileList不为null,则设置到VO对象中
             respVO.setFileList(fileList);
         }
+        // 部门
+        if (entryDO.getDeptId() != null) {
+            DeptRespDTO dept = deptApi.getDept(entryDO.getDeptId());
+            respVO.setDeptName(dept.getName());
+            if (dept != null && StringUtils.isNotBlank(dept.getName())) {
+                respVO.setDeptName(dept.getName());
+            }
+        }
         // 第五步:返回VO对象
         return respVO;
     }

+ 30 - 0
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/service/renew/RelationsRenewServiceImpl.java

@@ -3,9 +3,16 @@ package cn.iocoder.yudao.module.relations.service.renew;
 import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.util.IdUtil;
 import cn.hutool.core.util.StrUtil;
+import cn.iocoder.yudao.framework.security.core.LoginUser;
+import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
 import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
+import cn.iocoder.yudao.module.employee.api.EmployeeApi;
+import cn.iocoder.yudao.module.employee.api.dto.EmployeeRespDTO;
 import cn.iocoder.yudao.module.infra.api.file.FileApi;
 import cn.iocoder.yudao.module.infra.api.file.dto.FileDTO;
+import cn.iocoder.yudao.module.system.api.dept.DeptApi;
+import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
 
@@ -36,14 +43,29 @@ public class RelationsRenewServiceImpl implements RelationsRenewService {
     private RelationsRenewMapper renewMapper;
     @Resource
     private FileApi fileApi;
+    @Resource
+    private DeptApi deptApi;
+    @Resource
+    private EmployeeApi employeeApi;
 
     @Override
     @TenantIgnore
     public Long createRenew(RelationsRenewSaveReqVO createReqVO) {
+        // 获取用户信息和租户ID
+        LoginUser user = SecurityFrameworkUtils.getLoginUser();
+        Long tenantId = user != null && user.getTenantId() != null ? user.getTenantId() : 0L;
+        Long userId = user != null && user.getId() != null ? user.getId() : 0L;
+        createReqVO.setTenantId(tenantId);
         // 插入
         String infoId = IdUtil.fastSimpleUUID();
         createReqVO.setRenewId(infoId);
         RelationsRenewDO renew = BeanUtils.toBean(createReqVO, RelationsRenewDO.class);
+        // 登录员工信息
+        EmployeeRespDTO loginEmployee = employeeApi.getEmployeeByUserId(userId);// 判空检查
+        if (loginEmployee != null) {
+            renew.setCreatorEmployeeId(loginEmployee.getId());
+            renew.setCreatorEmployeeName(loginEmployee.getName());
+        }
         renewMapper.insert(renew);
         // 保存业务uuid到附件中
         this.saveFileList(createReqVO.getFileIdList(), infoId);
@@ -109,6 +131,14 @@ public class RelationsRenewServiceImpl implements RelationsRenewService {
             // 如果fileList不为null,则设置到VO对象中
             respVO.setFileList(fileList);
         }
+        // 部门
+        if (renewDO.getDeptId() != null) {
+            DeptRespDTO dept = deptApi.getDept(renewDO.getDeptId());
+            respVO.setDeptName(dept.getName());
+            if (dept != null && StringUtils.isNotBlank(dept.getName())) {
+                respVO.setDeptName(dept.getName());
+            }
+        }
         // 第五步:返回VO对象
         return respVO;
     }

+ 30 - 0
yudao-module-personnel/yudao-module-relations-biz/src/main/java/cn/iocoder/yudao/module/relations/service/turnover/RelationsTurnoverServiceImpl.java

@@ -3,9 +3,16 @@ package cn.iocoder.yudao.module.relations.service.turnover;
 import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.util.IdUtil;
 import cn.hutool.core.util.StrUtil;
+import cn.iocoder.yudao.framework.security.core.LoginUser;
+import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
 import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
+import cn.iocoder.yudao.module.employee.api.EmployeeApi;
+import cn.iocoder.yudao.module.employee.api.dto.EmployeeRespDTO;
 import cn.iocoder.yudao.module.infra.api.file.FileApi;
 import cn.iocoder.yudao.module.infra.api.file.dto.FileDTO;
+import cn.iocoder.yudao.module.system.api.dept.DeptApi;
+import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
 
@@ -36,14 +43,29 @@ public class RelationsTurnoverServiceImpl implements RelationsTurnoverService {
     private RelationsTurnoverMapper turnoverMapper;
     @Resource
     private FileApi fileApi;
+    @Resource
+    private DeptApi deptApi;
+    @Resource
+    private EmployeeApi employeeApi;
 
     @Override
     @TenantIgnore
     public Long createTurnover(RelationsTurnoverSaveReqVO createReqVO) {
+        // 获取用户信息和租户ID
+        LoginUser user = SecurityFrameworkUtils.getLoginUser();
+        Long tenantId = user != null && user.getTenantId() != null ? user.getTenantId() : 0L;
+        Long userId = user != null && user.getId() != null ? user.getId() : 0L;
+        createReqVO.setTenantId(tenantId);
         // 插入
         String infoId = IdUtil.fastSimpleUUID();
         createReqVO.setTurnoverId(infoId);
         RelationsTurnoverDO turnover = BeanUtils.toBean(createReqVO, RelationsTurnoverDO.class);
+        // 登录员工信息
+        EmployeeRespDTO loginEmployee = employeeApi.getEmployeeByUserId(userId);// 判空检查
+        if (loginEmployee != null) {
+            turnover.setCreatorEmployeeId(loginEmployee.getId());
+            turnover.setCreatorEmployeeName(loginEmployee.getName());
+        }
         turnoverMapper.insert(turnover);
         // 保存业务uuid到附件中
         this.saveFileList(createReqVO.getFileIdList(), infoId);
@@ -109,6 +131,14 @@ public class RelationsTurnoverServiceImpl implements RelationsTurnoverService {
             // 如果fileList不为null,则设置到VO对象中
             respVO.setFileList(fileList);
         }
+        // 部门
+        if (turnoverDO.getDeptId() != null) {
+            DeptRespDTO dept = deptApi.getDept(turnoverDO.getDeptId());
+            respVO.setDeptName(dept.getName());
+            if (dept != null && StringUtils.isNotBlank(dept.getName())) {
+                respVO.setDeptName(dept.getName());
+            }
+        }
         // 第五步:返回VO对象
         return respVO;
     }