From d5ee9745314540b7c80c45334347cbf6f80fa90a Mon Sep 17 00:00:00 2001 From: xhxu Date: Fri, 7 Jan 2022 14:07:51 +0800 Subject: [PATCH] =?UTF-8?q?/=E3=80=81qrcode?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/app/WxAppinfoController.java | 56 +- .../basic/WxMerchantController.java | 14 +- .../market/WxCouponChannelController.java | 13 +- .../V2022010600001__add_ttqrcode.sql | 917 ++++++++++++++++++ .../controller/WxCouponChannelController.java | 13 +- .../iformall/controller/WxMsgController.java | 1 + .../controller/WxUserGrantController.java | 38 +- .../java/com/iformall/domain/po/CUser.java | 18 +- .../iformall/domain/po/WxCUserBasicInfo.java | 15 - .../iformall/domain/po/WxCouponChannel.java | 4 +- .../com/iformall/domain/po/WxMerchant.java | 4 +- .../com/iformall/domain/po/WxTemplateMsg.java | 3 + .../mapper/WxCUserBasicInfoMapper.java | 2 - .../com/iformall/service/QrCodeService.java | 7 +- .../service/WxCUserBasicInfoService.java | 2 - .../service/WxCouponChannelService.java | 5 + .../iformall/service/WxMerchantService.java | 5 + .../service/cuser/BasicCUserService.java | 8 +- .../service/cuser/CUserServiceApapter.java | 1 + .../cuser/tt/TtBUserServiceAdapter.java | 5 + .../cuser/tt/TtCUserServiceAdapter.java | 26 + .../cuser/wx/WxBUserServiceAdapter.java | 5 + .../cuser/wx/WxCUserServiceAdapter.java | 27 + .../service/impl/QrCodeServiceImpl.java | 25 +- .../impl/WxCUserBasicInfoServiceImpl.java | 4 - .../service/impl/WxCampaignServiceImpl.java | 19 +- .../impl/WxCouponChannelServiceImpl.java | 43 +- .../service/impl/WxGameServiceImpl.java | 15 +- .../service/impl/WxMerchantServiceImpl.java | 30 + .../service/impl/WxTopicServiceImpl.java | 15 +- .../service/pay/PayServiceFactory.java | 19 + .../main/resources/mapper/TtBuserMapper.xml | 3 +- .../main/resources/mapper/TtCUserMapper.xml | 3 +- .../main/resources/mapper/WxBuserMapper.xml | 3 +- .../mapper/WxCUserBasicInfoMapper.xml | 8 +- .../main/resources/mapper/WxCUserMapper.xml | 3 +- .../mapper/WxCouponChannelMapper.xml | 18 +- .../resources/mapper/WxMerchantMapper.xml | 11 +- .../resources/mapper/WxTemplateMsgMapper.xml | 4 + .../basic/WxMerchantController.java | 14 +- 40 files changed, 1207 insertions(+), 219 deletions(-) create mode 100644 mallinkAdmin/src/main/resources/db/migration/V2022010600001__add_ttqrcode.sql diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/app/WxAppinfoController.java b/mallinkAdmin/src/main/java/com/iformall/controller/app/WxAppinfoController.java index 360038fc4..97b3b3200 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/app/WxAppinfoController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/app/WxAppinfoController.java @@ -59,7 +59,6 @@ public class WxAppinfoController extends BaseController { public void updateQrCode(String p)throws ServletException, IOException { if("xlldxx".equals(p)) { String pageUrl = Constant.mainPageUrl; - List list = wxMerchantMapper.findQrcodeEmptyList(); logger.info("updateQrCode.count:"+list.size()); for (WxMerchant merchant : list) { @@ -67,13 +66,23 @@ public class WxAppinfoController extends BaseController { @Override public void run() { String param = merchant.getWeappScene(); - ResultData resultData = qrCodeService.uploadQrcode(merchant, 1, pageUrl, param, 0, "", "", merchant.getId().toString(),EnumPayWay.PAY_WAY_WECHAT); - Map map = (Map) resultData.data; - if(map!=null && map.get("url") !=null) { - String url = map.get("url"); - merchant.setQrCode(url); - wxMerchantMapper.updateById(merchant); + if(StringUtils.isBlank(merchant.getQrCode())){ + ResultData resultData = qrCodeService.uploadQrcode(merchant, 1, pageUrl, param, 0, "", "", "WX店铺"+merchant.getId().toString(),EnumAppPlat.WX); + Map map = (Map) resultData.data; + if(map != null && map.get("url") != null) { + String url = map.get("url"); + merchant.setQrCode(url); + } + } + if(StringUtils.isBlank(merchant.getTtQrCode())){ + ResultData resultData = qrCodeService.uploadQrcode(merchant, 1, pageUrl, param, 0, "", "", "TT店铺"+merchant.getId().toString(),EnumAppPlat.TOUTIAO); + Map map = (Map) resultData.data; + if(map != null && map.get("url") != null) { + String url = map.get("url"); + merchant.setTtQrCode(url); + } } + wxMerchantMapper.updateById(merchant); } }); } @@ -82,9 +91,13 @@ public class WxAppinfoController extends BaseController { @ApiOperation("券二维码--二维码数据刷数据库") @GetMapping("/updateCouponQrCode") - public void updateCouponQrCode(String p)throws ServletException, IOException { + public void updateCouponQrCode(String p, Integer platCode)throws ServletException, IOException { + if(platCode == null){ + platCode = EnumAppPlat.WX.getCode(); + } if("xlldxx".equals(p)){ String pageUrl = Constant.mainPageUrl; + EnumAppPlat plat = EnumAppPlat.getByCode(platCode); List list = wxCouponChannelMapper.findQrcodeEmptyList(); logger.info("updateCouponQrCode.count:"+list.size()); @@ -93,15 +106,24 @@ public class WxAppinfoController extends BaseController { @Override public void run() { String param = couponChannel.getWeappScene(); - - //暂时只有微信二维码,有别的码,需要加字段 - ResultData resultData = qrCodeService.uploadQrcode(couponChannel,1,pageUrl,param,0,"","","券",EnumPayWay.PAY_WAY_WECHAT); - Map map = (Map)resultData.data; - if(map!=null && map.get("url") !=null) { - String url = map.get("url"); - couponChannel.setQrCode(url); - wxCouponChannelMapper.updateById(couponChannel); + + if(StringUtils.isBlank(couponChannel.getQrCode())){ + ResultData resultData = qrCodeService.uploadQrcode(couponChannel, 1, pageUrl, param, 0, "", "", "WX券"+couponChannel.getId().toString(),EnumAppPlat.WX); + Map map = (Map) resultData.data; + if(map != null && map.get("url") != null) { + String url = map.get("url"); + couponChannel.setQrCode(url); + } + } + if(StringUtils.isBlank(couponChannel.getTtQrCode())){ + ResultData resultData = qrCodeService.uploadQrcode(couponChannel, 1, pageUrl, param, 0, "", "", "TT券"+couponChannel.getId().toString(),EnumAppPlat.TOUTIAO); + Map map = (Map) resultData.data; + if(map != null && map.get("url") != null) { + String url = map.get("url"); + couponChannel.setTtQrCode(url); + } } + wxCouponChannelMapper.updateById(couponChannel); } }); } @@ -138,7 +160,7 @@ public class WxAppinfoController extends BaseController { qrCodeService.exportQrcode(request, response, getTenantInfo(), type, pageUrl, sceneParam, withText, text1, text2, - name,EnumPayWay.PAY_WAY_WECHAT); + name,EnumAppPlat.WX); } catch (Exception e) { logger.error(e.getMessage()); throw new MallinkException(Result.ERROR, "下载异常"); diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/basic/WxMerchantController.java b/mallinkAdmin/src/main/java/com/iformall/controller/basic/WxMerchantController.java index 42d0b919b..233a48159 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/basic/WxMerchantController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/basic/WxMerchantController.java @@ -13,6 +13,7 @@ import com.iformall.domain.po.WxProfitSharingReceiver; import com.iformall.domain.vo.WxMerchantTradeDetailVo; import com.iformall.domain.vo.WxMerchantTradeVo; import com.iformall.domain.vo.WxMerchantVo; +import com.iformall.enums.EnumAppPlat; import com.iformall.enums.EnumMerchantStatus; import com.iformall.enums.EnumPayWay; import com.iformall.service.QrCodeService; @@ -164,18 +165,7 @@ public class WxMerchantController extends BaseController { ResultData resultData = wxMerchantService.addMerchant(wxMerchant, getUserId()); if(resultData.code == 200){ - //加载二维码图片 - String pageUrl = Constant.mainPageUrl; - String param = "t:md:"+resultData.data; - - //这里暂时只有微信二维码,后续有别的二维码,再加字段 - ResultData resultQrCode = qrCodeService.uploadQrcode(wxMerchant,1,pageUrl,param,0,"","","店铺详情",EnumPayWay.PAY_WAY_WECHAT); - Map map = (Map)resultQrCode.data; - if(map!=null && map.get("url") !=null) { - String url = map.get("url"); - wxMerchant.setQrCode(url); - wxMerchantService.updateMerchant(wxMerchant); - } + wxMerchantService.updateQrCode(wxMerchant,wxMerchant.getId()); } return resultData; diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponChannelController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponChannelController.java index 2b5edaa6f..abc74ddc2 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponChannelController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponChannelController.java @@ -10,6 +10,7 @@ import com.iformall.controller.base.BaseController; import com.iformall.domain.dto.WxCouponChannelDto; import com.iformall.domain.po.*; import com.iformall.domain.vo.WxCouponChannelVo; +import com.iformall.enums.EnumAppPlat; import com.iformall.enums.EnumCouponSourceType; import com.iformall.enums.EnumPayWay; import com.iformall.domain.po.base.BaseEntity; @@ -92,17 +93,7 @@ public class WxCouponChannelController extends BaseController { WxCouponChannel couponChannel = (WxCouponChannel)resultData.data; //生成二维码 if(couponChannel!=null){ - String pageUrl = Constant.mainPageUrl; - String param = couponChannel.getWeappScene(); - - //此处只有微信二维码,别的二维码需要加字段 - ResultData resultDataQ = qrCodeService.uploadQrcode(couponChannel,1,pageUrl,param,0,"","","券",EnumPayWay.PAY_WAY_WECHAT); - Map map = (Map)resultDataQ.data; - if(map!=null && map.get("url") !=null) { - String url = map.get("url"); - couponChannel.setQrCode(url); - wxCouponChannelMapper.updateById(couponChannel); - } + wxCouponChannelService.updateQrCode(couponChannel,couponChannel.getId(),couponChannel.getType()); } return resultData; } diff --git a/mallinkAdmin/src/main/resources/db/migration/V2022010600001__add_ttqrcode.sql b/mallinkAdmin/src/main/resources/db/migration/V2022010600001__add_ttqrcode.sql new file mode 100644 index 000000000..0410b777f --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V2022010600001__add_ttqrcode.sql @@ -0,0 +1,917 @@ +ALTER TABLE `mallink`.`wx_merchant` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `top_time`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; + + +ALTER TABLE `mallink`.`wx_coupon_channel_0` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_1` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_2` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_3` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_4` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_5` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_6` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_7` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_8` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_9` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_10` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_11` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_12` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_13` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_14` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_15` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_16` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_17` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_18` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_19` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_20` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_21` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_22` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_23` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_24` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_25` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_26` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_27` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_28` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_29` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_30` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_31` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_32` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_33` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_34` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_35` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_36` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_37` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_38` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_39` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_40` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_41` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_42` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_43` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_44` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_45` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_46` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_47` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_48` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_49` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_50` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_51` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_52` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_53` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_54` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_55` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_56` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_57` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_58` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_59` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_60` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_61` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_62` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_63` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_64` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_65` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_66` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_67` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_68` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_69` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_70` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_71` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_72` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_73` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_74` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_75` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_76` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_77` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_78` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_79` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_80` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_81` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_82` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_83` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_84` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_85` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_86` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_87` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_88` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_89` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_90` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_91` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_92` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_93` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_94` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_95` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_96` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_97` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_98` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; +ALTER TABLE `mallink`.`wx_coupon_channel_99` +MODIFY COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信二维码' AFTER `sub_target_id`, +ADD COLUMN `tt_qr_code` varchar(500) COMMENT '抖音二维码' AFTER `qr_code`; + + +ALTER TABLE `mallink`.`tt_buser` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; + +ALTER TABLE `mallink`.`wx_buser` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; + +ALTER TABLE `mallink`.`tt_c_user_0` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_1` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_2` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_3` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_4` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_5` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_6` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_7` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_8` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_9` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_10` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_11` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_12` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_13` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_14` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_15` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_16` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_17` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_18` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_19` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_20` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_21` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_22` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_23` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_24` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_25` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_26` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_27` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_28` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_29` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_30` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_31` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_32` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_33` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_34` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_35` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_36` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_37` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_38` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_39` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_40` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_41` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_42` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_43` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_44` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_45` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_46` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_47` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_48` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_49` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_50` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_51` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_52` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_53` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_54` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_55` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_56` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_57` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_58` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_59` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_60` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_61` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_62` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_63` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_64` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_65` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_66` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_67` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_68` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_69` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_70` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_71` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_72` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_73` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_74` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_75` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_76` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_77` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_78` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_79` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_80` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_81` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_82` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_83` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_84` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_85` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_86` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_87` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_88` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_89` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_90` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_91` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_92` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_93` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_94` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_95` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_96` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_97` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_98` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`tt_c_user_99` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; + +ALTER TABLE `mallink`.`wx_c_user_0` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_1` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_2` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_3` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_4` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_5` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_6` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_7` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_8` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_9` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_10` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_11` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_12` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_13` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_14` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_15` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_16` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_17` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_18` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_19` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_20` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_21` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_22` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_23` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_24` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_25` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_26` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_27` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_28` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_29` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_30` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_31` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_32` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_33` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_34` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_35` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_36` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_37` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_38` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_39` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_40` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_41` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_42` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_43` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_44` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_45` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_46` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_47` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_48` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_49` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_50` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_51` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_52` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_53` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_54` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_55` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_56` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_57` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_58` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_59` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_60` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_61` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_62` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_63` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_64` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_65` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_66` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_67` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_68` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_69` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_70` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_71` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_72` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_73` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_74` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_75` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_76` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_77` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_78` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_79` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_80` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_81` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_82` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_83` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_84` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_85` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_86` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_87` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_88` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_89` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_90` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_91` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_92` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_93` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_94` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_95` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_96` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_97` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_98` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; +ALTER TABLE `mallink`.`wx_c_user_99` +ADD COLUMN `qr_code` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '二维码' AFTER `active_time`; + + +ALTER TABLE `mallink`.`wx_c_user_basic_info_0` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_1` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_2` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_3` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_4` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_5` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_6` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_7` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_8` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_9` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_10` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_11` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_12` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_13` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_14` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_15` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_16` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_17` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_18` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_19` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_20` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_21` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_22` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_23` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_24` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_25` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_26` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_27` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_28` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_29` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_30` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_31` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_32` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_33` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_34` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_35` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_36` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_37` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_38` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_39` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_40` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_41` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_42` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_43` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_44` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_45` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_46` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_47` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_48` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_49` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_50` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_51` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_52` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_53` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_54` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_55` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_56` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_57` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_58` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_59` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_60` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_61` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_62` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_63` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_64` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_65` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_66` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_67` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_68` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_69` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_70` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_71` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_72` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_73` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_74` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_75` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_76` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_77` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_78` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_79` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_80` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_81` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_82` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_83` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_84` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_85` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_86` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_87` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_88` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_89` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_90` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_91` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_92` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_93` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_94` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_95` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_96` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_97` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_98` +DROP COLUMN `qr_code`; +ALTER TABLE `mallink`.`wx_c_user_basic_info_99` +DROP COLUMN `qr_code`; + diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxCouponChannelController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxCouponChannelController.java index 06a35a1eb..45218448f 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxCouponChannelController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxCouponChannelController.java @@ -8,6 +8,7 @@ import com.iformall.domain.dto.WxCouponChannelDto; import com.iformall.domain.po.WxCouponChannel; import com.iformall.domain.po.base.BaseEntity; import com.iformall.domain.vo.WxCouponChannelVo; +import com.iformall.enums.EnumAppPlat; import com.iformall.enums.EnumPayWay; import com.iformall.mapper.WxCouponChannelMapper; import com.iformall.service.QrCodeService; @@ -80,17 +81,7 @@ public class WxCouponChannelController extends BaseController { WxCouponChannel couponChannel = (WxCouponChannel)resultData.data; //生成二维码 if(couponChannel!=null){ - String pageUrl = Constant.mainPageUrl; - String param = couponChannel.getWeappScene(); - - //此处只有微信二维码,别的二维码需要加字段 - ResultData resultDataQ = qrCodeService.uploadQrcode(couponChannel,1,pageUrl,param,0,"","","券",EnumPayWay.PAY_WAY_WECHAT); - Map map = (Map)resultDataQ.data; - if(map!=null && map.get("url") !=null) { - String url = map.get("url"); - couponChannel.setQrCode(url); - wxCouponChannelMapper.updateById(couponChannel); - } + wxCouponChannelService.updateQrCode(couponChannel,couponChannel.getId(),couponChannel.getType()); } return resultData; } diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxMsgController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxMsgController.java index 4a1924216..ab618ab65 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxMsgController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxMsgController.java @@ -43,6 +43,7 @@ public class WxMsgController extends BaseController { types.add(EnumTemplateType.CREDIT_UPD_REMIND.getCode()); types.add(EnumTemplateType.SEND_COUPON_REMIND.getCode()); wxTemplateMsg.setTypes(types); + wxTemplateMsg.setIsc(true); final PageInfo page = wxTemplateMsgService.listAsPageForMiniApp(wxTemplateMsg, pageNum, pageSize); return new ResultData(page); } diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java index be6b2c10a..18d7a8673 100755 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java @@ -764,39 +764,11 @@ public class WxUserGrantController extends BaseController { public ResultData getUserinfoQrCode() { CUser user = getCUser(); if(user.basicInfoIs()){ - String key = Constant.cuserQr+ getTenantInfo().getTenantId() + ":" +user.getUserId(); - String qrCode = RedisCacheUtils.getCacheString(objectCommonRedisTemplate, key); - if(StringUtils.isBlank(qrCode)){ - WxCUserBasicInfo wxCUserBasicInfo; - try { - wxCUserBasicInfo = getShortCacheMember(user.getUserId(),getFinalTenantId()); - if(StringUtils.isBlank(getTenantInfo().getParentTenantId()) - && StringUtils.isNotBlank(wxCUserBasicInfo.getQrCode())){ - qrCode = wxCUserBasicInfo.getQrCode(); - }else{ - String param = wxCUserBasicInfo.getWeappScene(); - ResultData resultData = qrCodeService.uploadQrcode(getTenantInfo(), 1, Constant.mainPageUrl, param, 0, "", "", "用户分享",EnumPayWay.PAY_WAY_WECHAT); -// String weappPath = wxCUserBasicInfo.getWeappPath(); -// ResultData resultData = qrCodeService.uploadQrcode(getTenantInfo(), 0, weappPath, "", 0, "", "", "用户分享",EnumPayWay.PAY_WAY_WECHAT); - Map map = (Map) resultData.data; - if(map!=null && map.get("url") !=null) { - String url = map.get("url"); - qrCode = url; - }else{ - logger.error("getUserinfoQrCode error."+resultData.toString()); - return new ResultData(ErrorCode.DEVICE_QRCODE_GET_FAILED); - } - if(StringUtils.isBlank(getTenantInfo().getParentTenantId())){ - wxCUserBasicInfo.setQrCode(qrCode); - wxCUserBasicInfoService.updateQrCode(wxCUserBasicInfo); - } - } - RedisCacheUtils.cache(objectCommonRedisTemplate, key, qrCode, 0); - - } catch (Exception e) { - logger.error("getUserinfoQrCode error.",e); - return new ResultData(ErrorCode.SYS_SERVER_ERROR); - } + String qrCode = ""; + if(StringUtils.isBlank(user.getQrCode())){ + qrCode = cuserFactory.getCUserService(user.getAppPlat()).updateQrCode(user); + }else{ + qrCode = user.getQrCode(); } return new ResultData(qrCode); diff --git a/mallinkService/src/main/java/com/iformall/domain/po/CUser.java b/mallinkService/src/main/java/com/iformall/domain/po/CUser.java index abfecf405..b7b4a5f09 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/CUser.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/CUser.java @@ -1,19 +1,16 @@ package com.iformall.domain.po; import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.iformall.domain.po.base.BaseCUserEntity; import com.iformall.utils.Constant; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.ToString; -import org.apache.commons.lang3.StringUtils; import java.math.BigDecimal; import java.util.Date; import java.util.List; -import java.util.UUID; @JsonIgnoreProperties(ignoreUnknown = true) @Data @@ -107,6 +104,21 @@ public class CUser extends BaseCUserEntity { @io.swagger.annotations.ApiModelProperty(value="积分",name="credit") private Integer credit; + @io.swagger.annotations.ApiModelProperty(value="微信二维码",name="qrCode") + private String qrCode; + + public String getWeappPath() { + if(userId == null) + return Constant.mainPageUrl; + return Constant.mainPageUrl + "?type=in&UId=" + userId; + } + + public String getWeappScene() { + if(userId == null) + return ""; + return "t:in_u:" + userId; + } + @TableField(exist = false) @io.swagger.annotations.ApiModelProperty(value="渠道名称",name="channelName") private String channelName; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxCUserBasicInfo.java b/mallinkService/src/main/java/com/iformall/domain/po/WxCUserBasicInfo.java index 4917b11ce..f6c47a11a 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxCUserBasicInfo.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxCUserBasicInfo.java @@ -146,21 +146,6 @@ public class WxCUserBasicInfo extends TenantEntityWithoutFinalTenantId { @io.swagger.annotations.ApiModelProperty(value = "状态0正常1锁定", name = "status") private Integer status; - @io.swagger.annotations.ApiModelProperty(value="二维码",name="qrCode") - private String qrCode; - - public String getWeappPath() { - if(id == null) - return Constant.mainPageUrl; - return Constant.mainPageUrl + "?type=in&UId=" + id; - } - - public String getWeappScene() { - if(id == null) - return ""; - return "t:in_u:" + id; - } - @TableField(exist = false) @Excel(name="标签",width = 50,orderNum = "15") private String tagNames; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxCouponChannel.java b/mallinkService/src/main/java/com/iformall/domain/po/WxCouponChannel.java index 9b534fb8c..ffead03e6 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxCouponChannel.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxCouponChannel.java @@ -63,8 +63,10 @@ public class WxCouponChannel extends TenantEntity { private Date updateDate; @io.swagger.annotations.ApiModelProperty(value="子频道ID",name="subTargetId") private Long subTargetId; - @io.swagger.annotations.ApiModelProperty(value="二维码",name="qrCode") + @io.swagger.annotations.ApiModelProperty(value="微信二维码",name="qrCode") private String qrCode; + @io.swagger.annotations.ApiModelProperty(value="抖音二维码地址",name="ttQrCode") + private String ttQrCode; @TableField(exist = false) @io.swagger.annotations.ApiModelProperty(value="券状态 0:可投放 1:作废",name="couponStatus") 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 c9edd28ac..0cc59c3ae 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java @@ -242,8 +242,10 @@ public class WxMerchant extends TenantEntity { private Integer isAdmin; @io.swagger.annotations.ApiModelProperty(value = "置顶时间", name = "topTime") private Date topTime; - @io.swagger.annotations.ApiModelProperty(value="二维码地址",name="qrCode") + @io.swagger.annotations.ApiModelProperty(value="微信二维码地址",name="qrCode") private String qrCode; + @io.swagger.annotations.ApiModelProperty(value="抖音二维码地址",name="ttQrCode") + private String ttQrCode; @io.swagger.annotations.ApiModelProperty(value="简介",name="introduction") private String introduction; @io.swagger.annotations.ApiModelProperty(value="优惠活动",name="actionDesc") 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 97d53e234..0c73492b9 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxTemplateMsg.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxTemplateMsg.java @@ -36,6 +36,9 @@ public class WxTemplateMsg extends TenantEntity { @TableField(exist = false) private List types; + @TableField(exist = false) + private boolean isc; + public String getTypeName(){ if(this.getType() != null) { diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCUserBasicInfoMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCUserBasicInfoMapper.java index 319b5030f..807ce6ce7 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCUserBasicInfoMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCUserBasicInfoMapper.java @@ -26,8 +26,6 @@ public interface WxCUserBasicInfoMapper extends CommonMapper params,EnumPayWay payWay) throws MallinkException; + void downQrCode(TenantEntity tenantEntity, HttpServletRequest request, HttpServletResponse response, @RequestBody Map params,EnumAppPlat plat) throws MallinkException; ResultData exportQrcode(HttpServletRequest request, HttpServletResponse response, TenantEntity tenantEntity, int type, String pageUrl, String sceneParam, int withText, String text1, String text2, - String name,EnumPayWay payWay); + String name, EnumAppPlat plat); ResultData uploadQrcode(TenantEntity tenantEntity, int type, String pageUrl, String sceneParam, int withText, String text1, String text2, - String name,EnumPayWay payWay); + String name,EnumAppPlat plat); } diff --git a/mallinkService/src/main/java/com/iformall/service/WxCUserBasicInfoService.java b/mallinkService/src/main/java/com/iformall/service/WxCUserBasicInfoService.java index 6594442f4..246ae02e8 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxCUserBasicInfoService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxCUserBasicInfoService.java @@ -173,8 +173,6 @@ public interface WxCUserBasicInfoService { void cuserOldToNew(Long oldCuserId, Long newCuserId,TenantEntity tenantinfo); - void updateQrCode(WxCUserBasicInfo wxCUserBasicInfo); - WxCUserBasicInfo registerByPhone(TenantEntity tenantEntity, String phone, String nickName, Integer sex, String avatarUrl); int addCredit(Long userId, TenantEntity tenantInfo, EnumScoreType wechatPhone); diff --git a/mallinkService/src/main/java/com/iformall/service/WxCouponChannelService.java b/mallinkService/src/main/java/com/iformall/service/WxCouponChannelService.java index d1842ade2..a2c5174a3 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxCouponChannelService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxCouponChannelService.java @@ -71,6 +71,11 @@ public interface WxCouponChannelService { */ ResultData saveOrUpdate(WxCouponChannel record); + /** + * 创建二维码 + */ + void updateQrCode(TenantEntity tenantEntity, Long couponChannelId, Integer couponType); + ResultData addBatch(String type,String[] ids, String[] channelId, TenantEntity tenantEntity, Date showBeginTime, Date beginTime, Date endTime); void updateStatusByCouponId(Long couponId,TenantEntity tenantEntity,int status); diff --git a/mallinkService/src/main/java/com/iformall/service/WxMerchantService.java b/mallinkService/src/main/java/com/iformall/service/WxMerchantService.java index b9caa1843..e7e4ad0d6 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxMerchantService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxMerchantService.java @@ -119,6 +119,11 @@ public interface WxMerchantService { ResultData addMerchant(WxMerchant wxMerchant, Long userId); + /** + * 创建二维码 + */ + void updateQrCode(TenantEntity tenantEntity,Long merchantId); + ResultData updateMerchant(WxMerchant wxMerchant); ResultData updateMerchantAccount(WxMerchant wxMerchant,EnumPayWay payWay); diff --git a/mallinkService/src/main/java/com/iformall/service/cuser/BasicCUserService.java b/mallinkService/src/main/java/com/iformall/service/cuser/BasicCUserService.java index 8e47a18c4..da7fb6e70 100644 --- a/mallinkService/src/main/java/com/iformall/service/cuser/BasicCUserService.java +++ b/mallinkService/src/main/java/com/iformall/service/cuser/BasicCUserService.java @@ -9,10 +9,7 @@ import com.iformall.domain.po.msg.FmInsideCLoginMsg; import com.iformall.enums.*; import com.iformall.exception.MallinkException; import com.iformall.mq.MqBaseProducer; -import com.iformall.service.MemCouponFromDspService; -import com.iformall.service.WxCUserBasicInfoService; -import com.iformall.service.WxCUserTagsService; -import com.iformall.service.WxScoreRulesService; +import com.iformall.service.*; import com.iformall.service.cuser.tt.TtCUserServiceAdapter; import com.iformall.service.cuser.wx.WxCUserServiceAdapter; import com.iformall.utils.Constant; @@ -49,6 +46,9 @@ public class BasicCUserService { @Autowired private WxScoreRulesService wxScoreRulesService; + @Autowired + protected QrCodeService qrCodeService; + @Autowired @Qualifier("baseCUserTokenRedisTemplate") RedisTemplate baseCUserTokenRedisTemplate; diff --git a/mallinkService/src/main/java/com/iformall/service/cuser/CUserServiceApapter.java b/mallinkService/src/main/java/com/iformall/service/cuser/CUserServiceApapter.java index 27dacedad..735be37c5 100644 --- a/mallinkService/src/main/java/com/iformall/service/cuser/CUserServiceApapter.java +++ b/mallinkService/src/main/java/com/iformall/service/cuser/CUserServiceApapter.java @@ -48,4 +48,5 @@ public interface CUserServiceApapter { void actionAfterLogin(CUser user); + String updateQrCode(CUser user); } diff --git a/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtBUserServiceAdapter.java b/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtBUserServiceAdapter.java index 2c176e759..24d726d04 100644 --- a/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtBUserServiceAdapter.java +++ b/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtBUserServiceAdapter.java @@ -259,6 +259,11 @@ public class TtBUserServiceAdapter extends BasicCUserService implements CUserSer } + @Override + public String updateQrCode(CUser user) { + return null; + } + private TtMaService getTtMaService(WxAppinfo wxAppinfo, Boolean isFmOpen) { TtMaService ttMaService = maUtil.getTtappService(wxAppinfo); if (StringUtils.isBlank(wxAppinfo.getAccessToken())) { diff --git a/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtCUserServiceAdapter.java b/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtCUserServiceAdapter.java index d5fec283d..b1b12520c 100644 --- a/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtCUserServiceAdapter.java +++ b/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtCUserServiceAdapter.java @@ -5,6 +5,7 @@ import cn.binarywang.wx.miniapp.bean.WxMaPhoneNumberInfo; import cn.binarywang.wx.miniapp.bean.WxMaUserInfo; import com.iformall.common.ErrorCode; import com.iformall.common.IdWorker; +import com.iformall.common.ResultData; import com.iformall.domain.dto.WxCUserBasicInfoDto; import com.iformall.domain.po.*; import com.iformall.domain.po.base.TenantEntity; @@ -34,6 +35,7 @@ import org.springframework.stereotype.Service; import java.util.Date; import java.util.List; +import java.util.Map; @Service public class TtCUserServiceAdapter extends BasicCUserService implements CUserServiceApapter{ @@ -318,6 +320,30 @@ public class TtCUserServiceAdapter extends BasicCUserService implements CUserSer super.actionAfterLogin(user); } + @Override + public String updateQrCode(CUser user) { + if(user.getUserId() == null){ + return null; + } + TtCUser userL = new TtCUser(); + userL.setId(user.getId()); + userL.updateTenantInfo(user); + userL.setUserId(user.getUserId()); + + String pageUrl = Constant.mainPageUrl; + String param = userL.getWeappScene(); + + ResultData resultData = qrCodeService.uploadQrcode(user, 1, pageUrl, param, 0, "", "", "TT用户"+userL.getUserId().toString(),EnumAppPlat.TOUTIAO); + Map map = (Map) resultData.data; + if(map!=null && map.get("url") !=null) { + String url = map.get("url"); + userL.setQrCode(url); + } + ttCUserMapper.updateById(userL); + cleanCuserToken(user.getToken()); + return userL.getQrCode(); + } + private TtMaService getTtMaService(WxAppinfo wxAppinfo, Boolean isFmOpen) { TtMaService ttMaService = maUtil.getTtappService(wxAppinfo); if (StringUtils.isBlank(wxAppinfo.getAccessToken())) { diff --git a/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxBUserServiceAdapter.java b/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxBUserServiceAdapter.java index 7e2a390b5..5713e5ca6 100644 --- a/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxBUserServiceAdapter.java +++ b/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxBUserServiceAdapter.java @@ -259,6 +259,11 @@ public class WxBUserServiceAdapter extends BasicCUserService implements CUserSer } + @Override + public String updateQrCode(CUser user) { + return null; + } + private WxMaService getWxMaService(WxAppinfo wxAppinfo, Boolean isFmOpen) { WxMaService wxMaService = null; if (isFmOpen) { diff --git a/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxCUserServiceAdapter.java b/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxCUserServiceAdapter.java index 851978565..bfed86c4f 100644 --- a/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxCUserServiceAdapter.java +++ b/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxCUserServiceAdapter.java @@ -5,9 +5,11 @@ import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult; import cn.binarywang.wx.miniapp.bean.WxMaPhoneNumberInfo; import cn.binarywang.wx.miniapp.bean.WxMaUserInfo; import com.iformall.common.IdWorker; +import com.iformall.common.ResultData; import com.iformall.domain.dto.WxCUserBasicInfoDto; import com.iformall.domain.po.*; import com.iformall.domain.po.base.TenantEntity; +import com.iformall.domain.po.tt.TtCUser; import com.iformall.domain.vo.UserCountVo; import com.iformall.enums.EnumAppPlat; import com.iformall.enums.EnumAssignTagsTrigger; @@ -35,6 +37,7 @@ import com.iformall.service.cuser.CUserServiceApapter; import java.util.Date; import java.util.List; +import java.util.Map; @Service public class WxCUserServiceAdapter extends BasicCUserService implements CUserServiceApapter{ @@ -325,6 +328,30 @@ public class WxCUserServiceAdapter extends BasicCUserService implements CUserSer super.actionAfterLogin(user); } + @Override + public String updateQrCode(CUser user) { + if(user.getUserId() == null){ + return null; + } + WxCUser userL = new WxCUser(); + userL.setId(user.getId()); + userL.updateTenantInfo(user); + userL.setUserId(user.getUserId()); + + String pageUrl = Constant.mainPageUrl; + String param = userL.getWeappScene(); + + ResultData resultData = qrCodeService.uploadQrcode(user, 1, pageUrl, param, 0, "", "", "WX用户"+userL.getUserId().toString(),EnumAppPlat.WX); + Map map = (Map) resultData.data; + if(map!=null && map.get("url") !=null) { + String url = map.get("url"); + userL.setQrCode(url); + } + wxCUserMapper.updateById(userL); + cleanCuserToken(user.getToken()); + return userL.getQrCode(); + } + private WxMaService getWxMaService(WxAppinfo wxAppinfo, Boolean isFmOpen) { WxMaService wxMaService = null; if (isFmOpen) { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/QrCodeServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/QrCodeServiceImpl.java index e6c0deb6e..45a69891d 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/QrCodeServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/QrCodeServiceImpl.java @@ -4,6 +4,7 @@ import com.iformall.common.ErrorCode; import com.iformall.common.Result; import com.iformall.common.ResultData; import com.iformall.domain.po.base.TenantEntity; +import com.iformall.enums.EnumAppPlat; import com.iformall.enums.EnumPayWay; import com.iformall.domain.po.WxAppinfo; import com.iformall.exception.MallinkException; @@ -42,7 +43,7 @@ public class QrCodeServiceImpl implements QrCodeService { @Override - public void downQrCode(TenantEntity tenantEntity, HttpServletRequest request, HttpServletResponse response, Map params,EnumPayWay payWay) throws MallinkException { + public void downQrCode(TenantEntity tenantEntity, HttpServletRequest request, HttpServletResponse response, Map params,EnumAppPlat plat) throws MallinkException { String name = (String) params.get("name"); String pageUrl = (String) params.get("pageUrl"); String sceneParam = (String) params.get("sceneParam"); @@ -68,7 +69,7 @@ public class QrCodeServiceImpl implements QrCodeService { exportQrcode(request, response, tenantEntity, type, pageUrl, sceneParam, withText, text1, text2, - name,payWay); + name,plat); } catch (Exception e) { logger.error(e.getMessage()); throw new MallinkException(Result.ERROR, "下载异常"); @@ -79,10 +80,14 @@ public class QrCodeServiceImpl implements QrCodeService { public ResultData exportQrcode(HttpServletRequest request, HttpServletResponse response, TenantEntity tenantEntity, int type, String pageUrl, String sceneParam, int withText, String text1, String text2, - String name,EnumPayWay payWay) { + String name, EnumAppPlat plat) { // type 0 有限二维码, 1 无限制二维码 // withText 0 不带字 1. 带下面的字,2 带下面的两行字 - WxAppinfo appinfo = wxAppinfoService.getCAppInfo(tenantEntity,payWay.getPlat()); + WxAppinfo appinfo = wxAppinfoService.getCAppInfo(tenantEntity,plat); + if(appinfo == null){ + logger.error("生成二维码{}未找到对应的小程序"); + return new ResultData(); + } String filepath = fmUploadDir; String fileName = name + ".png"; @@ -95,7 +100,7 @@ public class QrCodeServiceImpl implements QrCodeService { pDest.mkdirs(); } try { - File codeFile = payServiceFactory.getPayAdapterService(payWay.getCode()).getQrcode(appinfo, pageUrl, type, sceneParam); + File codeFile = payServiceFactory.getQrcodeService(appinfo.getPlat()).getQrcode(appinfo, pageUrl, type, sceneParam); copyFileToDest(withText, text1, text2, destPath1, dest, codeFile); org.apache.commons.io.FileUtils.forceDelete(codeFile); } catch (WxErrorException e) { @@ -116,10 +121,14 @@ public class QrCodeServiceImpl implements QrCodeService { @Override public ResultData uploadQrcode(TenantEntity tenantEntity, int type, String pageUrl, String sceneParam, int withText, String text1, String text2, - String name,EnumPayWay payWay) { + String name,EnumAppPlat plat) { // type 0 有限二维码, 1 无限制二维码 // withText 0 不带字 1. 带下面的字,2 带下面的两行字 - WxAppinfo appinfo = wxAppinfoService.getCAppInfo(tenantEntity,payWay.getPlat()); + WxAppinfo appinfo = wxAppinfoService.getCAppInfo(tenantEntity,plat); + if(appinfo == null){ + logger.error("生成二维码{}未找到对应的小程序"); + return new ResultData(); + } String filepath = fmUploadDir; String fileName = name + ".png"; @@ -132,7 +141,7 @@ public class QrCodeServiceImpl implements QrCodeService { pDest.mkdirs(); } try { - File codeFile = payServiceFactory.getPayAdapterService(payWay.getCode()).getQrcode(appinfo, pageUrl, type, sceneParam); + File codeFile = payServiceFactory.getQrcodeService(appinfo.getPlat()).getQrcode(appinfo, pageUrl, type, sceneParam); copyFileToDest(withText, text1, text2, destPath1, dest, codeFile); org.apache.commons.io.FileUtils.forceDelete(codeFile); } catch (WxErrorException e) { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java index 0eb208181..81088e5a7 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java @@ -632,10 +632,6 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService,IExc wxCUserBasicInfoMapper.updateScore(record); } - @Override - public void updateQrCode(WxCUserBasicInfo record) { - wxCUserBasicInfoMapper.updateQrCode(record); - } @Override public WxCUserBasicInfo registerByPhone(TenantEntity tenantEntity, String phone, String nickName, Integer sex, String avatarUrl) { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCampaignServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCampaignServiceImpl.java index 6d45d313c..4db9c6a61 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCampaignServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCampaignServiceImpl.java @@ -17,6 +17,7 @@ import com.iformall.mapper.WxCouponChannelMapper; import com.iformall.mapper.WxQuestionOneselfMapper; import com.iformall.service.QrCodeService; import com.iformall.service.WxCampaignService; +import com.iformall.service.WxCouponChannelService; import com.iformall.service.WxCouponService; import com.iformall.utils.Constant; import org.apache.commons.lang3.StringUtils; @@ -44,6 +45,9 @@ public class WxCampaignServiceImpl implements WxCampaignService { @Autowired WxCampaignMapper wxCampaignMapper; + @Autowired + WxCouponChannelService wxCouponChannelService; + @Autowired WxCouponChannelMapper wxCouponChannelMapper; @@ -332,20 +336,7 @@ public class WxCampaignServiceImpl implements WxCampaignService { wxCouponChannel.setId(idWorker.nextId()); wxCouponChannelMapper.insert(wxCouponChannel); - String pageUrl = Constant.mainPageUrl; - WxCouponChannel couponChannel = new WxCouponChannel(); - couponChannel.setId(wxCouponChannel.getId()); - couponChannel.setType(wxCouponChannel.getType()); - String param = couponChannel.getWeappScene(); - - //此处只有微信二维码,如果需要彼得二维码,需要加字段 - ResultData resultDataQ = qrCodeService.uploadQrcode(wxCoupon,1,pageUrl,param,0,"","","券",EnumPayWay.PAY_WAY_WECHAT); - Map map = (Map)resultDataQ.data; - if(map!=null && map.get("url") !=null) { - String url = map.get("url"); - couponChannel.setQrCode(url); - wxCouponChannelMapper.updateById(couponChannel); - } + wxCouponChannelService.updateQrCode(wxCouponChannel,wxCouponChannel.getId(),wxCouponChannel.getType()); } } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponChannelServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponChannelServiceImpl.java index 35230ef13..7918c77f7 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponChannelServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponChannelServiceImpl.java @@ -6,6 +6,7 @@ import com.iformall.common.ErrorCode; import com.iformall.common.IdWorker; import com.iformall.common.Result; import com.iformall.common.ResultData; +import com.iformall.domain.po.WxMerchant; import com.iformall.domain.po.base.TenantEntity; import com.iformall.domain.po.WxCoupon; import com.iformall.domain.po.WxCouponChannel; @@ -132,6 +133,31 @@ public class WxCouponChannelServiceImpl implements WxCouponChannelService { return new ResultData(); } + @Override + public void updateQrCode(TenantEntity tenantEntity, Long couponChannelId, Integer couponType) { + WxCouponChannel couponChannel = new WxCouponChannel(); + couponChannel.setId(couponChannelId); + couponChannel.updateTenantInfo(tenantEntity); + couponChannel.setType(couponType); + + String pageUrl = Constant.mainPageUrl; + String param = couponChannel.getWeappScene(); + + ResultData wxQrCode = qrCodeService.uploadQrcode(tenantEntity, 1, pageUrl, param, 0, "", "", "WX券"+couponChannelId.toString(),EnumAppPlat.WX); + Map wxMap = (Map) wxQrCode.data; + if(wxMap != null && wxMap.get("url") != null) { + String url = wxMap.get("url"); + couponChannel.setQrCode(url); + } + ResultData ttQrCode = qrCodeService.uploadQrcode(tenantEntity, 1, pageUrl, param, 0, "", "", "TT券"+couponChannelId.toString(),EnumAppPlat.TOUTIAO); + Map ttmap = (Map) ttQrCode.data; + if(ttmap != null && ttmap.get("url") != null) { + String url = ttmap.get("url"); + couponChannel.setTtQrCode(url); + } + wxCouponChannelMapper.updateById(couponChannel); + } + /** * 清除c端首页券列表缓存 * @param tenantEntity @@ -348,21 +374,8 @@ public class WxCouponChannelServiceImpl implements WxCouponChannelService { vo.setType(channel.getType()); vo.setSuc(true); - String pageUrl = Constant.mainPageUrl; - WxCouponChannel couponChannel = new WxCouponChannel(); - couponChannel.setId(vo.getId()); - couponChannel.setType(vo.getType()); - couponChannel.updateTenantInfo(tenantEntity); - String param = couponChannel.getWeappScene(); - - //此处只有微信二维码 - ResultData resultDataQ = qrCodeService.uploadQrcode(wxCoupon,1,pageUrl,param,0,"","","券",EnumPayWay.PAY_WAY_WECHAT); - Map map = (Map)resultDataQ.data; - if(map!=null && map.get("url") !=null) { - String url = map.get("url"); - couponChannel.setQrCode(url); - wxCouponChannelMapper.updateById(couponChannel); - } + this.updateQrCode(channel,channel.getId(),channel.getType()); + return vo; } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxGameServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxGameServiceImpl.java index 717a6b250..44e5c2917 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxGameServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxGameServiceImpl.java @@ -394,20 +394,7 @@ public class WxGameServiceImpl implements WxGameService { wxCouponChannel.setId(idWorker.nextId()); wxCouponChannelMapper.insert(wxCouponChannel); - String pageUrl = Constant.mainPageUrl; - WxCouponChannel couponChannel = new WxCouponChannel(); - couponChannel.setId(wxCouponChannel.getId()); - couponChannel.setType(wxCouponChannel.getType()); - String param = couponChannel.getWeappScene(); - - //暂时只有微信二维码,如果有别的二维码,则需要别的字段 - ResultData resultDataQ = qrCodeService.uploadQrcode(wxCoupon,1,pageUrl,param,0,"","","券",EnumPayWay.PAY_WAY_WECHAT); - Map map = (Map)resultDataQ.data; - if(map!=null && map.get("url") !=null) { - String url = map.get("url"); - couponChannel.setQrCode(url); - wxCouponChannelMapper.updateById(couponChannel); - } + wxCouponChannelService.updateQrCode(wxCouponChannel,wxCouponChannel.getId(),wxCouponChannel.getType()); } } 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 2e5a068a6..45ee43bf3 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java @@ -19,6 +19,7 @@ import com.iformall.enums.*; import com.iformall.exception.MallinkException; import com.iformall.mapper.*; import com.iformall.service.*; +import com.iformall.utils.Constant; import com.iformall.utils.DateUtils; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; @@ -112,6 +113,9 @@ public class WxMerchantServiceImpl implements WxMerchantService { @Autowired TtUserFollowMapper ttUserFollowMapper; + @Autowired + private QrCodeService qrCodeService; + @Override public PageInfo listAsPage(WxMerchant record, Integer pageIndex, Integer pageSize) { return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxMerchantMapper.findList(record)); @@ -446,6 +450,32 @@ public class WxMerchantServiceImpl implements WxMerchantService { } + @Override + public void updateQrCode(TenantEntity tenantEntity,Long merchantId) { + WxMerchant merchant = new WxMerchant(); + merchant.setId(merchantId); + merchant.updateTenantInfo(tenantEntity); + + String pageUrl = Constant.mainPageUrl; + String param = merchant.getWeappScene(); + + //微信二维码,后续有别的二维码,再加字段 + ResultData wxQrCode = qrCodeService.uploadQrcode(tenantEntity,1,pageUrl,param,0,"","","WX店铺"+merchantId.toString(), EnumAppPlat.WX); + Map wxMap = (Map)wxQrCode.data; + if(wxMap != null && wxMap.get("url") != null) { + String url = wxMap.get("url"); + merchant.setQrCode(url); + } + //抖音二维码,后续有别的二维码,再加字段 + ResultData ttQrCode = qrCodeService.uploadQrcode(tenantEntity,1,pageUrl,param,0,"","","TT店铺"+merchantId.toString(), EnumAppPlat.TOUTIAO); + Map ttmap = (Map)ttQrCode.data; + if(ttmap != null && ttmap.get("url") != null) { + String url = ttmap.get("url"); + merchant.setTtQrCode(url); + } + wxMerchantMapper.updateById(merchant); + } + @Transactional(rollbackFor = {Exception.class}) @Override public ResultData updateMerchant(WxMerchant wxMerchant) { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxTopicServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxTopicServiceImpl.java index 8a94377ac..d728ae0f4 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxTopicServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxTopicServiceImpl.java @@ -167,20 +167,7 @@ public class WxTopicServiceImpl implements WxTopicService { wxCouponChannel.setSubBusiness(wxCoupon.getSubBusiness()); wxCouponChannelMapper.insert(wxCouponChannel); - String pageUrl = Constant.mainPageUrl; - WxCouponChannel couponChannel = new WxCouponChannel(); - couponChannel.setId(wxCouponChannel.getId()); - couponChannel.setType(wxCouponChannel.getType()); - String param = couponChannel.getWeappScene(); - - //这里暂时只有微信二维码,有其他的码需要加字段 - ResultData resultDataQ = qrCodeService.uploadQrcode(wxCoupon,1,pageUrl,param,0,"","","券",EnumPayWay.PAY_WAY_WECHAT); - Map map = (Map)resultDataQ.data; - if(map!=null && map.get("url") !=null) { - String url = map.get("url"); - couponChannel.setQrCode(url); - wxCouponChannelMapper.updateById(couponChannel); - } + wxCouponChannelService.updateQrCode(wxCouponChannel,wxCouponChannel.getId(),wxCouponChannel.getType()); } } diff --git a/mallinkService/src/main/java/com/iformall/service/pay/PayServiceFactory.java b/mallinkService/src/main/java/com/iformall/service/pay/PayServiceFactory.java index 1429e6448..03fd0da8e 100644 --- a/mallinkService/src/main/java/com/iformall/service/pay/PayServiceFactory.java +++ b/mallinkService/src/main/java/com/iformall/service/pay/PayServiceFactory.java @@ -3,6 +3,7 @@ package com.iformall.service.pay; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; +import com.iformall.enums.EnumAppPlat; import com.iformall.service.pay.service.pay.douyin.miniApp.TtMiniAppPayAdapterService; import com.iformall.service.pay.service.refund.douyin.TtRefundAdapterService; import com.iformall.service.pay.service.share.douyin.TtPayShareService; @@ -32,6 +33,7 @@ import com.iformall.service.pay.service.share.wx.WxPayShareService; public class PayServiceFactory { private Map serviceMap = null; + private Map qrcodeMap = null; private Map shareMap = null; private Map refundMap = null; private Map cashoutMap = null; @@ -74,6 +76,15 @@ public class PayServiceFactory { } return serviceMap; } + + private Map getQrcodeMap() { + if (null == qrcodeMap) { + qrcodeMap = new ConcurrentHashMap(); + qrcodeMap.put(EnumAppPlat.WX.getCode(), wxMiniAppPayService); + qrcodeMap.put(EnumAppPlat.TOUTIAO.getCode(),ttMiniAppPayService); + } + return qrcodeMap; + } private Map getShareMap(){ if (null == shareMap ) { @@ -122,6 +133,14 @@ public class PayServiceFactory { } return service; } + + public PayAdapterService getQrcodeService(Integer type) throws MallinkException{ + PayAdapterService service = getQrcodeMap().get(type); + if (null == service) { + throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"payWay["+type+"] 支付service未找到"); + } + return service; + } public CDrivingPayService getCDrivingPayService(Integer type) throws MallinkException{ PayAdapterService service = getServiceMap().get(type); diff --git a/mallinkService/src/main/resources/mapper/TtBuserMapper.xml b/mallinkService/src/main/resources/mapper/TtBuserMapper.xml index 904a3caa3..ad084a638 100644 --- a/mallinkService/src/main/resources/mapper/TtBuserMapper.xml +++ b/mallinkService/src/main/resources/mapper/TtBuserMapper.xml @@ -46,6 +46,7 @@ + @@ -57,7 +58,7 @@ `update_date`,`create_date`,`app_id`,`token`,`expire_time`,`latitude`, `longitude`, `login_count`, `extra_info`, `is_subscribe`,`open_app_id`,`user_id`, `mp_open_id`,`mp_app_id`,`mp_subscribe`,`mp_subscribe_time`,`mp_subscribe_scene`, - `subs_open_id`,`subs_app_id`,`subs_subscribe`,`subs_subscribe_time`,`subs_subscribe_scene`,`credit`,`active_time` + `subs_open_id`,`subs_app_id`,`subs_subscribe`,`subs_subscribe_time`,`subs_subscribe_scene`,`credit`,`active_time`,`qr_code` diff --git a/mallinkService/src/main/resources/mapper/TtCUserMapper.xml b/mallinkService/src/main/resources/mapper/TtCUserMapper.xml index 28954defe..2aa9e1151 100644 --- a/mallinkService/src/main/resources/mapper/TtCUserMapper.xml +++ b/mallinkService/src/main/resources/mapper/TtCUserMapper.xml @@ -47,6 +47,7 @@ + @@ -57,7 +58,7 @@ `login_count`, `extra_info`, `is_subscribe`, `open_app_id`, `mp_open_id`,`mp_app_id`,`mp_subscribe`,`mp_subscribe_time`,`mp_subscribe_scene`, - `subs_open_id`,`subs_app_id`,`subs_subscribe`,`subs_subscribe_time`,`subs_subscribe_scene`,`credit`,`active_time` + `subs_open_id`,`subs_app_id`,`subs_subscribe`,`subs_subscribe_time`,`subs_subscribe_scene`,`credit`,`active_time`,`qr_code` diff --git a/mallinkService/src/main/resources/mapper/WxBuserMapper.xml b/mallinkService/src/main/resources/mapper/WxBuserMapper.xml index 357fdf922..3f96d925d 100644 --- a/mallinkService/src/main/resources/mapper/WxBuserMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxBuserMapper.xml @@ -46,6 +46,7 @@ + @@ -57,7 +58,7 @@ `update_date`,`create_date`,`app_id`,`token`,`expire_time`,`latitude`, `longitude`, `login_count`, `extra_info`, `is_subscribe`,`open_app_id`,`user_id`, `mp_open_id`,`mp_app_id`,`mp_subscribe`,`mp_subscribe_time`,`mp_subscribe_scene`, - `subs_open_id`,`subs_app_id`,`subs_subscribe`,`subs_subscribe_time`,`subs_subscribe_scene`,`credit`,`active_time` + `subs_open_id`,`subs_app_id`,`subs_subscribe`,`subs_subscribe_time`,`subs_subscribe_scene`,`credit`,`active_time`,`qr_code` diff --git a/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml b/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml index 75df9a432..2eadee7a7 100644 --- a/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml @@ -29,14 +29,13 @@ - wcubi.`id`,wcubi.`phone`,wcubi.`birthdate`,wcubi.`education`,wcubi.`sex`,wcubi.`height`,wcubi.`weight`,wcubi.`id_card`,wcubi.`email`, wcubi.`address`,wcubi.`poins`,wcubi.`tag_id`,wcubi.`create_date`,wcubi.`update_date`, wcubi.`final_tenant_id`,wcubi.`tenant_id`,wcubi.`parent_tenant_id`,wcubi.`name`,wcubi.`nick_name`, - wcubi.`avatar_url`,wcubi.`credit`,wcubi.`active_time`,wcubi.`login_count`,wcubi.`act_record`,wcubi.`qr_code` + wcubi.`avatar_url`,wcubi.`credit`,wcubi.`active_time`,wcubi.`login_count`,wcubi.`act_record` ,(select level from wx_level_config where poins >= points and tenant_id=wcubi.final_tenant_id order by points desc limit 1 ) level,wcubi.score_date,wcubi.status @@ -270,11 +269,6 @@ where id=#{id} - - update wx_c_user_basic_info set qr_code=#{qrCode} - where id=#{id} - - update wx_c_user_basic_info set poins=poins+#{poins} where id=#{id} diff --git a/mallinkService/src/main/resources/mapper/WxCUserMapper.xml b/mallinkService/src/main/resources/mapper/WxCUserMapper.xml index 4146ec925..52ad8f0fb 100644 --- a/mallinkService/src/main/resources/mapper/WxCUserMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCUserMapper.xml @@ -47,6 +47,7 @@ + @@ -57,7 +58,7 @@ `login_count`, `extra_info`, `is_subscribe`, `open_app_id`, `mp_open_id`,`mp_app_id`,`mp_subscribe`,`mp_subscribe_time`,`mp_subscribe_scene`, - `subs_open_id`,`subs_app_id`,`subs_subscribe`,`subs_subscribe_time`,`subs_subscribe_scene`,`credit`,`active_time` + `subs_open_id`,`subs_app_id`,`subs_subscribe`,`subs_subscribe_time`,`subs_subscribe_scene`,`credit`,`active_time`,`qr_code` diff --git a/mallinkService/src/main/resources/mapper/WxCouponChannelMapper.xml b/mallinkService/src/main/resources/mapper/WxCouponChannelMapper.xml index 4290842d5..202412607 100644 --- a/mallinkService/src/main/resources/mapper/WxCouponChannelMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCouponChannelMapper.xml @@ -18,11 +18,12 @@ - + + - distinct cc.`id`,cc.`tenant_id`,cc.`parent_tenant_id`,cc.`coupon_id`,cc.`coupon_status`,cc.`type`,cc.`title`,cc.`target_ad`,cc.`business`,cc.`sub_business`,cc.`show_begin_time`,cc.`begin_time`,cc.`end_time`,cc.`status`,cc.`create_date`,cc.`update_date`,cc.`sub_target_id`,cc.qr_code + distinct cc.`id`,cc.`tenant_id`,cc.`parent_tenant_id`,cc.`coupon_id`,cc.`coupon_status`,cc.`type`,cc.`title`,cc.`target_ad`,cc.`business`,cc.`sub_business`,cc.`show_begin_time`,cc.`begin_time`,cc.`end_time`,cc.`status`,cc.`create_date`,cc.`update_date`,cc.`sub_target_id`,cc.qr_code,cc.tt_qr_code @@ -206,7 +207,8 @@ - + + @@ -267,7 +269,7 @@ c.use_limit_rule,c.use_limit_quantity,c.send_type,c.valid_type,c.valid_start_date,c.valid_end_date,c.pick_start_date,c.pick_end_date, c.valid_days,c.detail,c.price,c.tail_price,c.orig_price,c.unit,c.remain_inventory,c.inventory,c.remark,c.status, c.create_date,c.update_date,c.business,c.sub_business,c.support_transfer,c.press_limit_num, c.auto_refund,c.credit_price,c.conditions,c.content_type, - cc.qr_code + cc.qr_code,cc.tt_qr_code @@ -317,7 +319,8 @@ - + + @@ -366,7 +369,8 @@ - + + @@ -422,7 +426,7 @@ diff --git a/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml b/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml index c5c7d94c0..b9d0a50ec 100644 --- a/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml @@ -29,6 +29,7 @@ + @@ -49,13 +50,13 @@ m.`id`,m.`tenant_id`,m.`parent_tenant_id`,m.`img_url`,m.`name`,m.`encode`,m.`link_phone`,m.`create_date`,m.`update_date`,m.`car_vendor_type`,m.`car_params`,m.`status`,m.`link_person`, - m.`business_id`,m.`business_types`,m.`sub_business_id`,m.`shop_type`,m.`brand`,m.`type`,m.`is_public`,m.email,m.`title`,m.`cover_picture`,m.`is_admin`,m.`bill_setting`,m.`qr_code`, + m.`business_id`,m.`business_types`,m.`sub_business_id`,m.`shop_type`,m.`brand`,m.`type`,m.`is_public`,m.email,m.`title`,m.`cover_picture`,m.`is_admin`,m.`bill_setting`,m.`qr_code`,m.`tt_qr_code`, m.`introduction`,m.`action_desc`,m.`mark`,m.mark_time,m.`is_del`,m.`talk_user_main`,m.`talk_user_aux`,m.link_line_phone,m.credit_locked,m.credit_locked,m.entry_amount,m.cash_out_count,m.cash_out_last_time m.`id`,m.`tenant_id`,m.`parent_tenant_id`,m.`img_url`,m.`name`,m.`encode`,m.`link_phone`,m.`create_date`,m.`update_date`,m.`car_vendor_type`,m.`car_params`,m.`status`,m.`link_person`, - m.`business_id`,m.`business_types`,m.`sub_business_id`,m.`shop_type`,m.`brand`,m.`type`,m.`is_public`,m.email,m.`title`,m.`cover_picture`,m.`is_admin`,m.`bill_setting`,m.`qr_code`, + m.`business_id`,m.`business_types`,m.`sub_business_id`,m.`shop_type`,m.`brand`,m.`type`,m.`is_public`,m.email,m.`title`,m.`cover_picture`,m.`is_admin`,m.`bill_setting`,m.`qr_code`,m.`tt_qr_code`, m.`introduction`,m.`action_desc`,m.`mark`,m.mark_time,m.`is_del`,m.`talk_user_main`,m.`talk_user_aux`,m.link_line_phone,r.rental_start_date,r.rental_end_date,m.entry_amount,m.cash_out_number,m.cash_out_count,m.cash_out_last_time @@ -538,7 +539,7 @@ select m.`id`,m.`tenant_id`,m.`parent_tenant_id`,m.`img_url`,m.`name`,m.`encode`,m.`link_phone`,m.`create_date`,m.`update_date`,m.`car_vendor_type`,m.`car_params`,m.`status`,m.`link_person`, - m.`business_id`,m.`business_types`,m.`sub_business_id`,m.`shop_type`,m.`brand`,m.`type`,m.`is_public`,m.email,m.`title`,m.`cover_picture`,m.`is_admin`,m.`bill_setting`,m.`qr_code`, + m.`business_id`,m.`business_types`,m.`sub_business_id`,m.`shop_type`,m.`brand`,m.`type`,m.`is_public`,m.email,m.`title`,m.`cover_picture`,m.`is_admin`,m.`bill_setting`,m.`qr_code`,m.`tt_qr_code`, m.`introduction`,m.`action_desc`,m.`mark`,m.mark_time,m.`is_del`,m.`talk_user_main`,m.`talk_user_aux`,m.link_line_phone,m.credit_locked,m.credit_locked, b.name brandName,bu.title businessTitle,mc.corp_papers_register_number corpPapersRegisterNumber,mc.corp_papers_address corpPapersAddress from wx_shop s @@ -727,7 +728,7 @@ select m.`id`,m.`tenant_id` tenantId,m.`parent_tenant_id` parentTenantId,m.`img_url`,m.`name`,m.`encode`,m.`link_phone`,m.`create_date`,m.`update_date`, m.`car_vendor_type`,m.`car_params`,m.`status`,m.`link_person`, - m.`business_id`,m.`business_types`,m.`sub_business_id`,m.`shop_type`,m.`brand`,m.`type`,m.`is_public`,m.email,m.`title`,m.`cover_picture`,m.`is_admin`,m.`bill_setting`,m.`qr_code`, + m.`business_id`,m.`business_types`,m.`sub_business_id`,m.`shop_type`,m.`brand`,m.`type`,m.`is_public`,m.email,m.`title`,m.`cover_picture`,m.`is_admin`,m.`bill_setting`,m.`qr_code`,m.`tt_qr_code`, m.`introduction`,m.`action_desc`,m.`mark`,m.mark_time,m.`is_del`,m.`talk_user_main`,m.`talk_user_aux`,m.link_line_phone,m.credit_locked,m.credit_locked, b.name brandName,bu.title businessTitle,mc.corp_papers_register_number corpPapersRegisterNumber,mc.corp_papers_address corpPapersAddress from wx_merchant m diff --git a/mallinkService/src/main/resources/mapper/WxTemplateMsgMapper.xml b/mallinkService/src/main/resources/mapper/WxTemplateMsgMapper.xml index 1bf6ec3bf..6e01cee2e 100644 --- a/mallinkService/src/main/resources/mapper/WxTemplateMsgMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxTemplateMsgMapper.xml @@ -50,6 +50,10 @@ and `on_off` = #{onOff} + + + and `template_id` is not null and `template_id` <> '' + and `type` in diff --git a/mallinkTTAdmin/src/main/java/com/iformall/controller/basic/WxMerchantController.java b/mallinkTTAdmin/src/main/java/com/iformall/controller/basic/WxMerchantController.java index d3d03eb3d..e04296d7c 100644 --- a/mallinkTTAdmin/src/main/java/com/iformall/controller/basic/WxMerchantController.java +++ b/mallinkTTAdmin/src/main/java/com/iformall/controller/basic/WxMerchantController.java @@ -14,6 +14,7 @@ import com.iformall.domain.po.WxProfitSharingReceiver; import com.iformall.domain.vo.WxMerchantTradeDetailVo; import com.iformall.domain.vo.WxMerchantTradeVo; import com.iformall.domain.vo.WxMerchantVo; +import com.iformall.enums.EnumAppPlat; import com.iformall.enums.EnumMerchantStatus; import com.iformall.enums.EnumPayWay; import com.iformall.service.QrCodeService; @@ -166,18 +167,7 @@ public class WxMerchantController extends BaseController { ResultData resultData = wxMerchantService.addMerchant(wxMerchant, getUserId()); if(resultData.code == 200){ - //加载二维码图片 - String pageUrl = Constant.mainPageUrl; - String param = "t:md:"+resultData.data; - - //这里暂时只有微信二维码,后续有别的二维码,再加字段 - ResultData resultQrCode = qrCodeService.uploadQrcode(wxMerchant,1,pageUrl,param,0,"","","店铺详情",EnumPayWay.PAY_WAY_WECHAT); - Map map = (Map)resultQrCode.data; - if(map!=null && map.get("url") !=null) { - String url = map.get("url"); - wxMerchant.setQrCode(url); - wxMerchantService.updateMerchant(wxMerchant); - } + wxMerchantService.updateQrCode(wxMerchant,wxMerchant.getId()); } return resultData;