Browse Source

修改以平台的名义给机构发短信的逻辑

hgw 3 years ago
parent
commit
32b0768d99

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TenantInfoDao.java

@@ -24,4 +24,6 @@ public interface TenantInfoDao extends BaseMapper<TenantInfo> {
     void updatePhone(@Param("newPhone")String newPhone, @Param("oldPhone")String oldPhone);
 
     List<TenantInfo> queryExpiryTenant(@Param("expiryDate") Date expiryDate);
+
+    Integer queryUserByTenantId(@Param("tenantId") Integer tenantId);
 }

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/TenantInfoSendMsgService.java

@@ -2,5 +2,5 @@ package com.ym.mec.biz.service;
 
 public interface TenantInfoSendMsgService {
 
-    void sendToAll(String type, Integer userId, String email,String phone, Object[] objs);
+    void platformSendToAll(String type, String email, String phone, Object[] objs);
 }

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TenantAssetsInfoServiceImpl.java

@@ -155,7 +155,7 @@ public class TenantAssetsInfoServiceImpl extends ServiceImpl<TenantAssetsInfoDao
                 //当前余额大于300 并且 本次扣除后剩余额度小于300 就发信息提醒
                 if (balance.compareTo(new BigDecimal(300)) > -1 && balance.compareTo(after) < 0) {
                     TenantInfo t = tenantInfoService.getById(course.getTenantId());
-                    tenantInfoSendMsgService.sendToAll(INSUFFICIENT, t.getUserId(), t.getEmail(), t.getPhone(), new Object[]{t.getName()});
+                    tenantInfoSendMsgService.platformSendToAll(INSUFFICIENT, t.getEmail(), t.getPhone(), new Object[]{t.getName()});
                 }
             }
         });

+ 9 - 6
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TenantInfoSendMsgServiceImpl.java

@@ -1,5 +1,6 @@
 package com.ym.mec.biz.service.impl;
 
+import com.ym.mec.biz.dal.dao.TenantInfoDao;
 import com.ym.mec.biz.dal.enums.MessageTypeEnum;
 import com.ym.mec.biz.service.SysMessageService;
 import com.ym.mec.biz.service.TenantInfoSendMsgService;
@@ -22,6 +23,8 @@ public class TenantInfoSendMsgServiceImpl implements TenantInfoSendMsgService {
 
     @Autowired
     private SysMessageService sysMessageService;
+    @Autowired
+    private TenantInfoDao tenantInfoDao;
 
     //开通
     public static final String OPEN = "open";
@@ -65,16 +68,16 @@ public class TenantInfoSendMsgServiceImpl implements TenantInfoSendMsgService {
     }
 
     /**
-     * 发送邮件及短信提醒
+     * 以平台的名义发送邮件及短信
      *
-     * @param type   OPEN/RENEW/EXPIRATION之类的
-     * @param userId 机构用户id
-     * @param email  发送的地址 电话或者邮件
-     * @param objs   发送的信息
+     * @param type  OPEN/RENEW/EXPIRATION之类的
+     * @param email 发送的地址 电话或者邮件
+     * @param objs  发送的信息
      */
     @Override
-    public void sendToAll(String type, Integer userId, String email, String phone, Object[] objs) {
+    public void platformSendToAll(String type, String email, String phone, Object[] objs) {
         Map<Integer, String> sendPar = new HashMap<>();
+        Integer userId = tenantInfoDao.queryUserByTenantId(-1);
         if (Objects.isNull(userId)) {
             return;
         }

+ 3 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TenantInfoServiceImpl.java

@@ -345,7 +345,7 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
         tenantProductInfoService.updateById(productInfo);
         //发送邮件及短信提醒
         Object[] msg = {tenantInfo.getName(), tenantInfo.getPhone(), "123456", "https://online.dayaedu.com"};
-        tenantInfoSendMsgService.sendToAll(OPEN, tenantInfo.getUserId(), tenantInfo.getEmail(), tenantInfo.getPhone(), msg);
+        tenantInfoSendMsgService.platformSendToAll(OPEN, tenantInfo.getEmail(), tenantInfo.getPhone(), msg);
         //释放锁
         bucket.delete();
     }
@@ -574,7 +574,7 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
         TenantInfo tenantInfo = this.getById(tenantId);
         //发送邮件及短信提醒
         Object[] msg = {tenantInfo.getName()};
-        tenantInfoSendMsgService.sendToAll(RENEW, tenantInfo.getUserId(), tenantInfo.getEmail(), tenantInfo.getPhone(), msg);
+        tenantInfoSendMsgService.platformSendToAll(RENEW, tenantInfo.getEmail(), tenantInfo.getPhone(), msg);
         //释放锁
         bucket.delete();
     }
@@ -842,7 +842,7 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
     private void send(List<TenantInfo> infoList, String dateStr) {
         infoList.forEach(t -> {
             Object[] objects = {t.getName(), dateStr};
-            tenantInfoSendMsgService.sendToAll(EXPIRATION, t.getUserId(), t.getEmail(), t.getPhone(), objects);
+            tenantInfoSendMsgService.platformSendToAll(EXPIRATION, t.getEmail(), t.getPhone(), objects);
         });
     }
 

+ 4 - 0
mec-biz/src/main/resources/config/mybatis/TenantInfoMapper.xml

@@ -152,4 +152,8 @@
           AND b.`expiry_date_` = #{expiryDate}
     </select>
 
+    <select id="queryUserByTenantId" resultType="integer">
+        select id_ from sys_user where tenant_id_ = #{tenantId} limit 1
+    </select>
+
 </mapper>