Просмотр исходного кода

Merge branch 'release_toaliyun_real_2022_02' of https://git.malls.iformall.com/server/formallProject into release_toaliyun_real

release_toaliyun_real
xhxu 4 лет назад
Родитель
Сommit
cc8b7db9eb
100 измененных файлов: 1340 добавлений и 1798 удалений
  1. +49
    -30
      mallinkAdmin/src/main/java/com/iformall/controller/app/WxAppinfoController.java
  2. +2
    -12
      mallinkAdmin/src/main/java/com/iformall/controller/basic/WxMerchantController.java
  3. +6
    -4
      mallinkAdmin/src/main/java/com/iformall/controller/market/MarkingDataReportController.java
  4. +2
    -2
      mallinkAdmin/src/main/java/com/iformall/controller/market/WxCampaignController.java
  5. +3
    -31
      mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponChannelController.java
  6. +1
    -1
      mallinkAdmin/src/main/java/com/iformall/controller/market/WxUserCouponController.java
  7. +1
    -1
      mallinkAdmin/src/main/java/com/iformall/controller/mem/MemCouponController.java
  8. +97
    -98
      mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCUserDataController.java
  9. +1
    -1
      mallinkAdmin/src/main/java/com/iformall/controller/sys/WxBusinessController.java
  10. +1
    -1
      mallinkAdmin/src/main/resources/db/migration/V2021122800001__add_type.sql
  11. +917
    -0
      mallinkAdmin/src/main/resources/db/migration/V2022010600001__add_ttqrcode.sql
  12. +0
    -154
      mallinkBApi/bin/pom.xml
  13. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/BApplication.class
  14. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/annotation/AuthIgnore.class
  15. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/annotation/LoginUser.class
  16. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/annotation/RedisCache.class
  17. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/annotation/TenantIgnore.class
  18. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/aop/RedisCacheAspect.class
  19. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/config/AwsProperty.class
  20. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/config/MyBatisConfiguration.class
  21. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/config/RedisConfig.class
  22. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/config/Swagger2Config.class
  23. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/config/WebMvcConfig.class
  24. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/BaseController.class
  25. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/PosController.class
  26. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/PosOrderController.class
  27. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/PosPayOrderController.class
  28. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/UploadController.class
  29. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxBillController.class
  30. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxCUserController.class
  31. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxCardPayController.class
  32. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxCashOutController.class
  33. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxCouponChannelController.class
  34. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxCouponController.class
  35. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxCouponOrderController.class
  36. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxCouponSendController.class
  37. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxCreditHistoryController.class
  38. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxDateAmountRecordController.class
  39. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxInfoController.class
  40. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxMallController.class
  41. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxMemController.class
  42. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxMerchantBUserController.class
  43. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxMerchantController.class
  44. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxMerchantSubsidyController.class
  45. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxMerchantTradeDailyController.class
  46. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxMicroPayController.class
  47. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxMsgValidationcodeController.class
  48. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxPayBillController.class
  49. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxRefundOrderController.class
  50. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/controller/WxTagController.class
  51. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/interceptor/AuthorizationInterceptor.class
  52. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/interceptor/BodyReaderHttpServletRequestWrapper.class
  53. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/interceptor/HttpServletRequestWrapperFilter.class
  54. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/interceptor/RequestInterceptor.class
  55. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/interceptor/XssHttpServletRequestWrapper.class
  56. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/service/PosBrunService.class
  57. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/tenant/TenantInfoImpl.class
  58. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/utils/PosUtil.class
  59. Двоичные данные
      mallinkBApi/bin/src/main/java/com/iformall/utils/UrlCheck.class
  60. +0
    -190
      mallinkBApi/bin/src/main/resources/application-dev.yml
  61. +0
    -150
      mallinkBApi/bin/src/main/resources/application-prod.yml
  62. +0
    -106
      mallinkBApi/bin/src/main/resources/application-test.yml-bak
  63. +0
    -54
      mallinkBApi/bin/src/main/resources/application.yml
  64. +0
    -100
      mallinkBApi/bin/src/main/resources/logback-spring.xml
  65. Двоичные данные
      mallinkBApi/bin/src/test/java/com/iformall/b/CouponsendTest.class
  66. +0
    -190
      mallinkBApi/bin/target/classes/application-dev.yml
  67. +0
    -150
      mallinkBApi/bin/target/classes/application-prod.yml
  68. +0
    -106
      mallinkBApi/bin/target/classes/application-test.yml-bak
  69. +0
    -54
      mallinkBApi/bin/target/classes/application.yml
  70. +0
    -100
      mallinkBApi/bin/target/classes/logback-spring.xml
  71. +1
    -8
      mallinkBApi/src/main/java/com/iformall/controller/BaseController.java
  72. +1
    -1
      mallinkBApi/src/main/java/com/iformall/controller/PosController.java
  73. +1
    -1
      mallinkBApi/src/main/java/com/iformall/controller/PosOrderController.java
  74. +1
    -1
      mallinkBApi/src/main/java/com/iformall/controller/PosPayOrderController.java
  75. +1
    -2
      mallinkBApi/src/main/java/com/iformall/controller/WxBillController.java
  76. +1
    -1
      mallinkBApi/src/main/java/com/iformall/controller/WxCardPayController.java
  77. +1
    -2
      mallinkBApi/src/main/java/com/iformall/controller/WxCashOutController.java
  78. +3
    -27
      mallinkBApi/src/main/java/com/iformall/controller/WxCouponChannelController.java
  79. +51
    -52
      mallinkBApi/src/main/java/com/iformall/controller/WxCouponController.java
  80. +39
    -39
      mallinkBApi/src/main/java/com/iformall/controller/WxCouponOrderController.java
  81. +0
    -1
      mallinkBApi/src/main/java/com/iformall/controller/WxCouponSendController.java
  82. +20
    -21
      mallinkBApi/src/main/java/com/iformall/controller/WxCreditHistoryController.java
  83. +16
    -4
      mallinkBApi/src/main/java/com/iformall/controller/WxInfoController.java
  84. +4
    -0
      mallinkBApi/src/main/resources/application.yml
  85. +7
    -8
      mallinkCApi/src/main/java/com/iformall/controller/WxBusinessController.java
  86. +10
    -12
      mallinkCApi/src/main/java/com/iformall/controller/WxCampaignController.java
  87. +39
    -20
      mallinkCApi/src/main/java/com/iformall/controller/WxCouponChannelController.java
  88. +6
    -4
      mallinkCApi/src/main/java/com/iformall/controller/WxCouponOrderController.java
  89. +1
    -0
      mallinkCApi/src/main/java/com/iformall/controller/WxMsgController.java
  90. +23
    -10
      mallinkCApi/src/main/java/com/iformall/controller/WxTopicController.java
  91. +5
    -33
      mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java
  92. +1
    -0
      mallinkCallback/src/main/java/com/iformall/config/ShiroConfig.java
  93. +21
    -6
      mallinkCallback/src/main/java/com/iformall/controller/callback/JinMaoController.java
  94. +5
    -8
      mallinkCallback/src/main/java/com/iformall/controller/callback/TtPayController.java
  95. +0
    -0
      mallinkNeuPosAdmin/logPath_IS_UNDEFINED/debug.log
  96. +0
    -0
      mallinkNeuPosAdmin/logPath_IS_UNDEFINED/error.log
  97. +0
    -0
      mallinkNeuPosAdmin/logPath_IS_UNDEFINED/info.log
  98. +0
    -0
      mallinkNeuPosAdmin/logPath_IS_UNDEFINED/trace.log
  99. +0
    -0
      mallinkNeuPosAdmin/logPath_IS_UNDEFINED/warn.log
  100. +2
    -2
      mallinkPosApi/src/main/java/com/iformall/service/impl/PosServiceImpl.java

+ 49
- 30
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<WxMerchant> list = wxMerchantMapper.findQrcodeEmptyList();
logger.info("updateQrCode.count:"+list.size());
for (WxMerchant merchant : list) {
@@ -67,13 +66,21 @@ 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<String, String> 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 wxQrCode = qrCodeService.uploadQrcode(merchant, 1, pageUrl, param, 0, "", "", "WX店铺"+merchant.getId().toString(),EnumAppPlat.WX);
Map<String, String> wxMap = (Map) wxQrCode.data;
if(wxMap != null && wxMap.get("url") != null) {
merchant.setQrCode(wxMap.get("url"));
}
}
if(StringUtils.isBlank(merchant.getTtQrCode())){
ResultData ttQrCode = qrCodeService.uploadQrcode(merchant, 1, pageUrl, param, 0, "", "", "TT店铺"+merchant.getId().toString(),EnumAppPlat.TOUTIAO);
Map<String, String> ttMap = (Map) ttQrCode.data;
if(ttMap != null && ttMap.get("url") != null) {
merchant.setTtQrCode(ttMap.get("url"));
}
}
wxMerchantMapper.updateById(merchant);
}
});
}
@@ -82,9 +89,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<WxCouponChannel> list = wxCouponChannelMapper.findQrcodeEmptyList();
logger.info("updateCouponQrCode.count:"+list.size());
@@ -93,15 +104,22 @@ 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<String,String> 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 wxQrCode = qrCodeService.uploadQrcode(couponChannel, 1, pageUrl, param, 0, "", "", "WX券"+couponChannel.getId().toString(),EnumAppPlat.WX);
Map<String, String> wxMap = (Map) wxQrCode.data;
if(wxMap != null && wxMap.get("url") != null) {
couponChannel.setQrCode(wxMap.get("url"));
}
}
if(StringUtils.isBlank(couponChannel.getTtQrCode())){
ResultData ttQrCode = qrCodeService.uploadQrcode(couponChannel, 1, pageUrl, param, 0, "", "", "TT券"+couponChannel.getId().toString(),EnumAppPlat.TOUTIAO);
Map<String, String> ttMap = (Map) ttQrCode.data;
if(ttMap != null && ttMap.get("url") != null) {
couponChannel.setTtQrCode(ttMap.get("url"));
}
}
wxCouponChannelMapper.updateById(couponChannel);
}
});
}
@@ -138,7 +156,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, "下载异常");
@@ -149,14 +167,14 @@ public class WxAppinfoController extends BaseController {
@GetMapping("/getAppMouldType")
public ResultData getAppMouldType(Integer plat) {
logger.debug("[" + getIpAddr() + "] WxAppinfoController::getAppMouldType");
if(plat == null){
plat = EnumAppPlat.WX.getCode();
}
EnumAppPlat byCode = EnumAppPlat.getByCode(plat);
if(byCode == null){
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR);
}
WxAppinfo cAppInfo = wxAppinfoService.getCAppInfoFromRedis(ifParentUpdateAloneTenantInfo().getTenantId(), byCode);
// if(plat == null){
// plat = EnumAppPlat.WX.getCode();
// }
// EnumAppPlat byCode = EnumAppPlat.getByCode(plat);
// if(byCode == null){
// return new ResultData(ErrorCode.SYS_PARAMETER_ERROR);
// }
WxAppinfo cAppInfo = wxAppinfoService.getCAppInfoFromRedis(ifParentUpdateAloneTenantInfo().getTenantId(), null);
return new ResultData(cAppInfo);
}

@@ -167,11 +185,12 @@ public class WxAppinfoController extends BaseController {
if(appinfo == null || appinfo.getId() == null || appinfo.getMouldType() == null){
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL);
}
WxAppinfo updateAppinfo = new WxAppinfo();
updateAppinfo.setId(appinfo.getId());
updateAppinfo.setMouldType(appinfo.getMouldType());
updateAppinfo.updateTenantInfo(ifParentUpdateAloneTenantInfo());
wxAppinfoService.saveOrUpdate(updateAppinfo);
// WxAppinfo updateAppinfo = new WxAppinfo();
// updateAppinfo.setId(appinfo.getId());
// updateAppinfo.setMouldType(appinfo.getMouldType());
// updateAppinfo.updateTenantInfo(ifParentUpdateAloneTenantInfo());
// wxAppinfoService.saveOrUpdate(updateAppinfo);
wxAppinfoService.updateCMouldType(ifParentUpdateAloneTenantInfo(),appinfo.getMouldType());
return new ResultData();
}



+ 2
- 12
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<String,String> 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;


+ 6
- 4
mallinkAdmin/src/main/java/com/iformall/controller/market/MarkingDataReportController.java Просмотреть файл

@@ -92,9 +92,10 @@ public class MarkingDataReportController extends BaseController {
public ResultData touchUsersDataList(@ModelAttribute MarkingCouponDataReportDto markingCouponDataReportDto, Integer pageNum, Integer pageSize) {
logger.debug("[" + getIpAddr() + "] MarkingDataReportController::touchUsersDataList");
TenantEntity tenantInfo = getTenantInfo();
List<TenantEntity> tenantEntitys = wxMallService.getTenantEntitys(tenantInfo);
markingCouponDataReportDto.setTenantEntitys(tenantEntitys);
//List<TenantEntity> tenantEntitys = wxMallService.getTenantEntitys(tenantInfo);
//markingCouponDataReportDto.setTenantEntitys(tenantEntitys);
markingCouponDataReportDto.updateTenantInfo(tenantInfo);
markingCouponDataReportDto.setTenantEntity(tenantInfo);
return new ResultData(markingDataReportService.getTouchUsersReportList(markingCouponDataReportDto, pageNum, pageSize));
}

@@ -103,9 +104,10 @@ public class MarkingDataReportController extends BaseController {
@SystemControllerLog(description = "券数据-触达用户数数据导出")
public void exportTouchUsersData(@ModelAttribute MarkingCouponDataReportDto markingCouponDataReportDto, HttpServletRequest request, HttpServletResponse response) {
TenantEntity tenantInfo = getTenantInfo();
List<TenantEntity> tenantEntitys = wxMallService.getTenantEntitys(tenantInfo);
markingCouponDataReportDto.setTenantEntitys(tenantEntitys);
//List<TenantEntity> tenantEntitys = wxMallService.getTenantEntitys(tenantInfo);
//markingCouponDataReportDto.setTenantEntitys(tenantEntitys);
markingCouponDataReportDto.updateTenantInfo(tenantInfo);
markingCouponDataReportDto.setTenantEntity(tenantInfo);
markingDataReportService.exportTouchUsersData(request, response, markingCouponDataReportDto);
}



+ 2
- 2
mallinkAdmin/src/main/java/com/iformall/controller/market/WxCampaignController.java Просмотреть файл

@@ -169,8 +169,8 @@ public class WxCampaignController extends BaseController {
wxCouponChannel.setTargetAd(EnumCouponChannelType.COUPON_CHANNEL_ID_CAMPAIN.getCode());
wxCouponChannel.setSubTargetId(wxCampaign.getId());
wxCouponChannel.setStatus(EnumCampaignStatus.STATUS_THROW_IN.getCode());
List<WxCouponChannelVo> couponList = wxCouponChannelService.listVo(wxCouponChannel);
wxCampaign.setCoupons(couponList);
List<WxCouponChannelVo> voList = wxCouponChannelService.newfindListVo(wxCouponChannel);
wxCampaign.setCoupons(voList);
}
return new ResultData(Result.SUCCESS, "查询成功", wxCampaign);
}


+ 3
- 31
mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponChannelController.java Просмотреть файл

@@ -5,21 +5,13 @@ import com.github.pagehelper.PageInfo;
import com.iformall.annotation.SystemControllerLog;
import com.iformall.common.Result;
import com.iformall.common.ResultData;
import com.iformall.controller.app.WxAppinfoController;
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.EnumCouponSourceType;
import com.iformall.enums.EnumPayWay;
import com.iformall.domain.po.base.BaseEntity;
import com.iformall.domain.vo.WxCouponChannelVo;
import com.iformall.mapper.WxCouponChannelMapper;
import com.iformall.service.QrCodeService;
import com.iformall.service.WxCouponChannelService;
import com.iformall.service.WxCouponService;
import com.iformall.service.WxFlowService;
import com.iformall.utils.Constant;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -32,27 +24,17 @@ import org.springframework.web.bind.annotation.*;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;


@RestController
@RequestMapping("wxCouponChannel")
@Api(description = "优惠券投放接口")
public class WxCouponChannelController extends BaseController {

private final Logger logger = LoggerFactory.getLogger(this.getClass());

@Autowired
private WxCouponChannelService wxCouponChannelService;
@Autowired
private WxAppinfoController wxAppinfoController;
@Autowired
private WxCouponChannelMapper wxCouponChannelMapper;
@Autowired
private QrCodeService qrCodeService;
@Autowired
private WxFlowService wxFlowService;
@Autowired
private WxCouponService wxCouponService;

@ApiOperation("分页列表接口")
@GetMapping("list")
@@ -77,7 +59,7 @@ public class WxCouponChannelController extends BaseController {
}else{
wxCouponChannel.setSortColumns(BaseEntity.SortField.CCUpdateDate_DESC);
}
final PageInfo<WxCouponChannelVo> page = wxCouponChannelService.listPageCVo(wxCouponChannel, pageNum, pageSize);
final PageInfo<WxCouponChannelVo> page = wxCouponChannelService.newListPageVo(wxCouponChannel, pageNum, pageSize);
return new ResultData(page);
}

@@ -92,17 +74,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<String,String> 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;
}


