| @@ -2,6 +2,7 @@ package com.iformall.config; | |||||
| import com.fasterxml.jackson.annotation.JsonAutoDetect; | import com.fasterxml.jackson.annotation.JsonAutoDetect; | ||||
| import com.fasterxml.jackson.annotation.PropertyAccessor; | import com.fasterxml.jackson.annotation.PropertyAccessor; | ||||
| import com.fasterxml.jackson.databind.DeserializationFeature; | |||||
| import com.fasterxml.jackson.databind.ObjectMapper; | import com.fasterxml.jackson.databind.ObjectMapper; | ||||
| import com.github.pagehelper.PageInfo; | import com.github.pagehelper.PageInfo; | ||||
| import com.iformall.domain.po.*; | import com.iformall.domain.po.*; | ||||
| @@ -271,6 +272,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| Jackson2JsonRedisSerializer<Object> j = new Jackson2JsonRedisSerializer<Object>(Object.class); | Jackson2JsonRedisSerializer<Object> j = new Jackson2JsonRedisSerializer<Object>(Object.class); | ||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||
| @@ -2,6 +2,7 @@ package com.iformall.config; | |||||
| import com.fasterxml.jackson.annotation.JsonAutoDetect; | import com.fasterxml.jackson.annotation.JsonAutoDetect; | ||||
| import com.fasterxml.jackson.annotation.PropertyAccessor; | import com.fasterxml.jackson.annotation.PropertyAccessor; | ||||
| import com.fasterxml.jackson.databind.DeserializationFeature; | |||||
| import com.fasterxml.jackson.databind.ObjectMapper; | import com.fasterxml.jackson.databind.ObjectMapper; | ||||
| import com.github.pagehelper.PageInfo; | import com.github.pagehelper.PageInfo; | ||||
| import com.iformall.domain.po.*; | import com.iformall.domain.po.*; | ||||
| @@ -246,6 +247,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| Jackson2JsonRedisSerializer<Object> j = new Jackson2JsonRedisSerializer<Object>(Object.class); | Jackson2JsonRedisSerializer<Object> j = new Jackson2JsonRedisSerializer<Object>(Object.class); | ||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||
| @@ -2,6 +2,7 @@ package com.iformall.config; | |||||
| import com.fasterxml.jackson.annotation.JsonAutoDetect; | import com.fasterxml.jackson.annotation.JsonAutoDetect; | ||||
| import com.fasterxml.jackson.annotation.PropertyAccessor; | import com.fasterxml.jackson.annotation.PropertyAccessor; | ||||
| import com.fasterxml.jackson.databind.DeserializationFeature; | |||||
| import com.fasterxml.jackson.databind.ObjectMapper; | import com.fasterxml.jackson.databind.ObjectMapper; | ||||
| import com.github.pagehelper.PageInfo; | import com.github.pagehelper.PageInfo; | ||||
| import com.iformall.domain.po.*; | import com.iformall.domain.po.*; | ||||
| @@ -69,6 +70,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| Jackson2JsonRedisSerializer<PushLimit> j = new Jackson2JsonRedisSerializer<PushLimit>(PushLimit.class); | Jackson2JsonRedisSerializer<PushLimit> j = new Jackson2JsonRedisSerializer<PushLimit>(PushLimit.class); | ||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||
| template.setValueSerializer(j); | template.setValueSerializer(j); | ||||
| @@ -89,6 +91,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| Jackson2JsonRedisSerializer<WxScoreRules> j = new Jackson2JsonRedisSerializer<WxScoreRules>(WxScoreRules.class); | Jackson2JsonRedisSerializer<WxScoreRules> j = new Jackson2JsonRedisSerializer<WxScoreRules>(WxScoreRules.class); | ||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||
| template.setValueSerializer(j); | template.setValueSerializer(j); | ||||
| @@ -110,6 +113,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||
| @@ -133,6 +137,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||
| @@ -155,6 +160,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||
| template.setValueSerializer(j); | template.setValueSerializer(j); | ||||
| @@ -176,6 +182,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||
| template.setValueSerializer(j); | template.setValueSerializer(j); | ||||
| @@ -196,6 +203,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| Jackson2JsonRedisSerializer<List> j = new Jackson2JsonRedisSerializer<List>(List.class); | Jackson2JsonRedisSerializer<List> j = new Jackson2JsonRedisSerializer<List>(List.class); | ||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||
| template.setValueSerializer(j); | template.setValueSerializer(j); | ||||
| @@ -216,6 +224,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| Jackson2JsonRedisSerializer<WxCouponCVo> j = new Jackson2JsonRedisSerializer<WxCouponCVo>(WxCouponCVo.class); | Jackson2JsonRedisSerializer<WxCouponCVo> j = new Jackson2JsonRedisSerializer<WxCouponCVo>(WxCouponCVo.class); | ||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||
| template.setValueSerializer(j); | template.setValueSerializer(j); | ||||
| @@ -236,6 +245,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| Jackson2JsonRedisSerializer<PageInfo> j = new Jackson2JsonRedisSerializer<PageInfo>(PageInfo.class); | Jackson2JsonRedisSerializer<PageInfo> j = new Jackson2JsonRedisSerializer<PageInfo>(PageInfo.class); | ||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||
| @@ -257,6 +267,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| Jackson2JsonRedisSerializer<WxBuser> j = new Jackson2JsonRedisSerializer(WxBuser.class); | Jackson2JsonRedisSerializer<WxBuser> j = new Jackson2JsonRedisSerializer(WxBuser.class); | ||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||
| @@ -278,6 +289,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| Jackson2JsonRedisSerializer<WxOrder> j = new Jackson2JsonRedisSerializer<WxOrder>(WxOrder.class); | Jackson2JsonRedisSerializer<WxOrder> j = new Jackson2JsonRedisSerializer<WxOrder>(WxOrder.class); | ||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||
| @@ -307,6 +319,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| Jackson2JsonRedisSerializer<Object> j = new Jackson2JsonRedisSerializer<Object>(Object.class); | Jackson2JsonRedisSerializer<Object> j = new Jackson2JsonRedisSerializer<Object>(Object.class); | ||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||
| @@ -2,6 +2,7 @@ package com.iformall.config; | |||||
| import com.fasterxml.jackson.annotation.JsonAutoDetect; | import com.fasterxml.jackson.annotation.JsonAutoDetect; | ||||
| import com.fasterxml.jackson.annotation.PropertyAccessor; | import com.fasterxml.jackson.annotation.PropertyAccessor; | ||||
| import com.fasterxml.jackson.databind.DeserializationFeature; | |||||
| import com.fasterxml.jackson.databind.ObjectMapper; | import com.fasterxml.jackson.databind.ObjectMapper; | ||||
| import com.github.pagehelper.PageInfo; | import com.github.pagehelper.PageInfo; | ||||
| import com.iformall.domain.po.*; | import com.iformall.domain.po.*; | ||||
| @@ -270,6 +271,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| Jackson2JsonRedisSerializer<Object> j = new Jackson2JsonRedisSerializer<Object>(Object.class); | Jackson2JsonRedisSerializer<Object> j = new Jackson2JsonRedisSerializer<Object>(Object.class); | ||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||
| @@ -2,6 +2,7 @@ package com.iformall.config; | |||||
| import com.fasterxml.jackson.annotation.JsonAutoDetect; | import com.fasterxml.jackson.annotation.JsonAutoDetect; | ||||
| import com.fasterxml.jackson.annotation.PropertyAccessor; | import com.fasterxml.jackson.annotation.PropertyAccessor; | ||||
| import com.fasterxml.jackson.databind.DeserializationFeature; | |||||
| import com.fasterxml.jackson.databind.ObjectMapper; | import com.fasterxml.jackson.databind.ObjectMapper; | ||||
| import com.github.pagehelper.PageInfo; | import com.github.pagehelper.PageInfo; | ||||
| import com.iformall.domain.po.*; | import com.iformall.domain.po.*; | ||||
| @@ -256,6 +257,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| Jackson2JsonRedisSerializer<Object> j = new Jackson2JsonRedisSerializer<Object>(Object.class); | Jackson2JsonRedisSerializer<Object> j = new Jackson2JsonRedisSerializer<Object>(Object.class); | ||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||
| @@ -2,6 +2,7 @@ package com.iformall.config; | |||||
| import com.fasterxml.jackson.annotation.JsonAutoDetect; | import com.fasterxml.jackson.annotation.JsonAutoDetect; | ||||
| import com.fasterxml.jackson.annotation.PropertyAccessor; | import com.fasterxml.jackson.annotation.PropertyAccessor; | ||||
| import com.fasterxml.jackson.databind.DeserializationFeature; | |||||
| import com.fasterxml.jackson.databind.ObjectMapper; | import com.fasterxml.jackson.databind.ObjectMapper; | ||||
| import com.github.pagehelper.PageInfo; | import com.github.pagehelper.PageInfo; | ||||
| import com.iformall.domain.po.*; | import com.iformall.domain.po.*; | ||||
| @@ -238,6 +239,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| Jackson2JsonRedisSerializer<Object> j = new Jackson2JsonRedisSerializer<Object>(Object.class); | Jackson2JsonRedisSerializer<Object> j = new Jackson2JsonRedisSerializer<Object>(Object.class); | ||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||
| @@ -2,6 +2,7 @@ package com.iformall.config; | |||||
| import com.fasterxml.jackson.annotation.JsonAutoDetect; | import com.fasterxml.jackson.annotation.JsonAutoDetect; | ||||
| import com.fasterxml.jackson.annotation.PropertyAccessor; | import com.fasterxml.jackson.annotation.PropertyAccessor; | ||||
| import com.fasterxml.jackson.databind.DeserializationFeature; | |||||
| import com.fasterxml.jackson.databind.ObjectMapper; | import com.fasterxml.jackson.databind.ObjectMapper; | ||||
| import com.github.pagehelper.PageInfo; | import com.github.pagehelper.PageInfo; | ||||
| import com.iformall.domain.po.*; | import com.iformall.domain.po.*; | ||||
| @@ -256,6 +257,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| Jackson2JsonRedisSerializer<Object> j = new Jackson2JsonRedisSerializer<Object>(Object.class); | Jackson2JsonRedisSerializer<Object> j = new Jackson2JsonRedisSerializer<Object>(Object.class); | ||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||
| @@ -30,21 +30,21 @@ public class UserTagsController { | |||||
| @Autowired | @Autowired | ||||
| WxCUserBasicInfoService wxCUserBasicInfoService; | WxCUserBasicInfoService wxCUserBasicInfoService; | ||||
| @GetMapping("/userTag") | |||||
| public void mqtest() { | |||||
| WxCUserBasicInfo wxCUserBasicInfo = new WxCUserBasicInfo(); | |||||
| int pageIndex = 1; | |||||
| final int pageSize = 1000; | |||||
| PageInfo page; | |||||
| do{ | |||||
| page = wxCUserBasicInfoService.listAsPage(wxCUserBasicInfo, pageIndex++, pageSize); | |||||
| page.getList().stream().forEach(cubi -> { | |||||
| long lStart = System.currentTimeMillis(); | |||||
| wxCUserTagsService.triggerAssignTags(EnumAssignTagsTrigger.ASSIGN_TAGS_TRIGGER_SCAN, cubi); | |||||
| logger.info("user tag cost time: {}", System.currentTimeMillis() - lStart); | |||||
| }); | |||||
| } while ((page.isHasNextPage())); | |||||
| } | |||||
| // @GetMapping("/userTag") | |||||
| // public void mqtest() { | |||||
| // WxCUserBasicInfo wxCUserBasicInfo = new WxCUserBasicInfo(); | |||||
| // | |||||
| // int pageIndex = 1; | |||||
| // final int pageSize = 1000; | |||||
| // | |||||
| // PageInfo page; | |||||
| // do{ | |||||
| // page = wxCUserBasicInfoService.listAsPage(wxCUserBasicInfo, pageIndex++, pageSize); | |||||
| // page.getList().stream().forEach(cubi -> { | |||||
| // long lStart = System.currentTimeMillis(); | |||||
| // wxCUserTagsService.triggerAssignTags(EnumAssignTagsTrigger.ASSIGN_TAGS_TRIGGER_SCAN, cubi); | |||||
| // logger.info("user tag cost time: {}", System.currentTimeMillis() - lStart); | |||||
| // }); | |||||
| // } while ((page.isHasNextPage())); | |||||
| // } | |||||
| } | } | ||||
| @@ -14,6 +14,7 @@ import org.springframework.stereotype.Component; | |||||
| import com.github.pagehelper.PageInfo; | import com.github.pagehelper.PageInfo; | ||||
| import com.iformall.domain.po.WxCUserBasicInfo; | import com.iformall.domain.po.WxCUserBasicInfo; | ||||
| import com.iformall.domain.po.WxMall; | import com.iformall.domain.po.WxMall; | ||||
| import com.iformall.domain.vo.WxCUserBasicTagVo; | |||||
| import com.iformall.enums.EnumAssignTagsTrigger; | import com.iformall.enums.EnumAssignTagsTrigger; | ||||
| import com.iformall.service.WxCUserBasicInfoService; | import com.iformall.service.WxCUserBasicInfoService; | ||||
| import com.iformall.service.WxCUserTagsService; | import com.iformall.service.WxCUserTagsService; | ||||
| @@ -62,7 +63,7 @@ public class WxCUserTagsSchedule { | |||||
| page = wxCUserBasicInfoService.listAsPage(wxCUserBasicInfo, pageIndex++, pageSize); | page = wxCUserBasicInfoService.listAsPage(wxCUserBasicInfo, pageIndex++, pageSize); | ||||
| page.getList().stream().forEach(cubi -> { | page.getList().stream().forEach(cubi -> { | ||||
| try { | try { | ||||
| wxCUserTagsService.triggerAssignTags(EnumAssignTagsTrigger.ASSIGN_TAGS_TRIGGER_SCAN, cubi); | |||||
| wxCUserTagsService.triggerAssignTags(EnumAssignTagsTrigger.ASSIGN_TAGS_TRIGGER_SCAN, new WxCUserBasicTagVo((WxCUserBasicInfo)cubi,mall.getTenantId())); | |||||
| }catch(Exception e) { | }catch(Exception e) { | ||||
| logger.error("wxCUserTagsSchedule error."+cubi.toString(),e); | logger.error("wxCUserTagsSchedule error."+cubi.toString(),e); | ||||
| } | } | ||||
| @@ -0,0 +1,15 @@ | |||||
| package com.iformall.domain.vo; | |||||
| import com.iformall.domain.po.WxCUserBasicInfo; | |||||
| import lombok.AllArgsConstructor; | |||||
| import lombok.Data; | |||||
| @Data | |||||
| @AllArgsConstructor | |||||
| public class WxCUserBasicTagVo { | |||||
| private WxCUserBasicInfo basicInfo; | |||||
| private String tenantId; | |||||
| } | |||||
| @@ -285,6 +285,7 @@ public class WxCUserServiceImpl implements WxCUserService { | |||||
| loingcount = Integer.parseInt(wxCUserBasicInfo.getLoginCount().toString()); | loingcount = Integer.parseInt(wxCUserBasicInfo.getLoginCount().toString()); | ||||
| }catch(Exception e) { | }catch(Exception e) { | ||||
| } | } | ||||
| basicInfo.setFinalTenantId(user.getFinalTenantId()); | |||||
| basicInfo.setLoginCount(loingcount+1); | basicInfo.setLoginCount(loingcount+1); | ||||
| wxCUserBasicInfoService.update(basicInfo); | wxCUserBasicInfoService.update(basicInfo); | ||||
| } | } | ||||
| @@ -293,6 +294,7 @@ public class WxCUserServiceImpl implements WxCUserService { | |||||
| WxCUser cUser = new WxCUser(); | WxCUser cUser = new WxCUser(); | ||||
| cUser.setId(user.getId()); | cUser.setId(user.getId()); | ||||
| cUser.setActiveTime(new Date()); | cUser.setActiveTime(new Date()); | ||||
| cUser.setTenantId(user.getTenantId()); | |||||
| saveOrUpdate(cUser); | saveOrUpdate(cUser); | ||||
| } | } | ||||
| wxCUserTagsService.triggerAssignTags(EnumAssignTagsTrigger.ASSIGN_TAGS_TRIGGER_LOGIN, wxCUser); | wxCUserTagsService.triggerAssignTags(EnumAssignTagsTrigger.ASSIGN_TAGS_TRIGGER_LOGIN, wxCUser); | ||||
| @@ -328,7 +330,7 @@ public class WxCUserServiceImpl implements WxCUserService { | |||||
| } | } | ||||
| WxCreditHistory wxCreditHistory = new WxCreditHistory(); | WxCreditHistory wxCreditHistory = new WxCreditHistory(); | ||||
| wxCreditHistory.setCUserId(user.getUserId()); | wxCreditHistory.setCUserId(user.getUserId()); | ||||
| wxCreditHistory.updateTenantInfo(user); | |||||
| wxCreditHistory.setTenantId(user.getFinalTenantId()); | |||||
| wxCreditHistory.setCreateDate(new Date()); | wxCreditHistory.setCreateDate(new Date()); | ||||
| wxCreditHistory.setCreditType(enumScoreType.getCode()); | wxCreditHistory.setCreditType(enumScoreType.getCode()); | ||||
| wxCreditHistory.setOperatorType(EnumUserType.CUSERBASIC.getCode()); | wxCreditHistory.setOperatorType(EnumUserType.CUSERBASIC.getCode()); | ||||
| @@ -8,6 +8,7 @@ import com.github.pagehelper.PageInfo; | |||||
| import com.iformall.common.IdWorker; | import com.iformall.common.IdWorker; | ||||
| import com.iformall.domain.po.*; | import com.iformall.domain.po.*; | ||||
| import com.iformall.domain.po.base.TenantEntity; | import com.iformall.domain.po.base.TenantEntity; | ||||
| import com.iformall.domain.vo.WxCUserBasicTagVo; | |||||
| import com.iformall.enums.*; | import com.iformall.enums.*; | ||||
| import com.iformall.mapper.*; | import com.iformall.mapper.*; | ||||
| import com.iformall.service.WxCUserTagsService; | import com.iformall.service.WxCUserTagsService; | ||||
| @@ -551,7 +552,7 @@ public class WxCUserTagsServiceImpl implements WxCUserTagsService { | |||||
| return resList; | return resList; | ||||
| } | } | ||||
| private List<WxTags> assignTypeId21(WxCUserBasicInfo user) { | |||||
| private List<WxTags> assignTypeId21(WxCUserBasicInfo user,String tenantId) { | |||||
| List<WxTags> resList = null; | List<WxTags> resList = null; | ||||
| Calendar startC = Calendar.getInstance(); | Calendar startC = Calendar.getInstance(); | ||||
| startC.setTime(new Date()); | startC.setTime(new Date()); | ||||
| @@ -561,6 +562,7 @@ public class WxCUserTagsServiceImpl implements WxCUserTagsService { | |||||
| wxCouponOrder.setCUserId(user.getId()); | wxCouponOrder.setCUserId(user.getId()); | ||||
| wxCouponOrder.setStartTime(startC.getTime()); | wxCouponOrder.setStartTime(startC.getTime()); | ||||
| wxCouponOrder.setEndTime(new Date()); | wxCouponOrder.setEndTime(new Date()); | ||||
| wxCouponOrder.setTenantId(tenantId); | |||||
| int count = wxCouponOrderMapper.findCount(wxCouponOrder); | int count = wxCouponOrderMapper.findCount(wxCouponOrder); | ||||
| @@ -695,52 +697,56 @@ public class WxCUserTagsServiceImpl implements WxCUserTagsService { | |||||
| resList = assignTypeId7(user, param.getPhone()); | resList = assignTypeId7(user, param.getPhone()); | ||||
| } | } | ||||
| //活跃 | //活跃 | ||||
| resList = assignTypeId21(user); | |||||
| resList = assignTypeId21(user,param.getTenantId()); | |||||
| } | } | ||||
| } | } | ||||
| break; | break; | ||||
| case ASSIGN_TAGS_TRIGGER_SCAN: { | case ASSIGN_TAGS_TRIGGER_SCAN: { | ||||
| WxCUserBasicInfo user = (WxCUserBasicInfo) obj; | |||||
| if (user != null) { | |||||
| if (user.getSex() != null) { | |||||
| //性别 | |||||
| resList = assignTypeId1(user, user.getSex()); | |||||
| } | |||||
| if (user.getBirthdate() != null) { | |||||
| //X0后 | |||||
| resList = assignTypeId2(user, user.getBirthdate()); | |||||
| //生肖 | |||||
| resList = assignTypeId3(user, user.getBirthdate()); | |||||
| //星座 | |||||
| resList = assignTypeId4(user, user.getBirthdate()); | |||||
| } | |||||
| if (user.getPhone() != null) { | |||||
| //运营商 | |||||
| resList = assignTypeId7(user, user.getPhone()); | |||||
| } | |||||
| if (user.getEducation() != null) { | |||||
| //学历 | |||||
| resList = assignTypeId6(user, user.getEducation()); | |||||
| } | |||||
| //消费类别 | |||||
| resList = assignTypeId14(user); | |||||
| //饮食偏好 | |||||
| resList = assignTypeId17(user); | |||||
| //消费时段 | |||||
| resList = assignTypeId18(user); | |||||
| //消费频度 | |||||
| resList = assignTypeId22(user); | |||||
| //活跃 | |||||
| resList = assignTypeId21(user); | |||||
| //车 | |||||
| WxCUserCar wxCUserCar = new WxCUserCar(); | |||||
| wxCUserCar.setCUserId(user.getId()); | |||||
| if (wxCUserCarMapper.countList(wxCUserCar) > 0) { | |||||
| resList = assignTypeId11(user); | |||||
| WxCUserBasicTagVo suser = (WxCUserBasicTagVo) obj; | |||||
| if (suser != null) { | |||||
| WxCUserBasicInfo user = suser.getBasicInfo(); | |||||
| if ( user != null) { | |||||
| if (user.getSex() != null) { | |||||
| //性别 | |||||
| resList = assignTypeId1(user, user.getSex()); | |||||
| } | |||||
| if (user.getBirthdate() != null) { | |||||
| //X0后 | |||||
| resList = assignTypeId2(user, user.getBirthdate()); | |||||
| //生肖 | |||||
| resList = assignTypeId3(user, user.getBirthdate()); | |||||
| //星座 | |||||
| resList = assignTypeId4(user, user.getBirthdate()); | |||||
| } | |||||
| if (user.getPhone() != null) { | |||||
| //运营商 | |||||
| resList = assignTypeId7(user, user.getPhone()); | |||||
| } | |||||
| if (user.getEducation() != null) { | |||||
| //学历 | |||||
| resList = assignTypeId6(user, user.getEducation()); | |||||
| } | |||||
| //消费类别 | |||||
| resList = assignTypeId14(user); | |||||
| //饮食偏好 | |||||
| resList = assignTypeId17(user); | |||||
| //消费时段 | |||||
| resList = assignTypeId18(user); | |||||
| //消费频度 | |||||
| resList = assignTypeId22(user); | |||||
| //活跃 | |||||
| resList = assignTypeId21(user,suser.getTenantId()); | |||||
| //车 | |||||
| WxCUserCar wxCUserCar = new WxCUserCar(); | |||||
| wxCUserCar.setCUserId(user.getId()); | |||||
| if (wxCUserCarMapper.countList(wxCUserCar) > 0) { | |||||
| resList = assignTypeId11(user); | |||||
| } | |||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| @@ -264,6 +264,7 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService { | |||||
| if (hasBirthDateCredit) { | if (hasBirthDateCredit) { | ||||
| wxCUserBasicInfoNew.setScoreDate(new Date()); | wxCUserBasicInfoNew.setScoreDate(new Date()); | ||||
| } | } | ||||
| wxCUserBasicInfoNew.setFinalTenantId(wxCUserBasicInfo.getFinalTenantId()); | |||||
| wxCUserBasicInfoMapper.updateById(wxCUserBasicInfoNew); | wxCUserBasicInfoMapper.updateById(wxCUserBasicInfoNew); | ||||
| } | } | ||||
| @@ -165,7 +165,7 @@ | |||||
| select | select | ||||
| <include refid="allColumns"/> | <include refid="allColumns"/> | ||||
| from wx_mall | from wx_mall | ||||
| where 1=1 and `tenant_id` = #{value} | |||||
| where `tenant_id` = #{value} | |||||
| </select> | </select> | ||||
| <select id="getByTenantInfo" parameterType="com.iformall.domain.po.WxMall" resultMap="BaseResultMap"> | <select id="getByTenantInfo" parameterType="com.iformall.domain.po.WxMall" resultMap="BaseResultMap"> | ||||
| select | select | ||||
| @@ -2,6 +2,7 @@ package com.iformall.config; | |||||
| import com.fasterxml.jackson.annotation.JsonAutoDetect; | import com.fasterxml.jackson.annotation.JsonAutoDetect; | ||||
| import com.fasterxml.jackson.annotation.PropertyAccessor; | import com.fasterxml.jackson.annotation.PropertyAccessor; | ||||
| import com.fasterxml.jackson.databind.DeserializationFeature; | |||||
| import com.fasterxml.jackson.databind.ObjectMapper; | import com.fasterxml.jackson.databind.ObjectMapper; | ||||
| import com.github.pagehelper.PageInfo; | import com.github.pagehelper.PageInfo; | ||||
| import com.iformall.domain.po.*; | import com.iformall.domain.po.*; | ||||
| @@ -269,6 +270,7 @@ public class RedisConfig extends CachingConfigurerSupport { | |||||
| Jackson2JsonRedisSerializer<Object> j = new Jackson2JsonRedisSerializer<Object>(Object.class); | Jackson2JsonRedisSerializer<Object> j = new Jackson2JsonRedisSerializer<Object>(Object.class); | ||||
| ObjectMapper om = new ObjectMapper(); | ObjectMapper om = new ObjectMapper(); | ||||
| om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); | ||||
| om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); | |||||
| j.setObjectMapper(om); | j.setObjectMapper(om); | ||||
| // value值的序列化 | // value值的序列化 | ||||