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

[B端][修改][添加积分时服饰业态打标签]

release_toaliyun_real
gongbiao 6 лет назад
Родитель
Сommit
f033748869
8 измененных файлов: 112 добавлений и 6 удалений
  1. +8
    -0
      mallinkBApi/src/main/java/com/iformall/controller/WxCreditHistoryController.java
  2. +2
    -0
      mallinkBApi/src/main/java/com/iformall/controller/WxMerchantBUserController.java
  3. +52
    -0
      mallinkBApi/src/main/java/com/iformall/controller/WxTagController.java
  4. +4
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxCreditHistory.java
  5. +23
    -2
      mallinkService/src/main/java/com/iformall/enums/EnumTag.java
  6. +3
    -0
      mallinkService/src/main/java/com/iformall/enums/EnumTagType.java
  7. +5
    -4
      mallinkService/src/main/java/com/iformall/service/WxCUserTagsService.java
  8. +15
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxCUserTagsServiceImpl.java

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

@@ -15,6 +15,7 @@ import com.iformall.enums.EnumUserType;
import com.iformall.enums.EnumYesOrNo;
import com.iformall.exception.MallinkException;
import com.iformall.service.WxCUserBasicInfoService;
import com.iformall.service.WxCUserTagsService;
import com.iformall.service.WxCreditHistoryService;
import com.iformall.service.WxMerchantService;
import io.swagger.annotations.Api;
@@ -45,6 +46,9 @@ public class WxCreditHistoryController extends BaseController {
@Autowired
private WxMerchantService wxMerchantService;

@Autowired
private WxCUserTagsService wxCUserTagsService;

@ApiOperation("根据商户ID和消费金额获取所增加积分 取data里credit的值, 服务台会查询一般商户的信息,普通商户只会调用自己的id")
@GetMapping("/findByMerchantIdAndSpend")
@ApiImplicitParams({
@@ -117,6 +121,10 @@ public class WxCreditHistoryController extends BaseController {
wxCreditHistoryService.creditUsercheck(wxCreditHistory.getCUserId());
wxCreditHistory.setBuserId(getBuser().getId());
WxCreditHistory credit = wxCreditHistoryService.saveOrUpdate(wxCreditHistory);
//更新标签
if (!wxCreditHistory.getTags().isEmpty()) {
wxCUserTagsService.updateTagByUserId(wxCreditHistory.getCUserId(), wxCreditHistory.getTags());
}
return new ResultData(Result.SUCCESS, "操作成功", credit);
} catch (MallinkException e) {
log.error(e.getMessage());


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

@@ -82,6 +82,8 @@ public class WxMerchantBUserController extends BaseController {
resultMap.put("merchant_id",merchant.getId());
resultMap.put("is_admin",merchant.getIsAdmin());
resultMap.put("creditLocked", merchant.getCreditLocked());
resultMap.put("businessId", merchant.getBusinessId());

String mid = null;
try {
mid = String.valueOf(merchant.getId());


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

@@ -0,0 +1,52 @@
package com.iformall.controller;

import com.iformall.common.ResultData;
import com.iformall.domain.po.WxTags;
import com.iformall.enums.EnumTagType;
import com.iformall.service.WxTagsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

@RestController
@RequestMapping("/api/tag")
@Api(description = "积分相关接口")
@Slf4j
public class WxTagController extends BaseController {

@Autowired
private WxTagsService wxTagsService;

@ApiOperation("获取标签")
@GetMapping("getData")
public ResultData getTags() {
log.debug("[" + getIpAddr() + "] WxCreditHistoryController::getTagsByBussiness");
WxTags wxTags = new WxTags();
wxTags.setTypeId(EnumTagType.ID_27.getCode());
List<WxTags> listA = wxTagsService.findList(wxTags);
wxTags.setTypeId(EnumTagType.ID_28.getCode());
List<WxTags> listB = wxTagsService.findList(wxTags);
Map<Long, List<WxTags>> dataMap = new HashMap<>();
dataMap.put(EnumTagType.ID_27.getCode(), listA);
dataMap.put(EnumTagType.ID_28.getCode(), listB);

Map<Long, String> type = new HashMap<>();
type.put(EnumTagType.ID_27.getCode(), EnumTagType.ID_27.getMessage());
type.put(EnumTagType.ID_28.getCode(), EnumTagType.ID_28.getMessage());

Map<String, Object> data = new HashMap<>();
data.put("type", type);
data.put("data", dataMap);
return new ResultData(data);
}


}

+ 4
- 0
mallinkService/src/main/java/com/iformall/domain/po/WxCreditHistory.java Просмотреть файл

@@ -6,6 +6,7 @@ import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;
import java.util.List;

@TableName(value = "wx_credit_history")
@Data
@@ -74,4 +75,7 @@ public class WxCreditHistory extends BaseEntity {
@io.swagger.annotations.ApiModelProperty(value = "B端微信用户", name = "buserId")
private Long buserId;

@io.swagger.annotations.ApiModelProperty(value = "标签", name = "tags")
private transient List<Long> tags;

}

+ 23
- 2
mallinkService/src/main/java/com/iformall/enums/EnumTag.java Просмотреть файл

@@ -181,6 +181,28 @@ public enum EnumTag {

ID_145(145L, EnumTagType.ID_14,"数码家电"),

ID_146(146L, EnumTagType.ID_16, "品牌偏好"),

ID_147(147L, EnumTagType.ID_27, "服饰尺码"),
ID_148(148L, EnumTagType.ID_27, "服饰尺码"),
ID_149(149L, EnumTagType.ID_27, "服饰尺码"),
ID_150(150L, EnumTagType.ID_27, "服饰尺码"),
ID_151(151L, EnumTagType.ID_27, "服饰尺码"),
ID_152(152L, EnumTagType.ID_27, "服饰尺码"),
ID_153(153L, EnumTagType.ID_27, "服饰尺码"),

ID_154(154L, EnumTagType.ID_28, "鞋尺码"),
ID_155(155L, EnumTagType.ID_28, "鞋尺码"),
ID_156(156L, EnumTagType.ID_28, "鞋尺码"),
ID_157(157L, EnumTagType.ID_28, "鞋尺码"),
ID_158(158L, EnumTagType.ID_28, "鞋尺码"),
ID_159(159L, EnumTagType.ID_28, "鞋尺码"),
ID_160(160L, EnumTagType.ID_28, "鞋尺码"),
ID_161(161L, EnumTagType.ID_28, "鞋尺码"),
ID_162(162L, EnumTagType.ID_28, "鞋尺码"),
ID_163(163L, EnumTagType.ID_28, "鞋尺码"),
ID_164(164L, EnumTagType.ID_28, "鞋尺码"),
ID_165(165L, EnumTagType.ID_28, "鞋尺码"),

ID_1000(1000L, EnumTagType.ID_50,"一天以内"),
ID_1001(1001L, EnumTagType.ID_50,"一周以内"),
@@ -205,8 +227,7 @@ public enum EnumTag {

ID_1300(1300L, EnumTagType.ID_54,"今天核销"),
ID_1301(1301L, EnumTagType.ID_54,"本周核销"),
ID_1302(1302L, EnumTagType.ID_54,"当月核销"),
;
ID_1302(1302L, EnumTagType.ID_54,"当月核销"),;

private static Map<Long,EnumTag> map = new HashMap<Long,EnumTag>();
static {


+ 3
- 0
mallinkService/src/main/java/com/iformall/enums/EnumTagType.java Просмотреть файл

@@ -32,6 +32,9 @@ public enum EnumTagType {
ID_25(25L, EnumTagTypeFlag.FLAG_NORMAL, EnumTagGroup.ID_4, "爱好"),
ID_26(26L, EnumTagTypeFlag.FLAG_SINGLE, EnumTagGroup.ID_4, "生活半径"),

ID_27(27L, EnumTagTypeFlag.FLAG_SINGLE, EnumTagGroup.ID_1, "服饰尺码"),
ID_28(28L, EnumTagTypeFlag.FLAG_SINGLE, EnumTagGroup.ID_1, "鞋尺码"),

ID_0(0L, EnumTagTypeFlag.FLAG_SINGLE, EnumTagGroup.ID_10, "会员手机"),
ID_50(50L, EnumTagTypeFlag.FLAG_SINGLE, EnumTagGroup.ID_10, "会员会龄"),
ID_51(51L, EnumTagTypeFlag.FLAG_SINGLE, EnumTagGroup.ID_10, "会员等级"),


+ 5
- 4
mallinkService/src/main/java/com/iformall/service/WxCUserTagsService.java Просмотреть файл

@@ -1,15 +1,14 @@
package com.iformall.service;

import java.util.Date;
import java.util.List;

import com.github.pagehelper.PageInfo;
import com.iformall.domain.po.WxCUser;
import com.iformall.domain.po.WxCUserBasicInfo;
import com.iformall.domain.po.WxCUserTags;
import com.iformall.domain.po.WxTags;
import com.iformall.enums.EnumAssignTagsTrigger;

import java.util.Date;
import java.util.List;

public interface WxCUserTagsService {

/**
@@ -50,4 +49,6 @@ public interface WxCUserTagsService {
List<WxTags> assignTags(List<Long> tagIdList, WxCUserBasicInfo user);
List<WxTags> triggerAssignTags(EnumAssignTagsTrigger trigger, Object obj);

void updateTagByUserId(Long cUserId, List<Long> tags);

}

+ 15
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxCUserTagsServiceImpl.java Просмотреть файл

@@ -1,6 +1,7 @@
package com.iformall.service.impl;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
@@ -756,5 +757,19 @@ public class WxCUserTagsServiceImpl implements WxCUserTagsService {
return resList;
}

@Override
public void updateTagByUserId(Long cUserId, List<Long> tags) {
WxCUserBasicInfo wxCUserBasicInfo = wxCUserBasicInfoMapper.selectById(cUserId);
WxCUserTags userTags = getById(wxCUserBasicInfo.getTagId());
List<Long> tagList = JSONArray.parseArray(userTags.getTags(), Long.class);
if (!tagList.isEmpty()) {
tagList.addAll(tags);
}
String tagStr = JSONArray.toJSONString(tagList);
userTags.setTags(tagStr);
userTags.setUpdateDate(new Date());
wxCUserTagsMapper.updateById(userTags);
}


}

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