浏览代码

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

zouxuan 3 年之前
父节点
当前提交
a029290b49

+ 12 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/TenantOrderRecord.java

@@ -57,6 +57,10 @@ public class TenantOrderRecord implements Serializable {
     @ApiModelProperty(value = "实付金额")
     private BigDecimal actualAmount;
 
+    @TableField("mer_nos")
+    @ApiModelProperty(value = "收款账户")
+    private String merNos;
+
     @TableField("order_state_")
     @ApiModelProperty(value = "订单状态/0待支付、1已支付、2支付失败")
     private Integer orderState;
@@ -161,6 +165,14 @@ public class TenantOrderRecord implements Serializable {
         this.actualAmount = actualAmount;
     }
 
+    public String getMerNos() {
+        return merNos;
+    }
+
+    public void setMerNos(String merNos) {
+        this.merNos = merNos;
+    }
+
     public Integer getOrderState() {
         return orderState;
     }

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

@@ -37,11 +37,11 @@ public interface TenantInfoService extends IService<TenantInfo> {
 
     Map<String, Object> tenantRenewPay(Integer tenantId, Integer val) throws Exception;
 
-    RBucket<Object> opsRenewInfo(Integer tenantId);
+    RBucket<Map<String, Object>> cacheOrder(String key);
 
-    void renewSuccess(Integer val, TenantProductInfo productInfo, BigDecimal amount);
+    RBucket<Integer> opsRenewInfo(Integer tenantId);
 
-    Msg orderNotify(Msg msg);
+    void renewSuccess(Integer val, TenantProductInfo productInfo, BigDecimal amount);
 
     Map<String, Object> recharge(Integer tenantId, BigDecimal amount) throws Exception;
 

+ 63 - 71
mec-biz/src/main/java/com/ym/mec/biz/service/impl/OrderPayOpsServiceImpl.java

@@ -1,30 +1,5 @@
 package com.ym.mec.biz.service.impl;
 
-import java.math.BigDecimal;
-import java.math.RoundingMode;
-import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Calendar;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.concurrent.CompletableFuture;
-import java.util.concurrent.TimeUnit;
-import java.util.function.BiPredicate;
-import java.util.function.Consumer;
-import java.util.function.Function;
-
-import org.redisson.api.RBucket;
-import org.redisson.api.RedissonClient;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.util.DigestUtils;
-
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.ym.mec.biz.dal.entity.StudentPaymentOrder;
@@ -32,12 +7,7 @@ import com.ym.mec.biz.dal.entity.TenantConfig;
 import com.ym.mec.biz.dal.entity.TenantOrderRecord;
 import com.ym.mec.biz.dal.entity.TenantPaymentOrder;
 import com.ym.mec.biz.dal.enums.DealStatusEnum;
-import com.ym.mec.biz.service.CloudTeacherOrderService;
-import com.ym.mec.biz.service.OrderPayOpsService;
-import com.ym.mec.biz.service.StudentPaymentOrderService;
-import com.ym.mec.biz.service.TenantConfigService;
-import com.ym.mec.biz.service.TenantOrderRecordService;
-import com.ym.mec.biz.service.TenantPaymentOrderService;
+import com.ym.mec.biz.service.*;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.page.WrapperUtil;
 import com.ym.mec.thirdparty.adapay.ConfigInit;
@@ -45,6 +15,23 @@ import com.ym.mec.thirdparty.adapay.Payment;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.http.HttpUtil;
 import com.ym.mec.util.json.JsonUtil;
+import org.redisson.api.RBucket;
+import org.redisson.api.RedissonClient;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.DigestUtils;
+
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.text.SimpleDateFormat;
+import java.util.*;
+import java.util.concurrent.CompletableFuture;
+import java.util.concurrent.TimeUnit;
+import java.util.function.BiPredicate;
+import java.util.function.Consumer;
+import java.util.function.Function;
 
 /**
  * @author hgw
@@ -64,7 +51,6 @@ public class OrderPayOpsServiceImpl implements OrderPayOpsService {
     private RedissonClient redissonClient;
     @Autowired
     private CloudTeacherOrderService cloudTeacherOrderService;
-    
     @Autowired
     private TenantConfigService tenantConfigService;
 
@@ -218,7 +204,7 @@ public class OrderPayOpsServiceImpl implements OrderPayOpsService {
         //校验订单是否超时
         String timeExpire = checkOrderTimeOut(createTime);
         //初始化支付数据
-        Map<String, Object> paymentParams = getPaymentParam(payParam);
+        Map<String, Object> paymentParams = getPaymentParam(payParam, clazz);
         paymentParams.put("time_expire", timeExpire);
         paymentParams.put("expend", getExpend(payParam));
         //向第三方发起支付,获取第三方的支付的信息
@@ -284,47 +270,53 @@ public class OrderPayOpsServiceImpl implements OrderPayOpsService {
         return openId;
     }
 
-    private Map<String, Object> getPaymentParam(PaymentParam payParam) {
+    private <T> Map<String, Object> getPaymentParam(PaymentParam payParam, T clazz) {
         Map<String, Object> paymentParams = new HashMap<>();
         paymentParams.put("app_id", ConfigInit.appId);
         paymentParams.put("order_no", payParam.getOrderNo());
         paymentParams.put("pay_channel", payParam.getPayChannel());
-        paymentParams.put("pay_amt", payParam.getAmount().setScale(2, BigDecimal.ROUND_HALF_UP));
+        paymentParams.put("pay_amt", payParam.getAmount().setScale(2, RoundingMode.HALF_UP));
         paymentParams.put("goods_title", payParam.getOrderSubject());
         paymentParams.put("goods_desc", payParam.getOrderBody());
-        
+
         if (payParam.getTenantId() == 1) {
-			// 延时分账
-			paymentParams.put("pay_mode", "delay");
-		} else {
-
-			StudentPaymentOrder paymentOrder = studentPaymentOrderService.findOrderByOrderNo(payParam.getOrderNo());
-			if (paymentOrder == null) {
-				throw new BizException("订单[{}]找不到", payParam.getOrderNo());
-			}
-
-			TenantConfig tenantConfig = tenantConfigService.queryByTenantId(payParam.getTenantId());
-			if (tenantConfig == null) {
-				throw new BizException("机构[{}]信息找不到", payParam.getTenantId());
-			}
-
-			// 实时分账
-			List<Map<String, Object>> divMemberList = new ArrayList<Map<String, Object>>();
-			Map<String, Object> divMember = new HashMap<String, Object>();
-			divMember.put("member_id", paymentOrder.getMerNos());
-			divMember.put("amount",
-					paymentOrder.getActualAmount().multiply(tenantConfig.getChargeRate()).divide(new BigDecimal(1000)).setScale(2, BigDecimal.ROUND_HALF_UP));
-			divMember.put("fee_flag", "Y");
-
-			divMemberList.add(divMember);
-
-			paymentParams.put("div_members", JsonUtil.toJSONString(divMemberList));
-
-		}
-        
+            // 延时分账
+            paymentParams.put("pay_mode", "delay");
+        } else {
+            TenantConfig tenantConfig = tenantConfigService.queryByTenantId(payParam.getTenantId());
+            if (tenantConfig == null) {
+                throw new BizException("机构[{}]信息找不到", payParam.getTenantId());
+            }
+            String merNos;
+            BigDecimal amount;
+            Function<BigDecimal, BigDecimal> amountTo = (a) -> a
+                    .multiply(tenantConfig.getChargeRate())
+                    .divide(new BigDecimal(1000), 2, RoundingMode.HALF_UP);
+
+            if (clazz instanceof StudentPaymentOrder) {
+                StudentPaymentOrder st = (StudentPaymentOrder) clazz;
+                merNos = st.getMerNos();
+                amount = amountTo.apply(st.getActualAmount());
+            } else if (clazz instanceof TenantOrderRecord) {
+                TenantOrderRecord tor = (TenantOrderRecord) clazz;
+                merNos = tor.getMerNos();
+                amount = amountTo.apply(tor.getActualAmount());
+            } else {
+                throw new BizException("订单[{}]找不到", payParam.getOrderNo());
+            }
+
+            // 实时分账
+            List<Map<String, Object>> divMemberList = new ArrayList<>();
+            Map<String, Object> divMember = new HashMap<>();
+            divMember.put("member_id", merNos);
+            divMember.put("amount", amount);
+            divMember.put("fee_flag", "Y");
+            divMemberList.add(divMember);
+            paymentParams.put("div_members", JsonUtil.toJSONString(divMemberList));
+        }
+
         //手续费收取模式:O-商户手续费账户扣取手续费,I-交易金额中扣取手续费;值为空时,默认值为I;若为O时,分账对象列表中不支持传入手续费承担方
         paymentParams.put("fee_mode", "I");
-        
         return paymentParams;
     }
 
@@ -500,13 +492,13 @@ public class OrderPayOpsServiceImpl implements OrderPayOpsService {
             this.platform = platform;
         }
 
-		public Integer getTenantId() {
-			return tenantId;
-		}
+        public Integer getTenantId() {
+            return tenantId;
+        }
 
-		public void setTenantId(Integer tenantId) {
-			this.tenantId = tenantId;
-		}
+        public void setTenantId(Integer tenantId) {
+            this.tenantId = tenantId;
+        }
     }
 
 }

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

@@ -1,6 +1,5 @@
 package com.ym.mec.biz.service.impl;
 
-import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -27,7 +26,6 @@ import com.ym.mec.common.service.IdGeneratorService;
 import com.ym.mec.common.tenant.TenantContextHolder;
 import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
 import com.ym.mec.thirdparty.yqpay.DateUtils;
-import com.ym.mec.thirdparty.yqpay.Msg;
 import com.ym.mec.util.date.DateUtil;
 import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -442,12 +440,19 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
      * 机构开通缴费
      */
     public Map<String, Object> tenantOpenPay(Integer tenantId) throws Exception {
+        TenantOrderRecordEnum tenantEnum = TenantOrderRecordEnum.TENANT_OPEN;
+        RBucket<Map<String, Object>> cacheOrder = cacheOrder(tenantEnum.getCode() + ":" + tenantId);
+        Map<String, Object> result = cacheOrder.get();
+        if (Objects.nonNull(result)) {
+            return result;
+        } else {
+            result = new HashMap<>();
+        }
+
         TenantProductInfo productInfo = getProductInfo(tenantId);
         //生成订单编号
         String orderNo = idGenerator.generatorId("payment") + "";
         String baseApiUrl = sysConfigDao.findConfigValue("base_api_url");
-        TenantOrderRecordEnum tenantEnum = TenantOrderRecordEnum.TENANT_OPEN;
-        Map<String, Object> result = new HashMap<>();
         int orderState = 0;
         //消费大于0元则拉起支付
         if (productInfo.getPayAmount().compareTo(BigDecimal.ZERO) > 0) {
@@ -462,6 +467,8 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
                     1,//todo 机构开通付款临时写死
                     tenantEnum.getCode()
             );
+            //将数据缓存起来避免重复生成订单数据,如果这次没有支付 3分钟内可以重复支付
+            cacheOrder.set(result, 3L, TimeUnit.MINUTES);
         } else {
             //已支付
             orderState = 1;
@@ -469,9 +476,9 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
             Map<String, Object> payMap = new HashMap<>();
             payMap.put("orderNo", orderNo);
             result.put("payMap", payMap);
-            result.put("amount", productInfo.getPayAmount());
         }
-        createOrderRecord(tenantId, productInfo.getPayAmount(), orderNo, tenantEnum, orderState);
+        result.put("amount", productInfo.getPayAmount());
+        createOrderRecord(tenantId, productInfo.getPayAmount(), orderNo, tenantEnum, orderState, WrapperUtil.toStr(result, "routingMerNos"));
         log.info("tenant pay >>>>> {} ", result);
         return result;
     }
@@ -483,14 +490,19 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
      * @param val      购买周期
      */
     public Map<String, Object> tenantRenewPay(Integer tenantId, Integer val) throws Exception {
+        TenantOrderRecordEnum tenantEnum = TenantOrderRecordEnum.TENANT_RENEW;
+        RBucket<Map<String, Object>> cacheOrder = cacheOrder(tenantEnum.getCode() + ":" + tenantId + ":" + val);
+        Map<String, Object> result = cacheOrder.get();
+        if (Objects.nonNull(result)) {
+            return result;
+        } else {
+            result = new HashMap<>();
+        }
         TenantProductInfo productInfo = getProductInfo(tenantId);
         //续费时 取合同价
         BigDecimal amount = productInfo.getContractPrice().multiply(new BigDecimal(val));
-
         //生成订单编号
         String orderNo = idGenerator.generatorId("payment") + "";
-        TenantOrderRecordEnum tenantEnum = TenantOrderRecordEnum.TENANT_RENEW;
-        Map<String, Object> result = new HashMap<>();
         int orderState = 0;
         //消费大于0元则拉起支付
         if (amount.compareTo(BigDecimal.ZERO) > 0) {
@@ -507,23 +519,33 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
             );
             //操作续费信息,把续费周期存起来
             opsRenewInfo(tenantId).set(val, 1, TimeUnit.HOURS);
+            //将数据缓存起来避免重复生成订单数据,如果这次没有支付 3分钟内可以重复支付
+            cacheOrder.set(result, 3L, TimeUnit.MINUTES);
         } else {
             //续费成功
             renewSuccess(val, productInfo, amount);
             orderState = 1;
-            result.put("amount", amount);
         }
-        createOrderRecord(tenantId, amount, orderNo, tenantEnum, orderState);
+        result.put("amount", amount);
+        createOrderRecord(tenantId, amount, orderNo, tenantEnum, orderState, WrapperUtil.toStr(result, "routingMerNos"));
         log.info("tenant pay >>>>> {} ", result);
         return result;
     }
 
