Przeglądaj źródła

Merge branch 'feature/0721-tenant' of http://git.dayaedu.com/yonge/cooleshow into feature/0721-tenant

liujc 1 rok temu
rodzic
commit
cb1b85b591

+ 6 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TeacherServiceImpl.java

@@ -364,6 +364,11 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
             sysUser = insertSysUser(teacherSubmitReq);
             teacherSubmitReq.setUserId(sysUser.getId());
         } else {
+            String userType = sysUser.getUserType();
+            List<String> userTypes = Arrays.stream(userType.split(",")).collect(Collectors.toList());
+            if (userTypes.contains(ClientEnum.TEACHER.getCode())) {
+                throw new BizException("该手机号已经注册老师账号");
+            }
             teacherSubmitReq.setUserId(sysUser.getId());
             updateSysUser(teacherSubmitReq);
         }
@@ -928,6 +933,7 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
         if (first.isPresent()) {
             TenantUnbindRecord tenantUnbindRecord = first.get();
             tenantUnbindRecord.setStatus(ETenantUnBindAuditStatus.CLOSE);
+            tenantUnbindRecord.setReason("机构发生变更,关闭申请");
             tenantUnbindRecordMapper.updateById(tenantUnbindRecord);
 
             TenantUnbindHistory history = JSON.parseObject(JSON.toJSONString(tenantUnbindRecord),

+ 5 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TenantInfoServiceImpl.java

@@ -28,6 +28,7 @@ import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.cooleshow.common.enums.SysUserType;
 import com.yonge.cooleshow.common.enums.UserLockFlag;
 import com.yonge.toolset.base.exception.BizException;
+import com.yonge.toolset.utils.obj.ObjectUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -380,11 +381,13 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoMapper, TenantI
         TenantInfo oldTenantInfo = this.getById(info.getId());
         SysUser sysUser = getAccount(info, oldTenantInfo);
 
-        tenantStaffMapper.update(null, Wrappers.<TenantStaff>lambdaUpdate()
+        if (sysUser.getId() != null){
+            tenantStaffMapper.update(null, Wrappers.<TenantStaff>lambdaUpdate()
                 .set(TenantStaff::getUserId, sysUser.getId())
                 .set(TenantStaff::getNickname, info.getUsername())
                 .eq(TenantStaff::getUserId, oldTenantInfo.getUserId())
-        );
+        );}
+
 
         if (StringUtils.isEmpty(info.getLogo())) {
             // todo 设置默认logo

+ 20 - 12
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TenantUnbindRecordServiceImpl.java

@@ -82,6 +82,9 @@ public class TenantUnbindRecordServiceImpl extends ServiceImpl<TenantUnbindRecor
     @Autowired
     private UnbindAuthUserService unbindAuthUserService;
 
+    @Autowired
+    private ImUserFriendService imUserFriendService;
+
     /**
      * @param id 详情ID
      * @return TenantUnbindRecord
@@ -218,22 +221,27 @@ public class TenantUnbindRecordServiceImpl extends ServiceImpl<TenantUnbindRecor
                 .eq(TenantUnbindRecord::getStatus, ETenantUnBindAuditStatus.DOING)
                 .update();
         if (Boolean.TRUE.equals(audio.getStatus())) {
+            Teacher teacher = teacherDao.selectById(unbindRecord.getUserId());
+            Long tenantId = teacher.getTenantId();
+            if (tenantId != -1L) {
+                // 解散机构群
+                List<ImGroup> imGroups = imGroupService.lambdaQuery()
+                        .eq(ImGroup::getCreateBy, unbindRecord.getUserId())
+                        .eq(ImGroup::getType, ImGroupType.ORG)
+                        .list();
+                for (ImGroup imGroup : imGroups) {
+                    try {
+                        imGroupService.dismiss(imGroup.getId());
+                    } catch (Exception e) {
+                        log.error("老师解绑审核成功,解散机构群失败:{}", e.getMessage());
+                    }
+                }
+                imUserFriendService.delFriendByTenantId(unbindRecord.getUserId(), unbindRecord.getUserId());
+            }
             teacherDao.update(null, Wrappers.<Teacher>lambdaUpdate()
                     .eq(Teacher::getUserId, unbindRecord.getUserId())
                     .set(Teacher::getSettlementFrom, ESettlementFrom.TEACHER)
                     .set(Teacher::getTenantId, -1L));
-            // 解散机构群
-            List<ImGroup> imGroups = imGroupService.lambdaQuery()
-                    .eq(ImGroup::getCreateBy, unbindRecord.getUserId())
-                    .eq(ImGroup::getType, ImGroupType.ORG)
-                    .list();
-            for (ImGroup imGroup : imGroups) {
-                try {
-                    imGroupService.dismiss(imGroup.getId());
-                } catch (Exception e) {
-                    log.error("老师解绑审核成功,解散机构群失败:{}", e.getMessage());
-                }
-            }
         }
 
         // 添加历史记录