+ 1
- 1
mallinkAdmin/src/main/java/com/iformall/controller/market/WxUserCouponController.java Просмотреть файл

@@ -39,7 +39,7 @@ public class WxUserCouponController extends BaseController {
if(wxUserCoupon==null||wxUserCoupon.getCUserId()==null||wxUserCoupon.getCouponStatus()==null){
return new ResultData(Result.ERROR,"查询失败");
}
return new ResultData(Result.SUCCESS,"查询成功",wxUserCouponService.findList(wxUserCoupon.getCUserId(),wxUserCoupon.getCouponStatus()));
return new ResultData(Result.SUCCESS,"查询成功",wxUserCouponService.findList(getTenantInfo(),wxUserCoupon.getCUserId(),wxUserCoupon.getCouponStatus()));
}




+ 1
- 1
mallinkAdmin/src/main/java/com/iformall/controller/mem/MemCouponController.java Просмотреть файл

@@ -63,7 +63,7 @@ public class MemCouponController extends BaseController {
}else{
wxCouponChannel.setSortColumns(BaseEntity.SortField.CCUpdateDate_DESC);
}
final PageInfo<WxCouponChannelVo> page = couponChannelService.listPageCVo(wxCouponChannel, pageNum, pageSize);
final PageInfo<WxCouponChannelVo> page = couponChannelService.newListPageVo(wxCouponChannel, pageNum, pageSize);
return new ResultData(page);
}



+ 97
- 98
mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCUserDataController.java Просмотреть файл

@@ -264,104 +264,103 @@ public class WxCUserDataController extends BaseController {
return new ResultData(mapVo);
}

//TODO 待优化数据
// @ApiOperation("查询用户消费金额")
// @GetMapping("findUserAmountData")
// @SystemControllerLog(description = "会员首页-报表数据-查询用户消费金额")
// public ResultData findUserAmountData(Integer plat) {
// logger.debug("[" + getIpAddr() + "] WxCUserDataController::findUserAmountData");
// if(plat == null){
// plat = EnumAppPlat.WX.getCode();
// }
// TenantEntity tenantEntity = getTenantInfo();
// Calendar c = Calendar.getInstance();
// Date today = c.getTime();
// c.add(Calendar.DAY_OF_YEAR, 1);
// c.set(Calendar.HOUR_OF_DAY, 0);
// c.set(Calendar.MINUTE, 0);
// c.set(Calendar.SECOND, 0);
// Date endTime = c.getTime();//明天0点
// c.add(Calendar.DAY_OF_YEAR, -30);//三十天前
// Date startTime = c.getTime();
// List<TenantEntity> tenantEntitys = wxMallService.getTenantEntitys(tenantEntity);
// WxCouponOrder wxCouponOrder = new WxCouponOrder();
// wxCouponOrder.updateTenantInfo(tenantEntity);
// wxCouponOrder.setStartTime(startTime);
// wxCouponOrder.setEndTime(endTime);
// int thisMonthCount = wxCouponOrderService.queryPriceTotal(wxCouponOrder,tenantEntitys);//月消费金额
// c.clear();
// c.setTime(endTime);
// Date eTime = c.getTime();
// c.add(Calendar.DAY_OF_YEAR, -30);
// Date sTime = c.getTime();
// List<CUserDateAmountVo> datas = wxCouponOrderService.queryPriceTotalGroup(tenantEntity, sTime, eTime);
// Map<String, Integer> dataMap = new HashMap<>();
// for (CUserDateAmountVo v : datas) {
// dataMap.put(v.getXTime(), v.getPrice());
// }
// Integer todayCount = 0;//今日金额数
// Integer yesterdayCount = 0;//昨日金额数
// Integer dayOfWeekCount = 0;//上周x
// List<UserStructureVo> weekVos = new ArrayList<>();//周消费金额
// List<UserStructureVo> monthVos = new ArrayList<>();//周消费金额
// for (int i = 29, sortNum = 0; i >= 0; i--) {
// c.clear();
// c.setTime(today);
// c.add(Calendar.DAY_OF_YEAR, -i);
// String dateStr = new SimpleDateFormat("yyyy-MM-dd").format(c.getTime());
// UserStructureVo vo = new UserStructureVo();
// vo.setName(new SimpleDateFormat("MM/dd").format(c.getTime()));
// vo.setSortNum(sortNum++);
// if (dataMap.get(dateStr) != null) {
// int price = dataMap.get(dateStr);
// vo.setPrice(price);
// } else {
// vo.setPrice(0);
// }
// if (i <= 7) {
// UserStructureVo vow = new UserStructureVo();
// vow.setName(vo.getName());
// vow.setSortNum(vo.getSortNum());
// vow.setPrice(vo.getPrice());
//
// if (i == 0) {
// todayCount = vow.getPrice();
// }
// if (i == 1) {
// yesterdayCount = vow.getPrice();
// }
// if (i == 7) {
// dayOfWeekCount = vow.getPrice();
// } else {
// weekVos.add(vow);
// }
// }
// monthVos.add(vo);
// }
//
// NumberFormat nf = NumberFormat.getPercentInstance();
// nf.setMinimumFractionDigits(2);
// String dayPercentage = "--";
// if (yesterdayCount > 0) {
// Integer count = todayCount - yesterdayCount;
// dayPercentage = nf.format(count.doubleValue() / new Double(yesterdayCount).doubleValue());
// }
// String weekPercentage = "--";
// if (dayOfWeekCount > 0) {
// Integer count = todayCount - dayOfWeekCount;
// weekPercentage = nf.format(count.doubleValue() / new Double(dayOfWeekCount).doubleValue());
// }
// Map<String, Object> map = new HashMap<>();
// DecimalFormat df = new DecimalFormat("0.00");
// map.put("todayCount", df.format((float) todayCount / 100));//今日消费金额
// String thisMonthCountStr = df.format((float) thisMonthCount / 100);
// map.put("thisMonthCount", thisMonthCountStr);//近一个月消费金额数
// map.put("dayPercentage", dayPercentage);//日环比
// map.put("weekPercentage", weekPercentage); //周同比
// map.put("weekVos", weekVos);//一周金额列表
// map.put("monthVos", monthVos);//一月金额列表
// return new ResultData(map);
// }
@ApiOperation("查询用户消费金额")
@GetMapping("findUserAmountData")
@SystemControllerLog(description = "会员首页-报表数据-查询用户消费金额")
public ResultData findUserAmountData(Integer plat) {
logger.debug("[" + getIpAddr() + "] WxCUserDataController::findUserAmountData");
if(plat == null){
plat = EnumAppPlat.WX.getCode();
}
TenantEntity tenantEntity = getTenantInfo();
Calendar c = Calendar.getInstance();
Date today = c.getTime();
c.add(Calendar.DAY_OF_YEAR, 1);
c.set(Calendar.HOUR_OF_DAY, 0);
c.set(Calendar.MINUTE, 0);
c.set(Calendar.SECOND, 0);
Date endTime = c.getTime();//明天0点
c.add(Calendar.DAY_OF_YEAR, -30);//三十天前
Date startTime = c.getTime();
List<TenantEntity> tenantEntitys = wxMallService.getTenantEntitys(tenantEntity);
WxCouponOrder wxCouponOrder = new WxCouponOrder();
wxCouponOrder.updateTenantInfo(tenantEntity);
wxCouponOrder.setStartTime(startTime);
wxCouponOrder.setEndTime(endTime);
int thisMonthCount = wxCouponOrderService.queryPriceTotal(wxCouponOrder,tenantEntitys);//月消费金额
c.clear();
c.setTime(endTime);
Date eTime = c.getTime();
c.add(Calendar.DAY_OF_YEAR, -30);
Date sTime = c.getTime();
List<CUserDateAmountVo> datas = wxCouponOrderService.queryPriceTotalGroup(tenantEntity, sTime, eTime);
Map<String, Integer> dataMap = new HashMap<>();
for (CUserDateAmountVo v : datas) {
dataMap.put(v.getXTime(), v.getPrice());
}
Integer todayCount = 0;//今日金额数
Integer yesterdayCount = 0;//昨日金额数
Integer dayOfWeekCount = 0;//上周x
List<UserStructureVo> weekVos = new ArrayList<>();//周消费金额
List<UserStructureVo> monthVos = new ArrayList<>();//周消费金额
for (int i = 29, sortNum = 0; i >= 0; i--) {
c.clear();
c.setTime(today);
c.add(Calendar.DAY_OF_YEAR, -i);
String dateStr = new SimpleDateFormat("yyyy-MM-dd").format(c.getTime());
UserStructureVo vo = new UserStructureVo();
vo.setName(new SimpleDateFormat("MM/dd").format(c.getTime()));
vo.setSortNum(sortNum++);
if (dataMap.get(dateStr) != null) {
int price = dataMap.get(dateStr);
vo.setPrice(price);
} else {
vo.setPrice(0);
}
if (i <= 7) {
UserStructureVo vow = new UserStructureVo();
vow.setName(vo.getName());
vow.setSortNum(vo.getSortNum());
vow.setPrice(vo.getPrice());

if (i == 0) {
todayCount = vow.getPrice();
}
if (i == 1) {
yesterdayCount = vow.getPrice();
}
if (i == 7) {
dayOfWeekCount = vow.getPrice();
} else {
weekVos.add(vow);
}
}
monthVos.add(vo);
}

NumberFormat nf = NumberFormat.getPercentInstance();
nf.setMinimumFractionDigits(2);
String dayPercentage = "--";
if (yesterdayCount > 0) {
Integer count = todayCount - yesterdayCount;
dayPercentage = nf.format(count.doubleValue() / new Double(yesterdayCount).doubleValue());
}
String weekPercentage = "--";
if (dayOfWeekCount > 0) {
Integer count = todayCount - dayOfWeekCount;
weekPercentage = nf.format(count.doubleValue() / new Double(dayOfWeekCount).doubleValue());
}
Map<String, Object> map = new HashMap<>();
DecimalFormat df = new DecimalFormat("0.00");
map.put("todayCount", df.format((float) todayCount / 100));//今日消费金额
String thisMonthCountStr = df.format((float) thisMonthCount / 100);
map.put("thisMonthCount", thisMonthCountStr);//近一个月消费金额数
map.put("dayPercentage", dayPercentage);//日环比
map.put("weekPercentage", weekPercentage); //周同比
map.put("weekVos", weekVos);//一周金额列表
map.put("monthVos", monthVos);//一月金额列表
return new ResultData(map);
}


}


+ 1
- 1
mallinkAdmin/src/main/java/com/iformall/controller/sys/WxBusinessController.java Просмотреть файл

