From a9aa6c1409594b6517d77df91aec510fcd377c7e Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 26 May 2021 14:36:15 +0800 Subject: [PATCH 01/48] tt --- .../com/iformall/domain/po/tt/TtCoupon.java | 4 ++++ .../iformall/service/tt/TtOrderService.java | 2 ++ .../service/tt/impl/TtOrderServiceImpl.java | 15 ++++++++++++ .../controller/TtCouponController.java | 24 ++++++++++++++++++- 4 files changed, 44 insertions(+), 1 deletion(-) diff --git a/mallinkService/src/main/java/com/iformall/domain/po/tt/TtCoupon.java b/mallinkService/src/main/java/com/iformall/domain/po/tt/TtCoupon.java index 200d35d56..eb528f3cc 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/tt/TtCoupon.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/tt/TtCoupon.java @@ -141,6 +141,10 @@ public class TtCoupon extends TenantEntity { @TableField(exist = false) private List columnCoupons; + @TableField(exist = false) + @io.swagger.annotations.ApiModelProperty(value="是否可观看",name="view") + private boolean view; + @TableField(exist = false) @io.swagger.annotations.ApiModelProperty(value = "审批流参数", name = "flowParams") private Map flowParams; diff --git a/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java b/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java index 7c65a73b5..dc6d3b5d7 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java @@ -29,4 +29,6 @@ public interface TtOrderService { ResultData createPay(TenantEntity tenantEntity,Long orderId, Long memberId, WxAppinfo appinfo); ResultData updateOrderStatus(TenantEntity tenantInfo, Long orderId, Long memberId, WxAppinfo cAppInfo); + + boolean isByMember(Long memberId, Long id); } diff --git a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java index 8db727596..e7deeedea 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java @@ -313,4 +313,19 @@ public class TtOrderServiceImpl implements TtOrderService { return new ResultData(); } + @Override + public boolean isByMember(Long memberId, Long id) { + TtOrder orderQ = new TtOrder(); + orderQ.setCUserId(memberId); + orderQ.setProductId(id); + List statuss = new ArrayList<>(); + statuss.add(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); + orderQ.setStatusS(statuss); + int listCount = ttOrderMapper.findListCount(orderQ); + if(listCount > 0){ + return true; + } + return false; + } + } diff --git a/mallinkTTCApi/src/main/java/com/iformall/controller/TtCouponController.java b/mallinkTTCApi/src/main/java/com/iformall/controller/TtCouponController.java index a7dc4526a..dc89b1944 100644 --- a/mallinkTTCApi/src/main/java/com/iformall/controller/TtCouponController.java +++ b/mallinkTTCApi/src/main/java/com/iformall/controller/TtCouponController.java @@ -5,9 +5,11 @@ import com.iformall.common.ResultData; import com.iformall.domain.po.WxMerchant; import com.iformall.domain.po.tt.TtCoupon; import com.iformall.enums.EnumTtCouponStatus; +import com.iformall.enums.EnumYesOrNo; import com.iformall.exception.MallinkException; import com.iformall.service.WxMerchantService; import com.iformall.service.tt.TtCouponService; +import com.iformall.service.tt.TtOrderService; import com.iformall.video.VideoFactory; import com.iformall.video.entity.VideUploadResult; import io.swagger.annotations.Api; @@ -32,6 +34,9 @@ public class TtCouponController extends BaseController { @Autowired private WxMerchantService wxMerchantService; + @Autowired + private TtOrderService ttOrderService; + @Autowired private VideoFactory videoFactory; @@ -58,8 +63,25 @@ public class TtCouponController extends BaseController { if (id == null) { return new ResultData(ResultData.ERROR, "缺少id"); } + TtCoupon detail = ttCouponService.detail(id); + if(detail == null){ + new ResultData(); + } + if(detail.getIsPayment().equals(EnumYesOrNo.YES.getCode())){ + try { + if(ttOrderService.isByMember(getMemberId(),id)){ + detail.setView(true); + }else{ + detail.setView(false); + } + } catch (MallinkException e) { + detail.setView(false); + } + }else{ + detail.setView(true); + } ttCouponService.addSeeCount(id); - return new ResultData(ttCouponService.detail(id)); + return new ResultData(detail); } @GetMapping(value = "/videoDetial") From 9369d0e9e0fa773cf88f314c4e35ca3dff68db2a Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 26 May 2021 15:40:09 +0800 Subject: [PATCH 02/48] tt --- .../service/tt/impl/TtCouponServiceImpl.java | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java index d4ddabc2a..6ba74c946 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java @@ -68,12 +68,14 @@ public class TtCouponServiceImpl implements TtCouponService { if (StringUtils.isNotEmpty(record.getOrigPriceStr())) { record.setOrigPrice(new BigDecimal(record.getOrigPriceStr()).multiply(new BigDecimal(100)).intValue()); } - if(record.getSalePrice() == null || record.getSalePrice().intValue() == 0){ - record.setSalePrice(0); - record.setIsPayment(EnumYesOrNo.NO.getCode()); - record.setPreviewDuration(0); - }else{ - record.setIsPayment(EnumYesOrNo.YES.getCode()); + if(!record.getType().equals(EnumTtCouponType.COUPON_MORE.getCode())){ + if(record.getSalePrice() == null || record.getSalePrice().intValue() == 0){ + record.setSalePrice(0); + record.setIsPayment(EnumYesOrNo.NO.getCode()); + record.setPreviewDuration(0); + }else{ + record.setIsPayment(EnumYesOrNo.YES.getCode()); + } } if (StringUtils.isBlank(record.getCoverPicture())) { From d0933766bdd39be481bb4690c25487865b283a8a Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 26 May 2021 15:44:25 +0800 Subject: [PATCH 03/48] tt --- .../java/com/iformall/service/tt/impl/TtCouponServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java index 6ba74c946..65504eb08 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java @@ -72,7 +72,7 @@ public class TtCouponServiceImpl implements TtCouponService { if(record.getSalePrice() == null || record.getSalePrice().intValue() == 0){ record.setSalePrice(0); record.setIsPayment(EnumYesOrNo.NO.getCode()); - record.setPreviewDuration(0); +// record.setPreviewDuration(0); }else{ record.setIsPayment(EnumYesOrNo.YES.getCode()); } From 70e6882025992aed302a7a0fbbf56edab9e98f09 Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 26 May 2021 15:47:37 +0800 Subject: [PATCH 04/48] tt --- .../com/iformall/service/tt/impl/TtCouponServiceImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java index 65504eb08..78f9a15a2 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java @@ -68,7 +68,7 @@ public class TtCouponServiceImpl implements TtCouponService { if (StringUtils.isNotEmpty(record.getOrigPriceStr())) { record.setOrigPrice(new BigDecimal(record.getOrigPriceStr()).multiply(new BigDecimal(100)).intValue()); } - if(!record.getType().equals(EnumTtCouponType.COUPON_MORE.getCode())){ +// if(!record.getType().equals(EnumTtCouponType.COUPON_MORE.getCode())){ if(record.getSalePrice() == null || record.getSalePrice().intValue() == 0){ record.setSalePrice(0); record.setIsPayment(EnumYesOrNo.NO.getCode()); @@ -76,7 +76,7 @@ public class TtCouponServiceImpl implements TtCouponService { }else{ record.setIsPayment(EnumYesOrNo.YES.getCode()); } - } +// } if (StringUtils.isBlank(record.getCoverPicture())) { List strList = new ArrayList(); From ab95f26faafb19d87c79926d5d9c3c291c5b1abe Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 26 May 2021 16:07:59 +0800 Subject: [PATCH 05/48] tt --- .../service/tt/impl/TtCouponServiceImpl.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java index 78f9a15a2..30fdd8725 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java @@ -95,8 +95,8 @@ public class TtCouponServiceImpl implements TtCouponService { record.setStatus(EnumTtCouponStatus.TTCOUPON_STATUS_EXAMINE.getCode()); } + final IdWorker idWorker = IdWorker.get(); if (record.getId() == null) { - final IdWorker idWorker = IdWorker.get(); record.setId(idWorker.nextId()); record.setCreateDate(new Date()); record.setUpdateDate(new Date()); @@ -114,10 +114,18 @@ public class TtCouponServiceImpl implements TtCouponService { couponD.setType(EnumTtCouponType.COUPON_MORE.getCode()); ttCouponMapper.delete(new QueryWrapper(couponD)); for (TtCoupon ttc:record.getColumnCoupons()) { + if(ttc.getId() == null){ + ttc.setId(idWorker.nextId()); + ttc.setCreateDate(new Date()); + } ttc.updateTenantInfo(record); ttc.setType(EnumTtCouponType.COUPON_MORE.getCode()); ttc.setColumnId(record.getId()); - this.saveOrUpdate(ttc); + ttc.setSalePrice(0); + ttc.setIsPayment(EnumYesOrNo.NO.getCode()); + ttc.setStatus(EnumTtCouponStatus.TTCOUPON_STATUS_DRAFT.getCode()); + ttc.setUpdateDate(new Date()); + ttCouponMapper.insert(ttc); } } return new ResultData(); From efea0f687921d566d32276f5a5a1d68182e19cf1 Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 26 May 2021 17:04:02 +0800 Subject: [PATCH 06/48] tt --- .../com/iformall/service/tt/impl/TtCouponServiceImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java index 30fdd8725..02ec1181d 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java @@ -121,8 +121,8 @@ public class TtCouponServiceImpl implements TtCouponService { ttc.updateTenantInfo(record); ttc.setType(EnumTtCouponType.COUPON_MORE.getCode()); ttc.setColumnId(record.getId()); - ttc.setSalePrice(0); - ttc.setIsPayment(EnumYesOrNo.NO.getCode()); + ttc.setSalePrice(record.getSalePrice()); + ttc.setIsPayment(record.getIsPayment()); ttc.setStatus(EnumTtCouponStatus.TTCOUPON_STATUS_DRAFT.getCode()); ttc.setUpdateDate(new Date()); ttCouponMapper.insert(ttc); From e86f06140a55158956ca915ab3ba0d9c5ce1b35e Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 26 May 2021 18:04:43 +0800 Subject: [PATCH 07/48] tt --- .../java/com/iformall/controller/TtOrderController.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderController.java b/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderController.java index cb0843a60..142c504f6 100644 --- a/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderController.java +++ b/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderController.java @@ -140,13 +140,14 @@ public class TtOrderController extends BaseController { /** * tt支付 * @param paramMap - * @param request + * @param * @return * @throws Exception */ - //@ApiOperation(value = "发起小程序支付订单", notes = "{\"orderId\":\"string\"}") - @RequestMapping(value = "/createPay", method = RequestMethod.POST) - public ResultData _create(@RequestBody Map paramMap, HttpServletRequest request) throws Exception { + @ApiOperation(value = "发起小程序支付订单", notes = "{\"orderId\":\"string\"}") +// @RequestMapping(value = "/createPay", method = RequestMethod.POST) + @PostMapping("createPay") + public ResultData _create(@RequestBody Map paramMap){ logger.info("/api/pay/create" + paramMap.toString()); String orderIdStr = paramMap.get("orderId"); if (StringUtils.isBlank(orderIdStr)) { From 1c4b027f6d795a9517935d7c5098b9fead82c8d3 Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 26 May 2021 18:11:57 +0800 Subject: [PATCH 08/48] tt --- .../com/iformall/douyin/pay/DouYinPayHelper.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/douyin/pay/DouYinPayHelper.java b/mallinkService/src/main/java/com/iformall/douyin/pay/DouYinPayHelper.java index ffffc081a..c3869ae67 100644 --- a/mallinkService/src/main/java/com/iformall/douyin/pay/DouYinPayHelper.java +++ b/mallinkService/src/main/java/com/iformall/douyin/pay/DouYinPayHelper.java @@ -50,14 +50,14 @@ public class DouYinPayHelper { * 是否urlEncoder * @return String */ - private static String packageSign(Map params, boolean urlEncoder) { + private static String packageSign(Map params, boolean urlEncoder) { // 先将参数以其参数名的字典序升序进行排序 - TreeMap sortedParams = new TreeMap(params); + TreeMap sortedParams = new TreeMap(params); // 遍历排序后的字典,字段内容(不包含 key)与支付 SALT 一起进行字典序排序后,使用&符号链接 StringBuilder sb = new StringBuilder(); boolean first = true; - for (Entry param : sortedParams.entrySet()) { - String value = param.getValue(); + for (Entry param : sortedParams.entrySet()) { + String value = param.getValue().toString(); if (StringUtils.isBlank(value)) { continue; } @@ -76,7 +76,7 @@ public class DouYinPayHelper { } return sb.toString(); } - public static String createSign(Map params, String sercrect) { + public static String createSign(Map params, String sercrect) { // 生成签名前先去除sign params.remove("sign"); params.remove("app_id"); @@ -86,7 +86,7 @@ public class DouYinPayHelper { return HashUtil.md5(stringSignTemp).toUpperCase(); } - public static String doPost(String url, Map params) { + public static String doPost(String url, Map params) { return HttpUtil.payPost(url, JSON.toJSONString(params)); } From f121e35b8dc918b1fac84ee547a6020c7e765a23 Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 26 May 2021 18:22:29 +0800 Subject: [PATCH 09/48] tt --- .../pay/preOrder/DouYinCreatePreOrder.java | 25 ++++++++++++++----- 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/douyin/pay/preOrder/DouYinCreatePreOrder.java b/mallinkService/src/main/java/com/iformall/douyin/pay/preOrder/DouYinCreatePreOrder.java index 8b7cf153f..a39f198de 100644 --- a/mallinkService/src/main/java/com/iformall/douyin/pay/preOrder/DouYinCreatePreOrder.java +++ b/mallinkService/src/main/java/com/iformall/douyin/pay/preOrder/DouYinCreatePreOrder.java @@ -6,6 +6,7 @@ import java.util.Map; import com.iformall.douyin.pay.DouYinPayHelper; import lombok.Data; +import org.apache.commons.lang3.StringUtils; @Data public class DouYinCreatePreOrder { @@ -32,12 +33,24 @@ public class DouYinCreatePreOrder { map.put("subject", subject); map.put("body", body); map.put("valid_time", validTime); - map.put("cp_extra", cpExtra); - map.put("notify_url", notifyUrl); - map.put("thirdparty_id", thirdpartyId); - map.put("disable_msg", disableMsg); - map.put("msg_page", msgPage); - map.put("store_uid", storeUid); + if(StringUtils.isNotBlank(cpExtra)){ + map.put("cp_extra", cpExtra); + } + if(StringUtils.isNotBlank(notifyUrl)){ + map.put("notify_url", notifyUrl); + } + if(StringUtils.isNotBlank(thirdpartyId)){ + map.put("thirdparty_id", thirdpartyId); + } + if(disableMsg != null){ + map.put("disable_msg", disableMsg); + } + if(StringUtils.isNotBlank(msgPage)){ + map.put("msg_page", msgPage); + } + if(StringUtils.isNotBlank(storeUid)){ + map.put("store_uid", storeUid); + } map.put("sign", DouYinPayHelper.createSign(map, sercrect)); return map; From 14ac2db850dae9b08c4760928c29dea63c1cd4e5 Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 26 May 2021 18:55:15 +0800 Subject: [PATCH 10/48] tt --- .../iformall/douyin/pay/DouYinPayHelper.java | 79 ++++++++++++++++++- .../pay/preOrder/DouYinCreatePreOrder.java | 2 +- 2 files changed, 76 insertions(+), 5 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/douyin/pay/DouYinPayHelper.java b/mallinkService/src/main/java/com/iformall/douyin/pay/DouYinPayHelper.java index c3869ae67..00a81a13f 100644 --- a/mallinkService/src/main/java/com/iformall/douyin/pay/DouYinPayHelper.java +++ b/mallinkService/src/main/java/com/iformall/douyin/pay/DouYinPayHelper.java @@ -3,9 +3,10 @@ package com.iformall.douyin.pay; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; import java.nio.charset.Charset; -import java.util.HashMap; -import java.util.Map; -import java.util.TreeMap; +import java.nio.charset.StandardCharsets; +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; +import java.util.*; import java.util.Map.Entry; import org.apache.commons.lang3.StringUtils; @@ -27,6 +28,75 @@ import lombok.extern.slf4j.Slf4j; */ @Slf4j public class DouYinPayHelper { + + private static final String SALT = "41dcZnKe0RovCfuVEL7IlXFfy206HPVtWJ5q7KJr"; + + public static String getSign(Map paramsMap) { + List paramsArr = new ArrayList<>(); + for (Map.Entry entry : paramsMap.entrySet()) { + String key = entry.getKey(); + if (key.equals("other_settle_params")) { + continue; + } + String value = entry.getValue().toString(); + + value = value.trim(); + if (value.startsWith("\"") && value.endsWith("\"") && value.length() > 1) { + value = value.substring(1, value.length() - 1); + } + value = value.trim(); + if (value.equals("") || value.equals("null")) { + continue; + } + switch (key) { + case "app_id": + case "thirdparty_id": + case "sign": + break; + default: + paramsArr.add(value); + break; + } + } + paramsArr.add(SALT); + Collections.sort(paramsArr); + StringBuilder signStr = new StringBuilder(); + String sep = ""; + for (String s : paramsArr) { + signStr.append(sep).append(s); + sep = "&"; + } + return md5FromStr(signStr.toString()); + } + + public static String md5FromStr(String inStr) { + MessageDigest md5; + try { + md5 = MessageDigest.getInstance("MD5"); + } catch (NoSuchAlgorithmException e) { + e.printStackTrace(); + return ""; + } + + byte[] byteArray = inStr.getBytes(StandardCharsets.UTF_8); + byte[] md5Bytes = md5.digest(byteArray); + StringBuilder hexValue = new StringBuilder(); + for (byte md5Byte : md5Bytes) { + int val = ((int) md5Byte) & 0xff; + if (val < 16) { + hexValue.append("0"); + } + hexValue.append(Integer.toHexString(val)); + } + return hexValue.toString(); + } + + + + + + + /** * urlEncode @@ -123,7 +193,8 @@ public class DouYinPayHelper { Map map = new HashMap(); map.put("app_id",appId); map.put("out_order_no",orderNo); - map.put("sign",createSign(map, secrect)); +// map.put("sign",createSign(map, secrect)); + map.put("sign",getSign(map)); String response = doPost("https://developer.toutiao.com/api/apps/ecpay/v1/query_order", map); JSONObject jsonObject = JSON.parseObject(response); JSONObject info = jsonObject.getJSONObject("payment_info"); diff --git a/mallinkService/src/main/java/com/iformall/douyin/pay/preOrder/DouYinCreatePreOrder.java b/mallinkService/src/main/java/com/iformall/douyin/pay/preOrder/DouYinCreatePreOrder.java index a39f198de..757d8d42f 100644 --- a/mallinkService/src/main/java/com/iformall/douyin/pay/preOrder/DouYinCreatePreOrder.java +++ b/mallinkService/src/main/java/com/iformall/douyin/pay/preOrder/DouYinCreatePreOrder.java @@ -52,7 +52,7 @@ public class DouYinCreatePreOrder { map.put("store_uid", storeUid); } - map.put("sign", DouYinPayHelper.createSign(map, sercrect)); + map.put("sign", DouYinPayHelper.getSign(map)); return map; } } From f261738a6f3bc913916164cdda9bfd47bd9b6a9e Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 26 May 2021 19:27:04 +0800 Subject: [PATCH 11/48] tt --- .../controller/TtOrderCallbackController.java | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderCallbackController.java b/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderCallbackController.java index fd194fb4d..9718cb4da 100644 --- a/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderCallbackController.java +++ b/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderCallbackController.java @@ -1,5 +1,7 @@ package com.iformall.controller; +import com.alibaba.fastjson.JSONObject; +import com.iformall.interceptor.BodyReaderHttpServletRequestWrapper; import com.iformall.utils.sign.SignUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -34,14 +36,18 @@ public class TtOrderCallbackController extends BaseController { @PostMapping(value = "/orderPay") @ResponseBody public Map createOrder( HttpServletRequest request){ - Map resultMap = new HashMap<>(); - String timestamp = request.getParameter("timestamp"); - String nonce = request.getParameter("nonce"); - String msg = request.getParameter("msg"); - String type = request.getParameter("type"); - String msgSignature = request.getParameter("msg_signature"); + String body = ((BodyReaderHttpServletRequestWrapper) request).getBody(); + + Map parameterMap = JSONObject.parseObject(body, Map.class); + + + String timestamp = parameterMap.get("timestamp").toString(); + String nonce = parameterMap.get("nonce").toString(); + String msg = parameterMap.get("msg").toString(); + String type = parameterMap.get("type").toString(); + String msgSignature = parameterMap.get("msg_signature").toString(); logger.info("timestamp:"+timestamp+",nonce:"+nonce+",msg:"+msg+",type:"+type+",msgSignature:"+msgSignature); Map paramMap = new HashMap<>(); @@ -49,7 +55,7 @@ public class TtOrderCallbackController extends BaseController { paramMap.put("timestamp",timestamp); paramMap.put("nonce",nonce); paramMap.put("msg",msg); - String sha = SignUtils.getSign(null, paramMap, "SHA"); + String sha = SignUtils.getSign(null, paramMap, "SHA1"); logger.info("sha----"+sha); if(msgSignature.equals(sha)){ logger.info("true"); From 4d8638e80cbc382bf5aae7aaef9681b1024f48ef Mon Sep 17 00:00:00 2001 From: xhxu Date: Thu, 27 May 2021 10:05:25 +0800 Subject: [PATCH 12/48] tt --- .../java/com/iformall/enums/EnumTtOrderStatus.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumTtOrderStatus.java b/mallinkService/src/main/java/com/iformall/enums/EnumTtOrderStatus.java index dcc78d0ad..0284aba2a 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumTtOrderStatus.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumTtOrderStatus.java @@ -8,11 +8,11 @@ public enum EnumTtOrderStatus { ORDER_STATUS_PENDING_PAYMENT(0, "待付款"), ORDER_STATUS_PAYMENT_ING(1,"支付中"), - ORDER_STATUS_PAYMENT_SUCCESS(1, "已支付"), - ORDER_STATUS_OVERTIME_CANCEL(2, "已取消"), - ORDER_STATUS_PENDING_REFUND(3, "待退款"), - ORDER_STATUS_REFUND_SUCCESS(4,"已退款"), - ORDER_STATUS_REFUND_FAILD(5, "退款失败"), + ORDER_STATUS_PAYMENT_SUCCESS(2, "已支付"), + ORDER_STATUS_OVERTIME_CANCEL(3, "已取消"), + ORDER_STATUS_PENDING_REFUND(4, "待退款"), + ORDER_STATUS_REFUND_SUCCESS(5,"已退款"), + ORDER_STATUS_REFUND_FAILD(6, "退款失败"), ; public static EnumTtOrderStatus getEnum(Integer code) { From 84c96befd90d79b08447150ec57d8235d23cd495 Mon Sep 17 00:00:00 2001 From: xhxu Date: Thu, 27 May 2021 10:22:38 +0800 Subject: [PATCH 13/48] tt --- .../db/migration/V202105270001__tt_add_.sql | 2 ++ .../src/main/resources/mapper/TtCouponMapper.xml | 14 +++++++------- 2 files changed, 9 insertions(+), 7 deletions(-) create mode 100644 mallinkAdmin/src/main/resources/db/migration/V202105270001__tt_add_.sql diff --git a/mallinkAdmin/src/main/resources/db/migration/V202105270001__tt_add_.sql b/mallinkAdmin/src/main/resources/db/migration/V202105270001__tt_add_.sql new file mode 100644 index 000000000..2e144fe12 --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V202105270001__tt_add_.sql @@ -0,0 +1,2 @@ +ALTER TABLE `wx_merchant` +ADD COLUMN `business_types` json AFTER `business_id`; \ No newline at end of file diff --git a/mallinkService/src/main/resources/mapper/TtCouponMapper.xml b/mallinkService/src/main/resources/mapper/TtCouponMapper.xml index aab83a68d..6fecc6c74 100644 --- a/mallinkService/src/main/resources/mapper/TtCouponMapper.xml +++ b/mallinkService/src/main/resources/mapper/TtCouponMapper.xml @@ -147,31 +147,31 @@ - update tt_coupon SET see_count = see_count+1,popularity = popularity+1, update_date=now() where id = #{id} + update tt_coupon SET see_count = see_count+1,popularity = popularity+1 where id = #{id} - update tt_coupon SET sell_count = sell_count+1,popularity = popularity+20, false_sell_count = false_sell_count+1, update_date=now() where id = #{id} + update tt_coupon SET sell_count = sell_count+1,popularity = popularity+20, false_sell_count = false_sell_count+1 where id = #{id} - update tt_coupon SET sell_count = sell_count-1,popularity = popularity-20, false_sell_count = false_sell_count-1, update_date=now() where id = #{id} + update tt_coupon SET sell_count = sell_count-1,popularity = popularity-20, false_sell_count = false_sell_count-1 where id = #{id} - update tt_coupon SET assess_count = assess_count+1,popularity = popularity+10, update_date=now() where id = #{id} + update tt_coupon SET assess_count = assess_count+1,popularity = popularity+10 where id = #{id} - update tt_coupon SET collect_count = collect_count+1,popularity = popularity+5, update_date=now() where id = #{id} + update tt_coupon SET collect_count = collect_count+1,popularity = popularity+5 where id = #{id} - update tt_coupon SET collect_count = collect_count-1,popularity = popularity-5, update_date=now() where id = #{id} + update tt_coupon SET collect_count = collect_count-1,popularity = popularity-5 where id = #{id} - update tt_coupon SET popularity = popularity+#{popularity}, update_date=now() where id = #{id} + update tt_coupon SET popularity = popularity+#{popularity} where id = #{id} From 698306b962dcc319f53d18fc9a971feee0ac4f1c Mon Sep 17 00:00:00 2001 From: xhxu Date: Thu, 27 May 2021 11:21:44 +0800 Subject: [PATCH 14/48] tt --- .../java/com/iformall/service/tt/impl/TtOrderServiceImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java index e7deeedea..c14279689 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java @@ -71,6 +71,7 @@ public class TtOrderServiceImpl implements TtOrderService { orderQ.setProductId(couponId); List statuss = new ArrayList<>(); statuss.add(EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()); + statuss.add(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_ING.getCode()); statuss.add(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); orderQ.setStatusS(statuss); Integer listCount = ttOrderMapper.findListCount(orderQ); From b7c5b7daac06946d0c0719b986ecb1f2d36a27f6 Mon Sep 17 00:00:00 2001 From: xhxu Date: Thu, 27 May 2021 14:30:51 +0800 Subject: [PATCH 15/48] tt --- .../iformall/douyin/pay/DouYinPayHelper.java | 26 ++++++++++++++ .../com/iformall/enums/EnumTtOrderStatus.java | 2 +- .../service/tt/impl/TtOrderServiceImpl.java | 36 ++++++++++--------- .../com/iformall/utils/sign/SignUtils.java | 5 ++- 4 files changed, 48 insertions(+), 21 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/douyin/pay/DouYinPayHelper.java b/mallinkService/src/main/java/com/iformall/douyin/pay/DouYinPayHelper.java index 00a81a13f..42d2265fe 100644 --- a/mallinkService/src/main/java/com/iformall/douyin/pay/DouYinPayHelper.java +++ b/mallinkService/src/main/java/com/iformall/douyin/pay/DouYinPayHelper.java @@ -9,6 +9,7 @@ import java.security.NoSuchAlgorithmException; import java.util.*; import java.util.Map.Entry; +import com.iformall.utils.sign.SignUtils; import org.apache.commons.lang3.StringUtils; import com.alibaba.fastjson.JSON; @@ -91,6 +92,31 @@ public class DouYinPayHelper { return hexValue.toString(); } + public static String getTTBackSign(Map params, String signMethod) { + List paramsArr = new ArrayList<>(); + for (Map.Entry entry : params.entrySet()) { + String key = entry.getKey(); + String value = entry.getValue().toString(); + + value = value.trim(); + if (value.startsWith("\"") && value.endsWith("\"") && value.length() > 1) { + value = value.substring(1, value.length() - 1); + } + value = value.trim(); + if (value.equals("") || value.equals("null")) { + continue; + } + paramsArr.add(value); + } + Collections.sort(paramsArr); + StringBuilder signStr = new StringBuilder(); + String sep = ""; + for (String s : paramsArr) { + signStr.append(sep).append(s); + } + return SignUtils.encrypt(signStr.toString(),signMethod); + } + diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumTtOrderStatus.java b/mallinkService/src/main/java/com/iformall/enums/EnumTtOrderStatus.java index 0284aba2a..8386c5477 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumTtOrderStatus.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumTtOrderStatus.java @@ -7,7 +7,7 @@ public enum EnumTtOrderStatus { ORDER_STATUS_PENDING_PAYMENT(0, "待付款"), - ORDER_STATUS_PAYMENT_ING(1,"支付中"), +// ORDER_STATUS_PAYMENT_ING(1,"支付中"), ORDER_STATUS_PAYMENT_SUCCESS(2, "已支付"), ORDER_STATUS_OVERTIME_CANCEL(3, "已取消"), ORDER_STATUS_PENDING_REFUND(4, "待退款"), diff --git a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java index c14279689..84e6c581b 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java @@ -71,7 +71,7 @@ public class TtOrderServiceImpl implements TtOrderService { orderQ.setProductId(couponId); List statuss = new ArrayList<>(); statuss.add(EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()); - statuss.add(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_ING.getCode()); +// statuss.add(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_ING.getCode()); statuss.add(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); orderQ.setStatusS(statuss); Integer listCount = ttOrderMapper.findListCount(orderQ); @@ -216,8 +216,8 @@ public class TtOrderServiceImpl implements TtOrderService { } else if (order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()) { logger.error("订单已取消: " + order.toString()); return new ResultData(ErrorCode.ORDER_HAD_CANCEL); - } else if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PAYMENT_ING.getCode()){ - logger.info("订单支付中: " + order.toString()); + } else if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()){ + logger.info("订单未支付: " + order.toString()); OrderQueryResult orderQueryResult = DouYinPayHelper.orderQuery(appInfo.getAppId(), appInfo.getSecret(), order.getId().toString(), null); String trade_state = orderQueryResult.getOrderStatus(); if ("PROCESSING".equals(trade_state)) {//处理中 @@ -250,13 +250,13 @@ public class TtOrderServiceImpl implements TtOrderService { // preOrder.setNotifyUrl();//回调地址 CreatePreOrderResult preOrderResult = DouYinPayHelper.createPreOrder(preOrder); - if(preOrderResult.isSuccess()){ - TtOrder orderSuc = new TtOrder(); - orderSuc.setId(order.getId()); - orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_ING.getCode()); - orderSuc.setUpdateDate(new Date()); - ttOrderMapper.updateById(orderSuc); - } +// if(preOrderResult.isSuccess()){ +// TtOrder orderSuc = new TtOrder(); +// orderSuc.setId(order.getId()); +// orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_ING.getCode()); +// orderSuc.setUpdateDate(new Date()); +// ttOrderMapper.updateById(orderSuc); +// } return new ResultData(preOrderResult); } @@ -284,7 +284,7 @@ public class TtOrderServiceImpl implements TtOrderService { if(appInfo == null) { return new ResultData(ErrorCode.APP_ID_NOT_FOUND); } - if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PAYMENT_ING.getCode()){ + if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()){ logger.info("订单支付中: " + order.toString()); OrderQueryResult orderQueryResult = DouYinPayHelper.orderQuery(appInfo.getAppId(), appInfo.getSecret(), order.getId().toString(), null); String trade_state = orderQueryResult.getOrderStatus(); @@ -296,19 +296,21 @@ public class TtOrderServiceImpl implements TtOrderService { orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); orderSuc.setUpdateDate(new Date()); ttOrderMapper.updateById(orderSuc); - return new ResultData(ErrorCode.PAY_ORDER_EXIST,"该订单已经支付,请勿重复支付!"); +// return new ResultData(ErrorCode.PAY_ORDER_EXIST,"该订单已经支付,请勿重复支付!"); }else if ("FAIL".equals(trade_state)) {//失败 - TtOrder orderSuc = new TtOrder(); - orderSuc.setId(order.getId()); - orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()); - orderSuc.setUpdateDate(new Date()); - ttOrderMapper.updateById(orderSuc); +// TtOrder orderSuc = new TtOrder(); +// orderSuc.setId(order.getId()); +// orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()); +// orderSuc.setUpdateDate(new Date()); +// ttOrderMapper.updateById(orderSuc); + return new ResultData(ErrorCode.PAY_ORDER_ERROR); }else if ("TIMEOUT".equals(trade_state)) {//超时 TtOrder orderSuc = new TtOrder(); orderSuc.setId(order.getId()); orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()); orderSuc.setUpdateDate(new Date()); ttOrderMapper.updateById(orderSuc); + return new ResultData(ErrorCode.PAY_ORDER_CLOSED); } } return new ResultData(); diff --git a/mallinkService/src/main/java/com/iformall/utils/sign/SignUtils.java b/mallinkService/src/main/java/com/iformall/utils/sign/SignUtils.java index 85a9266d8..683c6fbfc 100644 --- a/mallinkService/src/main/java/com/iformall/utils/sign/SignUtils.java +++ b/mallinkService/src/main/java/com/iformall/utils/sign/SignUtils.java @@ -5,8 +5,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.security.MessageDigest; -import java.util.Arrays; -import java.util.Map; +import java.util.*; public class SignUtils { @@ -53,7 +52,7 @@ public class SignUtils { return encrypt(str, "MD5"); } - private static String encrypt(String str, String algorithm) { + public static String encrypt(String str, String algorithm) { try { MessageDigest md = MessageDigest.getInstance(algorithm); md.update(str.getBytes("UTF-8")); From 49d187b5da313d92f05844477a2db67d665ad265 Mon Sep 17 00:00:00 2001 From: xhxu Date: Thu, 27 May 2021 16:11:16 +0800 Subject: [PATCH 16/48] tt --- .../db/migration/V202105270001__tt_add_.sql | 5 +- .../com/iformall/domain/po/WxPayAccount.java | 2 + .../com/iformall/domain/po/tt/TtOrder.java | 4 +- .../iformall/douyin/pay/DouYinPayHelper.java | 69 +----------------- .../pay/preOrder/DouYinCreatePreOrder.java | 2 + .../iformall/service/tt/TtOrderService.java | 3 +- .../service/tt/impl/TtOrderServiceImpl.java | 51 +++++++------- .../main/resources/mapper/TtOrderMapper.xml | 9 ++- .../resources/mapper/WxPayAccountMapper.xml | 4 +- .../controller/TtOrderCallbackController.java | 70 ++++++++++++------- .../controller/TtOrderController.java | 10 ++- 11 files changed, 106 insertions(+), 123 deletions(-) diff --git a/mallinkAdmin/src/main/resources/db/migration/V202105270001__tt_add_.sql b/mallinkAdmin/src/main/resources/db/migration/V202105270001__tt_add_.sql index 2e144fe12..ae1a9127b 100644 --- a/mallinkAdmin/src/main/resources/db/migration/V202105270001__tt_add_.sql +++ b/mallinkAdmin/src/main/resources/db/migration/V202105270001__tt_add_.sql @@ -1,2 +1,5 @@ ALTER TABLE `wx_merchant` -ADD COLUMN `business_types` json AFTER `business_id`; \ No newline at end of file +ADD COLUMN `business_types` json AFTER `business_id`; + +ALTER TABLE `wx_pay_account` +ADD COLUMN `notify_token` varchar(255) COMMENT '回调token' AFTER `notify_url`; \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxPayAccount.java b/mallinkService/src/main/java/com/iformall/domain/po/WxPayAccount.java index 35fb8c212..785008a11 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxPayAccount.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxPayAccount.java @@ -24,6 +24,8 @@ public class WxPayAccount extends TenantEntity { private String merchantApiKey; @io.swagger.annotations.ApiModelProperty(value="微信回调,支持3种回调,(1.url/pay 2.url/refund3.url/separate)",name="notifyUrl") private String notifyUrl; + @io.swagger.annotations.ApiModelProperty(value="tt回调token",name="notifyToken") + private String notifyToken; @io.swagger.annotations.ApiModelProperty(value="证书本地存放位置",name="certPath") private String certPath; @io.swagger.annotations.ApiModelProperty(value="商户自己的证书",name="merchantCertPath") diff --git a/mallinkService/src/main/java/com/iformall/domain/po/tt/TtOrder.java b/mallinkService/src/main/java/com/iformall/domain/po/tt/TtOrder.java index 3ab10bb8a..261c42357 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/tt/TtOrder.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/tt/TtOrder.java @@ -38,8 +38,10 @@ public class TtOrder extends TenantEntity { private String author; @TableField(exist = false) private String authorPic; - @io.swagger.annotations.ApiModelProperty(value="支付类型(1:微信,)",name="type") + @io.swagger.annotations.ApiModelProperty(value="支付类型5 头条担保支付",name="type") private Integer type; + @io.swagger.annotations.ApiModelProperty(value="支付渠道:2-支付宝,1-微信,3-银行卡",name="way") + private Integer way; @io.swagger.annotations.ApiModelProperty(value="0: 付款 1: 退款",name="paymentType") private Integer paymentType; diff --git a/mallinkService/src/main/java/com/iformall/douyin/pay/DouYinPayHelper.java b/mallinkService/src/main/java/com/iformall/douyin/pay/DouYinPayHelper.java index 42d2265fe..6cbc6e72a 100644 --- a/mallinkService/src/main/java/com/iformall/douyin/pay/DouYinPayHelper.java +++ b/mallinkService/src/main/java/com/iformall/douyin/pay/DouYinPayHelper.java @@ -30,7 +30,6 @@ import lombok.extern.slf4j.Slf4j; @Slf4j public class DouYinPayHelper { - private static final String SALT = "41dcZnKe0RovCfuVEL7IlXFfy206HPVtWJ5q7KJr"; public static String getSign(Map paramsMap) { List paramsArr = new ArrayList<>(); @@ -59,7 +58,6 @@ public class DouYinPayHelper { break; } } - paramsArr.add(SALT); Collections.sort(paramsArr); StringBuilder signStr = new StringBuilder(); String sep = ""; @@ -117,70 +115,6 @@ public class DouYinPayHelper { return SignUtils.encrypt(signStr.toString(),signMethod); } - - - - - - - - /** - * urlEncode - * - * @param src - * 微信参数 - * @return String - * @throws UnsupportedEncodingException - * 编码错误 - */ - private static String urlEncode(String src) throws UnsupportedEncodingException { - return URLEncoder.encode(src, Charset.forName("UTF-8").name()).replace("+", "%20"); - } - - /** - * 组装签名的字段 - * - * @param params - * 参数 - * @param urlEncoder - * 是否urlEncoder - * @return String - */ - private static String packageSign(Map params, boolean urlEncoder) { - // 先将参数以其参数名的字典序升序进行排序 - TreeMap sortedParams = new TreeMap(params); - // 遍历排序后的字典,字段内容(不包含 key)与支付 SALT 一起进行字典序排序后,使用&符号链接 - StringBuilder sb = new StringBuilder(); - boolean first = true; - for (Entry param : sortedParams.entrySet()) { - String value = param.getValue().toString(); - if (StringUtils.isBlank(value)) { - continue; - } - if (first) { - first = false; - } else { - sb.append("&"); - } - if (urlEncoder) { - try { - value = urlEncode(value); - } catch (UnsupportedEncodingException e) { - } - } - sb.append(value); - } - return sb.toString(); - } - public static String createSign(Map params, String sercrect) { - // 生成签名前先去除sign - params.remove("sign"); - params.remove("app_id"); - params.remove("thirdparty_id"); - String stringA = packageSign(params, false); - String stringSignTemp = stringA + "&" + sercrect; - return HashUtil.md5(stringSignTemp).toUpperCase(); - } public static String doPost(String url, Map params) { return HttpUtil.payPost(url, JSON.toJSONString(params)); @@ -215,9 +149,10 @@ public class DouYinPayHelper { //订单查询 - public static OrderQueryResult orderQuery(String appId,String secrect,String orderNo,String thirdParytyId) { + public static OrderQueryResult orderQuery(String appId,String salt,String orderNo,String thirdParytyId) { Map map = new HashMap(); map.put("app_id",appId); + map.put("salt",salt); map.put("out_order_no",orderNo); // map.put("sign",createSign(map, secrect)); map.put("sign",getSign(map)); diff --git a/mallinkService/src/main/java/com/iformall/douyin/pay/preOrder/DouYinCreatePreOrder.java b/mallinkService/src/main/java/com/iformall/douyin/pay/preOrder/DouYinCreatePreOrder.java index 757d8d42f..e4a91ca83 100644 --- a/mallinkService/src/main/java/com/iformall/douyin/pay/preOrder/DouYinCreatePreOrder.java +++ b/mallinkService/src/main/java/com/iformall/douyin/pay/preOrder/DouYinCreatePreOrder.java @@ -13,6 +13,7 @@ public class DouYinCreatePreOrder { private String appId;//小程序 AppID private String sercrect;//密钥 + private String salt;// private String outOrderNo;//开发者侧的订单号, 同一小程序下不可重复 private Integer totalAmount;//支付价格; 接口中参数支付金额单位为[分] private String subject;//商品描述; 长度限制 128 字节,不超过 42 个汉字 @@ -28,6 +29,7 @@ public class DouYinCreatePreOrder { public Map toRequestMap() { Map map = new HashMap(); map.put("app_id", appId); + map.put("salt",salt); map.put("out_order_no", outOrderNo); map.put("total_amount", totalAmount); map.put("subject", subject); diff --git a/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java b/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java index dc6d3b5d7..7e7141cf6 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java @@ -4,6 +4,7 @@ import com.github.pagehelper.PageInfo; import com.iformall.common.ResultData; import com.iformall.domain.dto.OrderSaveDto; import com.iformall.domain.po.WxAppinfo; +import com.iformall.domain.po.WxPayAccount; import com.iformall.domain.po.base.TenantEntity; import com.iformall.domain.po.tt.TtOrder; import com.iformall.enums.EnumPayWay; @@ -28,7 +29,7 @@ public interface TtOrderService { ResultData createPay(TenantEntity tenantEntity,Long orderId, Long memberId, WxAppinfo appinfo); - ResultData updateOrderStatus(TenantEntity tenantInfo, Long orderId, Long memberId, WxAppinfo cAppInfo); + ResultData updateOrderStatus(Long orderId, WxAppinfo cAppInfo, WxPayAccount payAccount); boolean isByMember(Long memberId, Long id); } diff --git a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java index 84e6c581b..237b168e5 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java @@ -20,6 +20,7 @@ import com.iformall.mapper.*; import com.iformall.service.TtCUserService; import com.iformall.service.WxAppinfoService; import com.iformall.service.WxCUserBasicInfoService; +import com.iformall.service.WxPayAccountService; import com.iformall.service.tt.TtCouponService; import com.iformall.service.tt.TtOrderService; import org.slf4j.Logger; @@ -52,6 +53,9 @@ public class TtOrderServiceImpl implements TtOrderService { @Autowired private WxAppinfoService wxAppinfoService; + @Autowired + private WxPayAccountService payAccountService; + @Override public PageInfo listAsPage(TtOrder record, Integer pageIndex, Integer pageSize) { return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> ttOrderMapper.findList(record)); @@ -200,6 +204,10 @@ public class TtOrderServiceImpl implements TtOrderService { if(appInfo == null) { return new ResultData(ErrorCode.APP_ID_NOT_FOUND); } + WxPayAccount payAcount = payAccountService.getById(appInfo.getPayId()); + if(payAcount == null){ + return new ResultData(ErrorCode.APP_ID_NOT_FOUND); + } TtCoupon coupon = ttCouponService.getById(order.getProductId()); if (!coupon.getStatus().equals(EnumTtCouponStatus.TTCOUPON_STATUS_SHELFING.getCode())) { logger.error("券已经下架了>>>" + order.getProductId()); @@ -218,7 +226,7 @@ public class TtOrderServiceImpl implements TtOrderService { return new ResultData(ErrorCode.ORDER_HAD_CANCEL); } else if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()){ logger.info("订单未支付: " + order.toString()); - OrderQueryResult orderQueryResult = DouYinPayHelper.orderQuery(appInfo.getAppId(), appInfo.getSecret(), order.getId().toString(), null); + OrderQueryResult orderQueryResult = DouYinPayHelper.orderQuery(appInfo.getAppId(), payAcount.getApiKey(), order.getId().toString(), null); String trade_state = orderQueryResult.getOrderStatus(); if ("PROCESSING".equals(trade_state)) {//处理中 return new ResultData(ErrorCode.PAY_ORDER_PAYING); @@ -242,6 +250,8 @@ public class TtOrderServiceImpl implements TtOrderService { } DouYinCreatePreOrder preOrder = new DouYinCreatePreOrder(); preOrder.setAppId(appInfo.getAppId()); + preOrder.setSercrect(appInfo.getSecret()); + preOrder.setSalt(payAcount.getApiKey()); preOrder.setOutOrderNo(order.getId().toString()); preOrder.setTotalAmount(order.getPayment()); preOrder.setSubject(coupon.getTitle()); @@ -261,32 +271,18 @@ public class TtOrderServiceImpl implements TtOrderService { } @Override - public ResultData updateOrderStatus(TenantEntity tenantEntity, Long orderId, Long memberId, WxAppinfo appInfo) { + public ResultData updateOrderStatus(Long orderId, WxAppinfo appInfo, WxPayAccount payAccount) { TtOrder order = ttOrderMapper.selectById(orderId); if (null == order) { logger.error("pay order, order not allow, orderId: " + orderId); return new ResultData(ErrorCode.ORDER_IS_NOT_FIND); } - if(!order.getCUserId().equals(memberId)){ - return new ResultData(ErrorCode.ORDER_USER_NOT_MATCH); - } - TtCUser byId = ttCUserService.getById(memberId, tenantEntity.getTenantId()); -// WxCUserBasicInfo wxCUserBasicInfo = wxCUserBasicInfoService.getById(memberId,tenantEntity.getFinalTenantId()); -// if ( null == wxCUserBasicInfo) { - if ( byId == null) { - logger.error("用户不存在."+memberId); - return new ResultData(ErrorCode.USER_IS_EMPTY.getCode(),"用户不存在."+memberId); - } -// if (null != wxCUserBasicInfo && EnumCreditLockedStatus.CLOSE.getCode().equals(wxCUserBasicInfo.getStatus())) { -// return new ResultData(ErrorCode.MEMBER_IS_LOCKED); -// } -// WxAppinfo appInfo = wxAppinfoService.getByAppId(appId); - if(appInfo == null) { + if(appInfo == null || payAccount == null) { return new ResultData(ErrorCode.APP_ID_NOT_FOUND); } if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()){ logger.info("订单支付中: " + order.toString()); - OrderQueryResult orderQueryResult = DouYinPayHelper.orderQuery(appInfo.getAppId(), appInfo.getSecret(), order.getId().toString(), null); + OrderQueryResult orderQueryResult = DouYinPayHelper.orderQuery(appInfo.getAppId(), payAccount.getApiKey(), order.getId().toString(), null); String trade_state = orderQueryResult.getOrderStatus(); if ("PROCESSING".equals(trade_state)) {//处理中 return new ResultData(ErrorCode.PAY_ORDER_PAYING); @@ -294,23 +290,28 @@ public class TtOrderServiceImpl implements TtOrderService { TtOrder orderSuc = new TtOrder(); orderSuc.setId(order.getId()); orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); + orderSuc.setWay(orderQueryResult.getWay()); +// orderSuc.setPaymentTime(orderQueryResult.getPayTime()); + logger.info("支付时间格式---"+orderQueryResult.getPayTime()); orderSuc.setUpdateDate(new Date()); ttOrderMapper.updateById(orderSuc); // return new ResultData(ErrorCode.PAY_ORDER_EXIST,"该订单已经支付,请勿重复支付!"); + return new ResultData(); }else if ("FAIL".equals(trade_state)) {//失败 // TtOrder orderSuc = new TtOrder(); // orderSuc.setId(order.getId()); // orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()); // orderSuc.setUpdateDate(new Date()); // ttOrderMapper.updateById(orderSuc); - return new ResultData(ErrorCode.PAY_ORDER_ERROR); + return new ResultData(ErrorCode.PAY_ORDER_ERROR,"支付失败"); }else if ("TIMEOUT".equals(trade_state)) {//超时 - TtOrder orderSuc = new TtOrder(); - orderSuc.setId(order.getId()); - orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()); - orderSuc.setUpdateDate(new Date()); - ttOrderMapper.updateById(orderSuc); - return new ResultData(ErrorCode.PAY_ORDER_CLOSED); +// TtOrder orderSuc = new TtOrder(); +// orderSuc.setId(order.getId()); +// orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()); +// orderSuc.setUpdateDate(new Date()); +// ttOrderMapper.updateById(orderSuc); +// return new ResultData(ErrorCode.PAY_ORDER_CLOSED); + return new ResultData(ErrorCode.PAY_ORDER_ERROR,"支付超时"); } } return new ResultData(); diff --git a/mallinkService/src/main/resources/mapper/TtOrderMapper.xml b/mallinkService/src/main/resources/mapper/TtOrderMapper.xml index 9821b3635..f2d7bcfdf 100644 --- a/mallinkService/src/main/resources/mapper/TtOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/TtOrderMapper.xml @@ -8,6 +8,7 @@ + @@ -24,10 +25,10 @@ - o.`id`,o.`tenant_id`,o.`parent_tenant_id`,o.`c_user_id`,o.`product_id`,o.`type`,o.`payment_type`,o.`payment`, + o.`id`,o.`tenant_id`,o.`parent_tenant_id`,o.`c_user_id`,o.`product_id`,o.`type`,o.`way`,o.`payment_type`,o.`payment`, o.`payment_time`,o.`order_status`,o.`create_date`,o.`update_date`, u.`nick_name`,u.`phone`, - c.`title` product_title,c.`coverImg` product_pic, + c.`title` product_title,c.`cover_mg` product_pic, m.`name` author,m.`imgUrl` author_pic @@ -57,6 +58,10 @@ and o.`type` = #{type} + + and o.`way` = #{way} + + and o.`payment_type` = #{paymentType} diff --git a/mallinkService/src/main/resources/mapper/WxPayAccountMapper.xml b/mallinkService/src/main/resources/mapper/WxPayAccountMapper.xml index ca490d43d..dc8105d8c 100644 --- a/mallinkService/src/main/resources/mapper/WxPayAccountMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxPayAccountMapper.xml @@ -11,6 +11,8 @@ + + @@ -27,7 +29,7 @@ - `id`,`tenant_id`,`parent_tenant_id`,`mch_id`,`sub_mch_id`,`sub_app_id`,`api_key`,`merchant_api_key`,`notify_url`,`cert_path`, + `id`,`tenant_id`,`parent_tenant_id`,`mch_id`,`sub_mch_id`,`sub_app_id`,`api_key`,`merchant_api_key`,`notify_url`,`notify_token`,`cert_path`, `merchant_cert_path`,`type`,`share`,`rate`,`real_rate`, `service_id`,`pay_score_notify_url`,`api_v3_key`,`cert_serial_no`,`private_key_path`,`private_cert_path` diff --git a/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderCallbackController.java b/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderCallbackController.java index 9718cb4da..f77fef182 100644 --- a/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderCallbackController.java +++ b/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderCallbackController.java @@ -1,10 +1,17 @@ package com.iformall.controller; import com.alibaba.fastjson.JSONObject; +import com.iformall.domain.po.WxAppinfo; +import com.iformall.domain.po.WxPayAccount; +import com.iformall.douyin.pay.DouYinPayHelper; import com.iformall.interceptor.BodyReaderHttpServletRequestWrapper; +import com.iformall.service.WxAppinfoService; +import com.iformall.service.WxPayAccountService; +import com.iformall.service.tt.TtOrderService; import com.iformall.utils.sign.SignUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; @@ -17,7 +24,14 @@ public class TtOrderCallbackController extends BaseController { private final Logger logger = LoggerFactory.getLogger(this.getClass()); - private final String token = "ttZhiBoTang"; + @Autowired + private TtOrderService ttOrderService; + + @Autowired + private WxAppinfoService appinfoService; + + @Autowired + private WxPayAccountService payAccountService; /** * timestamp number Unix 时间戳,10 位,整型数 @@ -28,7 +42,7 @@ public class TtOrderCallbackController extends BaseController { * * appid string 小程序 id * cp_orderno string 开发者传入订单号 - * way string way 字段中标识了支付渠道:2-支付宝,1-微信 + * way string way 字段中标识了支付渠道:2-支付宝,1-微信,3-银行卡 * cp_extra string 预下单时开发者传入字段 * * @return 支付通知 @@ -40,33 +54,41 @@ public class TtOrderCallbackController extends BaseController { String body = ((BodyReaderHttpServletRequestWrapper) request).getBody(); - Map parameterMap = JSONObject.parseObject(body, Map.class); - - - String timestamp = parameterMap.get("timestamp").toString(); - String nonce = parameterMap.get("nonce").toString(); - String msg = parameterMap.get("msg").toString(); - String type = parameterMap.get("type").toString(); - String msgSignature = parameterMap.get("msg_signature").toString(); - logger.info("timestamp:"+timestamp+",nonce:"+nonce+",msg:"+msg+",type:"+type+",msgSignature:"+msgSignature); - - Map paramMap = new HashMap<>(); - paramMap.put("token",token); - paramMap.put("timestamp",timestamp); - paramMap.put("nonce",nonce); - paramMap.put("msg",msg); - String sha = SignUtils.getSign(null, paramMap, "SHA1"); - logger.info("sha----"+sha); - if(msgSignature.equals(sha)){ - logger.info("true"); - } try { -// resultMap.put("err_no",0); -// resultMap.put("err_tips","success"); + Map parameterMap = JSONObject.parseObject(body, Map.class); + + String timestamp = (String) parameterMap.get("timestamp"); + String nonce = (String) parameterMap.get("nonce"); +// {"appid":"tt9da4eb19029c2bb301","cp_orderno":"557490321114062848","cp_extra":"","way":"2","channel_no":"2021052622001418391405536769","channel_gateway_no":"12105260162116189897","payment_order_no":"2021052622001418391405536769","out_channel_order_no":"","total_amount":100} + String msg = (String) parameterMap.get("msg"); + String type = (String) parameterMap.get("type"); + String msgSignature = (String) parameterMap.get("msg_signature"); + + if("payment".equals(type)){ + Map pMap = JSONObject.parseObject(msg, Map.class); + String appid = (String) pMap.get("appid"); + String cp_orderno = (String) pMap.get("cp_orderno");//开发者传入订单号 + String way = (String) pMap.get("way");//2-支付宝,1-微信 + WxAppinfo appinfo = appinfoService.getByAppId(appid); + WxPayAccount payAccount = payAccountService.getById(appinfo.getPayId()); + Map paramMap = new HashMap<>(); + paramMap.put("token",payAccount.getNotifyToken()); + paramMap.put("timestamp",timestamp); + paramMap.put("nonce",nonce); + paramMap.put("msg",msg); + String sign = DouYinPayHelper.getTTBackSign(paramMap, "SHA1"); + if(msgSignature.equalsIgnoreCase(sign)){ + ttOrderService.updateOrderStatus(Long.valueOf(cp_orderno),appinfo,payAccount); + resultMap.put("err_no",0); + resultMap.put("err_tips","success"); + } + } + return resultMap; } catch (Exception e){ e.printStackTrace(); + resultMap.put("err_tips","error"); return resultMap; } } diff --git a/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderController.java b/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderController.java index 142c504f6..dfffbaa23 100644 --- a/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderController.java +++ b/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderController.java @@ -35,6 +35,9 @@ public class TtOrderController extends BaseController { @Autowired private WxAppinfoService wxAppinfoService; + @Autowired + private WxPayAccountService payAccountService; + @ApiOperation("分页订单列表接口") @GetMapping("list") @@ -214,8 +217,13 @@ public class TtOrderController extends BaseController { if (cAppInfo == null) { return new ResultData(ErrorCode.APP_ID_NOT_ENABLE); } + WxPayAccount payAccout = payAccountService.getById(cAppInfo.getId()); + if (payAccout == null) { + return new ResultData(ErrorCode.APP_ID_NOT_ENABLE); + } + if(code.intValue() == 0){ - return ttOrderService.updateOrderStatus(getTenantInfo(),orderId,memberId,cAppInfo); + return ttOrderService.updateOrderStatus(orderId,cAppInfo,payAccout); }else{ return new ResultData(); } From 1670c19011c309309aac6f1c3975eb555cc964d7 Mon Sep 17 00:00:00 2001 From: xhxu Date: Thu, 27 May 2021 16:16:07 +0800 Subject: [PATCH 17/48] tt --- mallinkService/src/main/resources/mapper/TtOrderMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mallinkService/src/main/resources/mapper/TtOrderMapper.xml b/mallinkService/src/main/resources/mapper/TtOrderMapper.xml index f2d7bcfdf..5dfe9387e 100644 --- a/mallinkService/src/main/resources/mapper/TtOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/TtOrderMapper.xml @@ -28,7 +28,7 @@ o.`id`,o.`tenant_id`,o.`parent_tenant_id`,o.`c_user_id`,o.`product_id`,o.`type`,o.`way`,o.`payment_type`,o.`payment`, o.`payment_time`,o.`order_status`,o.`create_date`,o.`update_date`, u.`nick_name`,u.`phone`, - c.`title` product_title,c.`cover_mg` product_pic, + c.`title` product_title,c.`cover_img` product_pic, m.`name` author,m.`imgUrl` author_pic From 691427372bd81e6587ce717489cd081c8b6ef06b Mon Sep 17 00:00:00 2001 From: xhxu Date: Thu, 27 May 2021 16:21:44 +0800 Subject: [PATCH 18/48] tt --- mallinkService/src/main/resources/mapper/TtOrderMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mallinkService/src/main/resources/mapper/TtOrderMapper.xml b/mallinkService/src/main/resources/mapper/TtOrderMapper.xml index 5dfe9387e..63d596358 100644 --- a/mallinkService/src/main/resources/mapper/TtOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/TtOrderMapper.xml @@ -29,7 +29,7 @@ o.`payment_time`,o.`order_status`,o.`create_date`,o.`update_date`, u.`nick_name`,u.`phone`, c.`title` product_title,c.`cover_img` product_pic, - m.`name` author,m.`imgUrl` author_pic + m.`name` author,m.`img_url` author_pic From 3401ad3b3a699879471af7c81f994b1dd172ab38 Mon Sep 17 00:00:00 2001 From: xhxu Date: Thu, 27 May 2021 17:00:23 +0800 Subject: [PATCH 19/48] tt --- .../com/iformall/domain/po/tt/TtOrder.java | 6 +- .../com/iformall/mapper/TtOrderMapper.java | 2 + .../iformall/service/tt/TtOrderService.java | 4 + .../service/tt/impl/TtOrderServiceImpl.java | 9 ++ .../main/resources/mapper/TtOrderMapper.xml | 100 ++++++++++++++++-- .../controller/TtOrderController.java | 2 +- 6 files changed, 111 insertions(+), 12 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/domain/po/tt/TtOrder.java b/mallinkService/src/main/java/com/iformall/domain/po/tt/TtOrder.java index 261c42357..c1ec80e31 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/tt/TtOrder.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/tt/TtOrder.java @@ -28,12 +28,10 @@ public class TtOrder extends TenantEntity { private String phone; @io.swagger.annotations.ApiModelProperty(value="产品ID(couponId)",name="productId") private Long productId; - @TableField(exist = false) private String productTitle; - @TableField(exist = false) private String productPic; - @TableField(exist = false) - private Long authorId; + private Integer productSalePrice; + private Long merchantId; @TableField(exist = false) private String author; @TableField(exist = false) diff --git a/mallinkService/src/main/java/com/iformall/mapper/TtOrderMapper.java b/mallinkService/src/main/java/com/iformall/mapper/TtOrderMapper.java index b16fde7c9..80a69c816 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/TtOrderMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/TtOrderMapper.java @@ -16,5 +16,7 @@ public interface TtOrderMapper extends CommonMapper { List findList(TtOrder record); + List findCList(TtOrder record); + Integer findListCount(TtOrder orderQ); } diff --git a/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java b/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java index 7e7141cf6..dfc24301d 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java @@ -1,6 +1,7 @@ package com.iformall.service.tt; import com.github.pagehelper.PageInfo; +import com.iformall.common.ErrorCode; import com.iformall.common.ResultData; import com.iformall.domain.dto.OrderSaveDto; import com.iformall.domain.po.WxAppinfo; @@ -20,6 +21,7 @@ public interface TtOrderService { * @return */ PageInfo listAsPage(TtOrder record, Integer pageIndex, Integer pageSize); + PageInfo listCAsPage(TtOrder order, Integer pageNum, Integer pageSize); ResultData saveOrder(Long couponId, Long memberId, EnumPayWay payWay, TenantEntity tenantInfo); @@ -32,4 +34,6 @@ public interface TtOrderService { ResultData updateOrderStatus(Long orderId, WxAppinfo cAppInfo, WxPayAccount payAccount); boolean isByMember(Long memberId, Long id); + + } diff --git a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java index 237b168e5..513fd1dd1 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java @@ -61,6 +61,11 @@ public class TtOrderServiceImpl implements TtOrderService { return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> ttOrderMapper.findList(record)); } + @Override + public PageInfo listCAsPage(TtOrder record, Integer pageIndex, Integer pageSize) { + return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> ttOrderMapper.findCList(record)); + } + @Override public ResultData saveOrder(Long couponId,Long cUserId,EnumPayWay payWay,TenantEntity tenantEntity) { logger.info("OrderSave: couponId:" + couponId + "---cUserId:"+cUserId); @@ -107,6 +112,10 @@ public class TtOrderServiceImpl implements TtOrderService { order.updateTenantInfo(tenantEntity); order.setCUserId(cUserId); order.setProductId(coupon.getId()); + order.setProductTitle(coupon.getTitle()); + order.setProductPic(coupon.getCoverImg()); + order.setProductSalePrice(coupon.getSalePrice()); + order.setMerchantId(coupon.getMerchantId()); order.setType(payWay.getCode()); order.setPaymentType(EnumPayType.PAY_PAYMENT.getCode()); order.setPayment(coupon.getSalePrice()); diff --git a/mallinkService/src/main/resources/mapper/TtOrderMapper.xml b/mallinkService/src/main/resources/mapper/TtOrderMapper.xml index 63d596358..5a9e752d1 100644 --- a/mallinkService/src/main/resources/mapper/TtOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/TtOrderMapper.xml @@ -7,6 +7,11 @@ + + + + + @@ -18,8 +23,6 @@ - - @@ -28,7 +31,7 @@ o.`id`,o.`tenant_id`,o.`parent_tenant_id`,o.`c_user_id`,o.`product_id`,o.`type`,o.`way`,o.`payment_type`,o.`payment`, o.`payment_time`,o.`order_status`,o.`create_date`,o.`update_date`, u.`nick_name`,u.`phone`, - c.`title` product_title,c.`cover_img` product_pic, + o.`product_title`,o.`product_pic`,o.`product_sale_price`, m.`name` author,m.`img_url` author_pic @@ -86,11 +89,11 @@ - and c.`title` like concat('%', #{productTitle},'%') + and o.`title` like concat('%', #{productTitle},'%') - and c.merchant_id = #{authorId} + and o.merchant_id = #{authorId} @@ -118,11 +121,94 @@ from tt_order o left join tt_c_user u on o.c_user_id = u.id - left join tt_coupon c on o.product_id = c.id - left join wx_merchant m on c.merchant_id = m.id + left join wx_merchant m on o.merchant_id = m.id + + + + o.`id`,o.`tenant_id`,o.`parent_tenant_id`,o.`c_user_id`,o.`product_id`,o.`type`,o.`way`,o.`payment_type`,o.`payment`, + o.`payment_time`,o.`order_status`,o.`create_date`,o.`update_date`, + o.`product_title`,o.`product_pic`,o.`product_sale_price`, + m.`name` author,m.`img_url` author_pic + + + + where 1 = 1 + + + and o.`id` = #{id} + + + + and o.`tenant_id` = #{tenantId} + + + and o.`parent_tenant_id` = #{parentTenantId} + + + + and o.`c_user_id` = #{cUserId} + + + + and o.`product_id` = #{productId} + + + + and o.`type` = #{type} + + + + and o.`way` = #{way} + + + + and o.`payment_type` = #{paymentType} + + + + and o.`payment_time` >= #{startdate} + + + and o.`payment_time` <= #{enddate} + + + + and o.`order_status` = #{orderStatus} + + + + and o.merchant_id = #{authorId} + + + + and m.`name` like concat('%', #{author},'%') + + + + and o.`order_status` in + + #{sItem} + + + + + and o.`id` in + + #{idItem} + + + order by o.`update_date` desc + + + + update tt_order set order_status = #{orderStatus},update_date = now() + where orderStatus=0 and create_date < #{expireDate} + + diff --git a/mallinkTTCApi/src/main/java/com/iformall/schedule/TtOrderExpiringSchedule.java b/mallinkTTCApi/src/main/java/com/iformall/schedule/TtOrderExpiringSchedule.java new file mode 100644 index 000000000..1618a8cff --- /dev/null +++ b/mallinkTTCApi/src/main/java/com/iformall/schedule/TtOrderExpiringSchedule.java @@ -0,0 +1,34 @@ +package com.iformall.schedule; + +import com.iformall.enums.*; +import com.iformall.mapper.*; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; + +import java.util.Date; + +@Component +public class TtOrderExpiringSchedule { + + private final Logger logger = LoggerFactory.getLogger(this.getClass()); + + private final int PRESS_TIME_OUT = 30 * 60 * 1000; //必须30分钟内支付 + + @Autowired + TtOrderMapper ttOrderMapper; + + @Scheduled(cron = "0 */1 * * * *?") // 每1分钟检查一次 + public void orderExpireSchedule() { + Date now = new Date(); + Date expireDate = new Date(now.getTime() - PRESS_TIME_OUT ); + int count = ttOrderMapper.updateExpire(expireDate,EnumTtOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()); + if(count > 0){ + logger.info("订单过期"+count+"个"); + } + + } + +} \ No newline at end of file From 801f2f9120ba02b17fa26da5421c182b3a83eef8 Mon Sep 17 00:00:00 2001 From: xhxu Date: Thu, 27 May 2021 20:05:15 +0800 Subject: [PATCH 26/48] tt --- .../src/main/java/com/iformall/mapper/TtCUserMapper.java | 2 +- .../com/iformall/service/impl/TtCUserServiceImpl.java | 2 +- .../src/main/resources/mapper/TtCUserMapper.xml | 2 +- .../TtOrderCallbackController.java | 9 ++++++--- 4 files changed, 9 insertions(+), 6 deletions(-) rename mallinkTTCApi/src/main/java/com/iformall/{controller => callback}/TtOrderCallbackController.java (92%) diff --git a/mallinkService/src/main/java/com/iformall/mapper/TtCUserMapper.java b/mallinkService/src/main/java/com/iformall/mapper/TtCUserMapper.java index f7177f0f1..9fc9df53b 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/TtCUserMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/TtCUserMapper.java @@ -19,7 +19,7 @@ public interface TtCUserMapper extends CommonMapper { TtCUser findByToken(@Param("token")String token,@Param("tenantId")String tenantId); - TtCUser selectById(@Param("id")Long id,@Param("tenantId")String tenantId); + TtCUser getById(@Param("id")Long id,@Param("tenantId")String tenantId); long findCount(WxCUserBasicInfoDto dto); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/TtCUserServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/TtCUserServiceImpl.java index b1d3d6c59..5bd5897f5 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/TtCUserServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/TtCUserServiceImpl.java @@ -64,7 +64,7 @@ public class TtCUserServiceImpl implements TtCUserService { @Override public TtCUser getById(Long id,String tenantId) { - return ttCUserMapper.selectById(id,tenantId); + return ttCUserMapper.getById(id,tenantId); } @Override diff --git a/mallinkService/src/main/resources/mapper/TtCUserMapper.xml b/mallinkService/src/main/resources/mapper/TtCUserMapper.xml index 2bc3c2e2b..eb3753e57 100644 --- a/mallinkService/src/main/resources/mapper/TtCUserMapper.xml +++ b/mallinkService/src/main/resources/mapper/TtCUserMapper.xml @@ -277,7 +277,7 @@ where `token` = #{token} and `tenant_id` = #{tenantId} - select from tt_c_user where id = #{id} and `tenant_id` = #{tenantId} diff --git a/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderCallbackController.java b/mallinkTTCApi/src/main/java/com/iformall/callback/TtOrderCallbackController.java similarity index 92% rename from mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderCallbackController.java rename to mallinkTTCApi/src/main/java/com/iformall/callback/TtOrderCallbackController.java index f77fef182..bce3e8092 100644 --- a/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderCallbackController.java +++ b/mallinkTTCApi/src/main/java/com/iformall/callback/TtOrderCallbackController.java @@ -1,6 +1,7 @@ -package com.iformall.controller; +package com.iformall.callback; import com.alibaba.fastjson.JSONObject; +import com.iformall.controller.BaseController; import com.iformall.domain.po.WxAppinfo; import com.iformall.domain.po.WxPayAccount; import com.iformall.douyin.pay.DouYinPayHelper; @@ -8,11 +9,13 @@ import com.iformall.interceptor.BodyReaderHttpServletRequestWrapper; import com.iformall.service.WxAppinfoService; import com.iformall.service.WxPayAccountService; import com.iformall.service.tt.TtOrderService; -import com.iformall.utils.sign.SignUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.HttpServletRequest; import java.util.HashMap; From de681d5a4595136862b707205d23e159d460e468 Mon Sep 17 00:00:00 2001 From: xhxu Date: Fri, 28 May 2021 13:51:34 +0800 Subject: [PATCH 27/48] tt --- .../controller/market/WxCouponController.java | 4 ++-- .../controller/mem/MemCouponController.java | 2 +- .../db/migration/V202105270001__tt_add_.sql | 8 +++++++- .../controller/WxCouponController.java | 4 ++-- .../com/iformall/domain/po/WxMerchant.java | 6 ++++++ .../iformall/domain/po/base/BaseEntity.java | 3 +++ .../com/iformall/domain/po/tt/TtCoupon.java | 2 ++ .../service/tt/impl/TtOrderServiceImpl.java | 18 +++++++++--------- .../main/resources/mapper/TtCouponMapper.xml | 10 +++++++--- .../main/resources/mapper/WxMerchantMapper.xml | 12 ++++++++++-- .../controller/tt/TtCouponController.java | 8 ++++++++ .../controller/TtCouponController.java | 9 +++++++++ 12 files changed, 66 insertions(+), 20 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponController.java index 450196ac5..d9bc3a260 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponController.java @@ -75,7 +75,7 @@ public class WxCouponController extends BaseController { } if(StringUtils.isNotBlank(wxCoupon.getSortColumn())){ String coryColumn = "c."+wxCoupon.getSortColumns(); - wxCoupon.setSortColumn(coryColumn); + wxCoupon.setSortColumns(coryColumn); wxCoupon.setSortColumn(null); } if(wxCoupon.getTargetAd() != null && wxCoupon.getTargetAd() == EnumCouponChannelType.COUPON_CHANNEL_ID_TIMED.getCode()){ @@ -114,7 +114,7 @@ public class WxCouponController extends BaseController { wxCoupon.setTypes(Arrays.asList(typeArray)); if(StringUtils.isNotBlank(wxCoupon.getSortColumn())){ String coryColumn = "c."+wxCoupon.getSortColumns(); - wxCoupon.setSortColumn(coryColumn); + wxCoupon.setSortColumns(coryColumn); wxCoupon.setSortColumn(null); } return wxCouponService.list(wxCoupon,wxCoupon, pageNum, pageSize); //全列表 diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/mem/MemCouponController.java b/mallinkAdmin/src/main/java/com/iformall/controller/mem/MemCouponController.java index 195eeea74..1206b06c0 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/mem/MemCouponController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/mem/MemCouponController.java @@ -58,7 +58,7 @@ public class MemCouponController extends BaseController { if(StringUtils.isNotBlank(wxCouponChannel.getSortColumn())){ // String coryColumn = "c."+wxCouponChannel.getSortColumns(); -// wxCouponChannel.setSortColumn(coryColumn); +// wxCouponChannel.setSortColumns(coryColumn); // wxCouponChannel.setSortColumn(null); }else{ wxCouponChannel.setSortColumns(BaseEntity.SortField.CCUpdateDate_DESC); diff --git a/mallinkAdmin/src/main/resources/db/migration/V202105270001__tt_add_.sql b/mallinkAdmin/src/main/resources/db/migration/V202105270001__tt_add_.sql index ae1a9127b..8b0981ac0 100644 --- a/mallinkAdmin/src/main/resources/db/migration/V202105270001__tt_add_.sql +++ b/mallinkAdmin/src/main/resources/db/migration/V202105270001__tt_add_.sql @@ -2,4 +2,10 @@ ALTER TABLE `wx_merchant` ADD COLUMN `business_types` json AFTER `business_id`; ALTER TABLE `wx_pay_account` -ADD COLUMN `notify_token` varchar(255) COMMENT '回调token' AFTER `notify_url`; \ No newline at end of file +ADD COLUMN `notify_token` varchar(255) COMMENT '回调token' AFTER `notify_url`; + +ALTER TABLE `wx_merchant` +ADD COLUMN `mark` smallint(1) COMMENT '记号' AFTER `action_desc`; + +ALTER TABLE `wx_merchant` +ADD COLUMN `entry_amount` int(11) COMMENT '入账金额' AFTER `credit_locked`; \ No newline at end of file diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxCouponController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxCouponController.java index 9d4434226..b28e7fbbf 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxCouponController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxCouponController.java @@ -72,7 +72,7 @@ public class WxCouponController extends BaseController { if(StringUtils.isNotBlank(wxCoupon.getSortColumn())){ String coryColumn = "c."+wxCoupon.getSortColumns(); - wxCoupon.setSortColumn(coryColumn); + wxCoupon.setSortColumns(coryColumn); wxCoupon.setSortColumn(null); } @@ -102,7 +102,7 @@ public class WxCouponController extends BaseController { wxCoupon.setMerchantId(getLoginBUser().getMerchantId()); if(StringUtils.isNotBlank(wxCoupon.getSortColumn())){ String coryColumn = "c."+wxCoupon.getSortColumns(); - wxCoupon.setSortColumn(coryColumn); + wxCoupon.setSortColumns(coryColumn); wxCoupon.setSortColumn(null); } return wxCouponService.list(wxCoupon,wxCoupon, pageNum, pageSize); //全列表 diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java b/mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java index 079f10861..0438e1427 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java @@ -245,6 +245,9 @@ public class WxMerchant extends TenantEntity { private String introduction; @io.swagger.annotations.ApiModelProperty(value="优惠活动",name="actionDesc") private String actionDesc; + + @io.swagger.annotations.ApiModelProperty(value = "记号1是0否", name = "mark") + private Integer mark; @io.swagger.annotations.ApiModelProperty(value = "是否删除1是0否", name = "isDel") private Integer isDel; @io.swagger.annotations.ApiModelProperty(value = "客服电话", name = "linkLinePhone") @@ -267,6 +270,9 @@ public class WxMerchant extends TenantEntity { @io.swagger.annotations.ApiModelProperty(value = "积分锁定0正常1锁定", name = "creditLocked") private Integer creditLocked; + + @io.swagger.annotations.ApiModelProperty(value = "入账金额(分)", name = "entryAmount") + private Integer entryAmount; @io.swagger.annotations.ApiModelProperty(value = "商户待提现金额(分)", name = "cashOutNumber") private Integer cashOutNumber; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/base/BaseEntity.java b/mallinkService/src/main/java/com/iformall/domain/po/base/BaseEntity.java index 98e2a7e6e..f8bd4830b 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/base/BaseEntity.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/base/BaseEntity.java @@ -161,6 +161,9 @@ public class BaseEntity implements Serializable { UpdateDate_ASC("`update_date` ASC"), UpdateDate_DESC("`update_date` DESC"), + CUpdateDate_ASC("c.`update_date` ASC"), + CUpdateDate_DESC("c.`update_date` DESC"), + CCUpdateDate_ASC("cc.`update_date` ASC"), CCUpdateDate_DESC("cc.`update_date` DESC"), diff --git a/mallinkService/src/main/java/com/iformall/domain/po/tt/TtCoupon.java b/mallinkService/src/main/java/com/iformall/domain/po/tt/TtCoupon.java index eb528f3cc..3bae66318 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/tt/TtCoupon.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/tt/TtCoupon.java @@ -108,6 +108,8 @@ public class TtCoupon extends TenantEntity { @io.swagger.annotations.ApiModelProperty(value="收藏数",name="collectCount") private Integer collectCount; + @io.swagger.annotations.ApiModelProperty(value = "记号1是0否", name = "mark") + private Integer mark; @io.swagger.annotations.ApiModelProperty(value = "是否删除1是0否", name = "isDel") private Integer isDel; diff --git a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java index ad3e467a8..4557d17a9 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java @@ -38,13 +38,13 @@ public class TtOrderServiceImpl implements TtOrderService { private TtOrderMapper ttOrderMapper; @Autowired - private TtCouponMapper couponMapper; + private TtCouponMapper ttcouponMapper; @Autowired - private TtCUserMapper cUserMapper; + private TtCUserMapper ttCUserMapper; @Autowired - private WxMerchantMapper merchantMapper; + private WxMerchantMapper wxMerchantMapper; // @Autowired // private WxCUserBasicInfoService wxCUserBasicInfoService; @@ -94,7 +94,7 @@ public class TtOrderServiceImpl implements TtOrderService { // logger.info("会员权益被锁定:cUserId:" + cUserId); // return new ResultData(ErrorCode.MEMBER_IS_LOCKED); // } - TtCoupon coupon = couponMapper.selectById(couponId); + TtCoupon coupon = ttcouponMapper.selectById(couponId); if (null == coupon) { return new ResultData(ErrorCode.TTCOUPON_IS_EMPTY); } @@ -130,7 +130,7 @@ public class TtOrderServiceImpl implements TtOrderService { order.setCreateDate(now); order.setUpdateDate(now); ttOrderMapper.insert(order); - couponMapper.addSellCount(coupon.getId()); + ttcouponMapper.addSellCount(coupon.getId()); return new ResultData(order); } catch (MallinkException e) { logger.error(e.getMessage()); @@ -185,9 +185,9 @@ public class TtOrderServiceImpl implements TtOrderService { if(memberId != null && !ttOrder.getCUserId().equals(memberId)){ return null; } - ttOrder.setCUser(cUserMapper.selectById(ttOrder.getCUserId())); - ttOrder.setCoupon(couponMapper.selectById(ttOrder.getProductId())); - ttOrder.setMerchant(merchantMapper.selectById(ttOrder.getMerchantId())); + ttOrder.setCUser(ttCUserMapper.selectById(ttOrder.getCUserId())); + ttOrder.setCoupon(ttcouponMapper.selectById(ttOrder.getProductId())); + ttOrder.setMerchant(wxMerchantMapper.selectById(ttOrder.getMerchantId())); return ttOrder; } @@ -220,7 +220,7 @@ public class TtOrderServiceImpl implements TtOrderService { if(payAcount == null){ return new ResultData(ErrorCode.APP_ID_NOT_FOUND); } - TtCoupon coupon = couponMapper.selectById(order.getProductId()); + TtCoupon coupon = ttcouponMapper.selectById(order.getProductId()); if (!coupon.getStatus().equals(EnumTtCouponStatus.TTCOUPON_STATUS_SHELFING.getCode())) { logger.error("券已经下架了>>>" + order.getProductId()); return new ResultData(ErrorCode.COUPON_CHANNEL_IS_TAKE_OFF); diff --git a/mallinkService/src/main/resources/mapper/TtCouponMapper.xml b/mallinkService/src/main/resources/mapper/TtCouponMapper.xml index 6fecc6c74..bfd92f94c 100644 --- a/mallinkService/src/main/resources/mapper/TtCouponMapper.xml +++ b/mallinkService/src/main/resources/mapper/TtCouponMapper.xml @@ -34,6 +34,7 @@ + @@ -51,7 +52,7 @@ c.`title`, c.`sub_title`, c.`video_id`, c.`video_time`,c.`video_url`, c.`html`, c.`is_landscape`, c.`is_payment`, c.`sale_price`, c.`orig_price`, c.`is_preview`, c.`preview_duration`, c.`detail`, c.`false_sell_count`, c.`dy_title`, c.`inventory`, c.`remark`, c.`status`, c.`create_date`, c.`update_date`, - c.`see_count`, c.`sell_count`, c.`assess_count`, c.`collect_count`, c.`is_del`, + c.`see_count`, c.`sell_count`, c.`assess_count`, c.`collect_count`, c.`mark`, c.`is_del`, c.`column_id`, c.`popularity`, c.`merchant_id`, c.`business_id`, c.`business_name`, m.name merchant_name, m.img_url merchant_pic @@ -101,6 +102,10 @@ and c.`status` = #{status} + + and c.`mark` = #{mark} + + and c.`create_date` >= #{startdate} @@ -123,8 +128,7 @@ - order by c.`update_date` desc - + order by ${sortColumns} + + + + select - from wx_merchant where encode = #{encode} + from wx_merchant m where m.encode = #{encode} diff --git a/mallinkTTCApi/src/main/java/com/iformall/controller/TtCouponController.java b/mallinkTTCApi/src/main/java/com/iformall/controller/TtCouponController.java index 730ada181..84142ab48 100644 --- a/mallinkTTCApi/src/main/java/com/iformall/controller/TtCouponController.java +++ b/mallinkTTCApi/src/main/java/com/iformall/controller/TtCouponController.java @@ -153,74 +153,30 @@ public class TtCouponController extends BaseController { return new ResultData(); } - @ApiOperation("取消收藏") - @GetMapping("/cancelCollect") - @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) - public ResultData cancelCollect(@RequestParam Long id) { - logger.debug("[" + getIpAddr() + "] TtCouponController::collectCoupon"); - if (id == null) { - return new ResultData(ResultData.ERROR, "缺少id"); - } - Long memberId; - try { - memberId = getMemberId(); - } catch (MallinkException e) { - return new ResultData(e.getErrorCode(), e.getMessage()); - } - ttCouponService.cancelCollect(memberId,id); - return new ResultData(); - } - - @ApiOperation("是否关注") - @GetMapping("/isfollow") - @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) - public ResultData isfollow(@RequestParam Long id) { - logger.debug("[" + getIpAddr() + "] TtCouponController::isfollow"); - if (id == null) { - return new ResultData(ResultData.ERROR, "缺少id"); - } - Long memberId; - try { - memberId = getMemberId(); - } catch (MallinkException e) { - return new ResultData(e.getErrorCode(), e.getMessage()); - } - int count = ttCouponService.getfollow(memberId,id); - if(count > 0){ - return new ResultData(true); - }else{ - return new ResultData(false); - } - - } - - @ApiOperation("关注") - @GetMapping("/followMerchant") - @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) - public ResultData followMerchant(@RequestParam Long id) { - logger.debug("[" + getIpAddr() + "] TtCouponController::followMerchant"); - if (id == null) { - return new ResultData(ResultData.ERROR, "缺少id"); - } - WxMerchant byId = wxMerchantService.getById(id); - if(byId == null){ - return new ResultData(ErrorCode.SYS_PARAMETER_ERROR,"找不到数据"); - } + @ApiOperation("分页收藏列表接口") + @GetMapping("collectList") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) + public ResultData collectList(@ModelAttribute TtCoupon record, Integer pageNum, Integer pageSize) { + logger.debug("[" + getIpAddr() + "] TtCouponController::collectList"); + if (record == null) record = new TtCoupon(); Long memberId; try { memberId = getMemberId(); } catch (MallinkException e) { return new ResultData(e.getErrorCode(), e.getMessage()); } - ttCouponService.followMerchant(getTenantInfo(),memberId,byId.getId()); - return new ResultData(); + record.setCUserId(memberId); + record.setStatus(EnumTtCouponStatus.TTCOUPON_STATUS_SHELFING.getCode()); + return new ResultData(ttCouponService.collectListAsPage(record, pageNum, pageSize)); } - @ApiOperation("取消关注") - @GetMapping("/cancelFollow") + @ApiOperation("取消收藏") + @GetMapping("/cancelCollect") @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) - public ResultData cancelFollow(@RequestParam Long id) { - logger.debug("[" + getIpAddr() + "] TtCouponController::cancelFollow"); + public ResultData cancelCollect(@RequestParam Long id) { + logger.debug("[" + getIpAddr() + "] TtCouponController::collectCoupon"); if (id == null) { return new ResultData(ResultData.ERROR, "缺少id"); } @@ -230,7 +186,7 @@ public class TtCouponController extends BaseController { } catch (MallinkException e) { return new ResultData(e.getErrorCode(), e.getMessage()); } - ttCouponService.cancelFollow(memberId,id); + ttCouponService.cancelCollect(memberId,id); return new ResultData(); } diff --git a/mallinkTTCApi/src/main/java/com/iformall/controller/WxMerchantController.java b/mallinkTTCApi/src/main/java/com/iformall/controller/WxMerchantController.java index fe22e3453..700589d98 100644 --- a/mallinkTTCApi/src/main/java/com/iformall/controller/WxMerchantController.java +++ b/mallinkTTCApi/src/main/java/com/iformall/controller/WxMerchantController.java @@ -5,9 +5,11 @@ import com.iformall.common.ResultData; import com.iformall.domain.dto.WxMerchantDto; import com.iformall.domain.po.WxMerchant; import com.iformall.domain.po.base.TenantEntity; +import com.iformall.domain.po.tt.TtCoupon; import com.iformall.domain.vo.WxMerchantVo; import com.iformall.enums.EnumMerchantPublic; import com.iformall.enums.EnumMerchantStatus; +import com.iformall.enums.EnumTtCouponStatus; import com.iformall.exception.MallinkException; import com.iformall.service.WxMerchantService; import com.iformall.utils.HashUtil; @@ -84,5 +86,88 @@ public class WxMerchantController extends BaseController { return new ResultData(wxMerchant); } + @ApiOperation("是否关注") + @GetMapping("/isfollow") + @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) + public ResultData isfollow(@RequestParam Long id) { + logger.debug("[" + getIpAddr() + "] WxMerchantController::isfollow"); + if (id == null) { + return new ResultData(ResultData.ERROR, "缺少id"); + } + Long memberId; + try { + memberId = getMemberId(); + } catch (MallinkException e) { + return new ResultData(e.getErrorCode(), e.getMessage()); + } + int count = wxMerchantService.getfollow(memberId,id); + if(count > 0){ + return new ResultData(true); + }else{ + return new ResultData(false); + } + + } + + @ApiOperation("关注") + @GetMapping("/followMerchant") + @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) + public ResultData followMerchant(@RequestParam Long id) { + logger.debug("[" + getIpAddr() + "] WxMerchantController::followMerchant"); + if (id == null) { + return new ResultData(ResultData.ERROR, "缺少id"); + } + WxMerchant byId = wxMerchantService.getById(id); + if(byId == null){ + return new ResultData(ErrorCode.SYS_PARAMETER_ERROR,"找不到数据"); + } + Long memberId; + try { + memberId = getMemberId(); + } catch (MallinkException e) { + return new ResultData(e.getErrorCode(), e.getMessage()); + } + wxMerchantService.followMerchant(getTenantInfo(),memberId,byId.getId()); + return new ResultData(); + } + + @ApiOperation("分页关注列表接口") + @GetMapping("collectList") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) + public ResultData followList(@ModelAttribute WxMerchant record, Integer pageNum, Integer pageSize) { + logger.debug("[" + getIpAddr() + "] WxMerchantController::followList"); + if (record == null) record = new WxMerchant(); + Long memberId; + try { + memberId = getMemberId(); + } catch (MallinkException e) { + return new ResultData(e.getErrorCode(), e.getMessage()); + } + record.setCUserId(memberId); + record.setStatus(EnumMerchantStatus.VALID.getCode()); + record.setIsPublic(EnumMerchantPublic.PUBLIC.getCode()); + return new ResultData(wxMerchantService.followListAsPage(record, pageNum, pageSize)); + } + + @ApiOperation("取消关注") + @GetMapping("/cancelFollow") + @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) + public ResultData cancelFollow(@RequestParam Long id) { + logger.debug("[" + getIpAddr() + "] TtCouponController::cancelFollow"); + if (id == null) { + return new ResultData(ResultData.ERROR, "缺少id"); + } + Long memberId; + try { + memberId = getMemberId(); + } catch (MallinkException e) { + return new ResultData(e.getErrorCode(), e.getMessage()); + } + wxMerchantService.cancelFollow(memberId,id); + return new ResultData(); + } + } From 8b640daf187722469b4f5d87856160362cf87a23 Mon Sep 17 00:00:00 2001 From: xhxu Date: Sat, 29 May 2021 14:03:17 +0800 Subject: [PATCH 32/48] tt --- .../service/tt/impl/TtOrderServiceImpl.java | 87 ++++++++++++------- .../controller/TtUserGrantController.java | 3 + 2 files changed, 60 insertions(+), 30 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java index 4557d17a9..5bb5da8a6 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java @@ -19,10 +19,14 @@ import com.iformall.exception.MallinkException; import com.iformall.mapper.*; import com.iformall.service.*; import com.iformall.service.tt.TtOrderService; +import com.iformall.utils.RedisLock; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; import java.util.*; @@ -34,6 +38,11 @@ public class TtOrderServiceImpl implements TtOrderService { private final Integer time_out = 30*60; + private final String TT_ORDER_KEY = "ORDER:TT:"; + + @Autowired + RedisLock redisLock; + @Autowired private TtOrderMapper ttOrderMapper; @@ -130,7 +139,6 @@ public class TtOrderServiceImpl implements TtOrderService { order.setCreateDate(now); order.setUpdateDate(now); ttOrderMapper.insert(order); - ttcouponMapper.addSellCount(coupon.getId()); return new ResultData(order); } catch (MallinkException e) { logger.error(e.getMessage()); @@ -288,52 +296,71 @@ public class TtOrderServiceImpl implements TtOrderService { } @Override + @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) public ResultData updateOrderStatus(Long orderId, WxAppinfo appInfo, WxPayAccount payAccount) { - TtOrder order = ttOrderMapper.selectById(orderId); - if (null == order) { - logger.error("pay order, order not allow, orderId: " + orderId); - return new ResultData(ErrorCode.ORDER_IS_NOT_FIND); - } - if(appInfo == null || payAccount == null) { - return new ResultData(ErrorCode.APP_ID_NOT_FOUND); - } - if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()){ - logger.info("订单支付中: " + order.toString()); - OrderQueryResult orderQueryResult = DouYinPayHelper.orderQuery(appInfo.getAppId(), payAccount.getApiKey(), order.getId().toString(), null); - if(orderQueryResult == null){ - return new ResultData(ErrorCode.PAY_ORDER_ERROR,"查询单号不存在"); + String lockKey = StringUtils.join(TT_ORDER_KEY,orderId, ":", "lock"); + long time = System.currentTimeMillis() + 5000; + String timeStr = String.valueOf(time); + if (redisLock.lock2(lockKey, timeStr)) { + + TtOrder order = ttOrderMapper.selectById(orderId); + if (null == order) { + logger.error("pay order, order not allow, orderId: " + orderId); + return new ResultData(ErrorCode.ORDER_IS_NOT_FIND); + } + if(appInfo == null || payAccount == null) { + return new ResultData(ErrorCode.APP_ID_NOT_FOUND); } - String trade_state = orderQueryResult.getOrderStatus(); - if ("PROCESSING".equals(trade_state)) {//处理中 - return new ResultData(ErrorCode.PAY_ORDER_PAYING); - }else if ("SUCCESS".equals(trade_state)) {//成功 - TtOrder orderSuc = new TtOrder(); - orderSuc.setId(order.getId()); - orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); - orderSuc.setWay(orderQueryResult.getWay()); - orderSuc.setPaymentTime(orderQueryResult.getPayTime()); - orderSuc.setUpdateDate(new Date()); - ttOrderMapper.updateById(orderSuc); + if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()){ + logger.info("订单支付中: " + order.toString()); + OrderQueryResult orderQueryResult = DouYinPayHelper.orderQuery(appInfo.getAppId(), payAccount.getApiKey(), order.getId().toString(), null); + if(orderQueryResult == null){ + return new ResultData(ErrorCode.PAY_ORDER_ERROR,"查询单号不存在"); + } + String trade_state = orderQueryResult.getOrderStatus(); + if ("PROCESSING".equals(trade_state)) {//处理中 + return new ResultData(ErrorCode.PAY_ORDER_PAYING); + }else if ("SUCCESS".equals(trade_state)) {//成功 + TtOrder orderSuc = new TtOrder(); + orderSuc.setId(order.getId()); + orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); + orderSuc.setWay(orderQueryResult.getWay()); + orderSuc.setPaymentTime(orderQueryResult.getPayTime()); + orderSuc.setUpdateDate(new Date()); + ttOrderMapper.updateById(orderSuc); // return new ResultData(ErrorCode.PAY_ORDER_EXIST,"该订单已经支付,请勿重复支付!"); - return new ResultData(); - }else if ("FAIL".equals(trade_state)) {//失败 + return new ResultData(); + }else if ("FAIL".equals(trade_state)) {//失败 // TtOrder orderSuc = new TtOrder(); // orderSuc.setId(order.getId()); // orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()); // orderSuc.setUpdateDate(new Date()); // ttOrderMapper.updateById(orderSuc); - return new ResultData(ErrorCode.PAY_ORDER_ERROR,"支付失败"); - }else if ("TIMEOUT".equals(trade_state)) {//超时 + return new ResultData(ErrorCode.PAY_ORDER_ERROR,"支付失败"); + }else if ("TIMEOUT".equals(trade_state)) {//超时 // TtOrder orderSuc = new TtOrder(); // orderSuc.setId(order.getId()); // orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()); // orderSuc.setUpdateDate(new Date()); // ttOrderMapper.updateById(orderSuc); // return new ResultData(ErrorCode.PAY_ORDER_CLOSED); - return new ResultData(ErrorCode.PAY_ORDER_ERROR,"支付超时"); + return new ResultData(ErrorCode.PAY_ORDER_ERROR,"支付超时"); + } + } + + redisLock.unlock(lockKey, timeStr); + }else { + logger.debug("CacheAspect 读库等待中, key:{}: " + lockKey); + try { + Thread.sleep(5000); + } catch (InterruptedException e) { + e.printStackTrace(); + }finally { + redisLock.unlock(lockKey, timeStr); } } return new ResultData(); + } @Override diff --git a/mallinkTTCApi/src/main/java/com/iformall/controller/TtUserGrantController.java b/mallinkTTCApi/src/main/java/com/iformall/controller/TtUserGrantController.java index 2a48b2668..26fdfc234 100644 --- a/mallinkTTCApi/src/main/java/com/iformall/controller/TtUserGrantController.java +++ b/mallinkTTCApi/src/main/java/com/iformall/controller/TtUserGrantController.java @@ -3,6 +3,7 @@ package com.iformall.controller; import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult; import cn.binarywang.wx.miniapp.bean.WxMaPhoneNumberInfo; import cn.binarywang.wx.miniapp.bean.WxMaUserInfo; +import cn.binarywang.wx.miniapp.util.crypt.WxMaCryptUtils; import com.alibaba.fastjson.JSONObject; import com.iformall.annotation.AuthIgnore; import com.iformall.annotation.TenantIgnore; @@ -256,6 +257,8 @@ public class TtUserGrantController extends BaseController { String session_key = user.getSessionKey(); try { // 解密用户信息 + String decrypt = WxMaCryptUtils.decrypt(session_key, encryptedData, iv); + logger.info("111111"+decrypt); WxMaUserInfo userInfo = ttMaService.getUserService().getUserInfo(session_key, encryptedData, iv); if (userInfo != null) { logger.debug(userInfo.toString()); From 4908f59e2d0677c05121ad0e38db0cf127f63c1f Mon Sep 17 00:00:00 2001 From: xhxu Date: Sat, 29 May 2021 16:39:44 +0800 Subject: [PATCH 33/48] tt --- .../com/iformall/enums/EnumTtOrderStatus.java | 4 +- .../com/iformall/mapper/TtOrderMapper.java | 2 + .../AliBusinessCircleOrderServiceImpl.java | 3 + .../WxBusinessCircleOrderServiceImpl.java | 2 + .../impl/WxThirdPartyOrdersServiceImpl.java | 8 + .../iformall/service/tt/TtOrderService.java | 6 +- .../service/tt/impl/TtOrderServiceImpl.java | 143 ++++++++++-------- .../java/com/iformall/utils/Constant.java | 2 + .../main/resources/mapper/TtOrderMapper.xml | 6 + .../callback/TtOrderCallbackController.java | 6 +- .../controller/TtCouponController.java | 2 +- .../controller/TtOrderController.java | 1 - .../controller/TtUserGrantController.java | 4 +- .../schedule/TtOrderExpiringSchedule.java | 48 +++++- 14 files changed, 154 insertions(+), 83 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumTtOrderStatus.java b/mallinkService/src/main/java/com/iformall/enums/EnumTtOrderStatus.java index 8386c5477..6509da831 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumTtOrderStatus.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumTtOrderStatus.java @@ -9,7 +9,9 @@ public enum EnumTtOrderStatus { ORDER_STATUS_PENDING_PAYMENT(0, "待付款"), // ORDER_STATUS_PAYMENT_ING(1,"支付中"), ORDER_STATUS_PAYMENT_SUCCESS(2, "已支付"), - ORDER_STATUS_OVERTIME_CANCEL(3, "已取消"), + ORDER_STATUS_OVERTIME_CANCEL(3, "已取消"),//已关闭 + + ORDER_STATUS_PENDING_REFUND(4, "待退款"), ORDER_STATUS_REFUND_SUCCESS(5,"已退款"), ORDER_STATUS_REFUND_FAILD(6, "退款失败"), diff --git a/mallinkService/src/main/java/com/iformall/mapper/TtOrderMapper.java b/mallinkService/src/main/java/com/iformall/mapper/TtOrderMapper.java index f39da3160..5be34c539 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/TtOrderMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/TtOrderMapper.java @@ -22,4 +22,6 @@ public interface TtOrderMapper extends CommonMapper { Integer findListCount(TtOrder orderQ); int updateExpire(@Param("expireDate")Date expireDate,@Param("orderStatus") Integer orderStatus); + + List findExpireIdList(@Param("expireDate")Date expireDate,@Param("orderStatus") Integer orderStatus); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/AliBusinessCircleOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/AliBusinessCircleOrderServiceImpl.java index a6c058d9d..833ee0dab 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/AliBusinessCircleOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/AliBusinessCircleOrderServiceImpl.java @@ -129,6 +129,7 @@ public class AliBusinessCircleOrderServiceImpl implements AliBusinessCircleOrder aliBusinessCircleOrderMapper.insertNoticeOrder(record); if(record.getCUserId() == null){ + redisLock.unlock(lockKey, timeStr); return; } Integer businessId = EnumBusiness.BUSINESS_ID6.getCode(); @@ -153,6 +154,7 @@ public class AliBusinessCircleOrderServiceImpl implements AliBusinessCircleOrder creditNum = creditHistory.getCreditNum(); } if(creditNum == 0){ + redisLock.unlock(lockKey, timeStr); return; } record.setIncreasedPoints(creditNum); @@ -257,6 +259,7 @@ public class AliBusinessCircleOrderServiceImpl implements AliBusinessCircleOrder creditNum = creditHistory.getCreditNum(); } if(creditNum == 0){ + redisLock.unlock(lockKey, timeStr); return; } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessCircleOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessCircleOrderServiceImpl.java index 8a2164feb..1281091ee 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessCircleOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessCircleOrderServiceImpl.java @@ -143,6 +143,7 @@ public class WxBusinessCircleOrderServiceImpl implements WxBusinessCircleOrderSe creditNum = creditHistory.getCreditNum(); } if(creditNum == 0){ + redisLock.unlock(lockKey, timeStr); return; } record.setIncreasedPoints(creditNum); @@ -248,6 +249,7 @@ public class WxBusinessCircleOrderServiceImpl implements WxBusinessCircleOrderSe creditNum = creditHistory.getCreditNum(); } if(creditNum == 0){ + redisLock.unlock(lockKey, timeStr); return; } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxThirdPartyOrdersServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxThirdPartyOrdersServiceImpl.java index 7082e88c1..6a97822af 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxThirdPartyOrdersServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxThirdPartyOrdersServiceImpl.java @@ -101,6 +101,7 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService WxThirdPartyOrders byTransactionId = this.getOrderByTransactionId(EnumThirdOrderType.RMB_PAY,record.getTransactionId(),record.getTenantId()); if(byTransactionId != null){ logger.error("--第三方付款--通知消息已存在---byTransactionId="+byTransactionId.getTransactionId()); + redisLock.unlock(lockKey, timeStr); throw new MallinkException(ErrorCode.SYS_PARAMETER_ERROR.getCode(), "订单数据已存在"); }else{ Date now = new Date(); @@ -144,6 +145,7 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService wxThirdPartyOrdersMapper.insertNoticeOrder(record); if(record.getCUserId() == null){ + redisLock.unlock(lockKey, timeStr); return; } Integer businessId = EnumBusiness.BUSINESS_ID6.getCode(); @@ -168,6 +170,7 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService creditNum = creditHistory.getCreditNum(); } if(creditNum == 0){ + redisLock.unlock(lockKey, timeStr); return; } record.setIncreasedPoints(creditNum); @@ -231,9 +234,11 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService } if(refundAmount >= amount){ logger.error("--第三方退款--已经退款--transactionId="+record.getTransactionId()); + redisLock.unlock(lockKey, timeStr); throw new MallinkException(ErrorCode.SYS_PARAMETER_ERROR.getCode(), "已经退款"); }else if((refundAmount + record.getRefundAmount()) > amount ){ logger.error("--第三方退款--退款金额超限--transactionId="+record.getTransactionId()); + redisLock.unlock(lockKey, timeStr); throw new MallinkException(ErrorCode.SYS_PARAMETER_ERROR.getCode(), "退款金额超限"); }else{ @@ -292,6 +297,7 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService creditNum = creditHistory.getCreditNum(); } if(creditNum == 0){ + redisLock.unlock(lockKey, timeStr); return; } @@ -349,6 +355,7 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService WxThirdPartyOrders byTransactionId = this.getOrderByTransactionId(EnumThirdOrderType.CREDIT_PAY,record.getTransactionId(),record.getTenantId()); if(byTransactionId != null){ logger.error("--第三方积分订单--数据已存在---byTransactionId="+byTransactionId.getTransactionId()); + redisLock.unlock(lockKey, timeStr); throw new MallinkException(ErrorCode.SYS_PARAMETER_ERROR.getCode(), "订单数据已存在"); }else{ Date now = new Date(); @@ -387,6 +394,7 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService creditNum = creditHistory.getCreditNum(); } if(creditNum == 0){ + redisLock.unlock(lockKey, timeStr); throw new MallinkException(ErrorCode.CREDIT_ZERO.getCode(), "本次扣减积分为0"); } wxThirdPartyOrdersMapper.insertNoticeOrder(record); diff --git a/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java b/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java index dfc24301d..0bb884f75 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java @@ -9,6 +9,10 @@ import com.iformall.domain.po.WxPayAccount; import com.iformall.domain.po.base.TenantEntity; import com.iformall.domain.po.tt.TtOrder; import com.iformall.enums.EnumPayWay; +import org.springframework.scheduling.annotation.Async; + +import java.util.Date; +import java.util.List; public interface TtOrderService { @@ -35,5 +39,5 @@ public interface TtOrderService { boolean isByMember(Long memberId, Long id); - + List findExpireIdList(Date expireDate); } diff --git a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java index 5bb5da8a6..f1b695804 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java @@ -19,6 +19,7 @@ import com.iformall.exception.MallinkException; import com.iformall.mapper.*; import com.iformall.service.*; import com.iformall.service.tt.TtOrderService; +import com.iformall.utils.Constant; import com.iformall.utils.RedisLock; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; @@ -28,6 +29,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; +import java.text.SimpleDateFormat; import java.util.*; @@ -237,54 +239,22 @@ public class TtOrderServiceImpl implements TtOrderService { if (order.getPaymentType() != EnumPayType.PAY_PAYMENT.getCode()) { return new ResultData(ErrorCode.PAY_ORDER_IS_NOT_PAYMENT); } - - if (order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()) { - logger.error("订单已支付: " + order.toString()); + ResultData resultData = this.updateOrderStatus(orderId, appInfo, payAcount); + if(resultData.code == ResultData.SUCCESS){ return new ResultData(ErrorCode.ORDER_HAD_PAY); - } else if (order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()) { - logger.error("订单已取消: " + order.toString()); - return new ResultData(ErrorCode.ORDER_HAD_CANCEL); - } else if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()){ - logger.info("订单未支付: " + order.toString()); - OrderQueryResult orderQueryResult = DouYinPayHelper.orderQuery(appInfo.getAppId(), payAcount.getApiKey(), order.getId().toString(), null); - if(orderQueryResult != null){ - String trade_state = orderQueryResult.getOrderStatus(); - if ("PROCESSING".equals(trade_state)) {//处理中 -// return new ResultData(ErrorCode.PAY_ORDER_PAYING); - }else if ("SUCCESS".equals(trade_state)) {//成功 - TtOrder orderSuc = new TtOrder(); - orderSuc.setId(order.getId()); - orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); - orderSuc.setWay(orderQueryResult.getWay()); - orderSuc.setPaymentTime(orderQueryResult.getPayTime()); - orderSuc.setUpdateDate(new Date()); - ttOrderMapper.updateById(orderSuc); - return new ResultData(ErrorCode.PAY_ORDER_EXIST,"该订单已经支付,请勿重复支付!"); - }else if ("FAIL".equals(trade_state)) {//失败 - - }else if ("TIMEOUT".equals(trade_state)) {//超时 - - } - } - - } else{ - if (order.getOrderStatus() != EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()) { - logger.error("订单已支付: " + order.toString()); - return new ResultData(ErrorCode.ORDER_IS_NOT_PAY); - } - } - DouYinCreatePreOrder preOrder = new DouYinCreatePreOrder(); - preOrder.setAppId(appInfo.getAppId()); - preOrder.setSercrect(appInfo.getSecret()); - preOrder.setSalt(payAcount.getApiKey()); - preOrder.setOutOrderNo(order.getId().toString()); - preOrder.setTotalAmount(order.getPayment()); - preOrder.setSubject(coupon.getTitle()); - preOrder.setBody(coupon.getTitle()); - preOrder.setValidTime(time_out); + }else if(resultData.code == ErrorCode.PAY_ORDER_NOT_PAY.getCode() ){ + DouYinCreatePreOrder preOrder = new DouYinCreatePreOrder(); + preOrder.setAppId(appInfo.getAppId()); + preOrder.setSercrect(appInfo.getSecret()); + preOrder.setSalt(payAcount.getApiKey()); + preOrder.setOutOrderNo(order.getId().toString()); + preOrder.setTotalAmount(order.getPayment()); + preOrder.setSubject(coupon.getTitle()); + preOrder.setBody(coupon.getTitle()); + preOrder.setValidTime(time_out); // preOrder.setNotifyUrl();//回调地址 - CreatePreOrderResult preOrderResult = DouYinPayHelper.createPreOrder(preOrder); + CreatePreOrderResult preOrderResult = DouYinPayHelper.createPreOrder(preOrder); // if(preOrderResult.isSuccess()){ // TtOrder orderSuc = new TtOrder(); // orderSuc.setId(order.getId()); @@ -292,7 +262,11 @@ public class TtOrderServiceImpl implements TtOrderService { // orderSuc.setUpdateDate(new Date()); // ttOrderMapper.updateById(orderSuc); // } - return new ResultData(preOrderResult); + return new ResultData(preOrderResult); + }else{ + return resultData; + } + } @Override @@ -308,18 +282,25 @@ public class TtOrderServiceImpl implements TtOrderService { logger.error("pay order, order not allow, orderId: " + orderId); return new ResultData(ErrorCode.ORDER_IS_NOT_FIND); } + Boolean isExpire = false;//是否过期 + Date now = new Date(); + Date expireDate = new Date(now.getTime() - Constant.PRESS_TIME_OUT ); + if(order.getCreateDate().before(expireDate)){ + isExpire = true; + } if(appInfo == null || payAccount == null) { return new ResultData(ErrorCode.APP_ID_NOT_FOUND); } if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()){ - logger.info("订单支付中: " + order.toString()); + String msg = ""; + //待付款 OrderQueryResult orderQueryResult = DouYinPayHelper.orderQuery(appInfo.getAppId(), payAccount.getApiKey(), order.getId().toString(), null); if(orderQueryResult == null){ - return new ResultData(ErrorCode.PAY_ORDER_ERROR,"查询单号不存在"); + msg = "查询-单号不存在"; } String trade_state = orderQueryResult.getOrderStatus(); if ("PROCESSING".equals(trade_state)) {//处理中 - return new ResultData(ErrorCode.PAY_ORDER_PAYING); + msg = "查询-处理中"; }else if ("SUCCESS".equals(trade_state)) {//成功 TtOrder orderSuc = new TtOrder(); orderSuc.setId(order.getId()); @@ -328,29 +309,54 @@ public class TtOrderServiceImpl implements TtOrderService { orderSuc.setPaymentTime(orderQueryResult.getPayTime()); orderSuc.setUpdateDate(new Date()); ttOrderMapper.updateById(orderSuc); -// return new ResultData(ErrorCode.PAY_ORDER_EXIST,"该订单已经支付,请勿重复支付!"); + ttcouponMapper.addSellCount(order.getProductId()); + + redisLock.unlock(lockKey, timeStr); return new ResultData(); }else if ("FAIL".equals(trade_state)) {//失败 -// TtOrder orderSuc = new TtOrder(); -// orderSuc.setId(order.getId()); -// orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()); -// orderSuc.setUpdateDate(new Date()); -// ttOrderMapper.updateById(orderSuc); - return new ResultData(ErrorCode.PAY_ORDER_ERROR,"支付失败"); + msg = "查询-支付失败"; }else if ("TIMEOUT".equals(trade_state)) {//超时 -// TtOrder orderSuc = new TtOrder(); -// orderSuc.setId(order.getId()); -// orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()); -// orderSuc.setUpdateDate(new Date()); -// ttOrderMapper.updateById(orderSuc); -// return new ResultData(ErrorCode.PAY_ORDER_CLOSED); - return new ResultData(ErrorCode.PAY_ORDER_ERROR,"支付超时"); + msg = "查询-支付超时"; + }else{ + msg = "查询-单号异常"; + } + if(isExpire){ + TtOrder orderSuc = new TtOrder(); + orderSuc.setId(order.getId()); + orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()); + orderSuc.setUpdateDate(new Date()); + ttOrderMapper.updateById(orderSuc); + + redisLock.unlock(lockKey, timeStr); + return new ResultData(ErrorCode.PAY_ORDER_CLOSED); } + + redisLock.unlock(lockKey, timeStr); + return new ResultData(ErrorCode.PAY_ORDER_NOT_PAY,msg); + } +// else if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PAYMENT_ING.getCode()){ +// //支付中 +// } + else if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()){ + //已支付 + + redisLock.unlock(lockKey, timeStr); + return new ResultData(); + } + else if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()){ + //已取消,已关闭 + + redisLock.unlock(lockKey, timeStr); + return new ResultData(ErrorCode.PAY_ORDER_CLOSED); + } + else{ + + redisLock.unlock(lockKey, timeStr); + return new ResultData(ErrorCode.PAY_ORDER_ERROR,"订单状态异常"); } - redisLock.unlock(lockKey, timeStr); }else { - logger.debug("CacheAspect 读库等待中, key:{}: " + lockKey); + logger.debug("CacheAspect 业务等待中, key:{}: " + lockKey); try { Thread.sleep(5000); } catch (InterruptedException e) { @@ -359,7 +365,7 @@ public class TtOrderServiceImpl implements TtOrderService { redisLock.unlock(lockKey, timeStr); } } - return new ResultData(); + return new ResultData(ErrorCode.PAY_ORDER_ERROR,"请重试!"); } @@ -378,4 +384,9 @@ public class TtOrderServiceImpl implements TtOrderService { return false; } + @Override + public List findExpireIdList(Date expireDate) { + return ttOrderMapper.findExpireIdList(expireDate,EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()); + } + } diff --git a/mallinkService/src/main/java/com/iformall/utils/Constant.java b/mallinkService/src/main/java/com/iformall/utils/Constant.java index 216646818..f62186f67 100644 --- a/mallinkService/src/main/java/com/iformall/utils/Constant.java +++ b/mallinkService/src/main/java/com/iformall/utils/Constant.java @@ -10,6 +10,8 @@ public class Constant { public static final int WX_LIMIT_DAYS = 30; // 微信分账限制30天 + public static final long PRESS_TIME_OUT = 30 * 60 * 1000;//必须30分钟内支付; + //游戏常量 public static final int limit = 0;//游戏玩法不限次数 public static final int notLimit = -1;//游戏玩法不限能玩 diff --git a/mallinkService/src/main/resources/mapper/TtOrderMapper.xml b/mallinkService/src/main/resources/mapper/TtOrderMapper.xml index d1a85c609..d437d9302 100644 --- a/mallinkService/src/main/resources/mapper/TtOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/TtOrderMapper.xml @@ -246,4 +246,10 @@ where orderStatus=0 and create_date < #{expireDate} + + diff --git a/mallinkTTCApi/src/main/java/com/iformall/callback/TtOrderCallbackController.java b/mallinkTTCApi/src/main/java/com/iformall/callback/TtOrderCallbackController.java index bce3e8092..6bf87ad9f 100644 --- a/mallinkTTCApi/src/main/java/com/iformall/callback/TtOrderCallbackController.java +++ b/mallinkTTCApi/src/main/java/com/iformall/callback/TtOrderCallbackController.java @@ -12,10 +12,7 @@ import com.iformall.service.tt.TtOrderService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import java.util.HashMap; @@ -96,5 +93,4 @@ public class TtOrderCallbackController extends BaseController { } } - } diff --git a/mallinkTTCApi/src/main/java/com/iformall/controller/TtCouponController.java b/mallinkTTCApi/src/main/java/com/iformall/controller/TtCouponController.java index 84142ab48..60a72c4df 100644 --- a/mallinkTTCApi/src/main/java/com/iformall/controller/TtCouponController.java +++ b/mallinkTTCApi/src/main/java/com/iformall/controller/TtCouponController.java @@ -74,7 +74,7 @@ public class TtCouponController extends BaseController { } TtCoupon detail = ttCouponService.detail(id); if(detail == null){ - new ResultData(); + return new ResultData(); } if(detail.getIsPayment().equals(EnumYesOrNo.YES.getCode())){ try { diff --git a/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderController.java b/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderController.java index fb73bae85..1a1576e5d 100644 --- a/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderController.java +++ b/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderController.java @@ -227,7 +227,6 @@ public class TtOrderController extends BaseController { }else{ return new ResultData(); } - } } diff --git a/mallinkTTCApi/src/main/java/com/iformall/controller/TtUserGrantController.java b/mallinkTTCApi/src/main/java/com/iformall/controller/TtUserGrantController.java index 26fdfc234..00c29f55e 100644 --- a/mallinkTTCApi/src/main/java/com/iformall/controller/TtUserGrantController.java +++ b/mallinkTTCApi/src/main/java/com/iformall/controller/TtUserGrantController.java @@ -257,8 +257,8 @@ public class TtUserGrantController extends BaseController { String session_key = user.getSessionKey(); try { // 解密用户信息 - String decrypt = WxMaCryptUtils.decrypt(session_key, encryptedData, iv); - logger.info("111111"+decrypt); +// String decrypt = WxMaCryptUtils.decrypt(session_key, encryptedData, iv); +// logger.info("解密信息"+decrypt); WxMaUserInfo userInfo = ttMaService.getUserService().getUserInfo(session_key, encryptedData, iv); if (userInfo != null) { logger.debug(userInfo.toString()); diff --git a/mallinkTTCApi/src/main/java/com/iformall/schedule/TtOrderExpiringSchedule.java b/mallinkTTCApi/src/main/java/com/iformall/schedule/TtOrderExpiringSchedule.java index 4ca0f0df3..fd78b0a44 100644 --- a/mallinkTTCApi/src/main/java/com/iformall/schedule/TtOrderExpiringSchedule.java +++ b/mallinkTTCApi/src/main/java/com/iformall/schedule/TtOrderExpiringSchedule.java @@ -1,8 +1,15 @@ package com.iformall.schedule; +import com.iformall.domain.po.WxAppinfo; import com.iformall.domain.po.WxMerchant; +import com.iformall.domain.po.WxPayAccount; +import com.iformall.domain.po.base.TenantEntity; import com.iformall.enums.*; import com.iformall.mapper.*; +import com.iformall.service.WxAppinfoService; +import com.iformall.service.WxPayAccountService; +import com.iformall.service.tt.TtOrderService; +import com.iformall.utils.Constant; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -10,30 +17,59 @@ import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import java.util.Date; +import java.util.List; @Component public class TtOrderExpiringSchedule { private final Logger logger = LoggerFactory.getLogger(this.getClass()); - private final int PRESS_TIME_OUT = 30 * 60 * 1000; //必须30分钟内支付 + @Autowired + private WxAppinfoService wxAppinfoService; + + @Autowired + private WxPayAccountService payAccountService; @Autowired - TtOrderMapper ttOrderMapper; + TtOrderService ttOrderService; @Autowired WxMerchantMapper wxMerchantMapper; + private TenantEntity getTenantInfo() { + TenantEntity tenantEntity = new TenantEntity() ; + tenantEntity.setTenantId("1"); + return tenantEntity; + } + @Scheduled(cron = "0 */1 * * * *?") // 每1分钟检查一次 public void orderExpireSchedule() { + + WxAppinfo cAppInfo = wxAppinfoService.getCAppInfo(getTenantInfo(), EnumPayWay.PAY_WAY_TT); + if(cAppInfo == null){ + return; + } + WxPayAccount payAccout = payAccountService.getById(cAppInfo.getId()); + if(payAccout == null){ + return; + } + Date now = new Date(); - Date expireDate = new Date(now.getTime() - PRESS_TIME_OUT ); - int count = ttOrderMapper.updateExpire(expireDate,EnumTtOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()); - if(count > 0){ - logger.info("订单过期"+count+"个"); + Date expireDate = new Date(now.getTime() - Constant.PRESS_TIME_OUT ); + List idList = ttOrderService.findExpireIdList(expireDate); + if(idList != null && idList.size() > 0){ + for (Long orderId:idList) { + try { + ttOrderService.updateOrderStatus(orderId,cAppInfo,payAccout); + } catch (Exception e) { + e.printStackTrace(); + } + } } + } + @Scheduled(cron = "0 0 4 * * ?") //每天四点入账 public void orderRecordedSchedule() { From c7751c7e1d25ca2e9aaf643ef6718714a09bc502 Mon Sep 17 00:00:00 2001 From: xhxu Date: Sat, 29 May 2021 16:48:04 +0800 Subject: [PATCH 34/48] tt --- .../iformall/service/WxMerchantService.java | 1 + .../service/impl/WxMerchantServiceImpl.java | 5 +++++ .../controller/WxMerchantController.java | 21 +++++-------------- .../schedule/TtOrderExpiringSchedule.java | 2 +- 4 files changed, 12 insertions(+), 17 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/WxMerchantService.java b/mallinkService/src/main/java/com/iformall/service/WxMerchantService.java index 93e22be13..742f2546f 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxMerchantService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxMerchantService.java @@ -107,6 +107,7 @@ public interface WxMerchantService { * @param id * @return */ + WxMerchant selectById(Long id); WxMerchant getById(Long id); /** diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java index 980bd2e20..0bee01edf 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java @@ -155,6 +155,11 @@ public class WxMerchantServiceImpl implements WxMerchantService { return collect; } + @Override + public WxMerchant selectById(Long id) { + return wxMerchantMapper.selectById(id); + } + @Override public WxMerchant getById(Long id) { WxMerchant wxMerchant = wxMerchantMapper.selectById(id); diff --git a/mallinkTTCApi/src/main/java/com/iformall/controller/WxMerchantController.java b/mallinkTTCApi/src/main/java/com/iformall/controller/WxMerchantController.java index 700589d98..9c5c878ba 100644 --- a/mallinkTTCApi/src/main/java/com/iformall/controller/WxMerchantController.java +++ b/mallinkTTCApi/src/main/java/com/iformall/controller/WxMerchantController.java @@ -64,25 +64,14 @@ public class WxMerchantController extends BaseController { } @ApiOperation("根据code查询接口") - @GetMapping("/findByCode") + @GetMapping("/findById") @ApiImplicitParam(name = "merchantCode", value = "merchantCode", dataType = "String", paramType = "query", required = true) - public ResultData findByCode(String merchantCode) { - logger.debug("[" + getIpAddr() + "] WxMerchantController::findByCode"); - if(merchantCode == null) { + public ResultData findById(Long id) { + logger.debug("[" + getIpAddr() + "] WxMerchantController::findById"); + if(id == null) { return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); } - String codeMD5 = HashUtil.DecodeByMD5(merchantCode); - if(StringUtils.isBlank(codeMD5)) { - return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); - } - HashMap params = new HashMap(); - TenantEntity tenantEntity = getTenantInfo(); - params.put("tenantId", tenantEntity.getTenantId()); - if (StringUtils.isNotBlank(tenantEntity.getParentTenantId())) { - params.put("parentTenantId", tenantEntity.getParentTenantId()); - } - params.put("merchantCode", codeMD5); - WxMerchantVo wxMerchant = wxMerchantService.getMerchantInfo(params); + WxMerchant wxMerchant = wxMerchantService.selectById(id); return new ResultData(wxMerchant); } diff --git a/mallinkTTCApi/src/main/java/com/iformall/schedule/TtOrderExpiringSchedule.java b/mallinkTTCApi/src/main/java/com/iformall/schedule/TtOrderExpiringSchedule.java index fd78b0a44..10af093b0 100644 --- a/mallinkTTCApi/src/main/java/com/iformall/schedule/TtOrderExpiringSchedule.java +++ b/mallinkTTCApi/src/main/java/com/iformall/schedule/TtOrderExpiringSchedule.java @@ -42,7 +42,7 @@ public class TtOrderExpiringSchedule { return tenantEntity; } - @Scheduled(cron = "0 */1 * * * *?") // 每1分钟检查一次 + @Scheduled(cron = "0 */10 * * * *?") // 每10分钟检查一次 public void orderExpireSchedule() { WxAppinfo cAppInfo = wxAppinfoService.getCAppInfo(getTenantInfo(), EnumPayWay.PAY_WAY_TT); From bbc270c8c0dc5f01ecdc8239ff02e7951e69fd22 Mon Sep 17 00:00:00 2001 From: xhxu Date: Sat, 29 May 2021 16:55:49 +0800 Subject: [PATCH 35/48] tt --- mallinkService/src/main/resources/mapper/TtOrderMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mallinkService/src/main/resources/mapper/TtOrderMapper.xml b/mallinkService/src/main/resources/mapper/TtOrderMapper.xml index d437d9302..748d1c2a4 100644 --- a/mallinkService/src/main/resources/mapper/TtOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/TtOrderMapper.xml @@ -246,7 +246,7 @@ where orderStatus=0 and create_date < #{expireDate} - select id from tt_order where orderStatus=#{orderStatus} and create_date < #{expireDate} From 2b43cc460f7d552209b3966154112d62bd33158a Mon Sep 17 00:00:00 2001 From: xhxu Date: Sat, 29 May 2021 18:49:24 +0800 Subject: [PATCH 36/48] tt --- .../db/migration/V202105270001__tt_add_.sql | 4 +- .../java/com/iformall/common/ErrorCode.java | 2 + .../com/iformall/domain/po/tt/TtOrder.java | 3 + .../com/iformall/mapper/TtOrderMapper.java | 6 +- .../com/iformall/mapper/WxMerchantMapper.java | 2 + .../iformall/service/tt/TtOrderService.java | 8 ++ .../service/tt/impl/TtOrderServiceImpl.java | 81 ++++++++++++++----- .../main/resources/mapper/TtOrderMapper.xml | 26 ++++-- .../resources/mapper/WxMerchantMapper.xml | 7 ++ .../schedule/TtOrderExpiringSchedule.java | 39 +++++---- 10 files changed, 130 insertions(+), 48 deletions(-) diff --git a/mallinkAdmin/src/main/resources/db/migration/V202105270001__tt_add_.sql b/mallinkAdmin/src/main/resources/db/migration/V202105270001__tt_add_.sql index 8b0981ac0..d8d40f5a9 100644 --- a/mallinkAdmin/src/main/resources/db/migration/V202105270001__tt_add_.sql +++ b/mallinkAdmin/src/main/resources/db/migration/V202105270001__tt_add_.sql @@ -8,4 +8,6 @@ ALTER TABLE `wx_merchant` ADD COLUMN `mark` smallint(1) COMMENT '记号' AFTER `action_desc`; ALTER TABLE `wx_merchant` -ADD COLUMN `entry_amount` int(11) COMMENT '入账金额' AFTER `credit_locked`; \ No newline at end of file +ADD COLUMN `entry_amount` int(11) DEFAULT 0 COMMENT '入账金额' AFTER `credit_locked`; + +UPDATE wx_merchant SET entry_amount = 0 ; diff --git a/mallinkService/src/main/java/com/iformall/common/ErrorCode.java b/mallinkService/src/main/java/com/iformall/common/ErrorCode.java index a23338520..b4bd65396 100644 --- a/mallinkService/src/main/java/com/iformall/common/ErrorCode.java +++ b/mallinkService/src/main/java/com/iformall/common/ErrorCode.java @@ -203,6 +203,8 @@ public enum ErrorCode{ ORDER_USER_NOT_MATCH(2013, "订单用户不匹配"), ORDER_COUPON_CHANNEL_NOT_MATCH(2014, "订单渠道不匹配"), ORDER_COUPON_NOT_MATCH(2015, "订单券不匹配"), + ORDER_RECORDED_AMOUNT(2016, "已入账"), + ORDER_RECORDED_AMOUNT_ERROR(2017, "入账失败"), /** * 卡券 diff --git a/mallinkService/src/main/java/com/iformall/domain/po/tt/TtOrder.java b/mallinkService/src/main/java/com/iformall/domain/po/tt/TtOrder.java index 501540755..c6747f213 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/tt/TtOrder.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/tt/TtOrder.java @@ -62,6 +62,9 @@ public class TtOrder extends TenantEntity { @io.swagger.annotations.ApiModelProperty(value="是否入账",name="isRecorded") private Integer isRecorded; + @io.swagger.annotations.ApiModelProperty(value="入账时间",name="recordedDate") + private Date recordedDate; + public String getPaymentStr() { return payment != null ? new BigDecimal(payment).divide(new BigDecimal(100)).toPlainString() : paymentStr; diff --git a/mallinkService/src/main/java/com/iformall/mapper/TtOrderMapper.java b/mallinkService/src/main/java/com/iformall/mapper/TtOrderMapper.java index 5be34c539..b620bba0d 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/TtOrderMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/TtOrderMapper.java @@ -21,7 +21,9 @@ public interface TtOrderMapper extends CommonMapper { Integer findListCount(TtOrder orderQ); - int updateExpire(@Param("expireDate")Date expireDate,@Param("orderStatus") Integer orderStatus); +// int updateExpire(@Param("expireDate")Date expireDate,@Param("orderStatus") Integer orderStatus); - List findExpireIdList(@Param("expireDate")Date expireDate,@Param("orderStatus") Integer orderStatus); + List findBeforeIdList(@Param("beforeDate")Date beforeDate,@Param("orderStatus") Integer orderStatus,@Param("isRecorded") Integer isRecorded); + + int updateIsRecorded(@Param("id")Long id, @Param("isRecorded")Integer isRecorded); } diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxMerchantMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxMerchantMapper.java index 7db44f2f4..9505db9b8 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxMerchantMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxMerchantMapper.java @@ -55,4 +55,6 @@ public interface WxMerchantMapper extends CommonMapper { WxMerchant getMerchantByEncode(@Param("encode")String encode); List findFollowList(WxMerchant record); + + int recordedAmount(WxMerchant record); } diff --git a/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java b/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java index 0bb884f75..9150bad5f 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java @@ -40,4 +40,12 @@ public interface TtOrderService { boolean isByMember(Long memberId, Long id); List findExpireIdList(Date expireDate); + + List findRecordedIdList(Date recordedDate); + + /** + * 入账 + * @return + */ + ResultData recordedAmount(Long orderId); } diff --git a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java index f1b695804..433905a7a 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java @@ -297,29 +297,31 @@ public class TtOrderServiceImpl implements TtOrderService { OrderQueryResult orderQueryResult = DouYinPayHelper.orderQuery(appInfo.getAppId(), payAccount.getApiKey(), order.getId().toString(), null); if(orderQueryResult == null){ msg = "查询-单号不存在"; - } - String trade_state = orderQueryResult.getOrderStatus(); - if ("PROCESSING".equals(trade_state)) {//处理中 - msg = "查询-处理中"; - }else if ("SUCCESS".equals(trade_state)) {//成功 - TtOrder orderSuc = new TtOrder(); - orderSuc.setId(order.getId()); - orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); - orderSuc.setWay(orderQueryResult.getWay()); - orderSuc.setPaymentTime(orderQueryResult.getPayTime()); - orderSuc.setUpdateDate(new Date()); - ttOrderMapper.updateById(orderSuc); - ttcouponMapper.addSellCount(order.getProductId()); - - redisLock.unlock(lockKey, timeStr); - return new ResultData(); - }else if ("FAIL".equals(trade_state)) {//失败 - msg = "查询-支付失败"; - }else if ("TIMEOUT".equals(trade_state)) {//超时 - msg = "查询-支付超时"; }else{ - msg = "查询-单号异常"; + String trade_state = orderQueryResult.getOrderStatus(); + if ("PROCESSING".equals(trade_state)) {//处理中 + msg = "查询-处理中"; + }else if ("SUCCESS".equals(trade_state)) {//成功 + TtOrder orderSuc = new TtOrder(); + orderSuc.setId(order.getId()); + orderSuc.setOrderStatus(EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); + orderSuc.setWay(orderQueryResult.getWay()); + orderSuc.setPaymentTime(orderQueryResult.getPayTime()); + orderSuc.setUpdateDate(new Date()); + ttOrderMapper.updateById(orderSuc); + ttcouponMapper.addSellCount(order.getProductId()); + + redisLock.unlock(lockKey, timeStr); + return new ResultData(); + }else if ("FAIL".equals(trade_state)) {//失败 + msg = "查询-支付失败"; + }else if ("TIMEOUT".equals(trade_state)) {//超时 + msg = "查询-支付超时"; + }else{ + msg = "查询-单号异常"; + } } + if(isExpire){ TtOrder orderSuc = new TtOrder(); orderSuc.setId(order.getId()); @@ -386,7 +388,42 @@ public class TtOrderServiceImpl implements TtOrderService { @Override public List findExpireIdList(Date expireDate) { - return ttOrderMapper.findExpireIdList(expireDate,EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()); + return ttOrderMapper.findBeforeIdList(expireDate,EnumTtOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode(),null); + } + + @Override + public List findRecordedIdList(Date recordedDate) { + return ttOrderMapper.findBeforeIdList(recordedDate,EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode(),EnumYesOrNo.NO.getCode()); + } + + @Override + @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) + public ResultData recordedAmount(Long orderId) { + TtOrder order = ttOrderMapper.selectById(orderId); + if (null == order) { + logger.error("pay order, order not allow, orderId: " + orderId); + return new ResultData(ErrorCode.ORDER_IS_NOT_FIND); + } + if(order.getOrderStatus() == EnumTtOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()){ + if(order.getIsRecorded() == null || !order.getIsRecorded().equals(EnumYesOrNo.YES.getCode())){ + WxMerchant merchant = new WxMerchant(); + merchant.setId(order.getMerchantId()); + merchant.setEntryAmount(order.getPayment()); + merchant.setCashOutNumber(order.getPayment()); + int i = wxMerchantMapper.recordedAmount(merchant); + if(i == 1){ + ttOrderMapper.updateIsRecorded(order.getId(),EnumYesOrNo.YES.getCode()); + return new ResultData(); + }else{ + throw new MallinkException(ErrorCode.ORDER_RECORDED_AMOUNT_ERROR); + } + }else{ + return new ResultData(ErrorCode.ORDER_RECORDED_AMOUNT); + } + + }else{ + return new ResultData(ErrorCode.PAY_ORDER_NOT_PAY,"订单不是支付状态"); + } } } diff --git a/mallinkService/src/main/resources/mapper/TtOrderMapper.xml b/mallinkService/src/main/resources/mapper/TtOrderMapper.xml index 748d1c2a4..89c828b7e 100644 --- a/mallinkService/src/main/resources/mapper/TtOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/TtOrderMapper.xml @@ -21,6 +21,8 @@ + + @@ -30,7 +32,7 @@ o.`id`,o.`tenant_id`,o.`parent_tenant_id`,o.`c_user_id`,o.`product_id`,o.`type`,o.`way`,o.`payment_type`,o.`payment`, - o.`payment_time`,o.`order_status`,o.`create_date`,o.`update_date`,o.`is_recorded`, + o.`payment_time`,o.`order_status`,o.`create_date`,o.`update_date`,o.`is_recorded`,o.`recorded_date`, u.`nick_name`,u.`phone`, o.`product_title`,o.`product_pic`,o.`product_sale_price`, m.`name` author,m.`img_url` author_pic @@ -81,6 +83,10 @@ and o.`order_status` = #{orderStatus} + + and o.`is_recorded` = #{isRecorded} + + and u.`nick_name` like concat('%', #{nickName},'%') @@ -163,6 +169,10 @@ and o.`product_id` = #{productId} + + and o.`product_title` like concat('%', #{productTitle},'%') + + and o.`type` = #{type} @@ -241,15 +251,17 @@ - - update tt_order set order_status = #{orderStatus},update_date = now() - where orderStatus=0 and create_date < #{expireDate} - - + + update tt_order set `is_recorded` = #{isRecorded},recorded_date = now() where id = #{id} + + diff --git a/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml b/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml index 15c86fa6d..a13869957 100644 --- a/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml @@ -688,4 +688,11 @@ update wx_merchant set cash_out_count = 0 where id = #{id} + + update wx_merchant set + entry_amount = ifnull(entry_amount,0)+#{entryAmount}, + cash_out_number = ifnull(cash_out_number,0)+#{cashOutNumber} + where id = #{id} + + diff --git a/mallinkTTCApi/src/main/java/com/iformall/schedule/TtOrderExpiringSchedule.java b/mallinkTTCApi/src/main/java/com/iformall/schedule/TtOrderExpiringSchedule.java index 10af093b0..a2a9214cf 100644 --- a/mallinkTTCApi/src/main/java/com/iformall/schedule/TtOrderExpiringSchedule.java +++ b/mallinkTTCApi/src/main/java/com/iformall/schedule/TtOrderExpiringSchedule.java @@ -1,15 +1,14 @@ package com.iformall.schedule; import com.iformall.domain.po.WxAppinfo; -import com.iformall.domain.po.WxMerchant; import com.iformall.domain.po.WxPayAccount; import com.iformall.domain.po.base.TenantEntity; import com.iformall.enums.*; -import com.iformall.mapper.*; import com.iformall.service.WxAppinfoService; import com.iformall.service.WxPayAccountService; import com.iformall.service.tt.TtOrderService; import com.iformall.utils.Constant; +import com.iformall.utils.DateUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -31,10 +30,8 @@ public class TtOrderExpiringSchedule { private WxPayAccountService payAccountService; @Autowired - TtOrderService ttOrderService; + private TtOrderService ttOrderService; - @Autowired - WxMerchantMapper wxMerchantMapper; private TenantEntity getTenantInfo() { TenantEntity tenantEntity = new TenantEntity() ; @@ -44,20 +41,20 @@ public class TtOrderExpiringSchedule { @Scheduled(cron = "0 */10 * * * *?") // 每10分钟检查一次 public void orderExpireSchedule() { - - WxAppinfo cAppInfo = wxAppinfoService.getCAppInfo(getTenantInfo(), EnumPayWay.PAY_WAY_TT); - if(cAppInfo == null){ - return; - } - WxPayAccount payAccout = payAccountService.getById(cAppInfo.getId()); - if(payAccout == null){ - return; - } - Date now = new Date(); Date expireDate = new Date(now.getTime() - Constant.PRESS_TIME_OUT ); List idList = ttOrderService.findExpireIdList(expireDate); if(idList != null && idList.size() > 0){ + + WxAppinfo cAppInfo = wxAppinfoService.getCAppInfo(getTenantInfo(), EnumPayWay.PAY_WAY_TT); + if(cAppInfo == null){ + return; + } + WxPayAccount payAccout = payAccountService.getById(cAppInfo.getId()); + if(payAccout == null){ + return; + } + for (Long orderId:idList) { try { ttOrderService.updateOrderStatus(orderId,cAppInfo,payAccout); @@ -72,7 +69,17 @@ public class TtOrderExpiringSchedule { @Scheduled(cron = "0 0 4 * * ?") //每天四点入账 public void orderRecordedSchedule() { - + Date dateZero = DateUtils.getDateZero(new Date()); + List idList = ttOrderService.findRecordedIdList(dateZero); + if(idList != null && idList.size() > 0){ + for (Long orderId:idList) { + try { + ttOrderService.recordedAmount(orderId); + } catch (Exception e) { + e.printStackTrace(); + } + } + } } } \ No newline at end of file From 5f8788bb65052201b6a740a9725690763dc2940b Mon Sep 17 00:00:00 2001 From: xhxu Date: Mon, 31 May 2021 10:12:59 +0800 Subject: [PATCH 37/48] tt --- .../src/main/java/com/iformall/domain/po/tt/TtCoupon.java | 3 +++ .../com/iformall/service/tt/impl/TtCouponServiceImpl.java | 1 + mallinkService/src/main/resources/mapper/TtCouponMapper.xml | 4 +++- 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/mallinkService/src/main/java/com/iformall/domain/po/tt/TtCoupon.java b/mallinkService/src/main/java/com/iformall/domain/po/tt/TtCoupon.java index e7d007ab7..40998e5ec 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/tt/TtCoupon.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/tt/TtCoupon.java @@ -59,6 +59,9 @@ public class TtCoupon extends TenantEntity { @io.swagger.annotations.ApiModelProperty(value="副标题",name="subTitle") private String subTitle; + @io.swagger.annotations.ApiModelProperty(value="type=1时,课时",name="countClass") + private Integer countClass; + @io.swagger.annotations.ApiModelProperty(value="",name="videoId") private String videoId; @io.swagger.annotations.ApiModelProperty(value="视频时长(秒)",name="videoTime") diff --git a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java index 1abf10710..65f50a7d6 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java @@ -112,6 +112,7 @@ public class TtCouponServiceImpl implements TtCouponService { TtCoupon couponD = new TtCoupon(); couponD.setColumnId(record.getId()); couponD.setType(EnumTtCouponType.COUPON_MORE.getCode()); + couponD.setCountClass(record.getColumnCoupons().size()); ttCouponMapper.delete(new QueryWrapper(couponD)); for (TtCoupon ttc:record.getColumnCoupons()) { if(ttc.getId() == null){ diff --git a/mallinkService/src/main/resources/mapper/TtCouponMapper.xml b/mallinkService/src/main/resources/mapper/TtCouponMapper.xml index e90d06d3e..d53af3b04 100644 --- a/mallinkService/src/main/resources/mapper/TtCouponMapper.xml +++ b/mallinkService/src/main/resources/mapper/TtCouponMapper.xml @@ -11,6 +11,8 @@ + + @@ -49,7 +51,7 @@ c.`id`, c.`tenant_id`, c.`parent_tenant_id`, c.`type`, c.`cover_img`, c.`cover_picture`, c.`detail_picture`, - c.`title`, c.`sub_title`, c.`video_id`, c.`video_time`,c.`video_url`, c.`html`, c.`is_landscape`, c.`is_payment`, + c.`title`, c.`sub_title`, c.`count_class`, c.`video_id`, c.`video_time`,c.`video_url`, c.`html`, c.`is_landscape`, c.`is_payment`, c.`sale_price`, c.`orig_price`, c.`is_preview`, c.`preview_duration`, c.`detail`, c.`false_sell_count`, c.`dy_title`, c.`inventory`, c.`remark`, c.`status`, c.`create_date`, c.`update_date`, c.`see_count`, c.`sell_count`, c.`assess_count`, c.`collect_count`, c.`mark`, c.`is_del`, From 34be43345470104f79c51fc8b76569813f745d48 Mon Sep 17 00:00:00 2001 From: xhxu Date: Mon, 31 May 2021 10:57:36 +0800 Subject: [PATCH 38/48] tt --- .../iformall/service/tt/TtOrderService.java | 2 +- .../service/tt/impl/TtOrderServiceImpl.java | 28 ++++++++++--------- .../controller/TtOrderController.java | 2 +- 3 files changed, 17 insertions(+), 15 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java b/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java index 9150bad5f..3e465d25b 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/TtOrderService.java @@ -27,7 +27,7 @@ public interface TtOrderService { PageInfo listAsPage(TtOrder record, Integer pageIndex, Integer pageSize); PageInfo listCAsPage(TtOrder order, Integer pageNum, Integer pageSize); - ResultData saveOrder(Long couponId, Long memberId, EnumPayWay payWay, TenantEntity tenantInfo); + ResultData saveOrder(Long couponId, Long memberId, EnumPayWay payWay); ResultData cancelOrder(Long orderId, Long memberId); diff --git a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java index 433905a7a..4a6cd966e 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtOrderServiceImpl.java @@ -80,9 +80,20 @@ public class TtOrderServiceImpl implements TtOrderService { } @Override - public ResultData saveOrder(Long couponId,Long cUserId,EnumPayWay payWay,TenantEntity tenantEntity) { + public ResultData saveOrder(Long couponId,Long cUserId,EnumPayWay payWay) { + TtCoupon coupon = ttcouponMapper.selectById(couponId); + if (null == coupon) { + return new ResultData(ErrorCode.TTCOUPON_IS_EMPTY); + } + if (!coupon.getStatus().equals(EnumTtCouponStatus.TTCOUPON_STATUS_SHELFING.getCode())) { + return new ResultData(ErrorCode.TTCOUPON_IS_TAKE_OFF); + } + if(coupon.getSalePrice() == null || coupon.getSalePrice().intValue() == 0){ + return new ResultData(ErrorCode.TTCOUPON_IS_TAKE_OFF); + } + logger.info("OrderSave: couponId:" + couponId + "---cUserId:"+cUserId); - TtCUser byId = ttCUserService.getById(cUserId, tenantEntity.getTenantId()); + TtCUser byId = ttCUserService.getById(cUserId, coupon.getTenantId()); // WxCUserBasicInfo wxCUserBasicInfo = wxCUserBasicInfoService.getById(cUserId,tenantEntity.getFinalTenantId()); // if(wxCUserBasicInfo == null){ if(byId == null){ @@ -105,16 +116,7 @@ public class TtOrderServiceImpl implements TtOrderService { // logger.info("会员权益被锁定:cUserId:" + cUserId); // return new ResultData(ErrorCode.MEMBER_IS_LOCKED); // } - TtCoupon coupon = ttcouponMapper.selectById(couponId); - if (null == coupon) { - return new ResultData(ErrorCode.TTCOUPON_IS_EMPTY); - } - if (!coupon.getStatus().equals(EnumTtCouponStatus.TTCOUPON_STATUS_SHELFING.getCode())) { - return new ResultData(ErrorCode.TTCOUPON_IS_TAKE_OFF); - } - if(coupon.getSalePrice() == null || coupon.getSalePrice().intValue() == 0){ - return new ResultData(ErrorCode.TTCOUPON_IS_TAKE_OFF); - } + try { // 4.2 保存订单 @@ -122,7 +124,7 @@ public class TtOrderServiceImpl implements TtOrderService { Date now = new Date(); TtOrder order = new TtOrder(); order.setId(idWorker.nextId()); - order.updateTenantInfo(tenantEntity); + order.updateTenantInfo(coupon); order.setCUserId(cUserId); order.setProductId(coupon.getId()); order.setProductTitle(coupon.getTitle()); diff --git a/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderController.java b/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderController.java index 1a1576e5d..36c0d008f 100644 --- a/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderController.java +++ b/mallinkTTCApi/src/main/java/com/iformall/controller/TtOrderController.java @@ -80,7 +80,7 @@ public class TtOrderController extends BaseController { } catch (MallinkException e) { return new ResultData(e.getErrorCode(), e.getMessage()); } - return ttOrderService.saveOrder(couponId,memberId,EnumPayWay.PAY_WAY_TT,getTenantInfo()); + return ttOrderService.saveOrder(couponId,memberId,EnumPayWay.PAY_WAY_TT); } From 73ff76f92963ecefe377512803925318ed249392 Mon Sep 17 00:00:00 2001 From: xhxu Date: Mon, 31 May 2021 10:58:50 +0800 Subject: [PATCH 39/48] tt --- .../main/java/com/iformall/controller/tt/TtOrderController.java | 1 + 1 file changed, 1 insertion(+) diff --git a/mallinkTTAdmin/src/main/java/com/iformall/controller/tt/TtOrderController.java b/mallinkTTAdmin/src/main/java/com/iformall/controller/tt/TtOrderController.java index 692e7c907..1551ff002 100644 --- a/mallinkTTAdmin/src/main/java/com/iformall/controller/tt/TtOrderController.java +++ b/mallinkTTAdmin/src/main/java/com/iformall/controller/tt/TtOrderController.java @@ -51,6 +51,7 @@ public class TtOrderController extends BaseController { if (order == null){ order = new TtOrder(); } + order.updateTenantInfo(getTenantInfo()); return new ResultData(ttOrderService.listAsPage(order, pageNum, pageSize)); } From 0f426857aff01809c9546b28bb7d6175f6a55fd5 Mon Sep 17 00:00:00 2001 From: xhxu Date: Mon, 31 May 2021 11:38:15 +0800 Subject: [PATCH 40/48] tt --- .../V202105290001__business_circle_.sql | 499 ++++++++++++++++++ .../V202105290002__business_circle_.sql | 499 ++++++++++++++++++ .../V202105290003__business_circle_.sql | 499 ++++++++++++++++++ .../domain/po/BusinessCircleBase.java | 3 + .../mapper/AliBusinessCircleOrderMapper.xml | 24 +- .../mapper/WxBusinessCircleOrderMapper.xml | 24 +- .../mapper/WxThirdPartyOrdersMapper.xml | 24 +- 7 files changed, 1554 insertions(+), 18 deletions(-) create mode 100644 mallinkAdmin/src/main/resources/db/migration/V202105290001__business_circle_.sql create mode 100644 mallinkAdmin/src/main/resources/db/migration/V202105290002__business_circle_.sql create mode 100644 mallinkAdmin/src/main/resources/db/migration/V202105290003__business_circle_.sql diff --git a/mallinkAdmin/src/main/resources/db/migration/V202105290001__business_circle_.sql b/mallinkAdmin/src/main/resources/db/migration/V202105290001__business_circle_.sql new file mode 100644 index 000000000..4fc7c4b10 --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V202105290001__business_circle_.sql @@ -0,0 +1,499 @@ +ALTER TABLE `ali_business_circle_order_0` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_1` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_2` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_3` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_4` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_5` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_6` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_7` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_8` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_9` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_10` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_11` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_12` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_13` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_14` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_15` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_16` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_17` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_18` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_19` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_20` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_21` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_22` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_23` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_24` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_25` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_26` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_27` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_28` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_29` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_30` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_31` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_32` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_33` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_34` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_35` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_36` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_37` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_38` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_39` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_40` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_41` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_42` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_43` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_44` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_45` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_46` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_47` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_48` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_49` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_50` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_51` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_52` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_53` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_54` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_55` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_56` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_57` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_58` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_59` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_60` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_61` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_62` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_63` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_64` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_65` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_66` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_67` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_68` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_69` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_70` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_71` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_72` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_73` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_74` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_75` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_76` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_77` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_78` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_79` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_80` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_81` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_82` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_83` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_84` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_85` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_86` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_87` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_88` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_89` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_90` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_91` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_92` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_93` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_94` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_95` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_96` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_97` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_98` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `ali_business_circle_order_99` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; diff --git a/mallinkAdmin/src/main/resources/db/migration/V202105290002__business_circle_.sql b/mallinkAdmin/src/main/resources/db/migration/V202105290002__business_circle_.sql new file mode 100644 index 000000000..c8e1d7f0f --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V202105290002__business_circle_.sql @@ -0,0 +1,499 @@ +ALTER TABLE `wx_business_circle_order_0` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_1` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_2` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_3` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_4` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_5` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_6` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_7` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_8` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_9` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_10` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_11` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_12` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_13` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_14` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_15` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_16` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_17` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_18` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_19` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_20` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_21` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_22` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_23` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_24` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_25` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_26` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_27` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_28` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_29` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_30` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_31` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_32` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_33` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_34` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_35` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_36` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_37` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_38` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_39` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_40` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_41` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_42` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_43` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_44` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_45` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_46` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_47` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_48` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_49` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_50` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_51` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_52` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_53` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_54` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_55` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_56` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_57` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_58` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_59` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_60` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_61` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_62` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_63` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_64` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_65` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_66` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_67` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_68` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_69` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_70` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_71` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_72` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_73` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_74` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_75` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_76` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_77` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_78` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_79` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_80` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_81` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_82` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_83` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_84` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_85` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_86` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_87` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_88` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_89` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_90` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_91` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_92` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_93` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_94` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_95` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_96` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_97` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_98` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_business_circle_order_99` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; diff --git a/mallinkAdmin/src/main/resources/db/migration/V202105290003__business_circle_.sql b/mallinkAdmin/src/main/resources/db/migration/V202105290003__business_circle_.sql new file mode 100644 index 000000000..9ca7b6239 --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V202105290003__business_circle_.sql @@ -0,0 +1,499 @@ +ALTER TABLE `wx_third_party_orders_0` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_1` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_2` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_3` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_4` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_5` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_6` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_7` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_8` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_9` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_10` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_11` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_12` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_13` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_14` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_15` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_16` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_17` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_18` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_19` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_20` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_21` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_22` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_23` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_24` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_25` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_26` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_27` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_28` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_29` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_30` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_31` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_32` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_33` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_34` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_35` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_36` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_37` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_38` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_39` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_40` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_41` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_42` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_43` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_44` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_45` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_46` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_47` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_48` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_49` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_50` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_51` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_52` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_53` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_54` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_55` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_56` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_57` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_58` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_59` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_60` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_61` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_62` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_63` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_64` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_65` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_66` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_67` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_68` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_69` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_70` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_71` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_72` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_73` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_74` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_75` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_76` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_77` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_78` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_79` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_80` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_81` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_82` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_83` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_84` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_85` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_86` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_87` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_88` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_89` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_90` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_91` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_92` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_93` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_94` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_95` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_96` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_97` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_98` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; + +ALTER TABLE `wx_third_party_orders_99` +ADD COLUMN `merchant_name` varchar(255) AFTER `merchant_id`, +ADD COLUMN `c_user_nick_name` varchar(255) AFTER `c_user_id`, +ADD COLUMN `c_user_phone` varchar(255) AFTER `c_user_nick_name`; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/BusinessCircleBase.java b/mallinkService/src/main/java/com/iformall/domain/po/BusinessCircleBase.java index 89f39aff2..57615d353 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/BusinessCircleBase.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/BusinessCircleBase.java @@ -65,9 +65,12 @@ public class BusinessCircleBase extends TenantEntity { @io.swagger.annotations.ApiModelProperty(value="门店Id,与第三方对齐",name="merchantId") private Long merchantId; + private String merchantName; @io.swagger.annotations.ApiModelProperty(value="c端会员id,与第三方对齐",name="cUserId") private Long cUserId; + private String cUserNickName; + private String cUserPhone; @io.swagger.annotations.ApiModelProperty(value="是否获得积分(1:是,0:否)",name="earnPoints") private Integer earnPoints; diff --git a/mallinkService/src/main/resources/mapper/AliBusinessCircleOrderMapper.xml b/mallinkService/src/main/resources/mapper/AliBusinessCircleOrderMapper.xml index 1505e6d43..0c1cb1307 100644 --- a/mallinkService/src/main/resources/mapper/AliBusinessCircleOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/AliBusinessCircleOrderMapper.xml @@ -25,7 +25,10 @@ + + + @@ -44,7 +47,8 @@ `id`, `tenant_id`, `parent_tenant_id`, `notice_id`, `notice_create_time`, `notice_event_type`, `summary`,`mall_id`, `mall_name`, `mall_store_id`, `buyer_id`, `time_end`, `amount`, `pay_amount`, `transaction_id`, `create_time`, `update_time`, - `merchant_id`, `c_user_id`, `earn_points`, `increased_points`, `points_update_time`, + `merchant_id`,`merchant_name`, `c_user_id`, `c_user_nick_name`, `c_user_phone`, + `earn_points`, `increased_points`, `points_update_time`, `is_refund`, `order_status`, `refund_id`, `refund_amount` @@ -88,10 +92,18 @@ and `merchant_id` = #{merchantId} - + + and `merchant_name` like concat('%', #{merchantName},'%') + and `c_user_id` = #{cUserId} + + and `c_user_nick_name` like concat('%', #{cUserNickName},'%') + + + and `c_user_phone` like concat('%', #{cUserPhone},'%') + and `earn_points` = #{earnPoints} @@ -164,12 +176,12 @@ INSERT INTO ali_business_circle_order ( `id`, `tenant_id`, `parent_tenant_id`, `notice_id`, `notice_create_time`, `notice_event_type`, `summary`, `mall_id`, `mall_name`, `mall_store_id`, `buyer_id`,`time_end`, `amount`, `pay_amount`, `transaction_id`, `create_time`, `update_time`, - `merchant_id`, `c_user_id`, `earn_points`, `is_refund` + `merchant_id`,`merchant_name`, `c_user_id`, `c_user_nick_name`, `c_user_phone`, `earn_points`, `is_refund` ) VALUES( #{id},#{tenantId},#{parentTenantId},#{noticeId},#{noticeCreateTime},#{noticeEventType}, #{summary},#{mallId},#{mallName},#{mallStoreId},#{buyerId},#{timeEnd},#{amount},#{payAmount},#{transactionId},#{createTime},#{updateTime}, - #{merchantId},#{cUserId},0,0 + #{merchantId},#{merchantName},#{cUserId},#{cUserNickName},#{cUserPhone},0,0 ); @@ -184,12 +196,12 @@ INSERT INTO ali_business_circle_order ( `id`, `tenant_id`, `parent_tenant_id`,`notice_id`, `notice_create_time`, `notice_event_type`, `summary`,`mall_id`, `mall_name`, `mall_store_id`, `buyer_id`, `time_end`, `amount`,`pay_amount`, `transaction_id`, `create_time`, `update_time`, - `merchant_id`, `c_user_id`, `earn_points`, `is_refund`, `refund_id`, `refund_amount` + `merchant_id`,`merchant_name`, `c_user_id`, `c_user_nick_name`, `c_user_phone`, `earn_points`, `is_refund`, `refund_id`, `refund_amount` ) VALUES( #{id},#{tenantId},#{parentTenantId},#{noticeId},#{noticeCreateTime},#{noticeEventType}, #{summary},#{mallId},#{mallName},#{mallStoreId},#{buyerId},#{timeEnd},#{amount},#{payAmount},#{transactionId},#{createTime},#{updateTime}, - #{merchantId},#{cUserId},0,1,#{refundId},#{refundAmount} + #{merchantId},#{merchantName},#{cUserId},#{cUserNickName},#{cUserPhone},0,1,#{refundId},#{refundAmount} ); diff --git a/mallinkService/src/main/resources/mapper/WxBusinessCircleOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxBusinessCircleOrderMapper.xml index 43df5356a..f185db146 100644 --- a/mallinkService/src/main/resources/mapper/WxBusinessCircleOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxBusinessCircleOrderMapper.xml @@ -25,7 +25,10 @@ + + + @@ -45,7 +48,8 @@ `id`, `tenant_id`, `parent_tenant_id`, `notice_id`, `notice_create_time`, `notice_event_type`, `summary`, `wx_mchid`, `wx_merchant_name`, `wx_shop_name`, `wx_shop_number`, `appid`, `openid`, `time_end`, `amount`, `pay_amount`, `transaction_id`, `commit_tag`, `create_time`, `update_time`, - `merchant_id`, `c_user_id`, `earn_points`, `increased_points`, `points_update_time`, `is_points_notify`, + `merchant_id`,`merchant_name`, `c_user_id`, `c_user_nick_name`, `c_user_phone`, + `earn_points`, `increased_points`, `points_update_time`, `is_points_notify`, `is_refund`, `order_status`, `refund_id`, `refund_amount` @@ -105,10 +109,18 @@ and `merchant_id` = #{merchantId} - + + and `merchant_name` like concat('%', #{merchantName},'%') + and `c_user_id` = #{cUserId} + + and `c_user_nick_name` like concat('%', #{cUserNickName},'%') + + + and `c_user_phone` like concat('%', #{cUserPhone},'%') + and `earn_points` = #{earnPoints} @@ -186,13 +198,13 @@ `id`, `tenant_id`, `parent_tenant_id`, `notice_id`, `notice_create_time`, `notice_event_type`, `summary`, `wx_mchid`, `wx_merchant_name`, `wx_shop_name`, `wx_shop_number`, `appid`, `openid`, `time_end`, `amount`, `pay_amount`, `transaction_id`, `commit_tag`, `create_time`, `update_time`, - `merchant_id`, `c_user_id`, `earn_points`, `is_points_notify`, `is_refund` + `merchant_id`,`merchant_name`, `c_user_id`, `c_user_nick_name`, `c_user_phone`, `earn_points`, `is_points_notify`, `is_refund` ) VALUES( #{id},#{tenantId},#{parentTenantId},#{noticeId},#{noticeCreateTime},#{noticeEventType}, #{summary},#{wxMchid},#{wxMerchantName},#{wxShopName},#{wxShopNumber}, #{appid},#{openid},#{timeEnd},#{amount},#{payAmount},#{transactionId},#{commitTag},#{createTime},#{updateTime}, - #{merchantId},#{cUserId},0,0,0 + #{merchantId},#{merchantName},#{cUserId},#{cUserNickName},#{cUserPhone},0,0,0 ); @@ -215,13 +227,13 @@ `id`, `tenant_id`, `parent_tenant_id`, `notice_id`, `notice_create_time`, `notice_event_type`, `summary`, `wx_mchid`, `wx_merchant_name`, `wx_shop_name`, `wx_shop_number`, `appid`, `openid`, `time_end`, `amount`,`pay_amount`, `transaction_id`, `commit_tag`, `create_time`, `update_time`, - `merchant_id`, `c_user_id`, `earn_points`, `is_refund`, `refund_id`, `refund_amount` + `merchant_id`,`merchant_name`, `c_user_id`, `c_user_nick_name`, `c_user_phone`, `earn_points`, `is_refund`, `refund_id`, `refund_amount` ) VALUES( #{id},#{tenantId},#{parentTenantId},#{noticeId},#{noticeCreateTime},#{noticeEventType}, #{summary},#{wxMchid},#{wxMerchantName},#{wxShopName},#{wxShopNumber}, #{appid},#{openid},#{timeEnd},#{amount},#{payAmount},#{transactionId},#{commitTag},#{createTime},#{updateTime}, - #{merchantId},#{cUserId},0,1,#{refundId},#{refundAmount} + #{merchantId},#{merchantName},#{cUserId},#{cUserNickName},#{cUserPhone},0,1,#{refundId},#{refundAmount} ); diff --git a/mallinkService/src/main/resources/mapper/WxThirdPartyOrdersMapper.xml b/mallinkService/src/main/resources/mapper/WxThirdPartyOrdersMapper.xml index e28821a96..9e3780f4c 100644 --- a/mallinkService/src/main/resources/mapper/WxThirdPartyOrdersMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxThirdPartyOrdersMapper.xml @@ -29,7 +29,10 @@ + + + @@ -48,7 +51,8 @@ `id`, `tenant_id`, `parent_tenant_id`, `source_app_id`, `source_type`,`notice_id`, `notice_create_time`, `notice_event_type`, `summary`,`shop_name`, `shop_number`, `user_phone`, `user_number`, `time_end`, `amount`, `pay_amount`, `transaction_id`, `create_time`, `update_time`, - `merchant_id`, `c_user_id`, `earn_points`, `increased_points`, `points_update_time`, + `merchant_id`,`merchant_name`, `c_user_id`, `c_user_nick_name`, `c_user_phone`, + `earn_points`, `increased_points`, `points_update_time`, `is_refund`, `order_status`, `refund_id`, `refund_amount` @@ -108,10 +112,18 @@ and `merchant_id` = #{merchantId} - + + and `merchant_name` like concat('%', #{merchantName},'%') + and `c_user_id` = #{cUserId} + + and `c_user_nick_name` like concat('%', #{cUserNickName},'%') + + + and `c_user_phone` like concat('%', #{cUserPhone},'%') + and `earn_points` = #{earnPoints} @@ -187,12 +199,12 @@ INSERT INTO wx_third_party_orders ( `id`, `tenant_id`, `parent_tenant_id`,`source_app_id`, `source_type`, `notice_id`, `notice_create_time`, `notice_event_type`, `summary`, `shop_name`, `shop_number`, `user_phone`, `user_number`,`time_end`, `amount`, `pay_amount`, `transaction_id`, `create_time`, `update_time`, - `merchant_id`, `c_user_id`, `earn_points`, `is_refund` + `merchant_id`,`merchant_name`, `c_user_id`, `c_user_nick_name`, `c_user_phone`, `earn_points`, `is_refund` ) VALUES( #{id},#{tenantId},#{parentTenantId},#{sourceAppId},#{sourceType},#{noticeId},#{noticeCreateTime},#{noticeEventType}, #{summary},#{shopName},#{shopNumber},#{userPhone},#{userNumber},#{timeEnd},#{amount},#{payAmount},#{transactionId},#{createTime},#{updateTime}, - #{merchantId},#{cUserId},0,0 + #{merchantId},#{merchantName},#{cUserId},#{cUserNickName},#{cUserPhone},0,0 ); @@ -207,12 +219,12 @@ INSERT INTO wx_third_party_orders ( `id`, `tenant_id`, `parent_tenant_id`,`source_app_id`, `source_type`, `notice_id`, `notice_create_time`, `notice_event_type`, `summary`,`shop_name`, `shop_number`, `user_phone`, `user_number`, `time_end`, `amount`,`pay_amount`, `transaction_id`, `create_time`, `update_time`, - `merchant_id`, `c_user_id`, `earn_points`, `is_refund`, `refund_id`, `refund_amount` + `merchant_id`,`merchant_name`, `c_user_id`, `c_user_nick_name`, `c_user_phone`, `earn_points`, `is_refund`, `refund_id`, `refund_amount` ) VALUES( #{id},#{tenantId},#{parentTenantId},#{sourceAppId},#{sourceType},#{noticeId},#{noticeCreateTime},#{noticeEventType}, #{summary},#{shopName},#{shopNumber},#{userPhone},#{userNumber},#{timeEnd},#{amount},#{payAmount},#{transactionId},#{createTime},#{updateTime}, - #{merchantId},#{cUserId},0,1,#{refundId},#{refundAmount} + #{merchantId},#{merchantName},#{cUserId},#{cUserNickName},#{cUserPhone},0,1,#{refundId},#{refundAmount} ); From 05bbf210fcf7c4000b478c81437e4594f2f4ab13 Mon Sep 17 00:00:00 2001 From: xhxu Date: Mon, 31 May 2021 12:40:17 +0800 Subject: [PATCH 41/48] tt --- .../AliBusinessCircleOrderServiceImpl.java | 6 ++++++ .../WxBusinessCircleOrderServiceImpl.java | 6 ++++++ .../impl/WxThirdPartyOrdersServiceImpl.java | 19 +++++++++++++++---- 3 files changed, 27 insertions(+), 4 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/impl/AliBusinessCircleOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/AliBusinessCircleOrderServiceImpl.java index 833ee0dab..86367d84e 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/AliBusinessCircleOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/AliBusinessCircleOrderServiceImpl.java @@ -110,6 +110,7 @@ public class AliBusinessCircleOrderServiceImpl implements AliBusinessCircleOrder // logger.error("--Ali商圈付款通知消息未找到门店--mallStoreId="+record.getMallStoreId()); // } record.setMerchantId(wxMerchant.getId()); + record.setMerchantName(wxMerchant.getName()); AliPayCUser userQ = new AliPayCUser(); userQ.updateTenantInfo(record); @@ -120,6 +121,8 @@ public class AliBusinessCircleOrderServiceImpl implements AliBusinessCircleOrder WxCUserBasicInfo infoByPhone = wxCUserBasicInfoService.registerByPhone(aliUser, aliUser.getPhone(),aliUser.getName(),null,null); if(infoByPhone != null ){ record.setCUserId(infoByPhone.getId()); + record.setCUserNickName(infoByPhone.getNickName()); + record.setCUserPhone(infoByPhone.getPhone()); }else{ logger.error("--Ali商圈付款通知消息未找到会员--aliUserId="+record.getBuyerId()); } @@ -223,7 +226,10 @@ public class AliBusinessCircleOrderServiceImpl implements AliBusinessCircleOrder record.setAmount(order.getAmount()); record.setPayAmount(order.getPayAmount()); record.setCUserId(order.getCUserId()); + record.setCUserNickName(order.getCUserNickName()); + record.setCUserPhone(order.getCUserPhone()); record.setMerchantId(order.getMerchantId()); + record.setMerchantName(order.getMerchantName()); aliBusinessCircleOrderMapper.insertRefundNoticeOrder(record); order.setOrderStatus(2);//全额退款 订单关闭 diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessCircleOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessCircleOrderServiceImpl.java index 1281091ee..ceec43d40 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessCircleOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessCircleOrderServiceImpl.java @@ -106,6 +106,7 @@ public class WxBusinessCircleOrderServiceImpl implements WxBusinessCircleOrderSe WxMerchant wxMerchant = wxMerchantService.getMerchantByEncode(record.getWxShopNumber()); if (wxMerchant != null) { record.setMerchantId(wxMerchant.getId()); + record.setMerchantName(wxMerchant.getName()); } else { logger.error("--wx商圈付款通知消息未找到门店--shopName=" + record.getWxShopName() + "&shopNumber=" + record.getWxShopNumber()); } @@ -116,6 +117,8 @@ public class WxBusinessCircleOrderServiceImpl implements WxBusinessCircleOrderSe WxCUser user = wxCUserService.getByOpenId(userQ); if (user != null && user.getUserId() != null) { record.setCUserId(user.getUserId()); + record.setCUserNickName(user.getNickName()); + record.setCUserPhone(user.getPhone()); } else { logger.error("--Wx商圈付款通知消息未找到会员--openid=" + record.getOpenid()); } @@ -209,7 +212,10 @@ public class WxBusinessCircleOrderServiceImpl implements WxBusinessCircleOrderSe record.setUpdateTime(now); record.setCUserId(order.getCUserId()); + record.setCUserNickName(order.getCUserNickName()); + record.setCUserPhone(order.getCUserPhone()); record.setMerchantId(order.getMerchantId()); + record.setMerchantName(order.getMerchantName()); wxBusinessCircleOrderMapper.insertRefundNoticeOrder(record); if((refundAmount + record.getRefundAmount()) == amount){ diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxThirdPartyOrdersServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxThirdPartyOrdersServiceImpl.java index 6a97822af..4b784770d 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxThirdPartyOrdersServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxThirdPartyOrdersServiceImpl.java @@ -117,10 +117,12 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService WxMerchant wxMerchant = wxMerchantService.getMerchantByEncode(record.getShopNumber()); if(wxMerchant != null){ record.setMerchantId(wxMerchant.getId()); - record.setShopName(wxMerchant.getName()); + record.setMerchantName(wxMerchant.getName()); +// record.setShopName(wxMerchant.getName()); }else{ if(StringUtils.isBlank(record.getShopName())){ - record.setShopName("第三方门店"); +// record.setShopName("第三方门店"); + record.setMerchantName("未知门店"); } logger.info("--第三方付款通知消息未找到门店--shopName="+record.getShopName()+"&shopNumber="+record.getShopNumber()); } @@ -139,6 +141,8 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService if(basicInfo != null){ record.setCUserId(basicInfo.getId()); + record.setCUserNickName(basicInfo.getNickName()); + record.setCUserPhone(basicInfo.getPhone()); }else{ logger.error("--第三方付款通知消息未找到会员--userPhone="+record.getUserPhone()+"$userNumer="+record.getId()); } @@ -257,7 +261,10 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService record.setAmount(order.getAmount()); record.setPayAmount(order.getPayAmount()); record.setCUserId(order.getCUserId()); + record.setCUserNickName(order.getCUserNickName()); + record.setCUserPhone(order.getCUserPhone()); record.setMerchantId(order.getMerchantId()); + record.setMerchantName(order.getMerchantName()); wxThirdPartyOrdersMapper.insertRefundNoticeOrder(record); if((refundAmount + record.getRefundAmount()) == amount){ @@ -347,6 +354,8 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService } record.setCUserId(basicInfo.getId()); + record.setCUserNickName(basicInfo.getNickName()); + record.setCUserPhone(basicInfo.getPhone()); String lockKey = StringUtils.join(THIRD_CIRCLE_KEY,record.getTransactionId(), ":CP:", "lock"); long time = System.currentTimeMillis() + 2000; @@ -371,10 +380,12 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService WxMerchant wxMerchant = wxMerchantService.getMerchantByEncode(record.getShopNumber()); if(wxMerchant != null){ record.setMerchantId(wxMerchant.getId()); - record.setShopName(wxMerchant.getName()); + record.setMerchantName(wxMerchant.getName()); +// record.setShopName(wxMerchant.getName()); }else{ if(StringUtils.isBlank(record.getShopName())){ - record.setShopName("第三方门店"); +// record.setShopName("第三方门店"); + record.setMerchantName("未知门店"); } logger.info("--第三方积分抵扣未找到门店--shopName="+record.getShopName()+"&shopNumber="+record.getShopNumber()); } From f6ef06d77014504e76ffb5513cbebfcd913d5e4b Mon Sep 17 00:00:00 2001 From: xhxu Date: Mon, 31 May 2021 13:11:21 +0800 Subject: [PATCH 42/48] tt --- .../V202105290004__businessPermission.sql | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 mallinkAdmin/src/main/resources/db/migration/V202105290004__businessPermission.sql diff --git a/mallinkAdmin/src/main/resources/db/migration/V202105290004__businessPermission.sql b/mallinkAdmin/src/main/resources/db/migration/V202105290004__businessPermission.sql new file mode 100644 index 000000000..fab606add --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V202105290004__businessPermission.sql @@ -0,0 +1,20 @@ +--加商圈交易菜单 +INSERT INTO `mall_permission`(`id`, `name`, `parent_id`, `available`, `permission`, `resource_type`, `module_color`, `module_color_num`, `url`, `icon`, `version_type`, `sort`) VALUES (420, 'ALI商圈交易', 416, 'Y', NULL, 1, NULL, NULL, 'aliCircle', NULL, 0, 420); +INSERT INTO `mall_permission`(`id`, `name`, `parent_id`, `available`, `permission`, `resource_type`, `module_color`, `module_color_num`, `url`, `icon`, `version_type`, `sort`) VALUES (421, 'WX商圈交易', 416, 'Y', NULL, 1, NULL, NULL, 'wxCircle', NULL, 0, 421); +INSERT INTO `mall_permission`(`id`, `name`, `parent_id`, `available`, `permission`, `resource_type`, `module_color`, `module_color_num`, `url`, `icon`, `version_type`, `sort`) VALUES (422, '麟客交易', 416, 'Y', NULL, 1, NULL, NULL, 'lkCircle', NULL, 0, 422); + +--销售类型加权限 +update mall_sale_type set menus = '[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 50, 101, 102, 103, 104, 105, 106, 107, 108, 201, 202, 203, 204, 205, 206, 209, 211, 212, 221, 222, 251, 299, 300, 301, 302, 303, 304, 305, 306, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 420, 421, 422, 501, 502, 503, 504, 505, 506, 507, 508, 509, 511, 512, 513, 514, 521, 522, 523, 531, 532, 533, 591, 592, 595, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 621, 622, 623, 624, 625, 626, 627, 641, 642, 643, 644, 645, 646, 651, 661, 662, 663, 664, 671, 672, 673, 674, 675, 681, 682, 683, 684, 685, 686, 691, 692, 693, 694, 695, 701, 702, 703, 704, 711, 712, 713, 901, 902, 903, 904, 905, 931, 932, 951, 952, 961, 962, 963, 965, 966, 967, 968, 1001, 1002, 1003, 1004, 60701, 60702]' where id=1; + + + + +INSERT INTO `wx_template_msg`(`id`, `tenant_id`, `parent_tenant_id`, `template_id`, `type`, `custom_param`, `create_date`, `update_date`) +select CEILING(RAND()*90000000000+10000000000) ,tenant_id,parent_tenant_id,'',6,'{\"index\": [\"character_string1\", \"character_string2\", \"time4\", \"thing3\"], \"emphasis\": \"\"}',now(),now() +from wx_mall +where id != 1 and id != 10011 and id != 10071 and id != 10141 ; + + +INSERT INTO `wx_template_msg`(`id`, `tenant_id`, `parent_tenant_id`, `template_id`, `type`, `custom_param`, `create_date`, `update_date`, `on_off`) VALUES (CEILING(RAND()*90000000000+10000000000), '1001', NULL, '', 6, '{\"index\": [\"character_string1\", \"character_string2\", \"time4\", \"thing3\"], \"emphasis\": \"\"}', '2021-05-31 13:09:16', '2021-05-31 13:09:16', 0); +INSERT INTO `wx_template_msg`(`id`, `tenant_id`, `parent_tenant_id`, `template_id`, `type`, `custom_param`, `create_date`, `update_date`, `on_off`) VALUES (CEILING(RAND()*90000000000+10000000000), '1007', NULL, '', 6, '{\"index\": [\"character_string1\", \"character_string2\", \"time4\", \"thing3\"], \"emphasis\": \"\"}', '2021-05-31 13:09:16', '2021-05-31 13:09:16', 0); +INSERT INTO `wx_template_msg`(`id`, `tenant_id`, `parent_tenant_id`, `template_id`, `type`, `custom_param`, `create_date`, `update_date`, `on_off`) VALUES (CEILING(RAND()*90000000000+10000000000), '1014', NULL, '', 6, '{\"index\": [\"character_string1\", \"character_string2\", \"time4\", \"thing3\"], \"emphasis\": \"\"}', '2021-05-31 13:09:16', '2021-05-31 13:09:16', 0); From 0ee2d538f75f8b0c8dfc5f1eda28392d01f19b1c Mon Sep 17 00:00:00 2001 From: xhxu Date: Mon, 31 May 2021 13:38:31 +0800 Subject: [PATCH 43/48] tt --- .../AliBusinessCircleOrderController.java | 74 +++++++++++++++++++ .../WxBusinessCircleOrderController.java | 27 ++++++- .../market/WxThirdPartyOrdersController.java | 74 +++++++++++++++++++ .../domain/po/BusinessCircleBase.java | 4 + .../AliBusinessCircleOrderService.java | 2 + .../service/WxBusinessCircleOrderService.java | 3 +- .../service/WxThirdPartyOrdersService.java | 3 + .../AliBusinessCircleOrderServiceImpl.java | 17 ++++- .../WxBusinessCircleOrderServiceImpl.java | 19 +++++ .../impl/WxThirdPartyOrdersServiceImpl.java | 16 ++++ 10 files changed, 236 insertions(+), 3 deletions(-) create mode 100644 mallinkAdmin/src/main/java/com/iformall/controller/market/AliBusinessCircleOrderController.java create mode 100644 mallinkAdmin/src/main/java/com/iformall/controller/market/WxThirdPartyOrdersController.java diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/AliBusinessCircleOrderController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/AliBusinessCircleOrderController.java new file mode 100644 index 000000000..e09564e3e --- /dev/null +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/AliBusinessCircleOrderController.java @@ -0,0 +1,74 @@ +package com.iformall.controller.market; + +import com.github.pagehelper.PageInfo; +import com.iformall.annotation.SystemControllerLog; +import com.iformall.common.ErrorCode; +import com.iformall.common.ResultData; +import com.iformall.controller.base.BaseController; +import com.iformall.domain.po.AliBusinessCircleOrder; +import com.iformall.domain.po.base.BaseEntity; +import com.iformall.service.AliBusinessCircleOrderService; +import com.iformall.utils.Constant; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("aliCircle") +@Api(description = "订单相关接口") +public class AliBusinessCircleOrderController extends BaseController { + private final Logger logger = LoggerFactory.getLogger(this.getClass()); + + @Autowired + private AliBusinessCircleOrderService aliBusinessCircleOrderService; + + @ApiOperation("分页列表接口") + @GetMapping("list") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true), + }) + @SystemControllerLog(description = "-列表") + public ResultData list(@ModelAttribute AliBusinessCircleOrder circleOrder, Integer pageNum, Integer pageSize) { + logger.debug("[" + getIpAddr() + "] WxOrderController::list"); + if (null == circleOrder) { + circleOrder = new AliBusinessCircleOrder(); + } + circleOrder.updateTenantInfo(getTenantInfo()); + circleOrder.setSortColumns(BaseEntity.SortField.CreateDate_DESC,BaseEntity.SortField.Id_DESC); + final PageInfo page = aliBusinessCircleOrderService.listAsPage(circleOrder, pageNum, pageSize); + return new ResultData(page); + } + + @ApiOperation("详情接口") + @GetMapping("detail") + @ApiImplicitParams({ + @ApiImplicitParam(name = "orderId", value = "订单id", dataType = "String", paramType = "query", required = true) + }) + public ResultData detail(String orderId) { + if (StringUtils.isBlank(orderId) || orderId.equalsIgnoreCase(Constant.UNDEFINED)) { + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); + } + Long id; + try { + id = Long.valueOf(orderId); + } catch (NumberFormatException e) { + logger.error(e.getMessage()); + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL, "orderId: " + orderId + ", e: " + e.getMessage()); + } + + AliBusinessCircleOrder order = aliBusinessCircleOrderService.detail(id,getTenantInfo()); + return new ResultData(order); + } + + +} diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxBusinessCircleOrderController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxBusinessCircleOrderController.java index 80330d8c2..aa4574bd7 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxBusinessCircleOrderController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxBusinessCircleOrderController.java @@ -2,22 +2,26 @@ package com.iformall.controller.market; import com.github.pagehelper.PageInfo; import com.iformall.annotation.SystemControllerLog; +import com.iformall.common.ErrorCode; import com.iformall.common.ResultData; import com.iformall.controller.base.BaseController; import com.iformall.domain.po.*; import com.iformall.domain.po.base.BaseEntity; +import com.iformall.domain.po.tt.TtOrder; import com.iformall.service.*; +import com.iformall.utils.Constant; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @RestController -@RequestMapping("businessCircle") +@RequestMapping("wxCircle") @Api(description = "订单相关接口") public class WxBusinessCircleOrderController extends BaseController { private final Logger logger = LoggerFactory.getLogger(this.getClass()); @@ -43,5 +47,26 @@ public class WxBusinessCircleOrderController extends BaseController { return new ResultData(page); } + @ApiOperation("详情接口") + @GetMapping("detail") + @ApiImplicitParams({ + @ApiImplicitParam(name = "orderId", value = "订单id", dataType = "String", paramType = "query", required = true) + }) + public ResultData detail(String orderId) { + if (StringUtils.isBlank(orderId) || orderId.equalsIgnoreCase(Constant.UNDEFINED)) { + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); + } + Long id; + try { + id = Long.valueOf(orderId); + } catch (NumberFormatException e) { + logger.error(e.getMessage()); + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL, "orderId: " + orderId + ", e: " + e.getMessage()); + } + + WxBusinessCircleOrder order = wxBusinessCircleOrderService.detail(id,getTenantInfo()); + return new ResultData(order); + } + } diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxThirdPartyOrdersController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxThirdPartyOrdersController.java new file mode 100644 index 000000000..ebf31b2c4 --- /dev/null +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxThirdPartyOrdersController.java @@ -0,0 +1,74 @@ +package com.iformall.controller.market; + +import com.github.pagehelper.PageInfo; +import com.iformall.annotation.SystemControllerLog; +import com.iformall.common.ErrorCode; +import com.iformall.common.ResultData; +import com.iformall.controller.base.BaseController; +import com.iformall.domain.po.WxThirdPartyOrders; +import com.iformall.domain.po.base.BaseEntity; +import com.iformall.service.WxThirdPartyOrdersService; +import com.iformall.utils.Constant; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("thirdCircle") +@Api(description = "订单相关接口") +public class WxThirdPartyOrdersController extends BaseController { + private final Logger logger = LoggerFactory.getLogger(this.getClass()); + + @Autowired + private WxThirdPartyOrdersService wxThirdPartyOrdersOrderService; + + @ApiOperation("分页列表接口") + @GetMapping("list") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true), + }) + @SystemControllerLog(description = "-列表") + public ResultData list(@ModelAttribute WxThirdPartyOrders circleOrder, Integer pageNum, Integer pageSize) { + logger.debug("[" + getIpAddr() + "] WxOrderController::list"); + if (null == circleOrder) { + circleOrder = new WxThirdPartyOrders(); + } + circleOrder.updateTenantInfo(getTenantInfo()); + circleOrder.setSortColumns(BaseEntity.SortField.CreateDate_DESC,BaseEntity.SortField.Id_DESC); + final PageInfo page = wxThirdPartyOrdersOrderService.listAsPage(circleOrder, pageNum, pageSize); + return new ResultData(page); + } + + @ApiOperation("详情接口") + @GetMapping("detail") + @ApiImplicitParams({ + @ApiImplicitParam(name = "orderId", value = "订单id", dataType = "String", paramType = "query", required = true) + }) + public ResultData detail(String orderId) { + if (StringUtils.isBlank(orderId) || orderId.equalsIgnoreCase(Constant.UNDEFINED)) { + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); + } + Long id; + try { + id = Long.valueOf(orderId); + } catch (NumberFormatException e) { + logger.error(e.getMessage()); + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL, "orderId: " + orderId + ", e: " + e.getMessage()); + } + + WxThirdPartyOrders order = wxThirdPartyOrdersOrderService.detail(id,getTenantInfo()); + return new ResultData(order); + } + + +} diff --git a/mallinkService/src/main/java/com/iformall/domain/po/BusinessCircleBase.java b/mallinkService/src/main/java/com/iformall/domain/po/BusinessCircleBase.java index 57615d353..4471abafc 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/BusinessCircleBase.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/BusinessCircleBase.java @@ -66,11 +66,15 @@ public class BusinessCircleBase extends TenantEntity { @io.swagger.annotations.ApiModelProperty(value="门店Id,与第三方对齐",name="merchantId") private Long merchantId; private String merchantName; + @TableField(exist = false) + private WxMerchant merchant; @io.swagger.annotations.ApiModelProperty(value="c端会员id,与第三方对齐",name="cUserId") private Long cUserId; private String cUserNickName; private String cUserPhone; + @TableField(exist = false) + private WxCUserBasicInfo basicInfo; @io.swagger.annotations.ApiModelProperty(value="是否获得积分(1:是,0:否)",name="earnPoints") private Integer earnPoints; diff --git a/mallinkService/src/main/java/com/iformall/service/AliBusinessCircleOrderService.java b/mallinkService/src/main/java/com/iformall/service/AliBusinessCircleOrderService.java index 5e6838a5f..6138db7f4 100644 --- a/mallinkService/src/main/java/com/iformall/service/AliBusinessCircleOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/AliBusinessCircleOrderService.java @@ -3,6 +3,7 @@ package com.iformall.service; import com.github.pagehelper.PageInfo; import com.iformall.domain.po.AliBusinessCircleOrder; import com.iformall.domain.po.WxMerchant; +import com.iformall.domain.po.base.TenantEntity; import java.util.List; @@ -25,6 +26,7 @@ public interface AliBusinessCircleOrderService { * @return */ AliBusinessCircleOrder getById(Long id, String tenantId); + AliBusinessCircleOrder detail(Long id, TenantEntity tenantInfo); /** * transactionId+tenantId diff --git a/mallinkService/src/main/java/com/iformall/service/WxBusinessCircleOrderService.java b/mallinkService/src/main/java/com/iformall/service/WxBusinessCircleOrderService.java index 5deb4972d..c0d563231 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxBusinessCircleOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxBusinessCircleOrderService.java @@ -2,6 +2,7 @@ package com.iformall.service; import com.github.pagehelper.PageInfo; import com.iformall.domain.po.WxBusinessCircleOrder; +import com.iformall.domain.po.base.TenantEntity; import java.util.List; @@ -24,6 +25,7 @@ public interface WxBusinessCircleOrderService { * @return */ WxBusinessCircleOrder getById(Long id, String tenantId); + WxBusinessCircleOrder detail(Long id, TenantEntity tenantInfo); /** * transactionId+tenantId @@ -49,5 +51,4 @@ public interface WxBusinessCircleOrderService { */ void updateIsPointsNotify(WxBusinessCircleOrder record); - } diff --git a/mallinkService/src/main/java/com/iformall/service/WxThirdPartyOrdersService.java b/mallinkService/src/main/java/com/iformall/service/WxThirdPartyOrdersService.java index ed6771231..e16207b9e 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxThirdPartyOrdersService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxThirdPartyOrdersService.java @@ -2,6 +2,7 @@ package com.iformall.service; import com.github.pagehelper.PageInfo; import com.iformall.domain.po.WxThirdPartyOrders; +import com.iformall.domain.po.base.TenantEntity; import com.iformall.enums.EnumThirdOrderType; import java.util.List; @@ -25,6 +26,7 @@ public interface WxThirdPartyOrdersService { * @return */ WxThirdPartyOrders getById(Long id, String tenantId); + WxThirdPartyOrders detail(Long id, TenantEntity tenantInfo); /** * transactionId+tenantId @@ -51,4 +53,5 @@ public interface WxThirdPartyOrdersService { * @param record */ void pointDeduction(WxThirdPartyOrders record); + } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/AliBusinessCircleOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/AliBusinessCircleOrderServiceImpl.java index 86367d84e..0fa2e215c 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/AliBusinessCircleOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/AliBusinessCircleOrderServiceImpl.java @@ -4,6 +4,7 @@ import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.iformall.common.IdWorker; import com.iformall.domain.po.*; +import com.iformall.domain.po.base.TenantEntity; import com.iformall.enums.*; import com.iformall.mapper.AliBusinessCircleOrderMapper; import com.iformall.service.*; @@ -16,7 +17,6 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import java.math.BigDecimal; import java.util.Date; import java.util.List; @@ -59,6 +59,21 @@ public class AliBusinessCircleOrderServiceImpl implements AliBusinessCircleOrder return aliBusinessCircleOrderMapper.getById(recordQ); } + @Override + public AliBusinessCircleOrder detail(Long id, TenantEntity tenantInfo) { + AliBusinessCircleOrder order = this.getById(id, tenantInfo.getTenantId()); + if(order.getMerchantId() != null){ + order.setMerchant(wxMerchantService.selectById(order.getMerchantId())); + } + if(order.getCUserId() != null){ + order.setBasicInfo(wxCUserBasicInfoService.getById(id,tenantInfo.getFinalTenantId())); + } +// if(order.getIsRefund() != null && order.getIsRefund().equals(EnumYesOrNo.YES.getCode())){ +// +// } + return order; + } + @Override public AliBusinessCircleOrder getOrderByTransactionId(String transactionId, String tenantId) { AliBusinessCircleOrder recordQ = new AliBusinessCircleOrder(); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessCircleOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessCircleOrderServiceImpl.java index ceec43d40..ea2b8f299 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessCircleOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessCircleOrderServiceImpl.java @@ -4,6 +4,7 @@ import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.iformall.common.IdWorker; import com.iformall.domain.po.*; +import com.iformall.domain.po.base.TenantEntity; import com.iformall.enums.*; import com.iformall.mapper.WxBusinessCircleOrderMapper; import com.iformall.service.*; @@ -39,6 +40,9 @@ public class WxBusinessCircleOrderServiceImpl implements WxBusinessCircleOrderSe @Autowired WxCUserService wxCUserService; + @Autowired + WxCUserBasicInfoService wxCUserBasicInfoService; + @Autowired WxCreditHistoryService creditHistoryService; @@ -59,6 +63,21 @@ public class WxBusinessCircleOrderServiceImpl implements WxBusinessCircleOrderSe return wxBusinessCircleOrderMapper.getById(recordQ); } + @Override + public WxBusinessCircleOrder detail(Long id, TenantEntity tenantInfo) { + WxBusinessCircleOrder order = this.getById(id, tenantInfo.getTenantId()); + if(order.getMerchantId() != null){ + order.setMerchant(wxMerchantService.selectById(order.getMerchantId())); + } + if(order.getCUserId() != null){ + order.setBasicInfo(wxCUserBasicInfoService.getById(id,tenantInfo.getFinalTenantId())); + } +// if(order.getIsRefund() != null && order.getIsRefund().equals(EnumYesOrNo.YES.getCode())){ +// +// } + return order; + } + @Override public WxBusinessCircleOrder getOrderByTransactionId(String transactionId, String tenantId) { WxBusinessCircleOrder recordQ = new WxBusinessCircleOrder(); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxThirdPartyOrdersServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxThirdPartyOrdersServiceImpl.java index 4b784770d..a5e97812d 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxThirdPartyOrdersServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxThirdPartyOrdersServiceImpl.java @@ -5,6 +5,7 @@ import com.github.pagehelper.PageInfo; import com.iformall.common.ErrorCode; import com.iformall.common.IdWorker; import com.iformall.domain.po.*; +import com.iformall.domain.po.base.TenantEntity; import com.iformall.enums.*; import com.iformall.exception.MallinkException; import com.iformall.mapper.WxThirdPartyOrdersMapper; @@ -64,6 +65,21 @@ public class WxThirdPartyOrdersServiceImpl implements WxThirdPartyOrdersService return wxThirdPartyOrdersMapper.getById(recordQ); } + @Override + public WxThirdPartyOrders detail(Long id, TenantEntity tenantInfo) { + WxThirdPartyOrders order = this.getById(id, tenantInfo.getTenantId()); + if(order.getMerchantId() != null){ + order.setMerchant(wxMerchantService.selectById(order.getMerchantId())); + } + if(order.getCUserId() != null){ + order.setBasicInfo(wxCUserBasicInfoService.getById(id,tenantInfo.getFinalTenantId())); + } +// if(order.getIsRefund() != null && order.getIsRefund().equals(EnumYesOrNo.YES.getCode())){ +// +// } + return order; + } + @Override public WxThirdPartyOrders getOrderByTransactionId(EnumThirdOrderType orderType, String transactionId, String tenantId) { WxThirdPartyOrders recordQ = new WxThirdPartyOrders(); From 61c526b1ddc105b450307f4c0f98477dc0d80b67 Mon Sep 17 00:00:00 2001 From: xhxu Date: Mon, 31 May 2021 14:40:30 +0800 Subject: [PATCH 44/48] tt --- .../db/migration/V202105290004__businessPermission.sql | 8 ++++---- .../main/java/com/iformall/enums/EnumTemplateType.java | 6 +++++- .../src/main/resources/mapper/WxTemplateMsgMapper.xml | 2 +- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/mallinkAdmin/src/main/resources/db/migration/V202105290004__businessPermission.sql b/mallinkAdmin/src/main/resources/db/migration/V202105290004__businessPermission.sql index fab606add..8a3ca5c10 100644 --- a/mallinkAdmin/src/main/resources/db/migration/V202105290004__businessPermission.sql +++ b/mallinkAdmin/src/main/resources/db/migration/V202105290004__businessPermission.sql @@ -10,11 +10,11 @@ update mall_sale_type set menus = '[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 50, 101, INSERT INTO `wx_template_msg`(`id`, `tenant_id`, `parent_tenant_id`, `template_id`, `type`, `custom_param`, `create_date`, `update_date`) -select CEILING(RAND()*90000000000+10000000000) ,tenant_id,parent_tenant_id,'',6,'{\"index\": [\"character_string1\", \"character_string2\", \"time4\", \"thing3\"], \"emphasis\": \"\"}',now(),now() +select CEILING(RAND()*90000000000+10000000000) ,tenant_id,parent_tenant_id,'',50,'{\"index\": [\"character_string1\", \"character_string2\", \"time4\", \"thing3\"], \"emphasis\": \"\"}',now(),now() from wx_mall where id != 1 and id != 10011 and id != 10071 and id != 10141 ; -INSERT INTO `wx_template_msg`(`id`, `tenant_id`, `parent_tenant_id`, `template_id`, `type`, `custom_param`, `create_date`, `update_date`, `on_off`) VALUES (CEILING(RAND()*90000000000+10000000000), '1001', NULL, '', 6, '{\"index\": [\"character_string1\", \"character_string2\", \"time4\", \"thing3\"], \"emphasis\": \"\"}', '2021-05-31 13:09:16', '2021-05-31 13:09:16', 0); -INSERT INTO `wx_template_msg`(`id`, `tenant_id`, `parent_tenant_id`, `template_id`, `type`, `custom_param`, `create_date`, `update_date`, `on_off`) VALUES (CEILING(RAND()*90000000000+10000000000), '1007', NULL, '', 6, '{\"index\": [\"character_string1\", \"character_string2\", \"time4\", \"thing3\"], \"emphasis\": \"\"}', '2021-05-31 13:09:16', '2021-05-31 13:09:16', 0); -INSERT INTO `wx_template_msg`(`id`, `tenant_id`, `parent_tenant_id`, `template_id`, `type`, `custom_param`, `create_date`, `update_date`, `on_off`) VALUES (CEILING(RAND()*90000000000+10000000000), '1014', NULL, '', 6, '{\"index\": [\"character_string1\", \"character_string2\", \"time4\", \"thing3\"], \"emphasis\": \"\"}', '2021-05-31 13:09:16', '2021-05-31 13:09:16', 0); +INSERT INTO `wx_template_msg`(`id`, `tenant_id`, `parent_tenant_id`, `template_id`, `type`, `custom_param`, `create_date`, `update_date`, `on_off`) VALUES (CEILING(RAND()*90000000000+10000000000), '1001', NULL, '', 50, '{\"index\": [\"character_string1\", \"character_string2\", \"time4\", \"thing3\"], \"emphasis\": \"\"}', '2021-05-31 13:09:16', '2021-05-31 13:09:16', 0); +INSERT INTO `wx_template_msg`(`id`, `tenant_id`, `parent_tenant_id`, `template_id`, `type`, `custom_param`, `create_date`, `update_date`, `on_off`) VALUES (CEILING(RAND()*90000000000+10000000000), '1007', NULL, '', 50, '{\"index\": [\"character_string1\", \"character_string2\", \"time4\", \"thing3\"], \"emphasis\": \"\"}', '2021-05-31 13:09:16', '2021-05-31 13:09:16', 0); +INSERT INTO `wx_template_msg`(`id`, `tenant_id`, `parent_tenant_id`, `template_id`, `type`, `custom_param`, `create_date`, `update_date`, `on_off`) VALUES (CEILING(RAND()*90000000000+10000000000), '1014', NULL, '', 50, '{\"index\": [\"character_string1\", \"character_string2\", \"time4\", \"thing3\"], \"emphasis\": \"\"}', '2021-05-31 13:09:16', '2021-05-31 13:09:16', 0); diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumTemplateType.java b/mallinkService/src/main/java/com/iformall/enums/EnumTemplateType.java index c92846728..54faf97c1 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumTemplateType.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumTemplateType.java @@ -11,9 +11,13 @@ public enum EnumTemplateType { VERIFY_FAIL(2, "核销失败消息",""), // 小程序(作废) PRESS_SUCCESS(3, "砍价成功消息",""), // 小程序(作废) + /** + * *******(4...99)留作模板消息 + * *******(4...49)留作全局推送 + */ ACTIVITY_REMIND(4, "活动开始提醒","386"), // 小程序 LIVE_REMIND(5, "直播开播提醒","8501"), // 小程序 - CREDIT_UPD_REMIND(6, "积分变更提醒","310"), // 小程序 + CREDIT_UPD_REMIND(50, "积分变更提醒","310"), // 小程序 AUDIT_MESSAGE(101, "公众号审核结果通知",""), // 公众号 VERIFY_RESULT(102, "公众号卡券核销通知",""), // 公众号 diff --git a/mallinkService/src/main/resources/mapper/WxTemplateMsgMapper.xml b/mallinkService/src/main/resources/mapper/WxTemplateMsgMapper.xml index 438f995dc..957729308 100644 --- a/mallinkService/src/main/resources/mapper/WxTemplateMsgMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxTemplateMsgMapper.xml @@ -71,7 +71,7 @@ from wx_template_msg - and `type` > 3 and `type` < 100 + and `type` > 3 and `type` < 50 From 2aebc9f1fa0bb263fdf0bfeb8dec7f6cf92d2ef2 Mon Sep 17 00:00:00 2001 From: xhxu Date: Mon, 31 May 2021 14:53:23 +0800 Subject: [PATCH 45/48] tt --- .../java/com/iformall/service/tt/impl/TtCouponServiceImpl.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java index 65f50a7d6..7aed20c82 100644 --- a/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/tt/impl/TtCouponServiceImpl.java @@ -77,6 +77,9 @@ public class TtCouponServiceImpl implements TtCouponService { record.setIsPayment(EnumYesOrNo.YES.getCode()); } // } + if(record.getFalseSellCount() != null && record.getFalseSellCount().intValue() > 0){ + record.setPopularity(record.getFalseSellCount()*20);//虚拟人气 + } if (StringUtils.isBlank(record.getCoverPicture())) { List strList = new ArrayList(); From 533e6d746e4019ca2cf1c5238c390977fbe81e68 Mon Sep 17 00:00:00 2001 From: xhxu Date: Mon, 31 May 2021 15:15:05 +0800 Subject: [PATCH 46/48] tt --- .../controller/msg/WxMsgController.java | 24 +++++++++++++++++++ .../iformall/controller/WxMsgController.java | 9 +++++++ .../com/iformall/domain/po/WxTemplateMsg.java | 3 +++ .../com/iformall/enums/EnumTemplateType.java | 3 +-- .../resources/mapper/WxTemplateMsgMapper.xml | 7 +++++- .../controller/msg/WxMsgController.java | 24 +++++++++++++++++++ 6 files changed, 67 insertions(+), 3 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/msg/WxMsgController.java b/mallinkAdmin/src/main/java/com/iformall/controller/msg/WxMsgController.java index af1e096a0..c9ef03487 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/msg/WxMsgController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/msg/WxMsgController.java @@ -12,6 +12,7 @@ import com.iformall.domain.po.base.BaseEntity; import com.iformall.domain.po.base.TenantEntity; import com.iformall.domain.po.msg.WxMsg; import com.iformall.enums.EnumSendWay; +import com.iformall.enums.EnumTemplateType; import com.iformall.service.WxMsgService; import com.iformall.service.WxTemplateMsgService; import io.swagger.annotations.ApiImplicitParam; @@ -71,6 +72,29 @@ public class WxMsgController extends BaseController { logger.debug("[" + getIpAddr() + "] WxMsgController::list"); if (null == wxTemplateMsg) wxTemplateMsg = new WxTemplateMsg(); wxTemplateMsg.updateTenantInfo(getTenantInfo()); + List types = new ArrayList<>(); + types.add(EnumTemplateType.ACTIVITY_REMIND.getCode()); + types.add(EnumTemplateType.LIVE_REMIND.getCode()); + wxTemplateMsg.setTypes(types); + final PageInfo page = wxTemplateMsgService.listAsPageForMiniApp(wxTemplateMsg, pageNum, pageSize); + return new ResultData(page); + } + + @ApiOperation("模板分页列表接口") + @GetMapping("templateListV1") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) + @SystemControllerLog(description = "moban-列表") + public ResultData templateListV1(@ModelAttribute WxTemplateMsg wxTemplateMsg, Integer pageNum, Integer pageSize) { + logger.debug("[" + getIpAddr() + "] WxMsgController::list"); + if (null == wxTemplateMsg) wxTemplateMsg = new WxTemplateMsg(); + wxTemplateMsg.updateTenantInfo(getTenantInfo()); + List types = new ArrayList<>(); + types.add(EnumTemplateType.ACTIVITY_REMIND.getCode()); + types.add(EnumTemplateType.LIVE_REMIND.getCode()); + types.add(EnumTemplateType.CREDIT_UPD_REMIND.getCode()); + wxTemplateMsg.setTypes(types); final PageInfo page = wxTemplateMsgService.listAsPageForMiniApp(wxTemplateMsg, pageNum, pageSize); return new ResultData(page); } diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxMsgController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxMsgController.java index efdd478ad..c7164cc59 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxMsgController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxMsgController.java @@ -3,6 +3,7 @@ package com.iformall.controller; import com.github.pagehelper.PageInfo; import com.iformall.common.ResultData; import com.iformall.domain.po.WxTemplateMsg; +import com.iformall.enums.EnumTemplateType; import com.iformall.service.WxTemplateMsgService; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; @@ -12,6 +13,9 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.util.ArrayList; +import java.util.List; + /** * @author gongbiao @@ -33,6 +37,11 @@ public class WxMsgController extends BaseController { logger.debug("[" + getIpAddr() + "] WxMsgController::list"); if (null == wxTemplateMsg) wxTemplateMsg = new WxTemplateMsg(); wxTemplateMsg.updateTenantInfo(getTenantInfo()); + List types = new ArrayList<>(); + types.add(EnumTemplateType.ACTIVITY_REMIND.getCode()); + types.add(EnumTemplateType.LIVE_REMIND.getCode()); + types.add(EnumTemplateType.CREDIT_UPD_REMIND.getCode()); + wxTemplateMsg.setTypes(types); final PageInfo page = wxTemplateMsgService.listAsPageForMiniApp(wxTemplateMsg, pageNum, pageSize); return new ResultData(page); } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxTemplateMsg.java b/mallinkService/src/main/java/com/iformall/domain/po/WxTemplateMsg.java index 025a579f8..97d53e234 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxTemplateMsg.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxTemplateMsg.java @@ -33,6 +33,9 @@ public class WxTemplateMsg extends TenantEntity { @TableField(exist = false) private String typeName; + @TableField(exist = false) + private List types; + public String getTypeName(){ if(this.getType() != null) { diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumTemplateType.java b/mallinkService/src/main/java/com/iformall/enums/EnumTemplateType.java index 54faf97c1..6b149f0dd 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumTemplateType.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumTemplateType.java @@ -12,8 +12,7 @@ public enum EnumTemplateType { PRESS_SUCCESS(3, "砍价成功消息",""), // 小程序(作废) /** - * *******(4...99)留作模板消息 - * *******(4...49)留作全局推送 + * */ ACTIVITY_REMIND(4, "活动开始提醒","386"), // 小程序 LIVE_REMIND(5, "直播开播提醒","8501"), // 小程序 diff --git a/mallinkService/src/main/resources/mapper/WxTemplateMsgMapper.xml b/mallinkService/src/main/resources/mapper/WxTemplateMsgMapper.xml index 957729308..1bf6ec3bf 100644 --- a/mallinkService/src/main/resources/mapper/WxTemplateMsgMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxTemplateMsgMapper.xml @@ -50,6 +50,12 @@ and `on_off` = #{onOff} + + and `type` in + + #{item} + + and id in @@ -71,7 +77,6 @@ from wx_template_msg - and `type` > 3 and `type` < 50 diff --git a/mallinkTTAdmin/src/main/java/com/iformall/controller/msg/WxMsgController.java b/mallinkTTAdmin/src/main/java/com/iformall/controller/msg/WxMsgController.java index af1e096a0..c9ef03487 100644 --- a/mallinkTTAdmin/src/main/java/com/iformall/controller/msg/WxMsgController.java +++ b/mallinkTTAdmin/src/main/java/com/iformall/controller/msg/WxMsgController.java @@ -12,6 +12,7 @@ import com.iformall.domain.po.base.BaseEntity; import com.iformall.domain.po.base.TenantEntity; import com.iformall.domain.po.msg.WxMsg; import com.iformall.enums.EnumSendWay; +import com.iformall.enums.EnumTemplateType; import com.iformall.service.WxMsgService; import com.iformall.service.WxTemplateMsgService; import io.swagger.annotations.ApiImplicitParam; @@ -71,6 +72,29 @@ public class WxMsgController extends BaseController { logger.debug("[" + getIpAddr() + "] WxMsgController::list"); if (null == wxTemplateMsg) wxTemplateMsg = new WxTemplateMsg(); wxTemplateMsg.updateTenantInfo(getTenantInfo()); + List types = new ArrayList<>(); + types.add(EnumTemplateType.ACTIVITY_REMIND.getCode()); + types.add(EnumTemplateType.LIVE_REMIND.getCode()); + wxTemplateMsg.setTypes(types); + final PageInfo page = wxTemplateMsgService.listAsPageForMiniApp(wxTemplateMsg, pageNum, pageSize); + return new ResultData(page); + } + + @ApiOperation("模板分页列表接口") + @GetMapping("templateListV1") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) + @SystemControllerLog(description = "moban-列表") + public ResultData templateListV1(@ModelAttribute WxTemplateMsg wxTemplateMsg, Integer pageNum, Integer pageSize) { + logger.debug("[" + getIpAddr() + "] WxMsgController::list"); + if (null == wxTemplateMsg) wxTemplateMsg = new WxTemplateMsg(); + wxTemplateMsg.updateTenantInfo(getTenantInfo()); + List types = new ArrayList<>(); + types.add(EnumTemplateType.ACTIVITY_REMIND.getCode()); + types.add(EnumTemplateType.LIVE_REMIND.getCode()); + types.add(EnumTemplateType.CREDIT_UPD_REMIND.getCode()); + wxTemplateMsg.setTypes(types); final PageInfo page = wxTemplateMsgService.listAsPageForMiniApp(wxTemplateMsg, pageNum, pageSize); return new ResultData(page); } From 6329f66ff954e6c5fb6dc6639e9d78db9dccb73b Mon Sep 17 00:00:00 2001 From: xhxu Date: Mon, 31 May 2021 15:53:51 +0800 Subject: [PATCH 47/48] tt --- .../controller/market/AliBusinessCircleOrderController.java | 2 +- .../controller/market/WxBusinessCircleOrderController.java | 2 +- .../controller/market/WxThirdPartyOrdersController.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/AliBusinessCircleOrderController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/AliBusinessCircleOrderController.java index e09564e3e..b726bc429 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/AliBusinessCircleOrderController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/AliBusinessCircleOrderController.java @@ -44,7 +44,7 @@ public class AliBusinessCircleOrderController extends BaseController { circleOrder = new AliBusinessCircleOrder(); } circleOrder.updateTenantInfo(getTenantInfo()); - circleOrder.setSortColumns(BaseEntity.SortField.CreateDate_DESC,BaseEntity.SortField.Id_DESC); + circleOrder.setSortColumns(BaseEntity.SortField.CreateTime_DESC,BaseEntity.SortField.Id_DESC); final PageInfo page = aliBusinessCircleOrderService.listAsPage(circleOrder, pageNum, pageSize); return new ResultData(page); } diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxBusinessCircleOrderController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxBusinessCircleOrderController.java index aa4574bd7..736a04023 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxBusinessCircleOrderController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxBusinessCircleOrderController.java @@ -42,7 +42,7 @@ public class WxBusinessCircleOrderController extends BaseController { circleOrder = new WxBusinessCircleOrder(); } circleOrder.updateTenantInfo(getTenantInfo()); - circleOrder.setSortColumns(BaseEntity.SortField.CreateDate_DESC,BaseEntity.SortField.Id_DESC); + circleOrder.setSortColumns(BaseEntity.SortField.CreateTime_DESC,BaseEntity.SortField.Id_DESC); final PageInfo page = wxBusinessCircleOrderService.listAsPage(circleOrder, pageNum, pageSize); return new ResultData(page); } diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxThirdPartyOrdersController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxThirdPartyOrdersController.java index ebf31b2c4..942355b80 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxThirdPartyOrdersController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxThirdPartyOrdersController.java @@ -44,7 +44,7 @@ public class WxThirdPartyOrdersController extends BaseController { circleOrder = new WxThirdPartyOrders(); } circleOrder.updateTenantInfo(getTenantInfo()); - circleOrder.setSortColumns(BaseEntity.SortField.CreateDate_DESC,BaseEntity.SortField.Id_DESC); + circleOrder.setSortColumns(BaseEntity.SortField.CreateTime_DESC,BaseEntity.SortField.Id_DESC); final PageInfo page = wxThirdPartyOrdersOrderService.listAsPage(circleOrder, pageNum, pageSize); return new ResultData(page); } From 173abe17f6b5a38b264000ff51417c7698f75fa6 Mon Sep 17 00:00:00 2001 From: xhxu Date: Mon, 31 May 2021 17:58:43 +0800 Subject: [PATCH 48/48] tt --- .../impl/WxCreditHistoryServiceImpl.java | 41 +++++++++++++++++-- .../service/impl/WxMsgServiceImpl.java | 14 +++++++ 2 files changed, 51 insertions(+), 4 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java index 7d1e81245..c12e73157 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java @@ -11,15 +11,13 @@ import com.iformall.common.IdWorker; import com.iformall.common.ResultData; import com.iformall.domain.po.*; import com.iformall.domain.po.base.TenantEntity; +import com.iformall.domain.po.msg.WxMsg; import com.iformall.domain.vo.MerchantCreditRankingVo; import com.iformall.domain.vo.WxCreditHistoryVo; import com.iformall.enums.*; import com.iformall.exception.MallinkException; import com.iformall.mapper.*; -import com.iformall.service.ExcelService; -import com.iformall.service.WxCreditHistoryService; -import com.iformall.service.WxMallService; -import com.iformall.service.WxScoreRulesService; +import com.iformall.service.*; import com.iformall.utils.CreditUtil; import com.iformall.utils.RedisLock; import com.iformall.utils.UserUtil; @@ -91,6 +89,12 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService { @Autowired private WxMallService wxMallService; + @Autowired + private WxMsgService wxMsgService; + + @Autowired + private WxTemplateMsgService wxTemplateMsgService; + @Override public void clearCreditByYear() { WxScoreRules wxScoreRules = new WxScoreRules(); @@ -308,6 +312,35 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService { wxCUserBasicInfoMapper.updateById(wxCUserBasicInfoNew); } + //发消息 + try { + WxTemplateMsg temp = new WxTemplateMsg(); + temp.updateTenantInfo(record); + temp.setType(EnumTemplateType.CREDIT_UPD_REMIND.getCode()); + temp = wxTemplateMsgService.getByObj(temp); + if(temp.getId() != null){ + WxMsg msg = new WxMsg(); + msg.updateTenantInfo(record); + msg.setWay(EnumSendWay.APPINFOR.getCode()); + msg.setIsright(EnumMsgSend.MSG_SEND_IMMEDIATELY.getCode()); + msg.setPhones(wxCUserBasicInfo.getPhone()); + msg.setModelId(temp.getId()); + Map map = new HashMap<>(); + map.put("character_string1",record.getCreditNum().toString()); + map.put("character_string2",record.getCreditAmount().toString()); + map.put("time4",new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(record.getCreateDate())); + map.put("thing3",record.getChangePurpose()); + map.put("goToPage","pages/index/index?type=jf"); + msg.setMsg(JSONObject.toJSONString(map)); + msg.setName(EnumTemplateType.CREDIT_UPD_REMIND.name()); + msg.setSignature(EnumTemplateType.CREDIT_UPD_REMIND.name()); + wxMsgService.add(msg); + } + } catch (Exception e) { + logger.error("积分消息发送异常"); + } + + } else { //wxCreditHistoryMapper.updateById(record); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxMsgServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxMsgServiceImpl.java index bd25911e8..906451289 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxMsgServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxMsgServiceImpl.java @@ -366,6 +366,7 @@ public class WxMsgServiceImpl implements WxMsgService { } } + @Async @Override public void batchSendAppinfo(WxMsg wxMsg) { TenantEntity tenantEntity = new TenantEntity(); @@ -418,6 +419,19 @@ public class WxMsgServiceImpl implements WxMsgService { customParam.getString("thing4"), customParam.getString("thing5") )); + }else if(wxTemplateMsg.getType() == EnumTemplateType.CREDIT_UPD_REMIND.getCode()){ + /** + * 变更数量{{character_string1.DATA}} + * 积分余额{{character_string2.DATA}} + * 变动时间{{time4.DATA}} + * 变更原因{{thing3.DATA}} + */ + smartAppMsg.setDataList(Lists.newArrayList( + customParam.getString("character_string1"), + customParam.getString("character_string2"), + customParam.getString("time4"), + customParam.getString("thing3") + )); }else{ return; }