Browse Source

1.添加专辑时长赠送时消息推送

yuanliang 1 year ago
parent
commit
829d6504dc

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

@@ -133,6 +133,8 @@ public enum MessageTypeEnum implements BaseEnum<String, MessageTypeEnum> {
     ADD_COOPERATE_TENANT("添加合作机构"),
     ADD_COOPERATE_TENANT("添加合作机构"),
     TEACHER_BIND_TENANT("老师绑定机构"),
     TEACHER_BIND_TENANT("老师绑定机构"),
     TEACHER_UNBIND_TENANT("老师解绑机构"),
     TEACHER_UNBIND_TENANT("老师解绑机构"),
+
+    USER_TENANT_ALBUM_VIP("后台添加专辑时长"),
     ;
     ;
 
 
     MessageTypeEnum(String msg) {
     MessageTypeEnum(String msg) {

+ 26 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserTenantAlbumRecordServiceImpl.java

@@ -12,10 +12,13 @@ import com.yonge.cooleshow.biz.dal.dto.search.StudentMusicSheetSearch;
 import com.yonge.cooleshow.biz.dal.entity.*;
 import com.yonge.cooleshow.biz.dal.entity.*;
 import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.enums.MessageTypeEnum;
 import com.yonge.cooleshow.biz.dal.enums.MessageTypeEnum;
+import com.yonge.cooleshow.biz.dal.enums.PeriodEnum;
 import com.yonge.cooleshow.biz.dal.enums.SubjectTypeEnum;
 import com.yonge.cooleshow.biz.dal.enums.SubjectTypeEnum;
+import com.yonge.cooleshow.biz.dal.mapper.SysUserMapper;
 import com.yonge.cooleshow.biz.dal.mapper.TenantAlbumMapper;
 import com.yonge.cooleshow.biz.dal.mapper.TenantAlbumMapper;
 import com.yonge.cooleshow.biz.dal.mapper.TenantAlbumPurchaseMapper;
 import com.yonge.cooleshow.biz.dal.mapper.TenantAlbumPurchaseMapper;
 import com.yonge.cooleshow.biz.dal.mapper.TenantAlbumRefMapper;
 import com.yonge.cooleshow.biz.dal.mapper.TenantAlbumRefMapper;
+import com.yonge.cooleshow.biz.dal.mapper.TenantInfoMapper;
 import com.yonge.cooleshow.biz.dal.service.*;
 import com.yonge.cooleshow.biz.dal.service.*;
 import com.yonge.cooleshow.biz.dal.vo.MusicSheetVo;
 import com.yonge.cooleshow.biz.dal.vo.MusicSheetVo;
 import com.yonge.cooleshow.biz.dal.vo.StudentVo;
 import com.yonge.cooleshow.biz.dal.vo.StudentVo;
@@ -93,6 +96,12 @@ public class UserTenantAlbumRecordServiceImpl extends ServiceImpl<UserTenantAlbu
     @Autowired
     @Autowired
     private SysMessageService sysMessageService;
     private SysMessageService sysMessageService;
 
 
+    @Autowired
+    private SysUserMapper sysUserMapper;
+
+    @Autowired
+    private TenantInfoMapper tenantInfoMapper;
+
     /**
     /**
      * 查询详情
      * 查询详情
      *
      *
@@ -278,7 +287,23 @@ public class UserTenantAlbumRecordServiceImpl extends ServiceImpl<UserTenantAlbu
         userTenantAlbumRecord.setEndTime(instance.getTime());
         userTenantAlbumRecord.setEndTime(instance.getTime());
         userTenantAlbumRecord.setCreateTime(new Date());
         userTenantAlbumRecord.setCreateTime(new Date());
         userTenantAlbumRecord.setUpdateTime(new Date());
         userTenantAlbumRecord.setUpdateTime(new Date());
-        return this.save(userTenantAlbumRecord);
+        this.save(userTenantAlbumRecord);
+
+        SysUser sysUser = sysUserMapper.getByUserId(userTenantAlbumRecord.getUserId());
+        sendMessage(userTenantAlbumRecord.getUserId(), sysUser.getPhone(), ClientEnum.STUDENT, userTenantAlbumRecord.getTimes(), PeriodEnum.valueOf(userTenantAlbumRecord.getType()),
+                tenantAlbum.getName(), userTenantAlbumRecord.getReason());
+        return true;
+    }
+
+    private void sendMessage(Long userId, String phone, ClientEnum client, Integer times, PeriodEnum type, String tenantAlbumName, String reason) {
+        try {
+            Map<Long, String> receivers = new HashMap<>();
+            receivers.put(userId, phone);
+            sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.USER_TENANT_ALBUM_VIP,
+                    receivers, null, 0, null, client.getCode(), times, type.getMsg(), tenantAlbumName, reason);
+        } catch (Exception e) {
+            log.error("机构专辑会员赠送消息发送失败 : {}", e.getMessage());
+        }
     }
     }
 
 
     /**
     /**