From d182df42d56fe31c19c54276f5b2cb004ae55b4f Mon Sep 17 00:00:00 2001 From: xhxu Date: Thu, 20 Jan 2022 17:26:19 +0800 Subject: [PATCH] =?UTF-8?q?/=E3=80=81user?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../schedule/WxCUserCheckSchedule.java | 46 ---------- .../domain/po/base/BaseCUserEntity.java | 13 +++ .../com/iformall/mapper/TtCUserMapper.java | 2 - .../mapper/WxCUserBasicInfoMapper.java | 2 +- .../com/iformall/mapper/WxCUserMapper.java | 2 - .../iformall/mapper/WxCUserTagsMapper.java | 2 + .../iformall/mapper/WxCouponOrderMapper.java | 8 ++ .../service/WxCUserBasicInfoService.java | 3 +- .../com/iformall/service/WxCUserService.java | 3 - .../iformall/service/WxCUserTagsService.java | 8 ++ .../impl/WxCUserBasicInfoServiceImpl.java | 83 +++++++---------- .../service/impl/WxCUserTagsServiceImpl.java | 28 +++++- .../main/resources/mapper/TtCUserMapper.xml | 5 -- .../mapper/WxCUserBasicInfoMapper.xml | 89 +++++++++---------- .../main/resources/mapper/WxCUserMapper.xml | 11 +-- .../resources/mapper/WxCUserTagsMapper.xml | 20 +++-- .../resources/mapper/WxCouponOrderMapper.xml | 10 ++- 17 files changed, 162 insertions(+), 173 deletions(-) delete mode 100644 mallinkSchedule/src/main/java/com/iformall/schedule/WxCUserCheckSchedule.java diff --git a/mallinkSchedule/src/main/java/com/iformall/schedule/WxCUserCheckSchedule.java b/mallinkSchedule/src/main/java/com/iformall/schedule/WxCUserCheckSchedule.java deleted file mode 100644 index 08626bfb8..000000000 --- a/mallinkSchedule/src/main/java/com/iformall/schedule/WxCUserCheckSchedule.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.iformall.schedule; - -import com.iformall.mapper.WxCUserMapper; -import com.iformall.service.MailService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.scheduling.annotation.Scheduled; -import org.springframework.stereotype.Component; - -import java.util.List; -import java.util.Map; - - -@Component -public class WxCUserCheckSchedule { - private final Logger logger = LoggerFactory.getLogger(this.getClass()); - - @Autowired - private boolean isFmException; - - @Autowired - private String fmExceptionEmails; - - @Autowired - private MailService mailService; - - @Autowired - private WxCUserMapper cUserMapper; - - //@Scheduled(cron = "0 0 8 * * ?") // 每天凌晨08:00对c_user扫描查重 - // @Scheduled(cron = "0 */1 * * * ?") // 测试1分钟一次 -// public void cuserCheckDuplicate() { -// -// List> mapList = cUserMapper.checkCountByTenantOpenId(); -// if(mapList.size()> 0) { -// String message = "wx_c_user异常,有重复数据"; -// logger.error(message); -// if(isFmException) { -// String[] receivers = fmExceptionEmails.split(","); -// //发送邮件 -// mailService.sendSimpleMail(receivers, message, message); -// } -// } -// } -} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/base/BaseCUserEntity.java b/mallinkService/src/main/java/com/iformall/domain/po/base/BaseCUserEntity.java index 898ee1a4f..e9c81d907 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/base/BaseCUserEntity.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/base/BaseCUserEntity.java @@ -7,6 +7,7 @@ import lombok.EqualsAndHashCode; import org.apache.commons.lang3.StringUtils; import java.util.Date; +import java.util.List; /** * @author Stormeye @@ -32,6 +33,9 @@ public class BaseCUserEntity extends TenantEntity { @TableField(exist = false) protected static EnumAppPlat appPlat; + + @TableField(exist = false) + private List userIds; /** * 是否是会员 @@ -88,4 +92,13 @@ public class BaseCUserEntity extends TenantEntity { public void setAppPlat(EnumAppPlat appPlat) { this.appPlat = appPlat; } + + public List getUserIds() { + return userIds; + } + + public void setUserIds(List userIds) { + this.userIds = userIds; + } + } diff --git a/mallinkService/src/main/java/com/iformall/mapper/TtCUserMapper.java b/mallinkService/src/main/java/com/iformall/mapper/TtCUserMapper.java index 173658d6e..93e09e4ee 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/TtCUserMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/TtCUserMapper.java @@ -29,8 +29,6 @@ public interface TtCUserMapper extends CommonMapper { long countByChannel(TtCUser ttCUser); - //List> checkCountByTenantOpenId(); - void updateUserId(TtCUser record); void delForUserIdOnly(@Param("id")Long id, @Param("userId")Long userId,@Param("tenantId")String tenantId); diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCUserBasicInfoMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCUserBasicInfoMapper.java index 6b497b702..81da480ae 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCUserBasicInfoMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCUserBasicInfoMapper.java @@ -62,6 +62,6 @@ public interface WxCUserBasicInfoMapper extends CommonMapper findOpenIdByFilter(WxCUserBasicInfoDto wxCUserBasicInfoDto); + List findIdByFilter(WxCUserBasicInfoDto wxCUserBasicInfoDto); } diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCUserMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCUserMapper.java index c6ae09bb1..654eccc06 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCUserMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCUserMapper.java @@ -29,8 +29,6 @@ public interface WxCUserMapper extends CommonMapper { long countByChannel(WxCUser wxCUser); - //List> checkCountByTenantOpenId(); - void updateUserId(WxCUser record); void delForUserIdOnly(@Param("id")Long id, @Param("userId")Long userId,@Param("tenantId")String tenantId); diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCUserTagsMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCUserTagsMapper.java index 058b5959c..e3e585aed 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCUserTagsMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCUserTagsMapper.java @@ -14,6 +14,7 @@ public interface WxCUserTagsMapper extends CommonMapper { WxCUserTags selectById(@Param("id")Long id,@Param("tenantId")String tenantId); List findList(WxCUserTags wxCUserTags); + List findIdList(@Param("tenantId")String tenantId, @Param("tagIdList")List tagIdList); long countUser(@Param("tagIds")String tagIds,@Param("tenantId")String tenantId,@Param("finalTenantId")String finalTenantId, @Param("startTime")Date startTime,@Param("endTime")Date endTime); @@ -21,4 +22,5 @@ public interface WxCUserTagsMapper extends CommonMapper { void updateNewId(CUserTagNewIdVo record); int deleteById(@Param("id")Long id,@Param("tenantId")String tenantId); + } diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCouponOrderMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCouponOrderMapper.java index f57c48533..33745f0ce 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCouponOrderMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCouponOrderMapper.java @@ -103,4 +103,12 @@ public interface WxCouponOrderMapper extends CommonMapper { List findUserTradeList(WxCouponOrder wxCouponOrder); + /** + * 获取时间范围内核销的用户(参数不能为null) + * @param tenantId + * @param verifiedStartTime + * @param verifiedStartTime1 + * @return + */ + List findVerifiedUserIds(@Param("tenantId")String tenantId, @Param("verifiedStartTime")Date verifiedStartTime, @Param("verifiedEndTime")Date verifiedEndTime); } diff --git a/mallinkService/src/main/java/com/iformall/service/WxCUserBasicInfoService.java b/mallinkService/src/main/java/com/iformall/service/WxCUserBasicInfoService.java index 8b9df2a50..6caabea8a 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxCUserBasicInfoService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxCUserBasicInfoService.java @@ -29,7 +29,7 @@ public interface WxCUserBasicInfoService { List listByFilter(TenantEntity tenantEntity, List filterList); - List findOpenIdByFilter(TenantEntity tenantEntity, List filterList); + List findIdByFilter(TenantEntity tenantEntity, List filterList); List listByFilterList(TenantEntity tenantEntity, List filterList); @@ -43,7 +43,6 @@ public interface WxCUserBasicInfoService { * @return */ PageInfo listAsPage(WxCUserBasicInfo record, Integer pageIndex, Integer pageSize); - PageInfo listAsPage(TenantEntity tenantInfo, WxCUserBasicInfo wxCUserBasicInfo, Integer pageIndex, Integer pageSize); List listPhoneAndNameByIds(WxCUserBasicInfo record); /** diff --git a/mallinkService/src/main/java/com/iformall/service/WxCUserService.java b/mallinkService/src/main/java/com/iformall/service/WxCUserService.java index d4bfae4a3..94e22ba08 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxCUserService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxCUserService.java @@ -96,7 +96,6 @@ public interface WxCUserService { /** * 统计数量 * @param dto - * @param tenantEntitys * @return */ long findCount(WxCUserBasicInfoDto dto); @@ -112,7 +111,6 @@ public interface WxCUserService { /** * 通过渠道获取会员信息 * @param user - * @param tenantEntitys * @param pageIndex * @param pageSize * @return @@ -123,7 +121,6 @@ public interface WxCUserService { /** * 登录后发消息 - * @param user */ void actionMsgAfterLogin(WxCUserFrom wxCUserFrom); diff --git a/mallinkService/src/main/java/com/iformall/service/WxCUserTagsService.java b/mallinkService/src/main/java/com/iformall/service/WxCUserTagsService.java index 08560fc86..c59625d7e 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxCUserTagsService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxCUserTagsService.java @@ -10,6 +10,7 @@ import com.iformall.service.tags.TagsDeveloper; import java.util.Date; import java.util.List; +import java.util.Map; public interface WxCUserTagsService { @@ -53,4 +54,11 @@ public interface WxCUserTagsService { void updateTagByUserId(Long cUserId,TenantEntity tenantinfo, List tags); + /** + * 获取标签id------标签name map + * @param tenantInfo + * @param tagIds + * @return + */ + Map findIdTagNames(TenantEntity tenantInfo, List tagIds); } 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 123eac584..3ae88f4a9 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java @@ -1,6 +1,5 @@ package com.iformall.service.impl; -import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; @@ -46,6 +45,9 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService,IExc @Autowired WxCUserTagsMapper wxCUserTagsMapper; + @Autowired + WxCouponOrderMapper wxCouponOrderMapper; + @Autowired WxCUserBasicInfoMapper wxCUserBasicInfoMapper; @@ -402,6 +404,13 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService,IExc Date.from( localDate.plusMonths(1).with(TemporalAdjusters.firstDayOfMonth()).atStartOfDay().atZone(zone).toInstant())); } + if(dto.getVerifiedStartTime() != null && dto.getVerifiedEndTime() != null){ + List userIds = wxCouponOrderMapper.findVerifiedUserIds(dto.getTenantId(),dto.getVerifiedStartTime(),dto.getVerifiedEndTime()); + if(!userIds.isEmpty()){ + dto.setIds(userIds); + } + } + } private WxCUserBasicInfoDto filtersToDto(TenantEntity tenantEntity, List filterList){ @@ -429,8 +438,12 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService,IExc tagIdList.add(f.getId()); } }); - if(!tagIdList.isEmpty()) - dto.setTagIds(tagIdList); + if(!tagIdList.isEmpty()){ + List tagIds = wxCUserTagsMapper.findIdList(tenantEntity.getTenantId(),tagIdList); + if(!tagIds.isEmpty()){ + dto.setTagIds(tagIds); + } + } return dto; } @@ -534,11 +547,11 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService,IExc } @Override - public List findOpenIdByFilter(TenantEntity tenantEntity, List filterList) { + public List findIdByFilter(TenantEntity tenantEntity, List filterList) { WxCUserBasicInfoDto wxCUserBasicInfoDto = filtersToDto(tenantEntity, filterList); wxCUserBasicInfoDto.updateTenantInfo(tenantEntity); wxCUserBasicInfoDto.setFinalTenantId(tenantEntity.getFinalTenantId()); - return wxCUserBasicInfoMapper.findOpenIdByFilter(wxCUserBasicInfoDto); + return wxCUserBasicInfoMapper.findIdByFilter(wxCUserBasicInfoDto); } @Override @@ -550,9 +563,16 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService,IExc @Override public List listOpenIdByFilter(TenantEntity tenantEntity, List filterList) { - HashSet openSet = new HashSet<>(); - filterList.stream().forEach(f->openSet.addAll(findOpenIdByFilter(tenantEntity,f.getTagList()))); - return new ArrayList<>(openSet); + HashSet idSet = new HashSet<>(); + filterList.stream().forEach(f->idSet.addAll(findIdByFilter(tenantEntity,f.getTagList()))); + if(idSet.isEmpty()){ + return new ArrayList(); + } + WxCUser cuser = new WxCUser(); + cuser.updateTenantInfo(tenantEntity); + cuser.setUserIds(new ArrayList<>(idSet)); + List openList = wxCUserMapper.listOpenId(cuser); + return openList; } @@ -564,13 +584,6 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService,IExc return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCUserBasicInfoMapper.findList(record)); } - @Override - public PageInfo listAsPage(TenantEntity tenantInfo, WxCUserBasicInfo wxCUserBasicInfo, Integer pageIndex, Integer pageSize) { - wxCUserBasicInfo.setTenantId(tenantInfo.getTenantId()); - wxCUserBasicInfo.undateFinalTenantId(tenantInfo); - return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCUserBasicInfoMapper.findList(wxCUserBasicInfo)); - } - @Override public int countUser(WxCUserBasicInfo record) { return wxCUserBasicInfoMapper.selectCount(new QueryWrapper(record)); @@ -1220,14 +1233,13 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService,IExc basicInfo.setBegin((page-1)*20000); basicInfo.setLimit(20000); - basicInfo.undateFinalTenantId(tenantInfo); basicInfo.undateFinalTenantId(tenantInfo); list = wxCUserBasicInfoMapper.findVoList(basicInfo); if (null == list || list.size() <= 0 ) { return null; } -// List userIds = wxCUserBasicInfoMapper.findVoIdsList1(tenantInfo,basicInfo); +// List userIds = list.stream().map(cc -> cc.getId()).collect(Collectors.toList()); // if (null != userIds && userIds.size() > 0 ) { // WxCreditHistory chaddq = new WxCreditHistory(); // chaddq.setUserIdList(userIds); @@ -1250,41 +1262,14 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService,IExc // if(null != chless){ // chlesMap = chless.stream().collect(Collectors.toMap(WxCreditHistory::getCUserId, WxCreditHistory::getCreditNum)); // } -// -//// WxCUserTags tq = new WxCUserTags(); -//// tq.setUserIdList(userIds); -//// tq.setTenantId(tenantInfo.getFinalTenantId()); -//// List userTagList = wxCUserTagsMapper.findList(tq); -//// Map tagMap = new HashMap<>(); -//// Map userTagsMap = new HashMap<>(); -//// if (null != userTagList) { -//// List tagList = wxTagsMapper.findListAll(); -//// tagMap = tagList.stream().collect(Collectors.toMap(WxTags::getId, WxTags::getName)); -//// userTagsMap = userTagList.stream().collect(Collectors.toMap(WxCUserTags::getUserId, WxCUserTags::getTags)); -//// -//// } -// - List tagList = wxTagsMapper.findListAll(tenantInfo.getTenantId()); -// -// Map finalChaddMap = chaddMap; -// Map finalChlesMap = chlesMap; -//// Map finalUserTagsMap = userTagsMap; - Map finalTagMap = tagList.stream().collect(Collectors.toMap(WxTags::getId, WxTags::getName));; + + //处理会员标签 + List tagIds = list.stream().map(cc -> cc.getTagId()).collect(Collectors.toList()); + Map tagIdName = wxCUserTagsService.findIdTagNames(tenantInfo,tagIds); list.stream().forEach(u->{ // u.setAddCredit(finalChaddMap.get(u.getId())); // u.setLesCredit(finalChlesMap.get(u.getId())); - if(StringUtils.isNotBlank(u.getTags())){ - List ids = JSONObject.parseArray(u.getTags(), Long.class); - if (null != ids) { - String tagNames = StringUtils.join(ids.stream().map(id-> finalTagMap.get(id)).collect(Collectors.toList()),"/"); - u.setTagNames(tagNames); - } - } -// List ids = JSONObject.parseArray(finalUserTagsMap.get(u.getId()), Long.class); -// if (null != ids) { -// String tagNames = StringUtils.join(ids.stream().map(id-> finalTagMap.get(id)).collect(Collectors.toList()),"/"); -// u.setTagNames(tagNames); -// } + u.setTagNames(tagIdName.get(u.getTagId())); }); // // } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserTagsServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserTagsServiceImpl.java index 846bee7a8..ef487af8f 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserTagsServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserTagsServiceImpl.java @@ -27,6 +27,7 @@ import java.math.RoundingMode; import java.text.SimpleDateFormat; import java.util.*; import java.util.regex.Pattern; +import java.util.stream.Collectors; @Service public class WxCUserTagsServiceImpl implements WxCUserTagsService { @@ -319,7 +320,32 @@ public class WxCUserTagsServiceImpl implements WxCUserTagsService { } } - public Long getTagId(List tagList, Long id, WxTags wxTags) { + @Override + public Map findIdTagNames(TenantEntity tenantInfo, List tagIds) { + Map tagIdName = new HashMap<>(); + if(tagIds == null || tagIds.isEmpty()){ + return tagIdName; + } + WxCUserTags userTagsQ = new WxCUserTags(); + userTagsQ.updateTenantInfo(tenantInfo); + userTagsQ.setIds(tagIds); + List userTagsList = wxCUserTagsMapper.findList(userTagsQ); + + List tagList = wxTagsMapper.findListAll(tenantInfo.getTenantId()); + Map finalTagMap = tagList.stream().collect(Collectors.toMap(WxTags::getId, WxTags::getName)); + for (WxCUserTags wct:userTagsList) { + if(StringUtils.isNotBlank(wct.getTags())){ + List ids = JSONObject.parseArray(wct.getTags(), Long.class); + if (null != ids) { + String tagNames = StringUtils.join(ids.stream().map(id-> finalTagMap.get(id)).collect(Collectors.toList()),"/"); + tagIdName.put(wct.getId(),tagNames); + } + } + } + return tagIdName; + } + + public Long getTagId(List tagList, Long id, WxTags wxTags) { List list = wxTagsMapper.findList(wxTags); for (WxTags tag : list) { boolean flag = false; diff --git a/mallinkService/src/main/resources/mapper/TtCUserMapper.xml b/mallinkService/src/main/resources/mapper/TtCUserMapper.xml index f668a71cf..ac69725dd 100644 --- a/mallinkService/src/main/resources/mapper/TtCUserMapper.xml +++ b/mallinkService/src/main/resources/mapper/TtCUserMapper.xml @@ -391,11 +391,6 @@ - - - update tt_c_user set user_id=#{userId} diff --git a/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml b/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml index 4692d1e1a..d5f82b0d7 100644 --- a/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml @@ -100,23 +100,17 @@ and wcubi.`name` like concat('%', #{name},'%') - + and wcubi.`create_date` between #{startTime} and #{endTime} - + and wcubi.`active_time` between #{activeStartTime} and #{activeEndTime} and wcubi.`status` = #{status} - - - and wcubi.id in (select c_user_id from wx_c_user_car - where (`tenant_id` = #{finalTenantId} or `parent_tenant_id` = #{finalTenantId}) - and car_number like concat('%', #{carNumber},'%')) - and wcubi.id in @@ -131,7 +125,10 @@ - update wx_c_user_basic_info set poins=#{poins} - where id=#{id} + update wx_c_user_basic_info + set poins = #{poins} + where id = #{id} - update wx_c_user_basic_info set poins=poins+#{poins} - where id=#{id} + update wx_c_user_basic_info + set poins = poins+#{poins} + where id = #{id} - update wx_c_user_basic_info set poins=poins-#{poins} - where id=#{id} + update wx_c_user_basic_info + set poins = poins-#{poins} + where id = #{id} - update wx_c_user_basic_info set id=#{newId} , credit=#{credit} , poins=#{poins} - where id = #{id} + update wx_c_user_basic_info + set id = #{newId} , credit = #{credit} , poins = #{poins} + where id = #{id} select wcubi.`id`,wcubi.`name`,wcubi.`sex`,wcubi.`height`,wcubi.`weight`,wcubi.`id_card`,wcubi.`phone`,wcubi.`nick_name`,wcubi.`education`,wcubi.`birthdate`,wcubi.`address`, - wcubi.`active_time`,wcubi.`create_date`,wcubi.`poins`,wcubi.`credit`, - wcut.`tags` + wcubi.`active_time`,wcubi.`create_date`,wcubi.`poins`,wcubi.`credit`,wcubi.`tag_id` from wx_c_user_basic_info wcubi - left join wx_c_user_tags${basicInfo.shardFinalTableSuffix} wcut on wcut.`id` = wcubi.`tag_id` limit #{begin}, #{limit} @@ -484,15 +486,6 @@ and wcubi.active_time <= #{loginEndTime} - - and 0 < - (select count(*) from wx_coupon_order wco - where wcubi.id = wco.c_user_id - and wco.coupon_order_status = 1 - and wco.update_date >= #{verifiedStartTime} - and wco.update_date <= #{verifiedEndTime}) - - and wcubi.phone in (${phones}) @@ -513,21 +506,26 @@ )) + + and wcubi.id in + + #{idItem} + + + - and JSON_CONTAINS(JSON_ARRAY(wcut.tags),JSON_ARRAY + and wcubi.`tag_id` in #{idItem} ) - + order by ${sortColumns} @@ -535,25 +533,18 @@ - select id from wx_c_user_basic_info wcubi - - join wx_c_user_tags wcut on wcut.`id` = wcubi.`tag_id` - - ) @@ -392,11 +398,6 @@ - - - update wx_c_user set user_id=#{userId} diff --git a/mallinkService/src/main/resources/mapper/WxCUserTagsMapper.xml b/mallinkService/src/main/resources/mapper/WxCUserTagsMapper.xml index 48ef96b32..412bc5c50 100644 --- a/mallinkService/src/main/resources/mapper/WxCUserTagsMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCUserTagsMapper.xml @@ -15,18 +15,13 @@ - where 1 = 1 + where `tenant_id` = #{tenantId} and `id` = #{id} - - and `tenant_id` = #{tenantId} - - - and `user_id` = #{userId} @@ -60,6 +55,13 @@ #{idItem} + + and JSON_CONTAINS(JSON_ARRAY(tags),JSON_ARRAY + + #{idItem} + + ) + order by ${sortColumns} @@ -78,6 +80,12 @@ + + update wx_c_user_tags set user_id=#{newUserId} diff --git a/mallinkService/src/main/resources/mapper/WxCouponOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxCouponOrderMapper.xml index 7580e14ba..ccc1c7a4b 100644 --- a/mallinkService/src/main/resources/mapper/WxCouponOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCouponOrderMapper.xml @@ -1124,7 +1124,13 @@ order by ${sortColumns} order by co.create_date desc - - + + \ No newline at end of file