From dae8ec3ce3e04b86c3c21e90e554f4f644e36bfc Mon Sep 17 00:00:00 2001 From: gongbiao Date: Tue, 15 Oct 2019 16:40:36 +0800 Subject: [PATCH] =?UTF-8?q?[B=E7=AB=AF][=E4=BF=AE=E6=94=B9][=E7=A7=AF?= =?UTF-8?q?=E5=88=86=E6=89=93=E6=A0=87=E7=AD=BE]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/WxCUserTagsServiceImpl.java | 39 ++++++++++++++++--- 1 file changed, 34 insertions(+), 5 deletions(-) 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 3f8eaf204..46e368a31 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserTagsServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserTagsServiceImpl.java @@ -762,15 +762,44 @@ public class WxCUserTagsServiceImpl implements WxCUserTagsService { WxCUserBasicInfo wxCUserBasicInfo = wxCUserBasicInfoMapper.selectById(cUserId); WxCUserTags userTags = getById(wxCUserBasicInfo.getTagId()); List tagList = JSONArray.parseArray(userTags.getTags(), Long.class); - Set set = new HashSet<>(); - set.addAll(tagList); - List tempList = new ArrayList<>(); - tempList.addAll(set); - String tagStr = JSONArray.toJSONString(tempList); + //先从现有标签中查看用户是否有 服饰尺码 和 鞋码 类别 有 删除 + Long tagId = 0L; + WxTags wxTags = new WxTags(); + wxTags.setTypeId(EnumTagType.ID_27.getCode()); + tagId = getTagId(tagList, tagId, wxTags); + if (!tagId.equals(0L)) { + tagList.remove(tagId); + } + wxTags.setTypeId(EnumTagType.ID_28.getCode()); + tagId = getTagId(tagList, tagId, wxTags); + if (!tagId.equals(0L)) { + tagList.remove(tagId); + } + //添加新的标签 + tagList.addAll(tags); + String tagStr = JSONArray.toJSONString(tagList); userTags.setTags(tagStr); userTags.setUpdateDate(new Date()); wxCUserTagsMapper.updateById(userTags); } + public Long getTagId(List tagList, Long id, WxTags wxTags) { + List list = wxTagsMapper.findList(wxTags); + for (WxTags tag : list) { + boolean flag = false; + for (Long tagId : tagList) { + if (tag.getId().equals(tagId)) { + id = tagId; + flag = true; + break; + } + } + if (flag) { + break; + } + } + return id; + } + }