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 7c8dbd519..04e60ba7c 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserBasicInfoServiceImpl.java @@ -3,30 +3,24 @@ package com.iformall.service.impl; import com.alibaba.fastjson.JSONObject; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; - import com.iformall.common.IdWorker; import com.iformall.domain.dto.WxCUserBasicInfoDto; - import com.iformall.domain.dto.WxCUserBasicInfoFilterDto; import com.iformall.domain.dto.WxCUserBasicInfoFilterListDto; import com.iformall.domain.po.*; import com.iformall.domain.vo.*; import com.iformall.enums.*; - import com.iformall.mapper.*; import com.iformall.service.*; - import org.apache.commons.lang3.StringUtils; - import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.stereotype.Service; + import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; - - import java.text.ParseException; import java.text.SimpleDateFormat; import java.time.DayOfWeek; @@ -34,7 +28,6 @@ import java.time.LocalDate; import java.time.LocalDateTime; import java.time.ZoneId; import java.time.temporal.TemporalAdjusters; -import java.time.temporal.WeekFields; import java.util.*; import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; @@ -765,7 +758,6 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService { //积分处理逻辑:覆盖原积分 记录历史 if (credit != null) { WxCreditHistory wxCreditHistory = new WxCreditHistory(); - wxCreditHistory.setId(idWorker.nextId()); wxCreditHistory.setTenantId(tenantId); wxCreditHistory.setCreateDate(new Date()); if (mallUserInfo != null) { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java index 3db888662..9acb691ed 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java @@ -162,13 +162,15 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService { //计算出需要新增或减少的积分 int creditChangeNum = creditIncrement(record); - if (currentCreditAmount + creditChangeNum < 0) { - throw new MallinkException(ErrorCode.CREDIT_NOT_ENOUGH); - } if (creditChangeNum != 0) { - //throw new MallinkException(ErrorCode.CREDIT_ZERO); - record.setCreditNum(creditChangeNum); - record.setCreditAmount(currentCreditAmount + creditChangeNum); + if (currentCreditAmount + creditChangeNum < 0) { + throw new MallinkException(ErrorCode.CREDIT_NOT_ENOUGH); + } + //如果为导入的会员 则直接覆盖总积分和操作积分明细 + if (record.getCreditType() != EnumScoreType.MEM_IMPORT.getCode()) { + record.setCreditNum(creditChangeNum); + record.setCreditAmount(currentCreditAmount + creditChangeNum); + } if (record.getId() == null) { final IdWorker idWorker = IdWorker.get(); record.setId(idWorker.nextId()); @@ -249,6 +251,9 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService { if (record.getCreditType() == EnumScoreType.REDUCE_CREDIT.getCode()) { return reduceCredit(record); } + if (record.getCreditType() != EnumScoreType.MEM_IMPORT.getCode()) { + return record.getCreditNum(); + } return 0; }