Bladeren bron

Merge remote-tracking branch 'origin/saas' into saas

zouxuan 3 jaren geleden
bovenliggende
commit
2c142641cf

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

@@ -86,15 +86,15 @@ public class PlatformProductServiceImpl extends ServiceImpl<PlatformProductDao,
     /**
      * 检查哪些机构用了这个产品,需要修改对应的权限
      *
-     * @param menuIds       修改后的的菜单id,用逗号隔开
+     * @param afterMenuIds       修改后的的菜单id,用逗号隔开
      * @param sourceMenuIds 修改之前的的菜单id,用逗号隔开
      * @param map           Map<机构id,机构的管理员id> queryProductInTenant
      */
-    public void checkUpdateRole(String menuIds, String sourceMenuIds, Map<Integer, Integer> map) {
+    public void checkUpdateRole(String afterMenuIds, String sourceMenuIds, Map<Integer, Integer> map) {
         //需要删除的菜单id
         List<Integer> deleteList = getList(sourceMenuIds);
         //需要添加的菜单id
-        List<Integer> addList = getList(menuIds);
+        List<Integer> addList = getList(afterMenuIds);
         //求新旧产品菜单的差异
         WrapperUtil.listDifference(deleteList, addList);
         //修改数据

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

@@ -538,6 +538,16 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
         productInfo.setPayAmount(productInfo.getPayAmount().add(amount));
         productInfo.setExpiryCount(productInfo.getExpiryCount() + val);
         tenantProductInfoService.updateById(productInfo);
+
+        TenantInfo tenantInfo = this.getById(productInfo.getTenantId());
+
+        //发送邮件提醒
+        Map<Integer, String> receivers = new HashMap<>();
+        receivers.put(tenantInfo.getUserId(), tenantInfo.getEmail());
+        sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.EMAIL,
+                MessageTypeEnum.EMAIL_TENANT_RENEWAL_SUCCESSFUL, receivers, null, 0, null,
+                "SYSTEM", tenantInfo.getName());
+
     }
 
     private TenantProductInfo getProductInfo(Integer tenantId) {

+ 10 - 22
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TenantOrderRecordServiceImpl.java

@@ -145,7 +145,7 @@ public class TenantOrderRecordServiceImpl extends ServiceImpl<TenantOrderRecordD
     private void open(TenantOrderRecord record) {
         //机构产品信息
         TenantProductInfo productInfo = tenantProductInfoService.getOne(new WrapperUtil<TenantProductInfo>()
-                .hasEq("tenant_id_", record.getTenantId()).queryWrapper().eq("using_",0));
+                .hasEq("tenant_id_", record.getTenantId()).queryWrapper().eq("using_", 0));
         //修改机构信息
         TenantInfo tenantInfo = new TenantInfo();
         tenantInfo.setId(record.getTenantId());
@@ -157,14 +157,14 @@ public class TenantOrderRecordServiceImpl extends ServiceImpl<TenantOrderRecordD
         tenantProductInfoService.updateById(productInfo);
     }
 
-    private void renew(TenantOrderRecord record){
+    private void renew(TenantOrderRecord record) {
         //机构产品信息
         TenantProductInfo productInfo = tenantProductInfoService.getOne(new WrapperUtil<TenantProductInfo>()
-                .hasEq("tenant_id_", record.getTenantId()).queryWrapper().eq("using_",0));
+                .hasEq("tenant_id_", record.getTenantId()).queryWrapper().eq("using_", 0));
         //获取机构续费时长
         Integer val = (Integer) tenantInfoService.opsRenewInfo(record.getTenantId()).get();
         //修改产品信息
-        tenantInfoService.renewSuccess(val,productInfo,record.getActualAmount());
+        tenantInfoService.renewSuccess(val, productInfo, record.getActualAmount());
     }
 
     //主动去第三方查询订单状态
@@ -208,9 +208,10 @@ public class TenantOrderRecordServiceImpl extends ServiceImpl<TenantOrderRecordD
         //订单状态/0待支付、1已支付、2支付失败
         switch (orderRecord.getOrderState()) {
             case 1:
-                if (TenantOrderRecordEnum.TENANT_OPEN.getCode().equals(orderRecord.getOrderType())) {
-                    tenantOrderSuccess(orderRecord, detail);
-                }
+                tenantOrderSuccess(orderRecord, detail);
+
+                checkOrder.get(orderRecord.getOrderType()).accept(orderRecord);
+
                 code = DealStatusEnum.SUCCESS.getCode();
                 LocalDateTime now = LocalDateTime.now();
                 orderRecord.setPayDate(now.toLocalDate().toDate());
@@ -232,7 +233,7 @@ public class TenantOrderRecordServiceImpl extends ServiceImpl<TenantOrderRecordD
     private void tenantOrderSuccess(TenantOrderRecord orderRecord, Map<String, Object> detail) {
         //机构产品信息
         TenantProductInfo productInfo = tenantProductInfoService.getOne(new WrapperUtil<TenantProductInfo>()
-                .hasEq("tenant_id_", orderRecord.getTenantId()).queryWrapper().eq("using_",0));
+                .hasEq("tenant_id_", orderRecord.getTenantId()).queryWrapper().eq("using_", 0));
         //获取服务信息
         PlatformServe platformServe = platformServeService.getOne(new WrapperUtil<PlatformServe>()
                 .hasEq("id_", productInfo.getServeId()).queryWrapper());
@@ -242,19 +243,6 @@ public class TenantOrderRecordServiceImpl extends ServiceImpl<TenantOrderRecordD
         detail.put("platformServeName", platformServe.getName());
         detail.put("mode", serveDetail.getMode());
         detail.put("num", productInfo.getExpiryCount());
-
-        orderSuccessOps(orderRecord, productInfo);
-    }
-
-    private void orderSuccessOps(TenantOrderRecord orderRecord, TenantProductInfo productInfo) {
-        TenantInfo tenantInfo = new TenantInfo();
-        tenantInfo.setId(orderRecord.getTenantId());
-        tenantInfo.setPayState(1);
-        tenantInfoService.updateById(tenantInfo);
-
-        productInfo.setPayDate(new Date());
-        productInfo.setTenantId(orderRecord.getTenantId());
-        tenantProductInfoService.updateById(productInfo);
     }
 
     private void rechargeSuccess(TenantOrderRecord record) throws Exception {
@@ -268,7 +256,7 @@ public class TenantOrderRecordServiceImpl extends ServiceImpl<TenantOrderRecordD
 
     @Override
     public Boolean rechargeCheck(TenantOrderRecord record, int i) {
-        RBucket<Object> bucket = redissonClient.getBucket("tenant_check_order");
+        RBucket<Object> bucket = redissonClient.getBucket("tenant_check_recharge");
         if (!bucket.trySet(1, 3L, TimeUnit.SECONDS)) {
             return false;
         }