Browse Source

新增消耗金币校验

huangqizheng/feature-20250626103451-权限页面
sunjiabei 7 days ago
parent
commit
e8921ddca0
  1. 5
      src/main/java/com/example/demo/controller/ConsumeController.java
  2. 3
      src/main/java/com/example/demo/service/ConsumeService.java
  3. 8
      src/main/java/com/example/demo/serviceImpl/ConsumeServiceImpl.java

5
src/main/java/com/example/demo/controller/ConsumeController.java

@ -66,11 +66,10 @@ public class ConsumeController {
return Result.success(gold);
}
//消耗金币统计
//消耗金币增加
@PostMapping("/add")
public Result add(@RequestBody ConsumeUser consumeUser) {
consumeService.add(consumeUser);
return Result.success();
return consumeService.add(consumeUser);
}

3
src/main/java/com/example/demo/service/ConsumeService.java

@ -4,6 +4,7 @@ package com.example.demo.service;
import com.example.demo.domain.entity.UserGoldRecord;
import com.example.demo.domain.vo.ConsumeUser;
import com.example.demo.domain.vo.Gold;
import com.example.demo.domain.vo.Result;
import com.github.pagehelper.PageInfo;
/**
@ -23,5 +24,5 @@ public interface ConsumeService {
PageInfo<ConsumeUser> selectBy(Integer pageNum, Integer pageSize, ConsumeUser consumeUser);
void add(ConsumeUser consumeUser);
Result add(ConsumeUser consumeUser);
}

8
src/main/java/com/example/demo/serviceImpl/ConsumeServiceImpl.java

@ -5,6 +5,7 @@ import com.example.demo.domain.entity.UserGoldRecord;
import com.example.demo.domain.vo.ConsumeUser;
import com.example.demo.domain.vo.Gold;
import com.example.demo.domain.vo.GoldUser;
import com.example.demo.domain.vo.Result;
import com.example.demo.mapper.ConsumeMapper;
import com.example.demo.mapper.UserMapper;
import com.example.demo.service.ConsumeService;
@ -92,7 +93,7 @@ public class ConsumeServiceImpl implements ConsumeService {
//新增消耗
@Override
public void add(ConsumeUser consumeUser) {
public Result add(ConsumeUser consumeUser) {
UserGoldRecord userGoldRecord = new UserGoldRecord();
// 获取当前时间戳部分
@ -117,6 +118,10 @@ public class ConsumeServiceImpl implements ConsumeService {
// 获取当前月份1-12
int currentMonth = LocalDate.now().getMonthValue();
GoldUser gold = userMapper.selectGold(consumeUser.getJwcode().toString());
if(consumeUser.getFreeGold()>(gold.getNowFreeDecember()+ gold.getNowFreeJune())||consumeUser.getPermanentGold()>gold.getNowPermanentGold()
||consumeUser.getTaskGold()>gold.getNowTaskGold()){
return Result.error("金币数量不足");
}
// 根据当前月份设置对应字段
if (currentMonth >= 1 && currentMonth <= 6) {
// 1-6月设置6月额度12月保持默认值
@ -153,5 +158,6 @@ public class ConsumeServiceImpl implements ConsumeService {
user.setCurrentTaskGold(gold.getNowTaskGold()-consumeUser.getTaskGold());
user.setConsumeNum(gold.getConsumeNum()-1);
userMapper.updateGold(user);
return Result.success();
}
}
Loading…
Cancel
Save