From af1ef2f0a88aba26ef9cd6cbb13da1171c2cf926 Mon Sep 17 00:00:00 2001 From: xhxu Date: Fri, 8 Jan 2021 17:30:21 +0800 Subject: [PATCH 1/2] cuser --- .../V202012230001__wx_credit_clear.sql | 33 ++++++++++++------- .../db/migration/V202012300001__wx_tag.sql | 12 +++---- .../main/java/com/iformall/enums/EnumTag.java | 12 +++---- 3 files changed, 34 insertions(+), 23 deletions(-) diff --git a/mallinkAdmin/src/main/resources/db/migration/V202012230001__wx_credit_clear.sql b/mallinkAdmin/src/main/resources/db/migration/V202012230001__wx_credit_clear.sql index 7d34087a6..37e4cc47b 100644 --- a/mallinkAdmin/src/main/resources/db/migration/V202012230001__wx_credit_clear.sql +++ b/mallinkAdmin/src/main/resources/db/migration/V202012230001__wx_credit_clear.sql @@ -1,12 +1,23 @@ -CREATE DEFINER=`root`@`%` PROCEDURE `user_credit_clear`(IN `cutOffDate` VARCHAR(50),IN `finalTableIndex` VARCHAR(50)) +CREATE PROCEDURE `user_credit_clear`(IN `cutOffDate` VARCHAR(50),IN `finalTableIndex` VARCHAR(50)) BEGIN DECLARE done INT DEFAULT 0; DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET done = -1; - + select concat(finalTableIndex,'_',date_format(now(),'%Y%m%d%H%i')) into @tableSuffix; - + + set @n = 100000; + #START TRANSACTION; - + + set @backUpSqlb_0 = concat('create table wx_c_user_basic_info',finalTableIndex,@tableSuffix,' like wx_c_user_basic_info',finalTableIndex,';'); + PREPARE back_up_sqlb_0 FROM @backUpSqlb_0; + EXECUTE back_up_sqlb_0; + DEALLOCATE PREPARE back_up_sqlb_0; + set @backUpSqlb_1 = concat('insert into wx_c_user_basic_info',finalTableIndex,@tableSuffix,' select * from wx_c_user_basic_info',finalTableIndex,';'); + PREPARE back_up_sqlb_1 FROM @backUpSqlb_1; + EXECUTE back_up_sqlb_1; + DEALLOCATE PREPARE back_up_sqlb_1; + set @backUpSql1_0 = concat('CREATE TABLE `wx_credit_clear_md',@tableSuffix,'` (' ,'`id` bigint(20) NOT NULL,' ,'`user_id` bigint(20) DEFAULT NULL,' @@ -20,24 +31,24 @@ BEGIN PREPARE back_up_sql1_0 FROM @backUpSql1_0; EXECUTE back_up_sql1_0; DEALLOCATE PREPARE back_up_sql1_0; - + INSERT into zz_process_log VALUES(NOW(),'user_credit_clear()','创建积分清零数据处理备份表',@backUpSql1_0); - + set @backUpSql1_1 = concat('insert into `wx_credit_clear_md',@tableSuffix,'`' ,'(`id`, `user_id`, `final_tenant_id`, `credit`, `sum_credit`, `credit_amount`, `cut_off_date`)' - ,' select (select unix_timestamp(now()) + CEILING(RAND()*90000+10000)) id,wcubi.id user_id,wcubi.final_tenant_id,wcubi.credit,ifnull(wch.sum_credit,0) sum_credit,(ifnull(wch.sum_credit,0)-wcubi.credit) credit_amount,\'',cutOffDate,'\'' + ,' select concat(date_format(now(),\'%Y%m\'),FLOOR(RAND()*1000000),(@n := @n + 1)) id,wcubi.id user_id,wcubi.final_tenant_id,wcubi.credit,ifnull(wch.sum_credit,0) sum_credit,(ifnull(wch.sum_credit,0)-wcubi.credit) credit_amount,\'',cutOffDate,'\'' ,' from wx_c_user_basic_info',finalTableIndex,' wcubi' ,' left join (select c_user_id,sum(credit_num) sum_credit from wx_credit_history',finalTableIndex,' where credit_num > 0 and create_date >= \'',cutOffDate,'\' group by c_user_id) wch on wch.c_user_id = wcubi.id' ,' where wcubi.credit > ifnull(wch.sum_credit,0);'); PREPARE back_up_sql1_1 FROM @backUpSql1_1; EXECUTE back_up_sql1_1; DEALLOCATE PREPARE back_up_sql1_1; - + INSERT into zz_process_log VALUES(NOW(),'user_credit_clear()','添加积分清零数据处理',@backUpSql1_1); - + set @backUpSql1_2 = concat('insert into `wx_credit_history',finalTableIndex,'`' - ,'(`id`, `tenant_id`, `c_user_id`, `credit_amount`, `credit_num`, `credit_type`, `create_date`, `operator_type`, `operator_id`) ' - ,'select id,final_tenant_id,user_id,sum_credit,credit_amount,14,now(),4,0' + ,'(`id`, `tenant_id`, `c_user_id`, `credit_amount`, `credit_num`, `credit_type`, `create_date`, `operator_type`, `operator_id`, `change_purpose`) ' + ,'select id,final_tenant_id,user_id,sum_credit,credit_amount,14,now(),4,0,\'积分清零计划\'' ,' from `wx_credit_clear_md',@tableSuffix,'`;'); PREPARE back_up_sql1_2 FROM @backUpSql1_2; EXECUTE back_up_sql1_2; diff --git a/mallinkAdmin/src/main/resources/db/migration/V202012300001__wx_tag.sql b/mallinkAdmin/src/main/resources/db/migration/V202012300001__wx_tag.sql index 070e98e9b..3390a8523 100644 --- a/mallinkAdmin/src/main/resources/db/migration/V202012300001__wx_tag.sql +++ b/mallinkAdmin/src/main/resources/db/migration/V202012300001__wx_tag.sql @@ -1,8 +1,8 @@ INSERT INTO `wx_tags_type`(`id`, `name`, `group_id`, `group_name`, `flag`) VALUES (29, '子女', 2, '生活属性', 0); -INSERT INTO `wx_tags`(`id`, `name`, `group_id`, `group_name`, `type_id`, `type_name`) VALUES (166, '婴儿', 2, '生活属性', 29, '子女'); -INSERT INTO `wx_tags`(`id`, `name`, `group_id`, `group_name`, `type_id`, `type_name`) VALUES (167, '幼儿', 2, '生活属性', 29, '子女'); -INSERT INTO `wx_tags`(`id`, `name`, `group_id`, `group_name`, `type_id`, `type_name`) VALUES (168, '学龄前', 2, '生活属性', 29, '子女'); -INSERT INTO `wx_tags`(`id`, `name`, `group_id`, `group_name`, `type_id`, `type_name`) VALUES (169, '学龄初', 2, '生活属性', 29, '子女'); -INSERT INTO `wx_tags`(`id`, `name`, `group_id`, `group_name`, `type_id`, `type_name`) VALUES (170, '学龄中', 2, '生活属性', 29, '子女'); -INSERT INTO `wx_tags`(`id`, `name`, `group_id`, `group_name`, `type_id`, `type_name`) VALUES (171, '学龄晚', 2, '生活属性', 29, '子女'); +INSERT INTO `wx_tags`(`id`, `name`, `group_id`, `group_name`, `type_id`, `type_name`) VALUES (166, '婴儿(0-1岁)', 2, '生活属性', 29, '子女'); +INSERT INTO `wx_tags`(`id`, `name`, `group_id`, `group_name`, `type_id`, `type_name`) VALUES (167, '幼儿(1-3岁)', 2, '生活属性', 29, '子女'); +INSERT INTO `wx_tags`(`id`, `name`, `group_id`, `group_name`, `type_id`, `type_name`) VALUES (168, '学龄前(3-6岁)', 2, '生活属性', 29, '子女'); +INSERT INTO `wx_tags`(`id`, `name`, `group_id`, `group_name`, `type_id`, `type_name`) VALUES (169, '学龄初(6-12岁)', 2, '生活属性', 29, '子女'); +INSERT INTO `wx_tags`(`id`, `name`, `group_id`, `group_name`, `type_id`, `type_name`) VALUES (170, '学龄中(12-15岁)', 2, '生活属性', 29, '子女'); +INSERT INTO `wx_tags`(`id`, `name`, `group_id`, `group_name`, `type_id`, `type_name`) VALUES (171, '学龄晚(15-18岁)', 2, '生活属性', 29, '子女'); diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumTag.java b/mallinkService/src/main/java/com/iformall/enums/EnumTag.java index 312f4b61c..696eb3d78 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumTag.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumTag.java @@ -204,12 +204,12 @@ public enum EnumTag { ID_164(164L, EnumTagType.ID_28, "鞋尺码"), ID_165(165L, EnumTagType.ID_28, "鞋尺码"), - ID_166(166L, EnumTagType.ID_29, "婴儿"), - ID_167(167L, EnumTagType.ID_29, "幼儿"), - ID_168(168L, EnumTagType.ID_29, "学龄前"), - ID_169(169L, EnumTagType.ID_29, "学龄初"), - ID_170(170L, EnumTagType.ID_29, "学龄中"), - ID_171(171L, EnumTagType.ID_29, "学龄晚"), + ID_166(166L, EnumTagType.ID_29, "婴儿(0-1岁)"), + ID_167(167L, EnumTagType.ID_29, "幼儿(1-3岁)"), + ID_168(168L, EnumTagType.ID_29, "学龄前(3-6岁)"), + ID_169(169L, EnumTagType.ID_29, "学龄初(6-12岁)"), + ID_170(170L, EnumTagType.ID_29, "学龄中(12-15岁)"), + ID_171(171L, EnumTagType.ID_29, "学龄晚(15-18岁)"), ID_1000(1000L, EnumTagType.ID_50,"一天以内"), ID_1001(1001L, EnumTagType.ID_50,"一周以内"), From 2380319f3db92a8c99e3b5b49baf35f1f979cbd6 Mon Sep 17 00:00:00 2001 From: xhxu Date: Fri, 8 Jan 2021 18:37:05 +0800 Subject: [PATCH 2/2] cuser --- .../mem/WxCUserBasicInfoController.java | 2 +- .../iformall/domain/po/base/TenantEntity.java | 20 ++++++++++++++----- .../impl/WxCUserBasicInfoServiceImpl.java | 10 +++++----- .../mapper/WxCUserBasicInfoMapper.xml | 8 ++++---- 4 files changed, 25 insertions(+), 15 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCUserBasicInfoController.java b/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCUserBasicInfoController.java index 315bab67b..84a8f02f3 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCUserBasicInfoController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCUserBasicInfoController.java @@ -367,7 +367,7 @@ public class WxCUserBasicInfoController extends BaseController { } basicInfo.undateFinalTenantId(ifParentUpdateTenantInfo()); - wxCUserBasicInfoService.exportData(ifParentUpdateTenantInfo(),basicInfo, request, response); + wxCUserBasicInfoService.exportData(getTenantInfo(),basicInfo, request, response); } @RequestMapping("/exportTemplate") diff --git a/mallinkService/src/main/java/com/iformall/domain/po/base/TenantEntity.java b/mallinkService/src/main/java/com/iformall/domain/po/base/TenantEntity.java index afa5cf692..c674041f6 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/base/TenantEntity.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/base/TenantEntity.java @@ -1,12 +1,10 @@ package com.iformall.domain.po.base; import com.baomidou.mybatisplus.annotation.TableField; -import lombok.Data; +import com.fasterxml.jackson.annotation.JsonIgnore; import lombok.EqualsAndHashCode; import org.apache.commons.lang3.StringUtils; -import com.iformall.domain.po.WxCUserBasicInfo; - /** * @author Stormeye * @date 2019/4/24 14:32 @@ -25,9 +23,14 @@ public class TenantEntity extends BaseEntity { @TableField(exist = false) protected String finalTenantId; + @JsonIgnore @TableField(exist = false) protected String shardTableSuffix; + @JsonIgnore + @TableField(exist = false) + protected String shardFinalTableSuffix; + public void updateTenantInfo(TenantEntity info) { setTenantId(info.getTenantId()); setParentTenantId(null); @@ -54,11 +57,18 @@ public class TenantEntity extends BaseEntity { } public String getShardTableSuffix() { - if(StringUtils.isNotBlank(tenantId)){ - shardTableSuffix = "_" + Integer.parseInt(this.getTenantId())%100; + if(StringUtils.isNotBlank(getTenantId())){ + shardTableSuffix = "_" + Integer.parseInt(getTenantId())%100; } return shardTableSuffix; } + + public String getShardFinalTableSuffix(){ + if(StringUtils.isNotBlank(getFinalTenantId())){ + shardFinalTableSuffix = "_" + Integer.parseInt(getFinalTenantId())%100; + } + return shardFinalTableSuffix; + } public String getTenantId() { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java index b128b5f97..219fcef87 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java @@ -1274,11 +1274,11 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService,IExc List list = new ArrayList(); basicInfo.setBegin((page-1)*10000); basicInfo.setLimit(10000); - if(StringUtils.isNotBlank(tenantInfo.getParentTenantId())){ - //list = wxCUserBasicInfoMapper.findVoList1(tenantInfo,basicInfo); - }else{ - basicInfo.undateFinalTenantId(tenantInfo); - } +// if(StringUtils.isNotBlank(tenantInfo.getParentTenantId())){ +// //list = wxCUserBasicInfoMapper.findVoList1(tenantInfo,basicInfo); +// }else{ +// basicInfo.undateFinalTenantId(tenantInfo); +// } list = wxCUserBasicInfoMapper.findVoList1(tenantInfo,basicInfo); if (null == list || list.size() <= 0 ) { return null; diff --git a/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml b/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml index e36d32813..21f8644c9 100644 --- a/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml @@ -822,8 +822,8 @@