From d0c3258ed4871f2b9f03357bfd39b6caeff156b0 Mon Sep 17 00:00:00 2001 From: 李林 <z1292839451@163.com> Date: 星期二, 09 一月 2024 11:07:59 +0800 Subject: [PATCH] 修订版3.0 --- data-server/src/main/java/com/yuanchu/mom/controller/DataReportingController.java | 83 +++++++++++++++++++++++++++++++++++++++-- 1 files changed, 79 insertions(+), 4 deletions(-) diff --git a/data-server/src/main/java/com/yuanchu/mom/controller/DataReportingController.java b/data-server/src/main/java/com/yuanchu/mom/controller/DataReportingController.java index 30d1cac..2aa2035 100644 --- a/data-server/src/main/java/com/yuanchu/mom/controller/DataReportingController.java +++ b/data-server/src/main/java/com/yuanchu/mom/controller/DataReportingController.java @@ -11,10 +11,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.annotation.ValueAuth; import com.yuanchu.mom.common.GetLook; -import com.yuanchu.mom.dto.DataReportingCsvDto; -import com.yuanchu.mom.dto.DataReportingPageDto; -import com.yuanchu.mom.dto.ProductCountDto; -import com.yuanchu.mom.dto.RegistrantCountDto; +import com.yuanchu.mom.dto.*; import com.yuanchu.mom.exception.ErrorException; import com.yuanchu.mom.pojo.DataReporting; import com.yuanchu.mom.pojo.FansSubmit; @@ -279,4 +276,82 @@ } return Result.success(); } + + @ApiOperation(value = "鑾峰彇鏁版嵁瀵规瘮鍒楄〃") + @PostMapping("/selectDataComparisonDtoPageList") + public Result selectDataComparisonDtoPageList(@RequestBody Map<String, Object> data) { + Page page = JSON.parseObject(JSON.toJSONString(data.get("page")), Page.class); + DataComparisonDto dataComparisonDto = JSON.parseObject(JSON.toJSONString(data.get("entity")), DataComparisonDto.class); + Map<String, Object> stringObjectMap = dataReportingService.selectDataComparisonDtoPageList(page, dataComparisonDto); + return Result.success(stringObjectMap); + } + + @ApiOperation(value = "瀵煎嚭璐㈠姟涓婃姤鍒楄〃") + @PostMapping("/downFinanceSubmitFile") + public Result downFinanceSubmitFile(@RequestBody Map<String, Object> data) { + Page page = JSON.parseObject(JSON.toJSONString(data.get("page")), Page.class); + FinanceSubmit financeSubmit = JSON.parseObject(JSON.toJSONString(data.get("entity")), FinanceSubmit.class); + return Result.success("瀵煎嚭鎴愬姛", dataReportingService.downFinanceSubmitFile(page, financeSubmit)); + } + + @ApiOperation(value = "瀵煎叆璐㈠姟涓婃姤鍒楄〃") + @PostMapping("/inputFinanceSubmitCsv") + public Result<?> inputFinanceSubmitCsv(@RequestParam("file") MultipartFile file) throws IOException { + CsvReader reader = CsvUtil.getReader(); + CsvData data = reader.read(new InputStreamReader(file.getInputStream(), "GB2312")); + List<CsvRow> rows = data.getRows(); + String format; + try { + format = new SimpleDateFormat("yyyy-MM-dd").format(new SimpleDateFormat("yyyyMMdd").parse(rows.get(2).get(0).split("锛�")[1])); + } catch (ParseException e) { + throw new ErrorException("鏂囦欢涓棩鏈熷湪杞崲鏃跺嚭鐜伴敊璇�"); + } + for (int i = 6; i < rows.size(); i++) { + FinanceSubmit financeSubmit = new FinanceSubmit(); + for (int i1 = 0; i1 < rows.get(5).size(); i1++) { + String str = rows.get(i).get(i1); + if (str == null) continue; + switch (rows.get(5).get(i1)) { + case "浠g悊鍟�": + financeSubmit.setCompany(str); + break; + case "璐︽埛鍚�": + financeSubmit.setName(str); + break; + case "閲戦": + try { + financeSubmit.setConsumption(new BigDecimal(str)); + } catch (Exception e) { + } + break; + case "浠g悊杩旂偣": + try { + financeSubmit.setAgentRebate(new BigDecimal(str)); + } catch (Exception e) { + } + break; + case "鎵撴浜烘皯甯�": + try { + financeSubmit.setMoney(new BigDecimal(str)); + } catch (Exception e) { + } + break; + case "鍛樺伐杩旂偣": + try { + financeSubmit.setEmployeeRebate(new BigDecimal(str)); + } catch (Exception e) { + } + break; + case "鍛樺伐杩旂偣浜烘皯甯�": + try { + financeSubmit.setEmployeeRebateMoney(new BigDecimal(str)); + } catch (Exception e) { + } + break; + } + } + financeSubmitService.addFinanceSubmit(financeSubmit, format); + } + return Result.success(); + } } -- Gitblit v1.9.3