Browse Source

汇率校验

huangqizheng/feature-20250708175155-7.8bug修复
lijianlin 1 month ago
parent
commit
8c40a9f4ba
  1. 4
      src/main/java/com/example/demo/controller/RateController.java
  2. 3
      src/main/java/com/example/demo/service/RateService.java
  3. 11
      src/main/java/com/example/demo/serviceImpl/RateServiceImpl.java
  4. 58
      src/main/java/com/example/demo/serviceImpl/WorkbenchServiceImpl.java

4
src/main/java/com/example/demo/controller/RateController.java

@ -13,6 +13,7 @@ import org.springframework.util.ObjectUtils;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.*;
import java.math.BigDecimal;
import java.util.Map;
@ -63,6 +64,9 @@ public class RateController {
return Result.error("汇率数值不能为空");
}
rateService.update(rate);
if (rate.getNum() == null || rate.getNum().equals(BigDecimal.ZERO)) {
return Result.error("汇率数值存在异常");
}else
return Result.success("编辑成功");
}

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

@ -2,6 +2,7 @@ package com.example.demo.service;
import com.example.demo.domain.entity.Rate;
import com.example.demo.domain.vo.RateDetail;
import com.example.demo.domain.vo.Result;
import com.github.pagehelper.PageInfo;
public interface RateService {
@ -12,5 +13,5 @@ public interface RateService {
void add(Rate rate);
void update(Rate rate);
Result update(Rate rate);
}

11
src/main/java/com/example/demo/serviceImpl/RateServiceImpl.java

@ -3,6 +3,7 @@ package com.example.demo.serviceImpl;
import com.example.demo.domain.entity.Rate;
import com.example.demo.domain.vo.ConsumeUser;
import com.example.demo.domain.vo.RateDetail;
import com.example.demo.domain.vo.Result;
import com.example.demo.mapper.RateMapper;
import com.example.demo.service.RateService;
import com.github.pagehelper.PageHelper;
@ -10,6 +11,7 @@ import com.github.pagehelper.PageInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.List;
@ -37,7 +39,12 @@ public class RateServiceImpl implements RateService {
}
@Override
public void update(Rate rate) {
public Result update(Rate rate) {
rateMapper.update(rate);
}
if (rate.getNum() == null || rate.getNum().equals(BigDecimal.ZERO)) {
return Result.error("汇率数值存在异常");
}else {
return Result.success("编辑成功");
}}
}

58
src/main/java/com/example/demo/serviceImpl/WorkbenchServiceImpl.java

@ -84,65 +84,7 @@ public class WorkbenchServiceImpl implements WorkbenchService {
.collect(Collectors.toList());
return new WorkbenchCard(token, marketCards,new ArrayList<>(), markets, date, date);
/* List<WorkbenchMarketCard> marketCards = new ArrayList<>();
// 遍历每个 marketCard 并填充数据
for (String market : markets) {
if (market == null || market.trim().isEmpty()) continue;
// 查询该地区当天的数据
Statistics statistics = statisticsMapper.selectByMarketAndDate(
market,
Date.from(startOfDay.atZone(ZoneId.systemDefault()).toInstant()),
Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant())
);
WorkbenchMarketCard card = new WorkbenchMarketCard();
card.setMarket(market);
if (statistics != null){
// 卡片一当前金币相关
card.setCurrentPermanent(statistics.getCurrentPermanent());//余量-永久金币
card.setCurrentFreeJune(statistics.getCurrentFreeJune()); //余量-免费六月金币
card.setCurrentFreeDecember(statistics.getCurrentFreeDecember()); //余量-免费十二月金币
card.setCurrentTask(statistics.getCurrentTask()); //余量-任务金币
card.setCurrentFree(card.getCurrentFreeJune() + card.getCurrentFreeDecember()); //余量-免费金币
card.setCurrentGold(card.getCurrentPermanent() + card.getCurrentFree() + card.getCurrentTask()); //余量-总金币
card.setDailyChange(statistics.getDailyChange()); //较前一日变化
// 卡片二充值相关
card.setRecharge(statistics.getRecharge()); //充值-当日充值
card.setMoney(statistics.getMoney()); //充值-当日金额永久
card.setYearlyRecharge(calculateSum(market, "recharge",yearlyStartDate ,date));//充值-全年累计充值
card.setYearlyMoney(calculateSum(market, "money",yearlyStartDate ,date)); //充值-全年累计金额永久
// 卡片三消费与退款
card.setConsumePermanent(statistics.getConsumePermanent());//消费-永久金币
card.setConsumeFreeJune(statistics.getConsumeFreeJune());//消费-免费六月金币
card.setConsumeFreeDecember(statistics.getConsumeFreeDecember());//消费-免费十二月金币
card.setConsumeTask(statistics.getConsumeTask());//消费-任务金币
card.setRefundPermanent(statistics.getRefundPermanent());//退款-永久金币
card.setRefundFreeJune(statistics.getRefundFreeJune());//退款-免费六月金币
card.setRefundFreeDecember(statistics.getRefundFreeDecember());//退款-免费十二月金币
card.setRefundTask(statistics.getRefundTask());//退款-任务金币
//当日总消费
int totalConsume = card.getConsumePermanent() + card.getConsumeFreeJune() + card.getConsumeFreeDecember() + card.getConsumeTask();
//当日总退款
int totalRefund = card.getRefundPermanent() + card.getRefundFreeJune() + card.getRefundFreeDecember() + card.getRefundTask();
card.setDailyReduce(totalConsume - totalRefund);//当日总消耗
card.setYearlyConsume(calculateSum(market, "consume", yearlyStartDate,date));//年累计消费
card.setYearlyRefund(calculateSum(market, "refund",yearlyStartDate ,date));//年累计退款
card.setYearlyReduce(card.getYearlyConsume() - card.getYearlyRefund());//年累计消耗
// 卡片四人头数相关
card.setRechargeNum(statistics.getRechargeNum());
card.setFirstRecharge(statistics.getFirstRecharge());
card.setYearlyRechargeNum(calculateSum(market,"rechargeNum",yearlyStartDate,date));
// 周环比日同比
card.setWow(calculateWeekOverWeek(market, date));
card.setDaily(calculateDayOverDay(market, date));
marketCards.add(card);
}
}
return new WorkbenchCard(token, marketCards,markets,date,date);*/
}
/*
获取卡片数据

Loading…
Cancel
Save