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

[BUG][修改][C端通过积分报名用户需要在积分变更记录下有记录]

release_toaliyun_real
gongbiao 7 лет назад
Родитель
Сommit
0b8cb997c7
2 измененных файлов: 13 добавлений и 18 удалений
  1. +10
    -18
      mallinkService/src/main/java/com/iformall/service/impl/WxActivityJoinServiceImpl.java
  2. +3
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java

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

@@ -16,6 +16,7 @@ import com.iformall.mapper.*;
import com.iformall.mq.MqBaseProducer;
import com.iformall.service.ExcelService;
import com.iformall.service.WxActivityJoinService;
import com.iformall.service.WxCreditHistoryService;
import com.iformall.utils.DateUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
@@ -60,6 +61,10 @@ public class WxActivityJoinServiceImpl implements WxActivityJoinService {
@Autowired
WxCreditHistoryMapper wxCreditHistoryMapper;

@Autowired
WxCreditHistoryService wxCreditHistoryService;


@Override
public PageInfo<WxActivityJoin> listAsPage(WxActivityJoin record, Integer pageIndex, Integer pageSize) {
return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxActivityJoinMapper.findList(record));
@@ -154,32 +159,19 @@ public class WxActivityJoinServiceImpl implements WxActivityJoinService {
WxActivity wxActivity = wxActivityMapper.selectByPrimaryKey(wxActivityJoin.getActivityId());
Date date = new Date();
if (wxActivity.getUseCredit().equals(EnumActivityUseCreditStatus.YES.getCode())) {
Integer userCredit = user.getCredit();
Integer credit = wxActivity.getCredit();
Map<String, Object> data = new HashMap<>(2);
if (credit > userCredit) {
data.put("useCredit", credit);
data.put("totalCredit", userCredit);
return new ResultData(ErrorCode.CREDIT_NOT_ENOUGH, data);
}
userCredit = userCredit - credit;
user.setCredit(userCredit);
wxCUserMapper.updateByPrimaryKeySelective(user);
data.put("useCredit", credit);
data.put("totalCredit", userCredit);
//积分历史
WxCreditHistory wxCreditHistory = new WxCreditHistory();
final IdWorker idWorker = IdWorker.get();
wxCreditHistory.setId(idWorker.nextId());
wxCreditHistory.setTenantId(wxActivity.getTenantId());
wxCreditHistory.setCUserId(wxActivityJoin.getUserId());
wxCreditHistory.setCreditAmount(userCredit);
wxCreditHistory.setCreditNum(-credit);
wxCreditHistory.setCreditNum(credit);
wxCreditHistory.setCreditType(EnumScoreType.ACTIVITY_JOIN.getCode());
wxCreditHistory.setCreateDate(date);
wxCreditHistory.setOperatorType(EnumUserType.CUSER.getCode());
wxCreditHistory.setOperatorId(wxActivityJoin.getUserId());
wxCreditHistoryMapper.updateByPrimaryKeySelective(wxCreditHistory);
WxCreditHistory creditHistory = wxCreditHistoryService.saveOrUpdate(wxCreditHistory);
Map<String, Object> data = new HashMap<>(2);
data.put("useCredit", credit);
data.put("totalCredit", creditHistory.getCreditAmount());
}
//保存到报名表中
final IdWorker idWorker = IdWorker.get();


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

@@ -266,6 +266,9 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService {
if (record.getCreditType() == EnumScoreType.MEM_IMPORT.getCode()) {
return record.getCreditNum();
}
if (record.getCreditType() == EnumScoreType.ACTIVITY_JOIN.getCode()) {
return reduceCredit(record);
}

return 0;
}


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