| | |
| | | List<ManageRecordIntervals> manageRecordIntervalsList = new ArrayList<>(); |
| | | |
| | | DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); |
| | | //获取当前年份 |
| | | LocalDate currentDate = LocalDate.now(); |
| | | // 定义日期格式 |
| | | DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy"); |
| | | // 格式化当前日期 |
| | | String currentMonth = currentDate.format(formatter); |
| | | ManageRecordIntervalsTotal manageRecordIntervalsTotal = manageRecordIntervalsTotalMapper.selectOne(Wrappers.<ManageRecordIntervalsTotal>lambdaQuery().eq(ManageRecordIntervalsTotal::getYear, currentMonth)); |
| | | ManageRecordIntervalsTotal manageRecordIntervalsTotal = getOrCreateCurrentYearTotal(); |
| | | try { |
| | | InputStream inputStream = file.getInputStream(); |
| | | XWPFDocument document = new XWPFDocument(inputStream); |
| | |
| | | |
| | | @Override |
| | | public int addManageRecordIntervals(ManageRecordIntervals manageRecordIntervals) { |
| | | //获取当前年份 |
| | | LocalDate currentDate = LocalDate.now(); |
| | | // 定义日期格式 |
| | | DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy"); |
| | | // 格式化当前日期 |
| | | String currentMonth = currentDate.format(formatter); |
| | | ManageRecordIntervalsTotal manageRecordIntervalsTotal = manageRecordIntervalsTotalMapper.selectOne(Wrappers.<ManageRecordIntervalsTotal>lambdaQuery().eq(ManageRecordIntervalsTotal::getYear, currentMonth)); |
| | | ManageRecordIntervalsTotal manageRecordIntervalsTotal = getOrCreateCurrentYearTotal(); |
| | | manageRecordIntervals.setRecordIntervalsTotalId(manageRecordIntervalsTotal.getId()); |
| | | manageRecordIntervalsMapper.insert(manageRecordIntervals); |
| | | manageRecordIntervalsTotal.setTotalNum(1 + manageRecordIntervalsTotal.getTotalNum()); |
| | |
| | | ManageRecordIntervals manageRecordIntervals = manageRecordIntervalsMapper.selectById(id); |
| | | manageRecordIntervalsMapper.deleteById(id); |
| | | ManageRecordIntervalsTotal manageRecordIntervalsTotal = manageRecordIntervalsTotalMapper.selectById(manageRecordIntervals.getRecordIntervalsTotalId()); |
| | | manageRecordIntervalsTotal.setTotalNum(manageRecordIntervalsTotal.getTotalNum() - 1); |
| | | if (manageRecordIntervalsTotal == null) { |
| | | return 0; |
| | | } |
| | | manageRecordIntervalsTotal.setTotalNum((manageRecordIntervalsTotal.getTotalNum() == null ? 0 : manageRecordIntervalsTotal.getTotalNum()) - 1); |
| | | return manageRecordIntervalsTotalMapper.updateById(manageRecordIntervalsTotal); |
| | | } |
| | | |
| | | // 年度汇总记录原本由每年 1 月 1 日的定时任务创建,任务未启用时此处兜底自动补建,避免取 id 时报空指针 |
| | | private ManageRecordIntervalsTotal getOrCreateCurrentYearTotal() { |
| | | String year = String.valueOf(LocalDate.now().getYear()); |
| | | ManageRecordIntervalsTotal manageRecordIntervalsTotal = manageRecordIntervalsTotalMapper.selectOne(Wrappers.<ManageRecordIntervalsTotal>lambdaQuery().eq(ManageRecordIntervalsTotal::getYear, year)); |
| | | if (manageRecordIntervalsTotal == null) { |
| | | manageRecordIntervalsTotal = new ManageRecordIntervalsTotal(); |
| | | manageRecordIntervalsTotal.setYear(year); |
| | | manageRecordIntervalsTotal.setTotalNum(0); |
| | | manageRecordIntervalsTotalMapper.insert(manageRecordIntervalsTotal); |
| | | } else if (manageRecordIntervalsTotal.getTotalNum() == null) { |
| | | manageRecordIntervalsTotal.setTotalNum(0); |
| | | } |
| | | return manageRecordIntervalsTotal; |
| | | } |
| | | |
| | | // 水平合并单元格 |
| | | private static void mergeCellsHorizontally(XWPFTable table, int row, int fromCol, int toCol) { |
| | | for (int i = fromCol; i <= toCol; i++) { |