Przeglądaj źródła

1.添加短信推送

yuanliang 1 rok temu
rodzic
commit
4ee714999f

+ 2 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/MessageTypeEnum.java

@@ -131,6 +131,8 @@ public enum MessageTypeEnum implements BaseEnum<String, MessageTypeEnum> {
     TENANT_MUSIC_BUY("购买曲目"),
     TENANT_STUDENT_CHANGE("机构变更"),
     ADD_COOPERATE_TENANT("添加合作机构"),
+    TEACHER_BIND_TENANT("老师绑定机构"),
+    TEACHER_UNBIND_TENANT("老师解绑机构"),
     ;
 
     MessageTypeEnum(String msg) {

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

@@ -956,6 +956,17 @@ public class StudentServiceImpl extends ServiceImpl<StudentDao, Student> impleme
         bindRecord.setBindStatus(bind);
         bindRecord.setBindTime(new Date());
         userTenantBindRecordMapper.add(bindRecord);
+
+        SysUser sysUser = sysUserMapper.getByUserId(studentId);
+        sendBindUnBindSMS(studentId, sysUser.getPhone(), Boolean.TRUE.equals(bind) ? MessageTypeEnum.TEACHER_BIND_TENANT : MessageTypeEnum.TEACHER_UNBIND_TENANT, tenantId);
+    }
+
+    private void sendBindUnBindSMS(Long userId, String phone, MessageTypeEnum messageType, Long tenantId) {
+        TenantInfo tenantInfo = tenantInfoService.getById(tenantId);
+        Map<Long, String> receivers = new HashMap<>();
+        receivers.put(userId, phone);
+        sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.AWSMS, messageType,
+                receivers, null, 0, null, ClientEnum.SYSTEM.getCode(), tenantInfo.getName());
     }
 
 }

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

@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.google.common.collect.Lists;
+import com.microsvc.toolkit.middleware.rtc.enums.EDeviceMessageType;
 import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
 import com.yonge.cooleshow.auth.api.dto.RealnameAuthReq;
 import com.yonge.cooleshow.auth.api.entity.SysUser;
@@ -507,6 +508,7 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
 
             // 机构老师添加机构绑定记录
             addBindUnBindRecord(teacher.getUserId(),teacher.getTenantId(),true);
+            sendBindUnBindSMS(teacher.getUserId(), teacherSubmitReq.getPhone(), MessageTypeEnum.TEACHER_BIND_TENANT, teacher.getTenantId());
         }
         //  与客服建立好友
         String customerService = customerServiceConfig.getCustomerService();
@@ -1102,8 +1104,10 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
                 });
             }
             // 删除好友关系
-            imUserFriendService.delStudentFriendByTenantId(teacher.getTenantId(), teacher.getUserId(),ClientEnum.TEACHER.getCode());
-            addBindUnBindRecord(teacher.getUserId(),teacher.getTenantId(),false);
+            imUserFriendService.delStudentFriendByTenantId(teacher.getTenantId(), teacher.getUserId(), ClientEnum.TEACHER.getCode());
+            addBindUnBindRecord(teacher.getUserId(), teacher.getTenantId(), false);
+            SysUser sysUser = sysUserMapper.getByUserId(teacher.getUserId());
+            sendBindUnBindSMS(teacher.getUserId(), sysUser.getPhone(), MessageTypeEnum.TEACHER_UNBIND_TENANT, teacher.getTenantId());
 
         }
 
@@ -1127,6 +1131,8 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
                 imUserFriendService.saveUserFriend(teacher.getUserId(), collect);
             }
             addBindUnBindRecord(teacher.getUserId(),updateTenant.getTenantId(),true);
+            SysUser sysUser = sysUserMapper.getByUserId(teacher.getUserId());
+            sendBindUnBindSMS(teacher.getUserId(), sysUser.getPhone(), MessageTypeEnum.TEACHER_BIND_TENANT, updateTenant.getTenantId());
         }
 
         teacher.setTenantId(updateTenant.getTenantId());
@@ -1217,4 +1223,12 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
         bindRecord.setBindTime(new Date());
         userTenantBindRecordMapper.add(bindRecord);
     }
+
+    private void sendBindUnBindSMS(Long userId, String phone, MessageTypeEnum messageType, Long tenantId) {
+        TenantInfo tenantInfo = tenantInfoService.getById(tenantId);
+        Map<Long, String> receivers = new HashMap<>();
+        receivers.put(userId, phone);
+        sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.AWSMS, messageType,
+                receivers, null, 0, null, ClientEnum.SYSTEM.getCode(), tenantInfo.getName());
+    }
 }

+ 1 - 1
cooleshow-user/user-biz/src/main/resources/config/mybatis/UserTenantBindRecordMapper.xml

@@ -84,7 +84,7 @@
         <if test="param.userType == 'TEACHER'">
             group by t.user_id_
         </if>
-        order by t.bind_time_ desc
+        order by field(t.bind_status_,1,0) ,t.bind_time_ desc
     </select>
 
     <insert id="add">