Browse Source

feature: 数据同步
1.同步客人信息时增加了操作员信息

luo.yibo@datuai.com 1 year ago
parent
commit
84908fe23c

+ 8 - 0
ruoyi-api/ruoyi-api-hotel/src/main/java/org/dromara/hotel/api/domain/bo/RemoteGuestBo.java

@@ -56,4 +56,12 @@ public class RemoteGuestBo implements Serializable {
      * 原始数据ID
      */
     private String otherId;
+    /**
+     * 创建者
+     */
+    private Long createBy;
+    /**
+     * 更新者
+     */
+    private Long updateBy;
 }

+ 0 - 1
ruoyi-modules/ruoyi-hotel/src/main/java/org/dromara/hotel/domain/bo/KfGuestBo.java

@@ -57,5 +57,4 @@ public class KfGuestBo extends BaseEntity {
      * 统一标识
      */
     private String otherId;
-
 }

+ 6 - 0
ruoyi-modules/ruoyi-hotel/src/main/java/org/dromara/hotel/dubbo/RemoteGuestServiceImpl.java

@@ -41,6 +41,9 @@ public class RemoteGuestServiceImpl implements RemoteGuestService {
     public R<ErrorInfo> insertGuestByBo(RemoteGuestBo remoteBo) {
         try{
             KfGuestBo bo = MapstructUtils.convert(remoteBo, KfGuestBo.class);
+            if (bo != null) {
+                bo.setCreateBy(remoteBo.getCreateBy());
+            }
             boolean flag = kfGuestService.insertByBo(bo);
             if(flag){
                 return R.ok("增加客人信息成功");
@@ -61,6 +64,9 @@ public class RemoteGuestServiceImpl implements RemoteGuestService {
     public R<ErrorInfo> updateGuestByBo(RemoteGuestBo remoteBo) {
         try{
             KfGuestBo bo = MapstructUtils.convert(remoteBo, KfGuestBo.class);
+            if (bo != null) {
+                bo.setUpdateBy(remoteBo.getUpdateBy());
+            }
             boolean flag = kfGuestService.updateByBo(bo);
             if(flag){
                 return R.ok("修改客人信息成功");

+ 2 - 1
ruoyi-server/ruoyi-server-base/src/main/java/org/dromara/server/base/service/user/SyncRemoteUserService.java

@@ -352,12 +352,13 @@ public class SyncRemoteUserService {
         RemoteGuestBo remoteGuestBo;
         if (ObjectUtil.isEmpty(remoteGuestVo)) {
             remoteGuestBo = new RemoteGuestBo();
+            remoteGuestBo.setCreateBy(person.getOperatorId());
         } else {
             remoteGuestBo = BeanUtil.copyProperties(remoteGuestVo, RemoteGuestBo.class);
+            remoteGuestBo.setUpdateBy(person.getOperatorId());
         }
         remoteGuestBo.setName(person.getRealName());
         remoteGuestBo.setSex(person.getSex());
-        // remoteGuestBo.setIdCard(person.getIdNumber());
         remoteGuestBo.setPhone(person.getPhone());
         remoteGuestBo.setRemark(person.getRemark());
         remoteGuestBo.setTeamId(getGuestTeamId(person));

+ 5 - 0
ruoyi-server/ruoyi-server-common/src/main/java/org/dromara/server/common/constant/DefaultConstants.java

@@ -97,4 +97,9 @@ public interface DefaultConstants {
      * 研究生默认角色
      */
     Long GRADUATE_ROLE_ID = 1844275170961874946L;
+
+    /**
+     * 全量同步管理员
+     */
+    Long FULL_SYNC_ADMIN = 11L;
 }

+ 4 - 1
ruoyi-server/ruoyi-server-common/src/main/java/org/dromara/server/common/domain/bo/ResourcePerson.java

@@ -88,7 +88,10 @@ public class ResourcePerson implements Serializable {
      * 第三方人员状态
      */
     private String userState;
-
+    /**
+     * 操作员Id
+     */
+    private Long operatorId;
     /**
      * 人员所在部门(多部门情况)
      */

+ 3 - 2
ruoyi-server/ruoyi-server-sync/src/main/java/org/dromara/server/sync/service/SyncTrainService.java

@@ -105,6 +105,7 @@ public class SyncTrainService {
         person.setPhone("18974390367");
         person.setIdNumber("XP4aO5yhQyNPUctSqDOU9Syh9KUo/DN8");
         person.setCategory("2");
+        person.setOperatorId(DefaultConstants.FULL_SYNC_ADMIN);
         resourcePersonList.add(person);
 
         List<ResourcePersonDept> resourcePersonDeptList = new ArrayList<>();
@@ -547,7 +548,7 @@ public class SyncTrainService {
             person.setPostCode(DefaultConstants.TRAINEE_CODE);
             person.setIdNumber(list.get(6));
             person.setCategory("2");
-
+            person.setOperatorId(DefaultConstants.FULL_SYNC_ADMIN);
             resourcePersonList.add(person);
         }
         return resourcePersonList;
@@ -559,7 +560,7 @@ public class SyncTrainService {
      * @param resourcePersonDeptList 学员与班级对应关系
      * @param resourcePersonList     学员
      */
-    private void getResourcePeople(List<ResourcePersonDept> resourcePersonDeptList, List<ResourcePerson> resourcePersonList) {
+    private void getResourcePeople(List<ResourcePersonDept> resourcePersonDeptList, @NotNull List<ResourcePerson> resourcePersonList) {
         resourcePersonList.forEach(resourcePerson -> {
             // 找出该学员绑定的所有班级
             List<ResourcePersonDept> personDeptList = resourcePersonDeptList.stream()