-    //操作续费信息
-    public RBucket<Object> opsRenewInfo(Integer tenantId) {
-        String key = TenantOrderRecordEnum.TENANT_RENEW.getCode() + ":" + tenantId;
+    /**
+     * 缓存订单数据
+     *
+     * @param key TenantOrderRecordEnum+机构id+其他
+     */
+    public RBucket<Map<String, Object>> cacheOrder(String key) {
         return redissonClient.getBucket(key);
     }
 
+    //操作续费信息
+    public RBucket<Integer> opsRenewInfo(Integer key) {
+        return redissonClient.getBucket(TenantOrderRecordEnum.TENANT_RENEW.getCode() + ":" + key);
+    }
+
     /**
      * 续费成功
      *
@@ -581,7 +603,7 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
 
     //生成订单
     private void createOrderRecord(Integer tenantId, BigDecimal payAmount, String orderNo, TenantOrderRecordEnum
-            tenantEnum, Integer orderState) {
+            tenantEnum, Integer orderState, String merNos) {
         TenantOrderRecord record = new TenantOrderRecord();
         record.setTenantId(tenantId);
         record.setOrderNo(orderNo);
@@ -590,6 +612,7 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
         record.setExpectAmount(payAmount);
         record.setActualAmount(payAmount);
         record.setOrderState(orderState);
+        record.setMerNos(merNos);
         LocalDateTime now = LocalDateTime.now();
         if (orderState == 1) {
             record.setPayDate(now.toLocalDate().toDate());
@@ -600,44 +623,6 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
     }
 
     /**
-     * 支付消息回调
-     *
-     * @param msg
-     * @return
-     */
-    @Override
-    public Msg orderNotify(Msg msg) {
-        log.info("tenant orderNotify >>>>> {}", msg);
-        msg.setMsg("fail");
-        Map<String, String> notifyMap = JSON.parseObject(msg.getResponseParameters(), Map.class);
-        String orderNo = notifyMap.get("merMerOrderNo");
-        TenantOrderRecord record = tenantOrderRecordService.getOne(new WrapperUtil<TenantOrderRecord>()
-                .hasEq("order_no_", orderNo).queryWrapper());
-        String channelType = notifyMap.get("channelType").equals("1") ? "WXPay" : (notifyMap.get("channelType").equals("2") ? "Alipay" : "quickPay");
-        record.setPayChannel(channelType);
-        //支付中订单存在,更新状态 tradeState 88就是正确的 其他错误的
-        if (msg.getResponseType().equals("1") && notifyMap.size() > 0 && msg.getCode().equals("88")) {
-            // notifyMap.put("totalMoney", notifyMap.get("payAmount"));
-            LocalDateTime now = LocalDateTime.now();
-            record.setOrderState(1);
-            record.setPayDate(now.toLocalDate().toDate());
-            record.setPayTime(now.toDate());
-            msg.setCode("000000");
-            msg.setMsg("success");
-            if (TenantOrderRecordEnum.TENANT_OPEN.getCode().equals(record.getOrderType())) {
-                tenantOpen(record.getTenantId());
-            }
-        } else {
-            //支付失败
-            record.setOrderState(2);
-        }
-        log.info("tenant orderNotify return>>>>> {}", record);
-        tenantOrderRecordService.updateById(record);
-        log.info("tenant orderNotify return>>>>> {}", msg);
-        return msg;
-    }
-
-    /**
      * 校验手机号
      */
     private RBucket<Object> checkPhone(TenantInfoDto dto) {
@@ -747,10 +732,10 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
                     tenantEnum.getCode()
             );
         } else {
-            result.put("amount",amount);
-            return result;
+            orderState = 1;
         }