@@ -43,7 +43,7 @@ public class WxBusinessController extends BaseController {
@SystemControllerLog(description = "业态-全列表")
public ResultData listAll() {
logger.debug("[" + getIpAddr() + "] WxBusinessController::getList");
final List<WxBusiness> busList = wxBusinessService.findListAll(getTenantInfo(),null);
final List<WxBusiness> busList = wxBusinessService.findListAll(getTenantInfo(),null,null);
return new ResultData(busList);
}



+ 1
- 1
mallinkAdmin/src/main/resources/db/migration/V2021122800001__add_type.sql Просмотреть файл

@@ -1,5 +1,5 @@

UPDATE `mallink`.`mall_sale_type` SET `menus` = '[1, 2, 4, 5, 6, 50, 105, 110, 201, 205, 202, 211, 212, 221, 222, 251, 409, 411, 416, 500, 502, 504, 505, 506, 507, 508, 511, 512, 521, 522, 523, 531, 532, 533, 591, 592, 595, 602, 605, 606, 610, 641, 671, 674, 680, 711, 901, 902, 904, 907]' WHERE `id` = 11;
UPDATE `mallink`.`mall_sale_type` SET `menus` = '[1, 2, 4, 5, 6, 50, 105, 110, 201, 205, 202, 211, 212, 221, 222, 251, 409, 411, 416, 500, 502, 504, 505, 506, 507, 508, 511, 512, 521, 522, 523, 531, 532, 591, 592, 595, 602, 605, 606, 607, 610, 641, 671, 674, 680, 711, 901, 902, 904, 907, 60702]' WHERE `id` = 11;





+ 917
- 0
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`;


+ 0
- 154
mallinkBApi/bin/pom.xml Просмотреть файл

@@ -1,154 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>mallink</artifactId>
<groupId>com.iformall</groupId>
<version>1.0</version>
</parent>

<artifactId>mallinkBApi</artifactId>

<dependencies>
<dependency>
<groupId>com.iformall</groupId>
<artifactId>mallinkService</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<executable>true</executable>
<layout>ZIP</layout>
<excludeGroupIds>
antlr,
cn.afterturn,
ch.qos.logback,
com.alibaba,
com.amazonaws,
com.baomidou,
com.mchange,
com.fasterxml.jackson.core,
com.fasterxml.jackson.dataformat,
com.fasterxml.jackson.datatype,
com.fasterxml.jackson.module,
com.fasterxml.uuid,
com.fasterxml,
com.github.axet,
com.github.jsqlparser,
com.github.pagehelper,
com.github.ulisesbocchio,
com.github.virtuald,
com.google.code.findbugs,
com.google.code.gson,
com.google.errorprone,
com.google.guava,
com.google.protobuf,
com.google.zxing,
com.jayway.jsonpath,
com.jhlabs,
com.puppycrawl.tools,
com.rabbitmq,
com.squareup.okhttp3,
com.squareup.okio,
com.sun,
com.sun.mail,
com.thoughtworks.xstream,
com.zaxxer,
commons-beanutils,
commons-cli,
commons-codec,
commons-collections,
commons-fileupload,
commons-io,
commons-logging,
io.lettuce,
io.netty,
io.projectreactor,
io.springfox,
io.swagger,
io.undertow,
javax.activation,
javax.annotation,
javax.mail,
javax.persistence,
javax.servlet,
javax.validation,
javax.xml.bind,
javax.xml.soap,
javax.xml.ws,
joda-time,
junit,
mysql,
net.bytebuddy,
net.minidev,
net.sf.dozer,
net.sf.saxon,
ognl,
org.antlr,
org.apache.commons,
org.apache.httpcomponents,
org.apache.logging.log4j,
org.apache.poi,
org.apache.poi.wso2,
org.apache.rocketmq,
org.apache.shiro,
org.apache.tomcat.embed,
org.apache.xmlbeans,
org.aspectj,
org.assertj,
org.bouncycastle,
org.checkerframework,
org.codehaus.mojo,
org.crazycake,
org.dom4j,
org.flowable,
org.flywaydb,
org.glassfish,
org.hibernate.validator,
org.jasypt,
org.javassist,
org.jboss.logging,
org.jboss.spec.javax.annotation,
org.jboss.spec.javax.websocket,
org.jboss.xnio,
org.jdom,
org.jodd,
org.jvnet.mimepull,
org.jvnet.staxex,
org.mapstruct,
org.mockito,
org.mybatis,
org.mybatis.generator,
org.mybatis.spring.boot,
org.ow2.asm,
org.projectlombok,
org.quartz-scheduler,
org.reactivestreams,
org.reflections,
org.rocketmq.spring.boot,
org.slf4j,
org.springframework,
org.springframework.amqp,
org.springframework.boot,
org.springframework.data,
org.springframework.retry,
org.springframework.ws,
org.yaml,
redis.clients,
software.amazon.ion,
tk.mybatis,
xmlpull,
xpp3
</excludeGroupIds>
</configuration>
</plugin>
</plugins>
</build>
</project>

Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/BApplication.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/annotation/AuthIgnore.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/annotation/LoginUser.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/annotation/RedisCache.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/annotation/TenantIgnore.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/aop/RedisCacheAspect.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/config/AwsProperty.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/config/MyBatisConfiguration.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/config/RedisConfig.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/config/Swagger2Config.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/config/WebMvcConfig.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/BaseController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/PosController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/PosOrderController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/PosPayOrderController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/UploadController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxBillController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxCUserController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxCardPayController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxCashOutController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxCouponChannelController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxCouponController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxCouponOrderController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxCouponSendController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxCreditHistoryController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxDateAmountRecordController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxInfoController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxMallController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxMemController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxMerchantBUserController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxMerchantController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxMerchantSubsidyController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxMerchantTradeDailyController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxMicroPayController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxMsgValidationcodeController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxPayBillController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxRefundOrderController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/controller/WxTagController.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/interceptor/AuthorizationInterceptor.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/interceptor/BodyReaderHttpServletRequestWrapper.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/interceptor/HttpServletRequestWrapperFilter.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/interceptor/RequestInterceptor.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/interceptor/XssHttpServletRequestWrapper.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/service/PosBrunService.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/tenant/TenantInfoImpl.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/utils/PosUtil.class Просмотреть файл


Двоичные данные
mallinkBApi/bin/src/main/java/com/iformall/utils/UrlCheck.class Просмотреть файл


+ 0
- 190
mallinkBApi/bin/src/main/resources/application-dev.yml Просмотреть файл

@@ -1,190 +0,0 @@
spring:
profiles:
#include: aliyunRocketMQ
include: rabbitMQ
# JDBC
datasource:
url: jdbc:mysql://101.200.130.134:3306/mallink?characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&useUnicode=true&useSSL=false&useAffectedRows=true
username: root
password: fm2020test
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
filters: stat
maxActive: 20
initialSize: 1
maxWait: 60000
minIdle: 1
timeBetweenEvictionRunsMillis: 28000
minEvictableIdleTimeMillis: 28000
validationQuery: select 'x'
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
poolPreparedStatements: true
maxOpenPreparedStatements: 20
#jackson:
#date-format: yyyy-MM-dd HH:mm:ss
# REDIS
redis:
host: 101.200.130.134
port: 6379
password: iF0rm@2l2ol9
timeout: 3600
expire: 1800 #30分钟
database: 5
defaultExpiration: 2592000 # 默认生命周期30天
jedis:
pool:
max-active: 50
max-idle: 30
max-wait: -1
min-idle: 0

# SMS
aliyun:
sms:
accessKeyId: LTAI4G7ixY4AhvM35F8o3W3V
accessKeySecret: VfWqGb83qIQrS9us45utskl8itd7ry
product: Dysmsapi
domain: dysmsapi.aliyuncs.com
regionId: cn-hangzhou
dateFormat: yyyyMMdd
endpointName: cn-hangzhou

oss:
endpoint: oss-cn-beijing.aliyuncs.com
keyid: LTAI4G7ixY4AhvM35F8o3W3V
keysecret: VfWqGb83qIQrS9us45utskl8itd7ry
bucketname: formall
filehost: malinkbapi
filedomain: https://formall.oss-accelerate.aliyuncs.com

# EMAIL
mail:
host: smtp.exmail.qq.com
username: service@iformall.com
password: jGvApygXN7wc5SzN # 授权密码
properties:
mail:
smtp:
auth: true
starttls:
enable: true
socketFactory:
port: 465
class: javax.net.ssl.SSLSocketFactory
# ROCKETMQ
rocketmq:
nameServer: 127.0.0.1:9876
producer:
retry-times-when-send-async-failed: 0
send-msg-timeout: 300000
compress-msg-body-over-howmuch: 4096
max-message-size: 4194304
retry-another-broker-when-not-store-ok: false
retry-times-when-send-failed: 2
# RABBITMQ
rabbitmq:
host: 101.200.130.134
port: 5672
username: fumao
password: f9l98
publisher-confirms: true
publisher-returns: false
virtual-host: /
aliyunRocketmq:
accessKeyId: "LTAI4G7ixY4AhvM35F8o3W3V"
accessKeySecret: "VfWqGb83qIQrS9us45utskl8itd7ry"
groupId: "GID_P_1"
namesrvAddr: "http://MQ_INST_1796289517488555_Bcqaq2is.cn-beijing.mq-internal.aliyuncs.com:8080"

aws:
clientRegion: cn-northwest-1
bucketName: iformall-net
access: ENC(3gx5ghDFBqGrEhO3Wf8aYmXsnwHO7Cj3HNKJGOeUj0o=)
secret: ENC(HVKIJwCJKVXLlUpGlQPwNqJOlnpxn4xYuy91SH0seTSm2uAttIQHvA49fXWWax90v5wloIk0QuU=)

jasypt:
encryptor:
password: oRqdnDbK5pj3eMmB

#wechat:
# open:
# componentAppId: "wxdfc8fb4e62d6b52b"
# componentSecret: "98daa62b316dd6feabaad708327ce233"
# componentToken: "formall2018"
# componentAesKey: "htKq8EjBMPNndfZQK9JiFojFaqFwFpw42VfeWFtx7HN"
# redis:
# host: 101.201.103.81
# port: 6379
# password: ENC(xPFDlgd6v8zUhJMbcKc0KmmQiqs9qHtk)
# timeout: 3600
# expire: 1800 #30分钟
# database: 2
# defaultExpiration: 2592000 # 默认生命周期30天
# jedis:
# pool:
# max-active: 100
# max-idle: 500
# max-wait: -1
# min-idle: 10

wechat:
web:
appId: "wx091907dd0bfd3f6b"
secret: "2a2ca10738998b9ef92c1fe8a4d366a6"
url: "https://admintest.malls.iformall.com"
open:
componentAppId: wxdfc8fb4e62d6b52b
componentSecret: 98daa62b316dd6feabaad708327ce233
componentToken: formall2018
componentAesKey: htKq8EjBMPNndfZQK9JiFojFaqFwFpw42VfeWFtx7HN
redis:
host: 101.200.130.134
port: 6379
password: iF0rm@2l2ol9
timeout: 3600
expire: 1800 #30分钟
database: 2
defaultExpiration: 2592000 # 默认生命周期30天
jedis:
pool:
max-active: 100
max-idle: 100
max-wait: -1
min-idle: 10
alipay:
open:
appId: 2021002137663024
appPrivateKey: MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCUfymV5J73QQMG52PVIGUbowkloYCO4B7TQoKbrTZf2YeYsg/To/o4PiXPMNwEUfEUU8NYQ6WwNhCd2fa1ei8WFXJUf3bfgswtBk1aOmHLeY9yoXFxIKMTQ9RcobnmBzKQZlaAPMTSr7t1QtKZKPuc2gEHGRFYKO/ZuL8gIpnsVidVtmi52yd7hzao/pI3ThLA0lreg4L3rYP5ESQZRytxIPgUQ4KI11pZxFgbe+uy28AGDYIQscSIb+SWOHPYKLvOEqqepIZ8M18w/U0lZzpzepzi/V/llekvXJ6UEf1lzl7x/4UIA3WPN1B40+NzbD/OxEGTuM0UctOG6ZTd4Te9AgMBAAECggEAPYksnHbvARspu/SrRCh2fatkIPn6Ijrxyy3mnch7neCw9i/jqxpqmF/4nxFqO0gRlRDZBHyT7p+Y5zDpsW5+kLI2fJmNkzXKkmXoLBnBaOZo8WHBdtXFfjg/iltig9Y7t+cQtXd5QK2eCwuz5dA75FXa0ywqKdRdAGY0nYZ5LpwrHVU8RXheUDCJyhKNj2+W6lIaSKDxLZU3laO1oBrv1agcy7Crd5E2ndb8O3Enga+z7wSz2h7A1BasC/Yl/Ro0Y21wLCH3s/R6qA0Paq12+WEF+xdodM7SrP43CCTVFGbC1TfEOdanJfixop8QuYsIp7pHrL925+vP4eY9RfckgQKBgQDQqLdpDzzU7Ot/L9Vc/r8d4iwXXbX8+HwVFV4oBuausgFyv8eJJpfrI+IlEoB1ubJcPpJBFqfmeYTW6/v6ioFljJAlWfFvesUVt/HszBMIOsU0Bzt7ex6WlwKOagb0q0ZPA4T0OY0K0lg0loaaaR8ZTr4ivDymaGBtTBYhslpc7QKBgQC2MBznGEc5r2dhyENvdPOR20PnXQcevGnPdqSus8m0VmDcHE72RVcckcZtwczsb3NaLSqmjAcWTn51/VFmlvhB3F34FcFTPZGq6sj7fWK8HuFq7l7mu5OzYuVr73zy9ggsUuaw10IqvvwIVxszNAF0hiRnSGH3z27CoRmz3s+8EQKBgQCK3o7atBJ3X4rIJiypbL4DhIB1uJ+jUjk6yvLUTut+fufp1+tTw0S+cS5UIAEw2Lr1G4u5F/v8rwmTBJG6SC4gSLGyui6uVBYRA1BWmedcxchzfRDAeMt9y9kesUAZ3Fe5xIzbAeZ1ulKMBVZmM+pHrJlsgr0Wv0bV1xqvqITtbQKBgBIsIGXopQoa9dvqBtfyOW1eCprkS5aEQqWf9vM6Ga90QjsSU8n6xqKh48IE57TZtQ7UnIF6TCasc66/MsRh4KdpHLJnMR5lcMc0nhF/wz5ychehaTPol+X3wlyOyc7OPah2KG6ROhdbb3ZBggQMduyxiKYIsUTvmuOtAAxR+DSRAoGADtuDzGQDOJYWiO2uuP6FpA5IJaiwlSfu3xncJVfhO8SVr6VBJFg88igbIB3w6nk/sv7j9VTXqXre9HMvp1flxaaLsdxM4HcTSALS9q6t/ajaveqte6S5kAtWx0WW8C6PtgWXHbxcD7LXARSsKLoEl2JXXyUVS/m2l/RzHBQ8GJI=
appPublicKeyCertPath: /opt/iformall/service/alipay/appCertPublicKey_2021002137663024.crt
alipayCertPath: /opt/iformall/service/alipay/alipayCertPublicKey_RSA2.crt
alipayRootCertPath: /opt/iformall/service/alipay/alipayRootCert.crt
callback: https://callbacktest.malls.iformall.com/api/alipay/notify/callback
video:
aliyun:
accessKeyId: LTAI4G7ixY4AhvM35F8o3W3V
accessKeySecret: VfWqGb83qIQrS9us45utskl8itd7ry
regionId: cn-beijing

fm:
exception: true
exception_emails: xuxiaohu@iformall.com
deploy: 1
open: true
upload_dir: /home/test/server/uploads
videoType: aliyun

pos:
dev_id: fmpos
url: https://pos.youlane.cn/api
req_key: ZiGFLC4@3c5sTLZT
res_key: ugPAM7wd&%p6I0W8


logging:
level:
com.iformall.mapper: debug
path: ./logs/b

+ 0
- 150
mallinkBApi/bin/src/main/resources/application-prod.yml Просмотреть файл

@@ -1,150 +0,0 @@
spring:
profiles:
include: aliyunRocketMQ
# JDBC
datasource:
url: jdbc:mysql://zc349w82qvn56ftl5e64-rw4rm.rwlb.rds.aliyuncs.com:3306/mallink?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=UTF-8&useSSL=false&useAffectedRows=true
username: ENC(nUefcxWYlMS/1cDxikIKwA==)
password: ENC(neToS+hzeFjgSFB/7UEl5qYnW2rUjrPq)
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
filters: stat
maxActive: 20
initialSize: 1
maxWait: 60000
minIdle: 1
timeBetweenEvictionRunsMillis: 28000
minEvictableIdleTimeMillis: 28000
validationQuery: select 'x'
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
poolPreparedStatements: true
maxOpenPreparedStatements: 20
# REDIS
redis:
host: r-2zeaglwf13qqmnllj5.redis.rds.aliyuncs.com
port: 6379
password: mallone:iF0rm@2l2ol9
timeout: 3600
expire: 1800 #30分钟
database: 1
defaultExpiration: 2592000 # 默认生命周期30天
jedis:
pool:
max-active: 100
max-idle: 20
max-wait: -1
min-idle: 0
# SMS
aliyun:
sms:
accessKeyId: LTAI4G7ixY4AhvM35F8o3W3V
accessKeySecret: VfWqGb83qIQrS9us45utskl8itd7ry
product: Dysmsapi
domain: dysmsapi.aliyuncs.com
regionId: cn-hangzhou
dateFormat: yyyyMMdd
endpointName: cn-hangzhou
oss:
endpoint: oss-cn-beijing.aliyuncs.com
keyid: LTAI4G7ixY4AhvM35F8o3W3V
keysecret: VfWqGb83qIQrS9us45utskl8itd7ry
bucketname: formall
filehost: malinkadmin
filedomain: https://formall.oss-accelerate.aliyuncs.com
# EMAIL
mail:
host: smtp.exmail.qq.com
username: sysadministor@iformall.com # 登陆密码sysAd1231
password: SWqPekCEmhUYuYCd # 授权密码
properties:
mail:
smtp:
auth: true
starttls:
enable: true
socketFactory:
port: 465
class: javax.net.ssl.SSLSocketFactory
# RABBITMQ
rabbitmq:
host: localhost
port: 5672
username: ENC(lRmLd6EzgeY1RT5ktcHv9g==)
password: ENC(gBI8mCjr3OC0v57jcnSb660Ux7mW03K2oePgvohhg7w=)
publisher-confirms: true
publisher-returns: false
virtual-host: /
aliyunRocketmq:
accessKeyId: "LTAI4G7ixY4AhvM35F8o3W3V"
accessKeySecret: "VfWqGb83qIQrS9us45utskl8itd7ry"
groupId: "GID_P_1"
namesrvAddr: "http://MQ_INST_1796289517488555_Bcqaq2is.cn-beijing.mq-internal.aliyuncs.com:8080"

aws:
clientRegion: cn-northwest-1
bucketName: iformall-net
access: ENC(a6SN1sZ1enNL49ypiOXkg/pPPAnZD8H4buQFTTKN08s=)
secret: ENC(5P5ff4bTMJUbXVR4ZsM03UHzOKZ4+Zg5Iutcdkyp/Quny/oXg+A4KpfwEyGarlLu3vQMJahGP5M=)

wechat:
open:
componentAppId: ENC(b3JG0MUZgQfz5Zj+DC2ZM1zDeLOiGTmmeokfe2O8kaM=)
componentSecret: ENC(QVyc4BPGdnSjXGs2ivgpDBE1v8wPWHLLRMYI7Vv8uYwC0SiZHQz0QpyyQV/b48Pb)
componentToken: ENC(rkxj0733WxFFDLgA9x01m2s5Fi2L+0PC)
componentAesKey: ENC(EIbJUBpbYOrLb4YQ/HXLQmxlxgAqIp2ZmpnGICC8pu5xiTz3Cqfkbwd2S8raCcK/IvYcX2GmedI=)
redis:
host: r-2zeaglwf13qqmnllj5.redis.rds.aliyuncs.com
port: 6379
password: mallone:iF0rm@2l2ol9
timeout: 3600
expire: 1800 #30分钟
database: 2
defaultExpiration: 2592000 # 默认生命周期30天
jedis:
pool:
max-active: 100
max-idle: 100
max-wait: -1
min-idle: 10
alipay:
open:
appId: 2021002140616334
appPrivateKey: MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCEJmHIlS0luIH7zJRRVlypCcgiSkqpSlnmgyCEM7nu8IerV8Yf7dMBitBklTpJB+4URV1bW+q6Ijzo8RsCyjm1Kx+EFiKf1PiJXlT0h1+bF3fYdDr6r5GK0/TtB8O80p774NcRD3HgbzUS8AEe/GcBvhiXbDRgJh7yAngW9vxl9u1o5UcaxOXVLWDrjlQGF6qyXUlycCNIdPXj3LduP3PBK5daVZwJm33Pr7kmSI0agZvV267HaTpSKaiXI7Zwo+nFMqx9g9kpzmYRfOgHx3DWpQUFI646IB8nEpLpQp3/0eDocuqiHXYgEpLpPoFKoVE228v74YSFh3Y4fFGX+qtjAgMBAAECggEAIJK9Y42xtSyHjaNdo7bf3CK3HAyn3pafFjyYFT4SxJyxNEDMay5Z5nVq7IAD/+BehMycOFqtvveVf+1+NO/XzZo1iH9URYVfRazkz+lWXYopVkdACm6gN1ILeymAy9g2q+s918ywyxteP668+ABK+5j5wsk/F7wNwKVvKGn0yMT7DP0FAL1e0KWndZCZlF79VnFpBLscDJq28GqRzqYop4CWqHHTA6DBvIqkfQV4U3IzqnzOsxNLEMBwhnbK08XfYZ3DxCPH0jQdA2Jj/aABrntq2EpWjzW5H9iZqrVo33rmsNHUSQvla/333RkbpwGyNhI6kcPBRq4cVSAa3y7dMQKBgQDVfyDUPWKXVwIJUgO1my8WIUu2p6nhuT7Mfnpk4X7ewdFaRVjb/r0KvhLgoz2/KOwkqtWTlEvNaCDDycpLXk+V5ZH833kYsDEmxY7ikOUjCcrfYJgT7P77//cZ4Kx8a5X45SiKAZT2GQv7BTtIfNhrfTUj6AQx/3MP3sa2QAWeNQKBgQCedWoF7t+qyck2hctqtTFC7fRkEk7RNJVph1ZOeTqOIAKhmhkwaOE3joxQ/VqHDy212YdW4hI0BWUzbEdMy0Idz2G3y9ERVD84hZehf5GGRdiSrY9EEQgHlcI6Qb8/AnDdpy1DlKUMwTYjVNzkDL3AzeWn61JS1XQaOzZBsJy2NwKBgFa+pJQXrOtYytcGn8M2Hlebh6vbS8cPAVkNOqWqiWXw0iMfcg9Q3XZz7C+hpAD7m5b6YnToGDSJTma+opck5qk88agRFJ7XV+Es+/VKcg9edzNzh9bwwFmbksbM5shW3kSWt3X7Vo73dkqzwXaeY0CpSuIf7zRxWkrkdVCvipjRAoGAMcJlPN+6VQNwsDJromKryXy31gT5wzBkCvN44sOm46KhsOWXK2CD+NJGtdgZaXgWvphEq7/qP3PCR9ekvDTH2lyZLwJN8Mcn4zPwXcKVjDi6vbTK3HEMuHUKvQiQadT2ZGRvDl3LRqoVuhqYEvT9UWJWz9hRzblB8ErPyukPDRkCgYB7bMv2iflpaGE1J3gkTlVJB+2QSfnAXaUDMLWsZN4gYjwEBVCEJ+mhWL1/GeEIBjSs5/qZIeRsYzlxGEcnsJzRfog6ITBF14AeZ+xNkHq83ja87OGVKMypiccGwRehijDhJi6tgMJ0u0w6PiqcJvh0SX4jBhDDPjuWzK2XD+lx8A==
appPublicKeyCertPath: /opt/iformall/service/alipay/appCertPublicKey_2021002140616334.crt
alipayCertPath: /opt/iformall/service/alipay/alipayCertPublicKey_RSA2.crt
alipayRootCertPath: /opt/iformall/service/alipay/alipayRootCert.crt
callback: https://callback.malls.iformall.com/api/alipay/notify/callback
video:
aliyun:
accessKeyId: LTAI4G7ixY4AhvM35F8o3W3V
accessKeySecret: VfWqGb83qIQrS9us45utskl8itd7ry
regionId: cn-beijing
endPoint: https://oss-cn-beijing.aliyuncs.com
corePoolSize: 6
maxPoolSize: 20
queueCapacity: 1000
namePrefix: aliyun-video-upload

fm:
exception: true
exception_emails: houtaikaifa@iformall.com
deploy: 3
open: true
upload_dir: /root/uploads/
videoType: aliyun

pos:
dev_id: fmpos
url: https://pos.malls.iformall.com/api
req_key: ZiGFLC4@3c5sTLZT
res_key: ugPAM7wd&%p6I0W8

logging:
level:
com.iformall.mapper: debug
path: ./logs/b

+ 0
- 106
mallinkBApi/bin/src/main/resources/application-test.yml-bak Просмотреть файл

@@ -1,106 +0,0 @@
spring:
profiles:
include: rabbitMQ
# JDBC
datasource:
url: jdbc:mysql://formalldb.cfqyqflkdlit.rds.cn-northwest-1.amazonaws.com.cn:3306/mallinkTest?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=UTF-8&useSSL=false&useAffectedRows=true
username: ENC(Uc0AjgkytxHHCwZrmDASWg==)
password: ENC(nV4Mi3bEbBx0Fj7uUyYH55eTaqsFMjKvmNzagicH4pc=)
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
filters: stat
maxActive: 20
initialSize: 1
maxWait: 60000
minIdle: 1
timeBetweenEvictionRunsMillis: 28000
minEvictableIdleTimeMillis: 28000
validationQuery: select 'x'
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
poolPreparedStatements: true
maxOpenPreparedStatements: 20
# REDIS
redis:
host: 127.0.0.1
port: 6379
password: ENC(QFwqv3NshvvGhFPiP8rwhvbnxk+rFSqhJi8Pw6TogSg=)
timeout: 3600
expire: 1800 #30分钟
database: 1
defaultExpiration: 2592000 # 默认生命周期30天
jedis:
pool:
max-active: 50
max-idle: 30
max-wait: -1
min-idle: 0
# EMAIL
mail:
host: smtp.exmail.qq.com
username: ENC(TtJQE2C4cWo8CpVGMMl5hiy5eykepd96J5XjsW3Kj5fgP+6+5ctDNQ==)
password: ENC(Zh6A6kRtA2ABtH6nzdvsqQSO1/8p3mparJr8neI2BLU=) # 授权密码
properties:
mail:
smtp:
auth: true
starttls:
enable: true
socketFactory:
port: 465
class: javax.net.ssl.SSLSocketFactory
# RABBITMQ
rabbitmq:
host: 127.0.0.1
port: 5672
username: ENC(aSRr6mnSryEqzHHz1hJf1g==)
password: ENC(GnjF/mdqKdvmDYC0tIIso7+20/jBALPw39tiWCYJ4iw=)
publisher-confirms: true
publisher-returns: false
virtual-host: /

aws:
clientRegion: cn-northwest-1
bucketName: iformall-net
access: ENC(NCLcmjwKpAWdn/abD17OKIY7yKepVLWzEpqRYUlURCw=)
secret: ENC(TRcZqql0Rq5PExlMeH/4WiZ/i02b8FXKmLTBChJmbluTa1uoLS9LrHyNEMrqe1DK+QgOAdvqGBo=)

wechat:
open:
componentAppId: ENC(hnH31XdNzArfMfikKgBFpqQuJUl6rVOPFFcAVyb595o=)
componentSecret: ENC(t/GUVX5L+U7LCwSvZ5WmxAnmTMrc/Uy1nljsrokuzzsBL2j6BEVnrS/n7DCdGc/G)
componentToken: ENC(gUF1m0YgCCI2IY54fX6sGLZVlCswA8tG)
componentAesKey: ENC(TYHcrIkICtfrCfGq4HW6s1b/pHf7OD2uyPN11SzJNB0acqJ/4JVX1nuljo/cAtgMG4O05TImLQc=)
redis:
host: 127.0.0.1
port: 6379
password: ENC(QFwqv3NshvvGhFPiP8rwhvbnxk+rFSqhJi8Pw6TogSg=)
timeout: 3600
expire: 1800 #30分钟
database: 2
defaultExpiration: 2592000 # 默认生命周期30天
jedis:
pool:
max-active: 100
max-idle: 100
max-wait: -1
min-idle: 10

fm:
exception: true
exception_emails: houtaikaifa@iformall.com
deploy: 2
open: true
upload_dir: /home/ec2-user/server/uploads/

pos:
dev_id: fmpos
url: https://postest.malls.iformall.com/api
req_key: ZiGFLC4@3c5sTLZT
res_key: ugPAM7wd&%p6I0W8

logging:
level:
com.iformall: debug
path: ./logs/b

+ 0
- 54
mallinkBApi/bin/src/main/resources/application.yml Просмотреть файл

@@ -1,54 +0,0 @@
server:
port: 8000
servlet:
context-path: /B

spring:
application:
name: mallink
profiles:
active: dev
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
default-property-inclusion: non_null
# rocketmq:
# nameServer: 127.0.0.1:9876
# producer:
# retry-times-when-send-async-failed: 0
# send-msg-timeout: 300000
# compress-msg-body-over-howmuch: 4096
# max-message-size: 4194304
# retry-another-broker-when-not-store-ok: false
# retry-times-when-send-failed: 2

# MybatisPlus
mybatis-plus:
mapper-locations: classpath:mapper/*Mapper.xml
global-config:
db-config:
id-type: id_worker
field-strategy: not_null
db-type: mysql
configuration:
jdbc-type-for-null: 'null'
cache-enabled: false
call-setters-on-nulls: true
type-aliases-package: com.iformall.domain.po
type-enums-package: com.iformall.enums

# PageHelper
pagehelper:
helperDialect: mysql
reasonable: false
supportMethodsArguments: true
params: count=countSql
offset-as-page-num: true
page-size-zero: true
row-bounds-with-count: true

mapper:
mappers:
- com.iformall.common.CommonMapper

version: @project.version@

+ 0
- 100
mallinkBApi/bin/src/main/resources/logback-spring.xml Просмотреть файл

@@ -1,100 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="10 seconds">
<!-- 外部指定路径 -->
<springProperty scop="context" name="logPath" source="logging.path" />

<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<Pattern>[%date{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] --%mdc{client}%msg%n</Pattern>
</encoder>
</appender>

<appender name="TRACE_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${logPath}/trace.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${logPath}/daily/trace.%d{yyyy-MM-dd}.log</FileNamePattern>
<maxHistory>30</maxHistory> <!-- 保留180天 -->
</rollingPolicy>
<layout>
<pattern>[%date{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] [%logger:%line]--%mdc{client} %msg%n</pattern>
</layout>
</appender>

<appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${logPath}/info.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${logPath}/daily/info.%d{yyyy-MM-dd}.log</FileNamePattern>
<maxHistory>30</maxHistory> <!-- 保留180天 -->
</rollingPolicy>
<layout>
<pattern>[%date{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] [%logger:%line]--%mdc{client} %msg%n</pattern>
</layout>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>INFO</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>

<appender name="DEBUG_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${logPath}/debug.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${logPath}/daily/debug.%d{yyyy-MM-dd}.log</FileNamePattern>
<maxHistory>30</maxHistory> <!-- 保留180天 -->
</rollingPolicy>
<layout>
<pattern>[%date{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] [%logger:%line]--%mdc{client} %msg%n</pattern>
</layout>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>DEBUG</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>


<appender name="WARN_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${logPath}/warn.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${logPath}/daily/warn.%d{yyyy-MM-dd}.log</FileNamePattern>
<maxHistory>30</maxHistory> <!-- 保留180天 -->
</rollingPolicy>
<layout>
<pattern>[%date{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] [%logger:%line]--%mdc{client} %msg%n</pattern>
</layout>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>WARN</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>



<appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${logPath}/error.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${logPath}/daily/error.%d{yyyy-MM-dd}.log</FileNamePattern>
<maxHistory>30</maxHistory> <!-- 保留180天 -->
</rollingPolicy>
<layout>
<pattern>[%date{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] [%logger:%line]--%mdc{client} %msg%n</pattern>
</layout>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>

<root level="TRACE">
<appender-ref ref="TRACE_FILE" />
<appender-ref ref="INFO_FILE" />
<!-- <appender-ref ref="DEBUG_FILE" /> -->
<!-- <appender-ref ref="WARN_FILE" /> -->
<appender-ref ref="ERROR_FILE" />
</root>
<root level="INFO">
<appender-ref ref="STDOUT" />
</root>
</configuration>

Двоичные данные
mallinkBApi/bin/src/test/java/com/iformall/b/CouponsendTest.class Просмотреть файл


+ 0
- 190
mallinkBApi/bin/target/classes/application-dev.yml Просмотреть файл

@@ -1,190 +0,0 @@
spring:
profiles:
#include: aliyunRocketMQ
include: rabbitMQ
# JDBC
datasource:
url: jdbc:mysql://101.200.130.134:3306/mallink?characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&useUnicode=true&useSSL=false&useAffectedRows=true
username: root
password: fm2020test
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
filters: stat
maxActive: 20
initialSize: 1
maxWait: 60000
minIdle: 1
timeBetweenEvictionRunsMillis: 28000
minEvictableIdleTimeMillis: 28000
validationQuery: select 'x'
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
poolPreparedStatements: true
maxOpenPreparedStatements: 20
#jackson:
#date-format: yyyy-MM-dd HH:mm:ss
# REDIS
redis:
host: 101.200.130.134
port: 6379
password: iF0rm@2l2ol9
timeout: 3600
expire: 1800 #30分钟
database: 5
defaultExpiration: 2592000 # 默认生命周期30天
jedis:
pool:
max-active: 50
max-idle: 30
max-wait: -1
min-idle: 0

# SMS
aliyun:
sms:
accessKeyId: LTAI4G7ixY4AhvM35F8o3W3V
accessKeySecret: VfWqGb83qIQrS9us45utskl8itd7ry
product: Dysmsapi
domain: dysmsapi.aliyuncs.com
regionId: cn-hangzhou
dateFormat: yyyyMMdd
endpointName: cn-hangzhou

oss:
endpoint: oss-cn-beijing.aliyuncs.com
keyid: LTAI4G7ixY4AhvM35F8o3W3V
keysecret: VfWqGb83qIQrS9us45utskl8itd7ry
bucketname: formall
filehost: malinkbapi
filedomain: https://formall.oss-accelerate.aliyuncs.com

# EMAIL
mail:
host: smtp.exmail.qq.com
username: service@iformall.com
password: jGvApygXN7wc5SzN # 授权密码
properties:
mail:
smtp:
auth: true
starttls:
enable: true
socketFactory:
port: 465
class: javax.net.ssl.SSLSocketFactory
# ROCKETMQ
rocketmq:
nameServer: 127.0.0.1:9876
producer:
retry-times-when-send-async-failed: 0
send-msg-timeout: 300000
compress-msg-body-over-howmuch: 4096
max-message-size: 4194304
retry-another-broker-when-not-store-ok: false
retry-times-when-send-failed: 2
# RABBITMQ
rabbitmq:
host: 101.200.130.134
port: 5672
username: fumao
password: f9l98
publisher-confirms: true
publisher-returns: false
virtual-host: /
aliyunRocketmq:
accessKeyId: "LTAI4G7ixY4AhvM35F8o3W3V"
accessKeySecret: "VfWqGb83qIQrS9us45utskl8itd7ry"
groupId: "GID_P_1"
namesrvAddr: "http://MQ_INST_1796289517488555_Bcqaq2is.cn-beijing.mq-internal.aliyuncs.com:8080"

aws:
clientRegion: cn-northwest-1
bucketName: iformall-net
access: ENC(3gx5ghDFBqGrEhO3Wf8aYmXsnwHO7Cj3HNKJGOeUj0o=)
secret: ENC(HVKIJwCJKVXLlUpGlQPwNqJOlnpxn4xYuy91SH0seTSm2uAttIQHvA49fXWWax90v5wloIk0QuU=)

jasypt:
encryptor:
password: oRqdnDbK5pj3eMmB

#wechat:
# open:
# componentAppId: "wxdfc8fb4e62d6b52b"
# componentSecret: "98daa62b316dd6feabaad708327ce233"
# componentToken: "formall2018"
# componentAesKey: "htKq8EjBMPNndfZQK9JiFojFaqFwFpw42VfeWFtx7HN"
# redis:
# host: 101.201.103.81
# port: 6379
# password: ENC(xPFDlgd6v8zUhJMbcKc0KmmQiqs9qHtk)
# timeout: 3600
# expire: 1800 #30分钟
# database: 2
# defaultExpiration: 2592000 # 默认生命周期30天
# jedis:
# pool:
# max-active: 100
# max-idle: 500
# max-wait: -1
# min-idle: 10

wechat:
web:
appId: "wx091907dd0bfd3f6b"
secret: "2a2ca10738998b9ef92c1fe8a4d366a6"
url: "https://admintest.malls.iformall.com"
open:
componentAppId: wxdfc8fb4e62d6b52b
componentSecret: 98daa62b316dd6feabaad708327ce233
componentToken: formall2018
componentAesKey: htKq8EjBMPNndfZQK9JiFojFaqFwFpw42VfeWFtx7HN
redis:
host: 101.200.130.134
port: 6379
password: iF0rm@2l2ol9
timeout: 3600
expire: 1800 #30分钟
database: 2
defaultExpiration: 2592000 # 默认生命周期30天
jedis:
pool:
max-active: 100
max-idle: 100
max-wait: -1
min-idle: 10
alipay:
open:
appId: 2021002137663024
appPrivateKey: MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCUfymV5J73QQMG52PVIGUbowkloYCO4B7TQoKbrTZf2YeYsg/To/o4PiXPMNwEUfEUU8NYQ6WwNhCd2fa1ei8WFXJUf3bfgswtBk1aOmHLeY9yoXFxIKMTQ9RcobnmBzKQZlaAPMTSr7t1QtKZKPuc2gEHGRFYKO/ZuL8gIpnsVidVtmi52yd7hzao/pI3ThLA0lreg4L3rYP5ESQZRytxIPgUQ4KI11pZxFgbe+uy28AGDYIQscSIb+SWOHPYKLvOEqqepIZ8M18w/U0lZzpzepzi/V/llekvXJ6UEf1lzl7x/4UIA3WPN1B40+NzbD/OxEGTuM0UctOG6ZTd4Te9AgMBAAECggEAPYksnHbvARspu/SrRCh2fatkIPn6Ijrxyy3mnch7neCw9i/jqxpqmF/4nxFqO0gRlRDZBHyT7p+Y5zDpsW5+kLI2fJmNkzXKkmXoLBnBaOZo8WHBdtXFfjg/iltig9Y7t+cQtXd5QK2eCwuz5dA75FXa0ywqKdRdAGY0nYZ5LpwrHVU8RXheUDCJyhKNj2+W6lIaSKDxLZU3laO1oBrv1agcy7Crd5E2ndb8O3Enga+z7wSz2h7A1BasC/Yl/Ro0Y21wLCH3s/R6qA0Paq12+WEF+xdodM7SrP43CCTVFGbC1TfEOdanJfixop8QuYsIp7pHrL925+vP4eY9RfckgQKBgQDQqLdpDzzU7Ot/L9Vc/r8d4iwXXbX8+HwVFV4oBuausgFyv8eJJpfrI+IlEoB1ubJcPpJBFqfmeYTW6/v6ioFljJAlWfFvesUVt/HszBMIOsU0Bzt7ex6WlwKOagb0q0ZPA4T0OY0K0lg0loaaaR8ZTr4ivDymaGBtTBYhslpc7QKBgQC2MBznGEc5r2dhyENvdPOR20PnXQcevGnPdqSus8m0VmDcHE72RVcckcZtwczsb3NaLSqmjAcWTn51/VFmlvhB3F34FcFTPZGq6sj7fWK8HuFq7l7mu5OzYuVr73zy9ggsUuaw10IqvvwIVxszNAF0hiRnSGH3z27CoRmz3s+8EQKBgQCK3o7atBJ3X4rIJiypbL4DhIB1uJ+jUjk6yvLUTut+fufp1+tTw0S+cS5UIAEw2Lr1G4u5F/v8rwmTBJG6SC4gSLGyui6uVBYRA1BWmedcxchzfRDAeMt9y9kesUAZ3Fe5xIzbAeZ1ulKMBVZmM+pHrJlsgr0Wv0bV1xqvqITtbQKBgBIsIGXopQoa9dvqBtfyOW1eCprkS5aEQqWf9vM6Ga90QjsSU8n6xqKh48IE57TZtQ7UnIF6TCasc66/MsRh4KdpHLJnMR5lcMc0nhF/wz5ychehaTPol+X3wlyOyc7OPah2KG6ROhdbb3ZBggQMduyxiKYIsUTvmuOtAAxR+DSRAoGADtuDzGQDOJYWiO2uuP6FpA5IJaiwlSfu3xncJVfhO8SVr6VBJFg88igbIB3w6nk/sv7j9VTXqXre9HMvp1flxaaLsdxM4HcTSALS9q6t/ajaveqte6S5kAtWx0WW8C6PtgWXHbxcD7LXARSsKLoEl2JXXyUVS/m2l/RzHBQ8GJI=
appPublicKeyCertPath: /opt/iformall/service/alipay/appCertPublicKey_2021002137663024.crt
alipayCertPath: /opt/iformall/service/alipay/alipayCertPublicKey_RSA2.crt
alipayRootCertPath: /opt/iformall/service/alipay/alipayRootCert.crt
callback: https://callbacktest.malls.iformall.com/api/alipay/notify/callback
video:
aliyun:
accessKeyId: LTAI4G7ixY4AhvM35F8o3W3V
accessKeySecret: VfWqGb83qIQrS9us45utskl8itd7ry
regionId: cn-beijing

fm:
exception: true
exception_emails: xuxiaohu@iformall.com
deploy: 1
open: true
upload_dir: /home/test/server/uploads
videoType: aliyun

pos:
dev_id: fmpos
url: https://pos.youlane.cn/api
req_key: ZiGFLC4@3c5sTLZT
res_key: ugPAM7wd&%p6I0W8


logging:
level:
com.iformall.mapper: debug
path: ./logs/b

+ 0
- 150
mallinkBApi/bin/target/classes/application-prod.yml Просмотреть файл

@@ -1,150 +0,0 @@
spring:
profiles:
include: aliyunRocketMQ
# JDBC
datasource:
url: jdbc:mysql://zc349w82qvn56ftl5e64-rw4rm.rwlb.rds.aliyuncs.com:3306/mallink?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=UTF-8&useSSL=false&useAffectedRows=true
username: ENC(nUefcxWYlMS/1cDxikIKwA==)
password: ENC(neToS+hzeFjgSFB/7UEl5qYnW2rUjrPq)
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
filters: stat
maxActive: 20
initialSize: 1
maxWait: 60000
minIdle: 1
timeBetweenEvictionRunsMillis: 28000
minEvictableIdleTimeMillis: 28000
validationQuery: select 'x'
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
poolPreparedStatements: true
maxOpenPreparedStatements: 20
# REDIS
redis:
host: r-2zeaglwf13qqmnllj5.redis.rds.aliyuncs.com
port: 6379
password: mallone:iF0rm@2l2ol9
timeout: 3600
expire: 1800 #30分钟
database: 1
defaultExpiration: 2592000 # 默认生命周期30天
jedis:
pool:
max-active: 100
max-idle: 20
max-wait: -1
min-idle: 0
# SMS
aliyun:
sms:
accessKeyId: LTAI4G7ixY4AhvM35F8o3W3V
accessKeySecret: VfWqGb83qIQrS9us45utskl8itd7ry
product: Dysmsapi
domain: dysmsapi.aliyuncs.com
regionId: cn-hangzhou
dateFormat: yyyyMMdd
endpointName: cn-hangzhou
oss:
endpoint: oss-cn-beijing.aliyuncs.com
keyid: LTAI4G7ixY4AhvM35F8o3W3V
keysecret: VfWqGb83qIQrS9us45utskl8itd7ry
bucketname: formall
filehost: malinkadmin
filedomain: https://formall.oss-accelerate.aliyuncs.com
# EMAIL
mail:
host: smtp.exmail.qq.com
username: sysadministor@iformall.com # 登陆密码sysAd1231
password: SWqPekCEmhUYuYCd # 授权密码
properties:
mail:
smtp:
auth: true
starttls:
enable: true
socketFactory:
port: 465
class: javax.net.ssl.SSLSocketFactory
# RABBITMQ
rabbitmq:
host: localhost
port: 5672
username: ENC(lRmLd6EzgeY1RT5ktcHv9g==)
password: ENC(gBI8mCjr3OC0v57jcnSb660Ux7mW03K2oePgvohhg7w=)
publisher-confirms: true
publisher-returns: false
virtual-host: /
aliyunRocketmq:
accessKeyId: "LTAI4G7ixY4AhvM35F8o3W3V"
accessKeySecret: "VfWqGb83qIQrS9us45utskl8itd7ry"
groupId: "GID_P_1"
namesrvAddr: "http://MQ_INST_1796289517488555_Bcqaq2is.cn-beijing.mq-internal.aliyuncs.com:8080"

aws:
clientRegion: cn-northwest-1
bucketName: iformall-net
access: ENC(a6SN1sZ1enNL49ypiOXkg/pPPAnZD8H4buQFTTKN08s=)
secret: ENC(5P5ff4bTMJUbXVR4ZsM03UHzOKZ4+Zg5Iutcdkyp/Quny/oXg+A4KpfwEyGarlLu3vQMJahGP5M=)

wechat:
open:
componentAppId: ENC(b3JG0MUZgQfz5Zj+DC2ZM1zDeLOiGTmmeokfe2O8kaM=)
componentSecret: ENC(QVyc4BPGdnSjXGs2ivgpDBE1v8wPWHLLRMYI7Vv8uYwC0SiZHQz0QpyyQV/b48Pb)
componentToken: ENC(rkxj0733WxFFDLgA9x01m2s5Fi2L+0PC)
componentAesKey: ENC(EIbJUBpbYOrLb4YQ/HXLQmxlxgAqIp2ZmpnGICC8pu5xiTz3Cqfkbwd2S8raCcK/IvYcX2GmedI=)
redis:
host: r-2zeaglwf13qqmnllj5.redis.rds.aliyuncs.com
port: 6379
password: mallone:iF0rm@2l2ol9
timeout: 3600
expire: 1800 #30分钟
database: 2
defaultExpiration: 2592000 # 默认生命周期30天
jedis:
pool:
max-active: 100
max-idle: 100
max-wait: -1
min-idle: 10
alipay:
open:
appId: 2021002140616334
appPrivateKey: MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCEJmHIlS0luIH7zJRRVlypCcgiSkqpSlnmgyCEM7nu8IerV8Yf7dMBitBklTpJB+4URV1bW+q6Ijzo8RsCyjm1Kx+EFiKf1PiJXlT0h1+bF3fYdDr6r5GK0/TtB8O80p774NcRD3HgbzUS8AEe/GcBvhiXbDRgJh7yAngW9vxl9u1o5UcaxOXVLWDrjlQGF6qyXUlycCNIdPXj3LduP3PBK5daVZwJm33Pr7kmSI0agZvV267HaTpSKaiXI7Zwo+nFMqx9g9kpzmYRfOgHx3DWpQUFI646IB8nEpLpQp3/0eDocuqiHXYgEpLpPoFKoVE228v74YSFh3Y4fFGX+qtjAgMBAAECggEAIJK9Y42xtSyHjaNdo7bf3CK3HAyn3pafFjyYFT4SxJyxNEDMay5Z5nVq7IAD/+BehMycOFqtvveVf+1+NO/XzZo1iH9URYVfRazkz+lWXYopVkdACm6gN1ILeymAy9g2q+s918ywyxteP668+ABK+5j5wsk/F7wNwKVvKGn0yMT7DP0FAL1e0KWndZCZlF79VnFpBLscDJq28GqRzqYop4CWqHHTA6DBvIqkfQV4U3IzqnzOsxNLEMBwhnbK08XfYZ3DxCPH0jQdA2Jj/aABrntq2EpWjzW5H9iZqrVo33rmsNHUSQvla/333RkbpwGyNhI6kcPBRq4cVSAa3y7dMQKBgQDVfyDUPWKXVwIJUgO1my8WIUu2p6nhuT7Mfnpk4X7ewdFaRVjb/r0KvhLgoz2/KOwkqtWTlEvNaCDDycpLXk+V5ZH833kYsDEmxY7ikOUjCcrfYJgT7P77//cZ4Kx8a5X45SiKAZT2GQv7BTtIfNhrfTUj6AQx/3MP3sa2QAWeNQKBgQCedWoF7t+qyck2hctqtTFC7fRkEk7RNJVph1ZOeTqOIAKhmhkwaOE3joxQ/VqHDy212YdW4hI0BWUzbEdMy0Idz2G3y9ERVD84hZehf5GGRdiSrY9EEQgHlcI6Qb8/AnDdpy1DlKUMwTYjVNzkDL3AzeWn61JS1XQaOzZBsJy2NwKBgFa+pJQXrOtYytcGn8M2Hlebh6vbS8cPAVkNOqWqiWXw0iMfcg9Q3XZz7C+hpAD7m5b6YnToGDSJTma+opck5qk88agRFJ7XV+Es+/VKcg9edzNzh9bwwFmbksbM5shW3kSWt3X7Vo73dkqzwXaeY0CpSuIf7zRxWkrkdVCvipjRAoGAMcJlPN+6VQNwsDJromKryXy31gT5wzBkCvN44sOm46KhsOWXK2CD+NJGtdgZaXgWvphEq7/qP3PCR9ekvDTH2lyZLwJN8Mcn4zPwXcKVjDi6vbTK3HEMuHUKvQiQadT2ZGRvDl3LRqoVuhqYEvT9UWJWz9hRzblB8ErPyukPDRkCgYB7bMv2iflpaGE1J3gkTlVJB+2QSfnAXaUDMLWsZN4gYjwEBVCEJ+mhWL1/GeEIBjSs5/qZIeRsYzlxGEcnsJzRfog6ITBF14AeZ+xNkHq83ja87OGVKMypiccGwRehijDhJi6tgMJ0u0w6PiqcJvh0SX4jBhDDPjuWzK2XD+lx8A==
appPublicKeyCertPath: /opt/iformall/service/alipay/appCertPublicKey_2021002140616334.crt
alipayCertPath: /opt/iformall/service/alipay/alipayCertPublicKey_RSA2.crt
alipayRootCertPath: /opt/iformall/service/alipay/alipayRootCert.crt
callback: https://callback.malls.iformall.com/api/alipay/notify/callback
video:
aliyun:
accessKeyId: LTAI4G7ixY4AhvM35F8o3W3V
accessKeySecret: VfWqGb83qIQrS9us45utskl8itd7ry
regionId: cn-beijing
endPoint: https://oss-cn-beijing.aliyuncs.com
corePoolSize: 6
maxPoolSize: 20
queueCapacity: 1000
namePrefix: aliyun-video-upload

fm:
exception: true
exception_emails: houtaikaifa@iformall.com
deploy: 3
open: true
upload_dir: /root/uploads/
videoType: aliyun

pos:
dev_id: fmpos
url: https://pos.malls.iformall.com/api
req_key: ZiGFLC4@3c5sTLZT
res_key: ugPAM7wd&%p6I0W8

logging:
level:
com.iformall.mapper: debug
path: ./logs/b

+ 0
- 106
mallinkBApi/bin/target/classes/application-test.yml-bak Просмотреть файл

@@ -1,106 +0,0 @@
spring:
profiles:
include: rabbitMQ
# JDBC
datasource:
url: jdbc:mysql://formalldb.cfqyqflkdlit.rds.cn-northwest-1.amazonaws.com.cn:3306/mallinkTest?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=UTF-8&useSSL=false&useAffectedRows=true
username: ENC(Uc0AjgkytxHHCwZrmDASWg==)
password: ENC(nV4Mi3bEbBx0Fj7uUyYH55eTaqsFMjKvmNzagicH4pc=)
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
filters: stat
maxActive: 20
initialSize: 1
maxWait: 60000
minIdle: 1
timeBetweenEvictionRunsMillis: 28000
minEvictableIdleTimeMillis: 28000
validationQuery: select 'x'
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
poolPreparedStatements: true
maxOpenPreparedStatements: 20
# REDIS
redis:
host: 127.0.0.1
port: 6379
password: ENC(QFwqv3NshvvGhFPiP8rwhvbnxk+rFSqhJi8Pw6TogSg=)
timeout: 3600
expire: 1800 #30分钟
database: 1
defaultExpiration: 2592000 # 默认生命周期30天
jedis:
pool:
max-active: 50
max-idle: 30
max-wait: -1
min-idle: 0
# EMAIL
mail:
host: smtp.exmail.qq.com
username: ENC(TtJQE2C4cWo8CpVGMMl5hiy5eykepd96J5XjsW3Kj5fgP+6+5ctDNQ==)
password: ENC(Zh6A6kRtA2ABtH6nzdvsqQSO1/8p3mparJr8neI2BLU=) # 授权密码
properties:
mail:
smtp:
auth: true
starttls:
enable: true
socketFactory:
port: 465
class: javax.net.ssl.SSLSocketFactory
# RABBITMQ
rabbitmq:
host: 127.0.0.1
port: 5672
username: ENC(aSRr6mnSryEqzHHz1hJf1g==)
password: ENC(GnjF/mdqKdvmDYC0tIIso7+20/jBALPw39tiWCYJ4iw=)
publisher-confirms: true
publisher-returns: false
virtual-host: /

aws:
clientRegion: cn-northwest-1
bucketName: iformall-net
access: ENC(NCLcmjwKpAWdn/abD17OKIY7yKepVLWzEpqRYUlURCw=)
secret: ENC(TRcZqql0Rq5PExlMeH/4WiZ/i02b8FXKmLTBChJmbluTa1uoLS9LrHyNEMrqe1DK+QgOAdvqGBo=)

wechat:
open:
componentAppId: ENC(hnH31XdNzArfMfikKgBFpqQuJUl6rVOPFFcAVyb595o=)
componentSecret: ENC(t/GUVX5L+U7LCwSvZ5WmxAnmTMrc/Uy1nljsrokuzzsBL2j6BEVnrS/n7DCdGc/G)
componentToken: ENC(gUF1m0YgCCI2IY54fX6sGLZVlCswA8tG)
componentAesKey: ENC(TYHcrIkICtfrCfGq4HW6s1b/pHf7OD2uyPN11SzJNB0acqJ/4JVX1nuljo/cAtgMG4O05TImLQc=)
redis:
host: 127.0.0.1
port: 6379
password: ENC(QFwqv3NshvvGhFPiP8rwhvbnxk+rFSqhJi8Pw6TogSg=)
timeout: 3600
expire: 1800 #30分钟
database: 2
defaultExpiration: 2592000 # 默认生命周期30天
jedis:
pool:
max-active: 100
max-idle: 100
max-wait: -1
min-idle: 10

fm:
exception: true
exception_emails: houtaikaifa@iformall.com
deploy: 2
open: true
upload_dir: /home/ec2-user/server/uploads/

pos:
dev_id: fmpos
url: https://postest.malls.iformall.com/api
req_key: ZiGFLC4@3c5sTLZT
res_key: ugPAM7wd&%p6I0W8

logging:
level:
com.iformall: debug
path: ./logs/b

+ 0
- 54
mallinkBApi/bin/target/classes/application.yml Просмотреть файл

@@ -1,54 +0,0 @@
server:
port: 8000
servlet:
context-path: /B

spring:
application:
name: mallink
profiles:
active: dev
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
default-property-inclusion: non_null
# rocketmq:
# nameServer: 127.0.0.1:9876
# producer:
# retry-times-when-send-async-failed: 0
# send-msg-timeout: 300000
# compress-msg-body-over-howmuch: 4096
# max-message-size: 4194304
# retry-another-broker-when-not-store-ok: false
# retry-times-when-send-failed: 2

# MybatisPlus
mybatis-plus:
mapper-locations: classpath:mapper/*Mapper.xml
global-config:
db-config:
id-type: id_worker
field-strategy: not_null
db-type: mysql
configuration:
jdbc-type-for-null: 'null'
cache-enabled: false
call-setters-on-nulls: true
type-aliases-package: com.iformall.domain.po
type-enums-package: com.iformall.enums

# PageHelper
pagehelper:
helperDialect: mysql
reasonable: false
supportMethodsArguments: true
params: count=countSql
offset-as-page-num: true
page-size-zero: true
row-bounds-with-count: true

mapper:
mappers:
- com.iformall.common.CommonMapper

version: 1.0

+ 0
- 100
mallinkBApi/bin/target/classes/logback-spring.xml Просмотреть файл

@@ -1,100 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="10 seconds">
<!-- 外部指定路径 -->
<springProperty scop="context" name="logPath" source="logging.path" />

<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<Pattern>[%date{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] --%mdc{client}%msg%n</Pattern>
</encoder>
</appender>

<appender name="TRACE_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${logPath}/trace.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${logPath}/daily/trace.%d{yyyy-MM-dd}.log</FileNamePattern>
<maxHistory>30</maxHistory> <!-- 保留180天 -->
</rollingPolicy>
<layout>
<pattern>[%date{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] [%logger:%line]--%mdc{client} %msg%n</pattern>
</layout>
</appender>

<appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${logPath}/info.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${logPath}/daily/info.%d{yyyy-MM-dd}.log</FileNamePattern>
<maxHistory>30</maxHistory> <!-- 保留180天 -->
</rollingPolicy>
<layout>
<pattern>[%date{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] [%logger:%line]--%mdc{client} %msg%n</pattern>
</layout>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>INFO</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>

<appender name="DEBUG_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${logPath}/debug.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${logPath}/daily/debug.%d{yyyy-MM-dd}.log</FileNamePattern>
<maxHistory>30</maxHistory> <!-- 保留180天 -->
</rollingPolicy>
<layout>
<pattern>[%date{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] [%logger:%line]--%mdc{client} %msg%n</pattern>
</layout>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>DEBUG</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>


<appender name="WARN_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${logPath}/warn.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${logPath}/daily/warn.%d{yyyy-MM-dd}.log</FileNamePattern>
<maxHistory>30</maxHistory> <!-- 保留180天 -->
</rollingPolicy>
<layout>
<pattern>[%date{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] [%logger:%line]--%mdc{client} %msg%n</pattern>
</layout>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>WARN</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>



<appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${logPath}/error.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${logPath}/daily/error.%d{yyyy-MM-dd}.log</FileNamePattern>
<maxHistory>30</maxHistory> <!-- 保留180天 -->
</rollingPolicy>
<layout>
<pattern>[%date{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] [%logger:%line]--%mdc{client} %msg%n</pattern>
</layout>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>

<root level="TRACE">
<appender-ref ref="TRACE_FILE" />
<appender-ref ref="INFO_FILE" />
<!-- <appender-ref ref="DEBUG_FILE" /> -->
<!-- <appender-ref ref="WARN_FILE" /> -->
<appender-ref ref="ERROR_FILE" />
</root>
<root level="INFO">
<appender-ref ref="STDOUT" />
</root>
</configuration>

+ 1
- 8
mallinkBApi/src/main/java/com/iformall/controller/BaseController.java Просмотреть файл

@@ -33,19 +33,12 @@ import java.util.Date;
@Slf4j
@RestController
public class BaseController {
@Autowired
private boolean isFmOpen;

@Autowired
private WxMerchantBUserService wxMerchantBUserService;

@Autowired
private WxAppinfoService wxAppinfoService;

@Autowired
private FmOpenService openService;

@Autowired
private CUserTokenService cUserTokenService;
@Autowired
MaUtil maUtil;


+ 1
- 1
mallinkBApi/src/main/java/com/iformall/controller/PosController.java Просмотреть файл

@@ -3,7 +3,6 @@ package com.iformall.controller;
import com.iformall.common.ErrorCode;
import com.iformall.common.ResultData;
import com.iformall.domain.po.WxMerchantBUser;
import com.iformall.domain.po.base.TenantEntity;
import com.iformall.exception.MallinkException;
import com.iformall.pay.WxPayConstant;
import com.iformall.service.PosBrunService;
@@ -21,6 +20,7 @@ import java.util.Map;
@RequestMapping("/api/pos")
@Api(description = "POS服务相关接口")
public class PosController extends BaseController {

private final Logger logger = LoggerFactory.getLogger(this.getClass());

@Autowired


+ 1
- 1
mallinkBApi/src/main/java/com/iformall/controller/PosOrderController.java Просмотреть файл

@@ -24,8 +24,8 @@ import io.swagger.annotations.ApiOperation;
@AllArgsConstructor
@Api(description = "POS订单接口")
public class PosOrderController extends BaseController {
private final Logger logger = LoggerFactory.getLogger(this.getClass());

private final Logger logger = LoggerFactory.getLogger(this.getClass());

private final PosOrderService posOrderService;



+ 1
- 1
mallinkBApi/src/main/java/com/iformall/controller/PosPayOrderController.java Просмотреть файл

@@ -21,11 +21,11 @@ import io.swagger.annotations.ApiOperation;
@AllArgsConstructor
@Api(description = "POS支付订单接口")
public class PosPayOrderController extends BaseController {

private final Logger logger = LoggerFactory.getLogger(this.getClass());

private final PosPayOrderService posPayOrderService;


@ApiOperation("分页列表接口")
@GetMapping("list")
@ApiImplicitParams({


+ 1
- 2
mallinkBApi/src/main/java/com/iformall/controller/WxBillController.java Просмотреть файл

@@ -1,7 +1,5 @@
package com.iformall.controller;


import com.iformall.common.ErrorCode;
import com.iformall.common.Result;
import com.iformall.common.ResultData;
import com.iformall.domain.po.WxMerchant;
@@ -29,6 +27,7 @@ import java.util.Map;
@Api(description = "账单")
@RequestMapping("/api/bill")
public class WxBillController extends BaseController {

private final Logger logger = LoggerFactory.getLogger(this.getClass());

@Autowired


+ 1
- 1
mallinkBApi/src/main/java/com/iformall/controller/WxCardPayController.java Просмотреть файл

@@ -1,6 +1,5 @@
package com.iformall.controller;


import com.github.pagehelper.PageInfo;
import com.iformall.common.ResultData;
import com.iformall.domain.po.*;
@@ -29,6 +28,7 @@ import java.util.Map;
@Api(description = "C端扫B端商户码储值卡支付")
@RequestMapping("/api/cardPay")
public class WxCardPayController extends BaseController {

private final Logger logger = LoggerFactory.getLogger(this.getClass());

@Autowired


+ 1
- 2
mallinkBApi/src/main/java/com/iformall/controller/WxCashOutController.java Просмотреть файл

@@ -9,7 +9,6 @@ import com.iformall.enums.EnumCashOutStatus;
import com.iformall.enums.EnumPayShare;
import com.iformall.enums.EnumPayWay;
import com.iformall.service.*;
import com.iformall.utils.DateUtils;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@@ -17,7 +16,6 @@ import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;

import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -37,6 +35,7 @@ import org.springframework.web.bind.annotation.*;
@RequestMapping("/api/cashout")
@Api(description = "提现相关接口")
public class WxCashOutController extends BaseController {

private final Logger logger = LoggerFactory.getLogger(this.getClass());

@Autowired


+ 3
- 27
mallinkBApi/src/main/java/com/iformall/controller/WxCouponChannelController.java Просмотреть файл

@@ -8,13 +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.EnumPayWay;
import com.iformall.mapper.WxCouponChannelMapper;
import com.iformall.service.QrCodeService;
import com.iformall.service.WxCouponChannelService;
import com.iformall.service.WxCouponService;
import com.iformall.service.WxFlowService;
import com.iformall.utils.Constant;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -27,25 +21,17 @@ import org.springframework.web.bind.annotation.*;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;


@RestController
@RequestMapping("/api/wxCouponChannel")
@Api(description = "优惠券投放接口")
public class WxCouponChannelController extends BaseController {

private final Logger logger = LoggerFactory.getLogger(this.getClass());

@Autowired
private WxCouponChannelService wxCouponChannelService;
@Autowired
private WxCouponChannelMapper wxCouponChannelMapper;
@Autowired
private QrCodeService qrCodeService;
@Autowired
private WxFlowService wxFlowService;
@Autowired
private WxCouponService wxCouponService;

@ApiOperation("分页列表接口")
@GetMapping("list")
@@ -66,7 +52,7 @@ public class WxCouponChannelController extends BaseController {
}else{
wxCouponChannel.setSortColumns(BaseEntity.SortField.CCUpdateDate_DESC);
}
final PageInfo<WxCouponChannelVo> page = wxCouponChannelService.listPageCVo(wxCouponChannel, pageNum, pageSize);
final PageInfo<WxCouponChannelVo> page = wxCouponChannelService.newListPageVo(wxCouponChannel, pageNum, pageSize);
return new ResultData(page);
}

@@ -80,17 +66,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<String,String> 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;
}


+ 51
- 52
mallinkBApi/src/main/java/com/iformall/controller/WxCouponController.java Просмотреть файл

@@ -56,58 +56,57 @@ public class WxCouponController extends BaseController {
@Autowired
RedisLock redisLock;

//TODO 待优化数据
// @ApiOperation("分页列表接口")
// @GetMapping("list")
// @ApiImplicitParams({
// @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true),
// @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)})
// public ResultData list(@ModelAttribute WxCoupon wxCoupon, Integer pageNum, Integer pageSize, Integer dataType) {
// logger.debug("[" + getIpAddr() + "] WxCouponController::list");
// if (wxCoupon == null) wxCoupon = new WxCoupon();
// wxCoupon.updateTenantInfo(getTenantInfo());
// if(null == wxCoupon.getSourceType()){
// wxCoupon.setSourceType(EnumCouponSourceType.COUPONSource_Bapi.getCode());
// }
// wxCoupon.setMerchantId(getLoginBUser().getMerchantId());
//
// if(StringUtils.isNotBlank(wxCoupon.getSortColumn())){
// String coryColumn = "c."+wxCoupon.getSortColumns();
// wxCoupon.setSortColumns(coryColumn);
// wxCoupon.setSortColumn(null);
// }
//
// return wxCouponService.list(wxCoupon,wxCoupon, pageNum, pageSize); //全列表
// }
//
// @ApiOperation("分页列表接口")
// @GetMapping("listWithTypePress")
// @ApiImplicitParams({
// @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true),
// @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)})
// public ResultData listWithTypePress(@ModelAttribute WxCoupon wxCoupon, Integer pageNum, Integer pageSize) {
// logger.debug("[" + getIpAddr() + "] WxCouponController::list");
// if (wxCoupon == null) wxCoupon = new WxCoupon();
// wxCoupon.updateTenantInfo(getTenantInfo());
// Integer[] typeArray = {
// EnumCouponType.COUPON_MANJIAN.getCode(),
// EnumCouponType.COUPON_DAIJIN.getCode(),
// EnumCouponType.COUPON_TUANGOU.getCode(),
// EnumCouponType.COUPON_LIPIN.getCode(),
// EnumCouponType.COUPON_TINGCHE.getCode(),
// EnumCouponType.COUPON_MULTIMCH.getCode(),
// EnumCouponType.COUPON_PRESS.getCode(),
// EnumCouponType.COUPON_PREORDER.getCode()};
//
// wxCoupon.setTypes(Arrays.asList(typeArray));
// wxCoupon.setMerchantId(getLoginBUser().getMerchantId());
// if(StringUtils.isNotBlank(wxCoupon.getSortColumn())){
// String coryColumn = "c."+wxCoupon.getSortColumns();
// wxCoupon.setSortColumns(coryColumn);
// wxCoupon.setSortColumn(null);
// }
// return wxCouponService.list(wxCoupon,wxCoupon, pageNum, pageSize); //全列表
// }
@ApiOperation("分页列表接口")
@GetMapping("list")
@ApiImplicitParams({
@ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true),
@ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)})
public ResultData list(@ModelAttribute WxCoupon wxCoupon, Integer pageNum, Integer pageSize, Integer dataType) {
logger.debug("[" + getIpAddr() + "] WxCouponController::list");
if (wxCoupon == null) wxCoupon = new WxCoupon();
wxCoupon.updateTenantInfo(getTenantInfo());
if(null == wxCoupon.getSourceType()){
wxCoupon.setSourceType(EnumCouponSourceType.COUPONSource_Bapi.getCode());
}
wxCoupon.setMerchantId(getLoginBUser().getMerchantId());

if(StringUtils.isNotBlank(wxCoupon.getSortColumn())){
String coryColumn = "c."+wxCoupon.getSortColumns();
wxCoupon.setSortColumns(coryColumn);
wxCoupon.setSortColumn(null);
}

return wxCouponService.list(wxCoupon,wxCoupon, pageNum, pageSize); //全列表
}

@ApiOperation("分页列表接口")
@GetMapping("listWithTypePress")
@ApiImplicitParams({
@ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true),
@ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)})
public ResultData listWithTypePress(@ModelAttribute WxCoupon wxCoupon, Integer pageNum, Integer pageSize) {
logger.debug("[" + getIpAddr() + "] WxCouponController::list");
if (wxCoupon == null) wxCoupon = new WxCoupon();
wxCoupon.updateTenantInfo(getTenantInfo());
Integer[] typeArray = {
EnumCouponType.COUPON_MANJIAN.getCode(),
EnumCouponType.COUPON_DAIJIN.getCode(),
EnumCouponType.COUPON_TUANGOU.getCode(),
EnumCouponType.COUPON_LIPIN.getCode(),
EnumCouponType.COUPON_TINGCHE.getCode(),
EnumCouponType.COUPON_MULTIMCH.getCode(),
EnumCouponType.COUPON_PRESS.getCode(),
EnumCouponType.COUPON_PREORDER.getCode()};

wxCoupon.setTypes(Arrays.asList(typeArray));
wxCoupon.setMerchantId(getLoginBUser().getMerchantId());
if(StringUtils.isNotBlank(wxCoupon.getSortColumn())){
String coryColumn = "c."+wxCoupon.getSortColumns();
wxCoupon.setSortColumns(coryColumn);
wxCoupon.setSortColumn(null);
}
return wxCouponService.list(wxCoupon,wxCoupon, pageNum, pageSize); //全列表
}

private Map<String,Object> generateFlowParams(EnumFlowKey flowType,EnumCouponAppType approvalType, WxCoupon wxCoupon,String remark,String phone) {
Map<String,Object> map = new HashMap<String,Object>();


+ 39
- 39
mallinkBApi/src/main/java/com/iformall/controller/WxCouponOrderController.java Просмотреть файл

@@ -71,6 +71,7 @@ public class WxCouponOrderController extends BaseController {
@ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)})
public ResultData list(@ModelAttribute WxCouponOrder wxCouponOrder, Integer pageNum, Integer pageSize) {
if (null == wxCouponOrder) wxCouponOrder = new WxCouponOrder();
wxCouponOrder.updateTenantInfo(getTenantInfo());
final PageInfo<WxCouponOrder> page = wxCouponOrderService.listAsPage(wxCouponOrder, pageNum, pageSize);
return new ResultData(page);
}
@@ -109,45 +110,44 @@ public class WxCouponOrderController extends BaseController {
return new ResultData();
}

//TODO 待优化数据
// @ApiOperation("交易流水分页列表接口")
// @GetMapping("listUnverified")
// @ApiImplicitParams({
// @ApiImplicitParam(name = "date", value = "日期yyyy-MM-dd", dataType = "string", paramType = "query"),
// @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true),
// @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)})
// public ResultData listUnverified(String date, Integer pageNum, Integer pageSize) {
// return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, pageNum, pageSize, false);
// }
//
// @ApiOperation("核销流水分页列表接口")
// @GetMapping("listVerified")
// @ApiImplicitParams({
// @ApiImplicitParam(name = "date", value = "日期yyyy-MM-dd", dataType = "string", paramType = "query"),
// @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true),
// @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)})
// public ResultData listVerified(String date, Integer pageNum, Integer pageSize) {
// return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, pageNum, pageSize, true);
// }
//
//
// @RedisCache
// @ApiOperation("某日期交易总流水")
// @GetMapping("getUnverifiedAmountOnDate")
// @ApiImplicitParams({
// @ApiImplicitParam(name = "date", value = "日期yyyy-MM-dd", dataType = "string", paramType = "query")})
// public ResultData getUnverifiedAmountOnDate(String date) {
// return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, null, null, false);
// }

// @RedisCache
// @ApiOperation("某日期核销总流水")
// @GetMapping("getVerifiedAmountOnDate")
// @ApiImplicitParams({
// @ApiImplicitParam(name = "date", value = "日期yyyy-MM-dd", dataType = "string", paramType = "query")})
// public ResultData getVerifiedAmountOnDate(String date) {
// return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, null, null, true);
// }
@ApiOperation("交易流水分页列表接口")
@GetMapping("listUnverified")
@ApiImplicitParams({
@ApiImplicitParam(name = "date", value = "日期yyyy-MM-dd", dataType = "string", paramType = "query"),
@ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true),
@ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)})
public ResultData listUnverified(String date, Integer pageNum, Integer pageSize) {
return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, pageNum, pageSize, false);
}

@ApiOperation("核销流水分页列表接口")
@GetMapping("listVerified")
@ApiImplicitParams({
@ApiImplicitParam(name = "date", value = "日期yyyy-MM-dd", dataType = "string", paramType = "query"),
@ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true),
@ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)})
public ResultData listVerified(String date, Integer pageNum, Integer pageSize) {
return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, pageNum, pageSize, true);
}


@RedisCache
@ApiOperation("某日期交易总流水")
@GetMapping("getUnverifiedAmountOnDate")
@ApiImplicitParams({
@ApiImplicitParam(name = "date", value = "日期yyyy-MM-dd", dataType = "string", paramType = "query")})
public ResultData getUnverifiedAmountOnDate(String date) {
return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, null, null, false);
}

@RedisCache
@ApiOperation("某日期核销总流水")
@GetMapping("getVerifiedAmountOnDate")
@ApiImplicitParams({
@ApiImplicitParam(name = "date", value = "日期yyyy-MM-dd", dataType = "string", paramType = "query")})
public ResultData getVerifiedAmountOnDate(String date) {
return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, null, null, true);
}


@ApiOperation(value = "卡券详情接口")


+ 0
- 1
mallinkBApi/src/main/java/com/iformall/controller/WxCouponSendController.java Просмотреть файл

@@ -44,7 +44,6 @@ public class WxCouponSendController extends BaseController {
@Resource
private WxCUserMapper wxCUserMapper;

//TODO 待优化数据
@ApiOperation("查询商户注券列表")
@GetMapping("/list")
@ApiImplicitParams({


+ 20
- 21
mallinkBApi/src/main/java/com/iformall/controller/WxCreditHistoryController.java Просмотреть файл

@@ -144,26 +144,25 @@ public class WxCreditHistoryController extends BaseController {
}
}

//TODO 待优化数据
// @ApiOperation("分页列表接口")
// @GetMapping("list")
// @ApiImplicitParams({
// @ApiImplicitParam(name="pageNum",value="页数",dataType="int", paramType = "query",required=true),
// @ApiImplicitParam(name="pageSize",value="每页条数",dataType="int", paramType = "query",required=true)})
// public ResultData list(@ModelAttribute WxCreditHistory wxCreditHistory, Integer pageNum, Integer pageSize) {
// log.debug("[" + getIpAddr() + "] WxCreditHistoryController::list");
// if (null == wxCreditHistory) wxCreditHistory = new WxCreditHistory();
// wxCreditHistory.setTenantId(getTenantInfo().getFinalTenantId());
// wxCreditHistory.setFinalTenantId(getTenantInfo().getFinalTenantId());
// WxMerchantBUser bUser = getLoginBUser();
// WxMerchant merchant = wxMerchantService.getById(wxCreditHistory.getMerchantId());
// if (merchant != null && merchant.getIsAdmin() != null && merchant.getIsAdmin() == 1) {
// wxCreditHistory.setOperatorId(bUser.getId());
// wxCreditHistory.setOperatorType(EnumUserType.BUSER.getCode());
// wxCreditHistory.setMerchantId(null);
// }
// final PageInfo<WxCreditHistoryVo> page = wxCreditHistoryService.listAsPageMore(wxCreditHistory, pageNum, pageSize);
// return new ResultData(page);
// }
@ApiOperation("分页列表接口")
@GetMapping("list")
@ApiImplicitParams({
@ApiImplicitParam(name="pageNum",value="页数",dataType="int", paramType = "query",required=true),
@ApiImplicitParam(name="pageSize",value="每页条数",dataType="int", paramType = "query",required=true)})
public ResultData list(@ModelAttribute WxCreditHistory wxCreditHistory, Integer pageNum, Integer pageSize) {
log.debug("[" + getIpAddr() + "] WxCreditHistoryController::list");
if (null == wxCreditHistory) wxCreditHistory = new WxCreditHistory();
wxCreditHistory.setTenantId(getTenantInfo().getFinalTenantId());
wxCreditHistory.setFinalTenantId(getTenantInfo().getFinalTenantId());
WxMerchantBUser bUser = getLoginBUser();
WxMerchant merchant = wxMerchantService.getById(wxCreditHistory.getMerchantId());
if (merchant != null && merchant.getIsAdmin() != null && merchant.getIsAdmin() == 1) {
wxCreditHistory.setOperatorId(bUser.getId());
wxCreditHistory.setOperatorType(EnumUserType.BUSER.getCode());
wxCreditHistory.setMerchantId(null);
}
final PageInfo<WxCreditHistoryVo> page = wxCreditHistoryService.listAsPageMore(wxCreditHistory, pageNum, pageSize);
return new ResultData(page);
}

}

+ 16
- 4
mallinkBApi/src/main/java/com/iformall/controller/WxInfoController.java Просмотреть файл

@@ -24,10 +24,7 @@ import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;

@@ -521,4 +518,19 @@ public class WxInfoController extends BaseController {
}
return new ResultData();
}

@ApiOperation("查询c小程序首页风格")
@GetMapping("/getAppMouldType")
public ResultData getAppMouldType(Integer plat) {
logger.debug("[" + getIpAddr() + "] WxAppinfoController::getAppMouldType");
// if(plat == null){
// plat = EnumAppPlat.WX.getCode();
// }
// EnumAppPlat byCode = EnumAppPlat.getByCode(plat);
// if(byCode == null){
// return new ResultData(ErrorCode.SYS_PARAMETER_ERROR);
// }
WxAppinfo cAppInfo = wxAppinfoService.getCAppInfoFromRedis(getTenantInfo().getTenantId(), null);
return new ResultData(cAppInfo);
}
}

+ 4
- 0
mallinkBApi/src/main/resources/application.yml Просмотреть файл

@@ -12,6 +12,10 @@ spring:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
default-property-inclusion: non_null
servlet:
multipart:
max-file-size: 300MB
max-request-size: 1024MB
# rocketmq:
# nameServer: 127.0.0.1:9876
# producer:


+ 7
- 8
mallinkCApi/src/main/java/com/iformall/controller/WxBusinessController.java Просмотреть файл

@@ -1,27 +1,22 @@
package com.iformall.controller;

import com.github.pagehelper.PageInfo;
import com.iformall.annotation.RedisCache;
import com.iformall.common.ResultData;
import com.iformall.domain.po.WxBusiness;
import com.iformall.domain.po.WxCUser;
import com.iformall.enums.EnumAppPlat;
import com.iformall.service.WxBusinessService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;
import java.util.stream.Collectors;

@RestController
@RequestMapping("/api/wxBusiness")
@Api(description = "业态查询接口")
public class WxBusinessController extends BaseController {

private final Logger logger = LoggerFactory.getLogger(this.getClass());

@Autowired
@@ -31,7 +26,11 @@ public class WxBusinessController extends BaseController {
@ApiOperation("业态全列表接口")
@GetMapping("listAll")
public ResultData listAll(Integer filter) {
return new ResultData(wxBusinessService.findListAll(getTenantInfo(),filter));
EnumAppPlat appPlat = getCUser().getAppPlat();
if(appPlat == null){
appPlat = EnumAppPlat.WX;
}
return new ResultData(wxBusinessService.findListAll(getTenantInfo(),filter,appPlat.getCode()));
}

}

+ 10
- 12
mallinkCApi/src/main/java/com/iformall/controller/WxCampaignController.java Просмотреть файл

@@ -7,7 +7,6 @@ import com.iformall.common.ResultData;
import com.iformall.domain.po.base.BaseEntity;
import com.iformall.domain.po.WxCampaign;
import com.iformall.domain.po.WxCouponChannel;
import com.iformall.domain.po.base.TenantEntity;
import com.iformall.domain.vo.WxCouponChannelVo;
import com.iformall.enums.*;
import com.iformall.service.WxCampaignService;
@@ -37,6 +36,7 @@ import java.util.List;
@RequestMapping("/api/wxCampaign")
@Api(description = "促销和banner接口")
public class WxCampaignController extends BaseController {

private final Logger logger = LoggerFactory.getLogger(this.getClass());

@Autowired
@@ -59,8 +59,13 @@ public class WxCampaignController extends BaseController {
wxCampaign.updateTenantInfo(getTenantInfo());
wxCampaign.setStatus(EnumCampaignStatus.STATUS_THROW_IN.getCode());
wxCampaign.setSortColumns(BaseEntity.SortField.SortNum_ASC, BaseEntity.SortField.CreateTime_ASC);
// TODO 缓存优化
final PageInfo<WxCampaign> page = wxCampaignService.clistAsPage(wxCampaign, pageNum, pageSize);

String key = EnumCacheKey.CAMPAIGN_PAGE_LIST.getMessage() + wxCampaign.getTenantId() + "_" + pageNum + ":";
PageInfo<WxCampaign> page = RedisCacheUtils.getCacheObject(redisTemplate, key, PageInfo.class);
if (null == page ) {
page = wxCampaignService.clistAsPage(wxCampaign, pageNum, pageSize);
RedisCacheUtils.cache(redisTemplate, key, page, 100);
}
return new ResultData(page);
}

@@ -77,15 +82,8 @@ public class WxCampaignController extends BaseController {
wxCouponChannel.setSubTargetId(wxCampaign.getId());
wxCouponChannel.setStatus(EnumCouponChannelStatus.STATUS_THROW_IN.getCode());
wxCouponChannel.setShowBeginTime(new Date());
//TODO待优化数据
List<WxCouponChannelVo> couponList = RedisCacheUtils.getCacheListObject(redisTemplate, "wxCampaignCoupons:"+wxCouponChannel.getTenantId(), WxCouponChannelVo.class);
if (null == couponList) {
couponList = wxCouponChannelService.listVo(wxCouponChannel);
if (null != couponList) {
RedisCacheUtils.cache(redisTemplate, "wxCampaignCoupons:"+wxCouponChannel.getTenantId(), couponList, 3600);
}
}
wxCampaign.setCoupons(couponList);
List<WxCouponChannelVo> voList = wxCouponChannelService.newfindListVo(wxCouponChannel);
wxCampaign.setCoupons(voList);
}
return new ResultData(Result.SUCCESS, "查询成功", wxCampaign);
}


+ 39
- 20
mallinkCApi/src/main/java/com/iformall/controller/WxCouponChannelController.java Просмотреть файл

@@ -1,10 +1,15 @@
package com.iformall.controller;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;

import com.github.pagehelper.PageHelper;
import com.iformall.common.ErrorCode;
import com.iformall.domain.po.WxCampaign;
import com.iformall.enums.*;
import org.apache.commons.collections.map.HashedMap;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
@@ -12,6 +17,7 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.ValueOperations;
import org.springframework.web.bind.annotation.*;

import com.github.pagehelper.PageInfo;
@@ -21,10 +27,6 @@ import com.iformall.domain.po.WxCouponChannel;
import com.iformall.domain.po.WxMerchant;
import com.iformall.domain.po.base.BaseEntity;
import com.iformall.domain.vo.WxCouponChannelVo;
import com.iformall.enums.EnumCouponChannelActivityStatus;
import com.iformall.enums.EnumCouponChannelStatus;
import com.iformall.enums.EnumCouponChannelType;
import com.iformall.enums.EnumCouponStatus;
import com.iformall.service.WxCouponChannelService;
import com.iformall.service.WxMerchantService;
import com.iformall.utils.RedisCacheUtils;
@@ -68,8 +70,19 @@ public class WxCouponChannelController extends BaseController {
wxCouponChannel.setSortColumns(BaseEntity.SortField.CCUpdateDate_DESC, BaseEntity.SortField.CCId_DESC);
}
wxCouponChannel.setShowBeginTime(new Date());
PageInfo<WxCouponChannelVo> page = wxCouponChannelService.listPageCVo(wxCouponChannel, pageNum, pageSize);
filterTimed(wxCouponChannel, page);

String key = EnumCacheKey.C_INDEX_PAGE_LIST.getMessage()
+ wxCouponChannel.getTenantId() + "_"
+ wxCouponChannel.getTargetAd() + "_"
+ wxCouponChannel.getBusiness() + "_"
+ pageNum + ":"+ pageNum + ":";
PageInfo<WxCouponChannelVo> page = RedisCacheUtils.getCacheObject(redisTemplate, key, PageInfo.class);
logger.info("WxCouponChannelController.chache.get:{} page:{}",key,page);
if (null == page ) {
page = wxCouponChannelService.newListPageVo(wxCouponChannel, pageNum, pageSize);
filterTimed(wxCouponChannel, page);
RedisCacheUtils.cache(redisTemplate, key, page, 100);
}
return new ResultData(page);
}

@@ -98,7 +111,7 @@ public class WxCouponChannelController extends BaseController {
// return new ResultData(map);
// }

@RedisCache(expireTime = 100)
@RedisCache()
@ApiOperation("商户活动列表信息")
@PostMapping("listByMerchant")
@ApiImplicitParams({
@@ -113,7 +126,7 @@ public class WxCouponChannelController extends BaseController {
}

String merchantIdStr = (String) params.get("merchantId");
List<String> merchantIds = (List<String>) params.get("merchantIds");
List<Long> merchantIds = (List<Long>) params.get("merchantIds");
Long merchantId = null;
if(StringUtils.isNotBlank(merchantIdStr)){
merchantId = Long.parseLong(merchantIdStr);
@@ -122,28 +135,34 @@ public class WxCouponChannelController extends BaseController {
WxCouponChannel wxCouponChannel = new WxCouponChannel();
wxCouponChannel.setMerchantId(merchantId);
wxCouponChannel.setMerchantIds(merchantIds);
wxCouponChannel.setStatus(0);

wxCouponChannel.updateTenantInfo(getTenantInfo());
wxCouponChannel.setStatus(EnumCouponChannelStatus.STATUS_THROW_IN.getCode());
wxCouponChannel.setSortColumns(BaseEntity.SortField.UpdateDate_DESC, BaseEntity.SortField.Id_DESC);
List<Integer> targetAds = new ArrayList<>();
targetAds.add(EnumCouponChannelType.COUPON_CHANNEL_ID_LIST.getCode());
targetAds.add(EnumCouponChannelType.COUPON_CHANNEL_ID_TIMED.getCode());
targetAds.add(EnumCouponChannelType.COUPON_CHANNEL_ID_CARD.getCode());
targetAds.add(EnumCouponChannelType.COUPON_CHANNEL_ID_PRESS.getCode());
targetAds.add(EnumCouponChannelType.COUPON_CHANNEL_ID_ORDER_GROUP.getCode());
wxCouponChannel.setTargetAds(targetAds);
wxCouponChannel.setShowBeginTime(new Date());

Map<String,Object> map = new HashedMap();
wxCouponChannel.setShowBeginTime(new Date());
//TODO待优化数据,先用缓存处理
String key = wxCouponChannel.getTenantId();

String key = wxCouponChannel.getTenantId()+"_";
if (null != merchantId) {
key = String.valueOf(merchantId);
key += String.valueOf(merchantId);
}else if (null != merchantIds){
key = merchantIds.toString();
key += merchantIds.toString();
}
PageInfo<WxCouponChannelVo> page = RedisCacheUtils.getCacheObject(redisTemplate, "merchantCouponList:"+key, PageInfo.class);
key = EnumCacheKey.MERCHANT_COUPON_PAGE_LIST.getMessage() + key + "_" + pageNum + ":";
PageInfo<WxCouponChannelVo> page = RedisCacheUtils.getCacheObject(redisTemplate, key, PageInfo.class);
logger.info("WxCouponChannelController.chache.get:{} page:{}",key,page);
if (null == page ) {
page = wxCouponChannelService.listByMerchant(wxCouponChannel,pageNum,pageSize);
filterTimed(wxCouponChannel, page);
RedisCacheUtils.cache(redisTemplate, "merchantCouponList:"+key, page, 3600);
page = wxCouponChannelService.newListPageVo(wxCouponChannel, pageNum, pageSize);
filterTimed(wxCouponChannel, page);
RedisCacheUtils.cache(redisTemplate, key, page, 100);
}

if(wxCouponChannel.getMerchantId() != null){


+ 6
- 4
mallinkCApi/src/main/java/com/iformall/controller/WxCouponOrderController.java Просмотреть файл

@@ -80,13 +80,14 @@ public class WxCouponOrderController extends BaseController {
}
if (wxCouponOrder == null) wxCouponOrder = new WxCouponOrderCVo();
wxCouponOrder.setCUserId(memberId);
if (wxCouponOrder.getCouponOrderStatus() == null)
wxCouponOrder.updateTenantInfo(getTenantInfo());
if (wxCouponOrder.getCouponOrderStatus() == null) {
wxCouponOrder.setSortColumns(BaseEntity.SortField.CreateDate_DESC, BaseEntity.SortField.Id_DESC);
else if (wxCouponOrder.getCouponOrderStatus() == EnumCouponOrderStatus.COUPON_ORDER_USE_WAIT.getCode())
}else if (wxCouponOrder.getCouponOrderStatus() == EnumCouponOrderStatus.COUPON_ORDER_USE_WAIT.getCode()) {
wxCouponOrder.setSortColumns(BaseEntity.SortField.CreateDate_DESC, BaseEntity.SortField.Id_DESC);
else
}else {
wxCouponOrder.setSortColumns(BaseEntity.SortField.UpdateDate_DESC, BaseEntity.SortField.Id_DESC);
}
PageInfo<WxCouponOrderCVo> page = wxCouponOrderService.listCUserVoAsPageOptimize(wxCouponOrder, pageNum, pageSize);

Date now = new Date();
@@ -432,6 +433,7 @@ public class WxCouponOrderController extends BaseController {
return new ResultData();
}


@ApiOperation(value = "核销接口", notes = "{\"couponOrderId\":\"string\"}")
@PostMapping("verify")
public ResultData verify(@RequestBody Map<String, String> paramMap) {


+ 1
- 0
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<WxTemplateMsg> page = wxTemplateMsgService.listAsPageForMiniApp(wxTemplateMsg, pageNum, pageSize);
return new ResultData(page);
}


+ 23
- 10
mallinkCApi/src/main/java/com/iformall/controller/WxTopicController.java Просмотреть файл

@@ -3,6 +3,7 @@ package com.iformall.controller;
import com.iformall.annotation.RedisCache;
import com.iformall.common.ResultData;
import com.iformall.domain.po.WxTopic;
import com.iformall.enums.EnumCacheKey;
import com.iformall.enums.EnumWxTopicType;
import com.iformall.service.WxTopicService;
import com.iformall.utils.RedisCacheUtils;
@@ -15,6 +16,8 @@ import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.web.bind.annotation.*;

import java.util.List;


@RestController
@RequestMapping("/api/topic")
@@ -40,7 +43,16 @@ public class WxTopicController extends BaseController {
WxTopic wxTopic = new WxTopic();
wxTopic.updateTenantInfo(getTenantInfo());
wxTopic.setTopicType(topicType);
return new ResultData(wxTopicService.show(wxTopic));

String key = EnumCacheKey.TOPIC_ONE.getMessage() + wxTopic.getTenantId() + "_"
+ topicType + ":";
WxTopic show = RedisCacheUtils.getCacheObject(redisTemplate, key, WxTopic.class);
logger.info("WxCouponChannelController.chache.get:{} show:{}",key,show);
if (null == show ) {
show = wxTopicService.show(wxTopic);
RedisCacheUtils.cache(redisTemplate, key, show, 100);
}
return new ResultData(show);
}

@RedisCache
@@ -50,7 +62,15 @@ public class WxTopicController extends BaseController {
WxTopic wxTopic = new WxTopic();
wxTopic.updateTenantInfo(getTenantInfo());
wxTopic.setTopicType(EnumWxTopicType.SPECIAL_TOPIC.getCode());
return new ResultData(wxTopicService.showList(wxTopic));

String key = EnumCacheKey.TOPIC_LIST.getMessage() + wxTopic.getTenantId() + ":";
List<WxTopic> topicList = RedisCacheUtils.getCacheObject(redisTemplate, key, List.class);
logger.info("WxTopicController.chache.get:{} topicList:{}",key,topicList);
if (null == topicList ) {
topicList = wxTopicService.showList(wxTopic);
RedisCacheUtils.cache(redisTemplate, key, topicList, 100);
}
return new ResultData(topicList);
}

@RedisCache
@@ -58,14 +78,7 @@ public class WxTopicController extends BaseController {
public ResultData findById(WxTopic wxTopic) {
logger.debug("[" + getIpAddr() + "] WxTopicController::findById");
wxTopic.updateTenantInfo(getTenantInfo());
//TODO 待优化数据
WxTopic queryTopic =RedisCacheUtils.getCacheObject(redisTemplate, "topic:"+wxTopic.getId(), WxTopic.class);
if (null == queryTopic) {
queryTopic = wxTopicService.findCById(wxTopic);
if (null != queryTopic) {
RedisCacheUtils.cache(redisTemplate, "topic:"+wxTopic.getId(), queryTopic, 3600);
}
}
WxTopic queryTopic = wxTopicService.findCById(wxTopic);
return new ResultData(queryTopic);
}
}

+ 5
- 33
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<String, String> 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);



+ 1
- 0
mallinkCallback/src/main/java/com/iformall/config/ShiroConfig.java Просмотреть файл

@@ -111,6 +111,7 @@ public class ShiroConfig {
filterChainDefinitionMap.put("/business/circle/**", "anon"); // 商圈回调

filterChainDefinitionMap.put("/alipay/notify/**", "anon");
filterChainDefinitionMap.put("/ttPay/notify/**", "anon");

filterChainDefinitionMap.put("/jinmao/notify/**", "anon");



+ 21
- 6
mallinkCallback/src/main/java/com/iformall/controller/callback/JinMaoController.java Просмотреть файл

@@ -1,6 +1,7 @@
package com.iformall.controller.callback;

import com.aliyun.openservices.shade.com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.iformall.controller.base.BaseController;
import com.iformall.domain.po.*;
import com.iformall.domain.po.base.TenantEntity;
@@ -248,7 +249,6 @@ public class JinMaoController extends BaseController {
try {
Map retMap = new HashMap();
retMap.put("Key",key);
retMap.put("Note","timecost:"+(System.currentTimeMillis()-startSeconds)+"; msg:"+msg);
response.setContentType("application/json");
response.setCharacterEncoding("GB2312");
out = response.getWriter();
@@ -332,10 +332,24 @@ public class JinMaoController extends BaseController {
generateResult(response,true,false, null, "参数不能为空Card", null, "参数非法",currentTime);
return ;
}
String mac = (String)param.get("MAC");
String serial = (String)param.get("Serial");
//{"END":"C","TYPE":"couponorder","ID":"NjM5MDExMTQ4NzI0MTAxMTIwJjIwMjItMDEtMTMgMTU6MjI6NTE="}
String _base64CouponOrderId = decodeBase64Url(couponOrderIdStr);
String _decodeCouponOrderId = WxCouponOrderCVo.getDecodeExpiredCouponOrderId(_base64CouponOrderId);
if (StringUtils.isBlank(_base64CouponOrderId)) {
generateResult(response,true,false, null, "参数Card解密失败", null, "参数非法",currentTime);
return ;
}
JSONObject idobject = JSON.parseObject(_base64CouponOrderId);
if (null == idobject) {
generateResult(response,true,false, null, "参数Card解密失败,json转换错误", null, "参数非法",currentTime);
return ;
}
String idstr = idobject.getString("ID");
if (StringUtils.isBlank(idstr)) {
generateResult(response,true,false, null, "参数Card解密后格式错误,无ID", null, "参数非法",currentTime);
return ;
}
String _decodeCouponOrderId = WxCouponOrderCVo.getDecodeExpiredCouponOrderId(idstr);
if (_decodeCouponOrderId.contains(WxCouponOrderCVo.arg)) {
String[] decodeids = _decodeCouponOrderId.split(WxCouponOrderCVo.arg);
couponOrderIdStr = decodeids[0];
@@ -358,7 +372,8 @@ public class JinMaoController extends BaseController {
}

try {
String serial = (String)param.get("Serial");
String mac = (String)param.get("MAC");
WxCouponOrder couponOrder = wxCouponOrderService.verifyByEquiment(couponOrderId, "789", "null", "闸机扫码核销[Serial:"+serial+",MAC:"+mac+"]");
generateResult(response,false,true, couponOrder.getCouponName(), "核销成功", String.valueOf(couponOrder.getId()), "核销成功",currentTime);
return ;


+ 5
- 8
mallinkCallback/src/main/java/com/iformall/controller/callback/TtPayController.java Просмотреть файл

@@ -23,10 +23,7 @@ import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;

import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
@@ -73,15 +70,15 @@ public class TtPayController extends BaseController {
*/
@PostMapping(value = "/orderPay")
@ResponseBody
public Map<String,Object> createOrder( HttpServletRequest request){
public Map<String,Object> createOrder( @RequestBody Map<String, Object> parameterMap){
logger.debug("[" + getIpAddr() + "] TtOrderCallbackController::createOrder");
Map<String,Object> resultMap = new HashMap<>();

String body = ((BodyReaderHttpServletRequestWrapper) request).getBody();
logger.info("抖音支付通知-----body{}"+body);
// String body = ((BodyReaderHttpServletRequestWrapper) request).getBody();
logger.info("抖音支付通知-----body{}"+parameterMap);
try {

Map<String, Object> parameterMap = JSONObject.parseObject(body, Map.class);
// Map<String, Object> parameterMap = JSONObject.parseObject(body, Map.class);

String timestamp = (String) parameterMap.get("timestamp");
String nonce = (String) parameterMap.get("nonce");


+ 0
- 0
mallinkNeuPosAdmin/logPath_IS_UNDEFINED/debug.log Просмотреть файл


+ 0
- 0
mallinkNeuPosAdmin/logPath_IS_UNDEFINED/error.log Просмотреть файл


+ 0
- 0
mallinkNeuPosAdmin/logPath_IS_UNDEFINED/info.log Просмотреть файл


+ 0
- 0
mallinkNeuPosAdmin/logPath_IS_UNDEFINED/trace.log Просмотреть файл


+ 0
- 0
mallinkNeuPosAdmin/logPath_IS_UNDEFINED/warn.log Просмотреть файл


+ 2
- 2
mallinkPosApi/src/main/java/com/iformall/service/impl/PosServiceImpl.java Просмотреть файл

@@ -342,7 +342,7 @@ public class PosServiceImpl implements PosService {
}
coQ.put("cUserId", user.getId());
coQ.put("merchantId", merchantId);
List<WxCouponOrderCVo> avaCoList = couponOrderMapper.findAvailCouponOrder(coQ);
List<WxCouponOrderCVo> avaCoList = couponOrderService.findAvailCouponOrder(tenantEntity,user.getId(),merchantId,null);

JSONArray selCoArr = JSONObject.parseArray(coListStr);
if (config.getCoupon().equals(EnumPosCouponEnableType.SingleEnable.getCode())) {
@@ -947,7 +947,7 @@ public class PosServiceImpl implements PosService {
}
coQ.put("cUserId", user.getId());
coQ.put("merchantId", merchantId);
List<WxCouponOrderCVo> avaCoList = couponOrderMapper.findAvailCouponOrder(coQ);
List<WxCouponOrderCVo> avaCoList = couponOrderService.findAvailCouponOrder(tenantEntity,user.getId(),merchantId,null);
JSONArray selCoArr = JSONObject.parseArray(coListStr);
if (config.getCoupon().equals(EnumPosCouponEnableType.SingleEnable.getCode())) {
if (selCoArr.size() > 1) {


Некоторые файлы не были показаны из-за большого количества измененных файлов

Загрузка…
Отмена
Сохранить