|
@@ -2,12 +2,12 @@ package cn.kdan.compdf.service.impl;
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
import cn.hutool.core.collection.CollectionUtil;
|
|
|
+import cn.hutool.core.date.DateUtil;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
+import cn.kdan.compdf.config.ExcelWidthStyleStrategy;
|
|
|
import cn.kdan.compdf.constant.UserBalanceConstant;
|
|
|
import cn.kdan.compdf.dto.AddFreePlanDTO;
|
|
|
import cn.kdan.compdf.dto.Asset;
|
|
|
-import cn.hutool.core.date.DateUtil;
|
|
|
-import cn.kdan.compdf.config.ExcelWidthStyleStrategy;
|
|
|
import cn.kdan.compdf.dto.PlanStatisticsDTO;
|
|
|
import cn.kdan.compdf.entity.BackgroundUserBalance;
|
|
|
import cn.kdan.compdf.entity.BackgroundUserRemain;
|
|
@@ -19,6 +19,7 @@ import cn.kdan.compdf.service.BackgroundUserService;
|
|
|
import cn.kdan.compdf.utils.MyLocalDateUtil;
|
|
|
import cn.kdan.compdf.vo.BackgroundUserBalanceVO;
|
|
|
import cn.kdan.compdf.vo.BackgroundUserPackageBalanceVO;
|
|
|
+import cn.kdan.compdf.vo.BillVO;
|
|
|
import com.alibaba.excel.EasyExcel;
|
|
|
import com.alibaba.excel.util.MapUtils;
|
|
|
import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
|
|
@@ -34,11 +35,17 @@ import org.springframework.data.redis.core.StringRedisTemplate;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
-import java.io.*;
|
|
|
+import java.io.IOException;
|
|
|
import java.net.URLEncoder;
|
|
|
+import java.time.LocalDate;
|
|
|
import java.time.LocalDateTime;
|
|
|
-import java.util.*;
|
|
|
+import java.time.temporal.TemporalAdjusters;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.Collections;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* @author ComPDFKit-WPH 2022-10-14
|
|
@@ -287,6 +294,27 @@ public class BackgroundUserBalanceServiceImpl extends ServiceImpl<BackgroundUser
|
|
|
this.baseMapper.insert(userBalance);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public List<BillVO> getBill(Long userId) {
|
|
|
+ List<BackgroundUserRemain> userRemains = backgroundUserRemainService.getUserRemainByUserId(userId);
|
|
|
+ return userRemains.stream().map(userRemain -> {
|
|
|
+ BillVO billVO = new BillVO();
|
|
|
+ billVO.setAssetType(userRemain.getAssetType());
|
|
|
+ billVO.setTotalFiles(userRemain.getTotalFiles());
|
|
|
+ switch (userRemain.getAssetType()) {
|
|
|
+ case 3:
|
|
|
+ billVO.setStartDate(this.getFirstDayOfMonth());
|
|
|
+ billVO.setEndDate(this.getLastDayOfMonth());
|
|
|
+ break;
|
|
|
+ case 1:
|
|
|
+ billVO.setStartDate(null);
|
|
|
+ billVO.setEndDate(null);
|
|
|
+ break;
|
|
|
+ case 2: break;
|
|
|
+ }
|
|
|
+ return billVO;
|
|
|
+ }).collect(Collectors.toList());
|
|
|
+ }
|
|
|
|
|
|
|
|
|
/**
|
|
@@ -303,4 +331,11 @@ public class BackgroundUserBalanceServiceImpl extends ServiceImpl<BackgroundUser
|
|
|
return newestPlanRemainingFiles;
|
|
|
}
|
|
|
|
|
|
+ private LocalDate getFirstDayOfMonth() {
|
|
|
+ return LocalDate.now().with(TemporalAdjusters.firstDayOfMonth());
|
|
|
+ }
|
|
|
+
|
|
|
+ private LocalDate getLastDayOfMonth() {
|
|
|
+ return LocalDate.now().with(TemporalAdjusters.lastDayOfMonth());
|
|
|
+ }
|
|
|
}
|