-        createOrderRecord(tenantId, amount, orderNo, tenantEnum, orderState);
+        result.put("amount", amount);
+        createOrderRecord(tenantId, amount, orderNo, tenantEnum, orderState, WrapperUtil.toStr(result, "routingMerNos"));
         log.info("tenant pay >>>>> {} ", result);
         return result;
     }

+ 6 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TenantOrderRecordServiceImpl.java

@@ -156,6 +156,8 @@ public class TenantOrderRecordServiceImpl extends ServiceImpl<TenantOrderRecordD
         productInfo.setPayDate(new Date());
         productInfo.setTenantId(record.getTenantId());
         tenantProductInfoService.updateById(productInfo);
+        //删除订单数据及订单缓存
+        tenantInfoService.cacheOrder(TenantOrderRecordEnum.TENANT_RENEW + ":" + record.getTenantId()).delete();
     }
 
     private void renew(TenantOrderRecord record) {
@@ -163,11 +165,13 @@ public class TenantOrderRecordServiceImpl extends ServiceImpl<TenantOrderRecordD
         TenantProductInfo productInfo = tenantProductInfoService.getOne(new WrapperUtil<TenantProductInfo>()
                 .hasEq("tenant_id_", record.getTenantId()).queryWrapper().eq("using_", 0));
         //获取机构续费时长
-        RBucket<Object> bucket = tenantInfoService.opsRenewInfo(record.getTenantId());
-        Integer val = (Integer) bucket.get();
+        RBucket<Integer> bucket = tenantInfoService.opsRenewInfo(record.getTenantId());
+        Integer val = bucket.get();
         //修改产品信息
         tenantInfoService.renewSuccess(val, productInfo, record.getActualAmount());
+        //删除订单数据及订单缓存
         bucket.delete();
+        tenantInfoService.cacheOrder(TenantOrderRecordEnum.TENANT_RENEW + ":" + record.getTenantId() + ":" + val).delete();
     }
 
     //主动去第三方查询订单状态

+ 6 - 11
mec-biz/src/main/resources/config/mybatis/TenantOrderRecordMapper.xml

@@ -11,6 +11,7 @@
         <result column="pay_channel_" jdbcType="VARCHAR" property="payChannel"/>
         <result column="expect_amount" jdbcType="VARCHAR" property="expectAmount"/>
         <result column="actual_amount" jdbcType="VARCHAR" property="actualAmount"/>
+        <result column="mer_nos" jdbcType="VARCHAR" property="merNos"/>
         <result column="order_state_" jdbcType="INTEGER" property="orderState"/>
         <result column="pay_date_" jdbcType="TIMESTAMP" property="payDate"/>
         <result column="pay_time_" jdbcType="TIMESTAMP" property="payTime"/>
@@ -19,22 +20,23 @@
 
     <sql id="Base_Column_List">
         id_
-        , tenant_id_, order_no_, trans_no_, order_type_, payment_channel_, pay_channel_, expect_amount, actual_amount, order_state_, pay_date_, pay_time_, created_time_
+        , tenant_id_, order_no_, trans_no_, order_type_, payment_channel_, pay_channel_, expect_amount, actual_amount, mer_nos, order_state_, pay_date_, pay_time_, created_time_
     </sql>
 
     <insert id="insertBatch" keyColumn="id_" keyProperty="id" useGeneratedKeys="true"
             parameterType="com.ym.mec.biz.dal.entity.TenantOrderRecord">
         insert into tenant_order_record(tenant_id_, order_no_, trans_no_, order_type_, payment_channel_, pay_channel_,
-        expect_amount, actual_amount, order_state_, pay_date_, pay_time_, created_time_)
+        expect_amount, actual_amount, mer_nos,order_state_, pay_date_, pay_time_, created_time_)
         values
         <foreach collection="entities" item="entity" separator=",">
             (#{entity.tenantId}, #{entity.orderNo}, #{entity.transNo}, #{entity.orderType}, #{entity.paymentChannel},
-            #{entity.payChannel}, #{entity.expectAmount}, #{entity.actualAmount}, #{entity.orderState},
+            #{entity.payChannel}, #{entity.expectAmount}, #{entity.actualAmount}, #{entity.merNos},#{entity.orderState},
             #{entity.payDate}, #{entity.payTime}, #{entity.createdTime})
         </foreach>
     </insert>
 
-    <select id="queryPage" parameterType="com.ym.mec.biz.dal.dto.TenantOrderRecordDto" resultType="com.ym.mec.biz.dal.vo.TenantOrderRecordVo">
+    <select id="queryPage" parameterType="com.ym.mec.biz.dal.dto.TenantOrderRecordDto"
+            resultType="com.ym.mec.biz.dal.vo.TenantOrderRecordVo">
         SELECT
             b.name_ as tenantName,
             a.tenant_id_ as tenantId,
@@ -69,13 +71,6 @@
         <if test="param.orderState != null ">
             AND a.`order_state_` = #{param.orderState}
         </if>
-<!--        前端去掉 tenantId 搜索 -->
-<!--        <if test="param.tenantIdList != null ">-->
-<!--            AND a.`tenant_id_`  IN-->
-<!--            <foreach collection="param.tenantIdList" item="id" open="(" close=")" separator=",">-->
-<!--                #{id}-->
-<!--            </foreach>-->
-<!--        </if>-->
         <if test="param.startDate != null">
             AND a.`created_time_` <![CDATA[ >= ]]>  #{param.startDate}
         </if>

+ 0 - 11
mec-web/src/main/java/com/ym/mec/web/controller/TenantInfoController.java

@@ -119,17 +119,6 @@ public class TenantInfoController extends BaseController {
         return succeed(tenantInfoService.tenantRenewPay(id, val));
     }
 
-    /**
-     * 支付回调-第三方回调地址
-     *
-     * @param msg
-     * @return
-     */
-    @PostMapping("/notify")
-    public Msg notify(@ModelAttribute Msg msg) {
-        return tenantInfoService.orderNotify(msg);
-    }
-
     @ApiOperation(value = "机构充值")
     @GetMapping("/recharge/{amount}")
     @PreAuthorize("@pcs.hasPermissions('tenantInfo/recharge')")