From bbd18f555ee3c0ed368b226cde7a3c64db4a4802 Mon Sep 17 00:00:00 2001
From: 李林 <z1292839451@163.com>
Date: 星期二, 02 一月 2024 03:34:17 +0800
Subject: [PATCH] 修订版1.0

---
 data-server/src/main/java/com/yuanchu/mom/controller/DataReportingController.java |  134 +++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 125 insertions(+), 9 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 be9afb0..b018ee4 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
@@ -1,28 +1,45 @@
 package com.yuanchu.mom.controller;
 
-import cn.hutool.json.JSONObject;
-import cn.hutool.json.JSONUtil;
+import cn.hutool.core.io.FileUtil;
+import cn.hutool.core.io.resource.ResourceUtil;
+import cn.hutool.core.text.csv.CsvData;
+import cn.hutool.core.text.csv.CsvReader;
+import cn.hutool.core.text.csv.CsvRow;
+import cn.hutool.core.text.csv.CsvUtil;
+import cn.hutool.core.util.CharsetUtil;
 import com.alibaba.fastjson.JSON;
 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.pojo.DataReporting;
 import com.yuanchu.mom.pojo.FansSubmit;
+import com.yuanchu.mom.pojo.FinanceSubmit;
 import com.yuanchu.mom.service.DataReportingService;
 import com.yuanchu.mom.service.FansSubmitService;
-import com.yuanchu.mom.utils.JackSonUtil;
+import com.yuanchu.mom.service.FinanceSubmitService;
 import com.yuanchu.mom.vo.Result;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.AllArgsConstructor;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.apache.tomcat.util.http.fileupload.FileUtils;
+import org.springframework.util.FileCopyUtils;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
 
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStreamReader;
 import java.math.BigDecimal;
+import java.nio.charset.StandardCharsets;
+import java.nio.file.Files;
+import java.util.ArrayList;
+import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 
 @RequestMapping("/dataReporting")
 @RestController
@@ -34,18 +51,26 @@
 
     private FansSubmitService fansSubmitService;
 
+    private FinanceSubmitService financeSubmitService;
+
     @ApiOperation(value = "鑾峰彇鏁版嵁涓婃姤鍒楄〃")
     @PostMapping("/selectDataReportingList")
     public Result selectDataReportingList(@RequestBody Map<String, Object> data) {
         Page page = JSON.parseObject(JSON.toJSONString(data.get("page")), Page.class);
         DataReportingPageDto dataReportingPageDto = JSON.parseObject(JSON.toJSONString(data.get("entity")), DataReportingPageDto.class);
-        return Result.success(dataReportingService.selectUserList(page, dataReportingPageDto));
+        return Result.success(dataReportingService.selectDataReportingList(page, dataReportingPageDto));
     }
 
     @ApiOperation(value = "淇敼鏁版嵁涓婃姤")
     @PostMapping("/upDataReporting")
     public Result upDataReporting(@RequestBody DataReporting dataReporting) {
         return Result.success(dataReportingService.updateDataReporting(dataReporting));
+    }
+
+    @ApiOperation(value = "鍒犻櫎鏁版嵁涓婃姤淇℃伅")
+    @PostMapping("/delDataReporting")
+    public Result delDataReporting(Integer id) {
+        return Result.success(dataReportingService.delDataReporting(id));
     }
 
     @ApiOperation(value = "鑾峰彇椤圭洰姹囨�诲垪琛�")
@@ -74,7 +99,7 @@
 
     @ApiOperation(value = "鍒犻櫎杩涚矇涓婃姤鍒楄〃")
     @PostMapping("/delFansSubmit")
-    public Result delFansSubmit(Integer id){
+    public Result delFansSubmit(Integer id) {
         return Result.success(fansSubmitService.delFansSubmit(id));
     }
 
@@ -90,4 +115,95 @@
         return Result.success(fansSubmitService.addFansSubmit(fansSubmit));
     }
 
+    @ApiOperation(value = "鑾峰彇璐㈠姟涓婃姤鍒楄〃")
+    @PostMapping("/selectFinanceSubmitList")
+    public Result selectFinanceSubmitList(@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(financeSubmitService.selectFinanceSubmitList(page, financeSubmit));
+    }
+
+    @ApiOperation(value = "鍒犻櫎璐㈠姟涓婃姤鍒楄〃")
+    @PostMapping("/delFinanceSubmit")
+    public Result delFinanceSubmit(Integer id) {
+        return Result.success(financeSubmitService.delFinanceSubmit(id));
+    }
+
+    @ApiOperation(value = "淇敼璐㈠姟涓婃姤淇℃伅")
+    @PostMapping("/updateFinanceSubmit")
+    public Result<?> updateFinanceSubmit(@RequestBody FinanceSubmit financeSubmit) {
+        return Result.success(financeSubmitService.updateFinanceSubmit(financeSubmit));
+    }
+
+    @ApiOperation(value = "娣诲姞璐㈠姟涓婃姤淇℃伅")
+    @PostMapping("/addFinanceSubmit")
+    public Result<?> addFinanceSubmit(@RequestBody FinanceSubmit financeSubmit) {
+        return Result.success(financeSubmitService.addFinanceSubmit(financeSubmit));
+    }
+
+    @ValueAuth
+    @ApiOperation(value = "鑾峰彇棣栭〉鏁版嵁")
+    @GetMapping("/getDataList")
+    public Result<?> getDataList() {
+        return Result.success(dataReportingService.getDataList());
+    }
+
+    @ApiOperation(value = "瀵煎叆鏁版嵁涓婃姤鍒楄〃")
+    @PostMapping("/inputCsv")
+    public Result<?> inputCsv(@RequestParam("file") MultipartFile file) throws IOException {
+        CsvReader reader = CsvUtil.getReader();
+        CsvData data = reader.read(new InputStreamReader(file.getInputStream(), "GB2312"));
+        List<CsvRow> rows = data.getRows();
+        List<DataReporting> list = new ArrayList<>();
+        for (int i = 5; i < rows.size(); i++) {
+            DataReporting reporting = new DataReporting();
+            reporting.setName(rows.get(i).get(0))
+                    .setProduct(rows.get(i).get(1))
+                    .setShowNum(Integer.valueOf(rows.get(i).get(3)))
+                    .setClick(Integer.valueOf(rows.get(i).get(4)))
+//                    .setAvgPrice(new BigDecimal(rows.get(i).get(5)))
+                    .setAccountConsumption(new BigDecimal(rows.get(i).get(6)));
+//                    .setSearchBalance(new BigDecimal(rows.get(i).get(6)))
+//                    .setInfoBalance(new BigDecimal(rows.get(i).get(7)))
+//                    .setVxClick(Double.valueOf(rows.get(i).get(8)))
+//                    .setClickThroughRate(rows.get(i).get(9));
+            list.add(reporting);
+        }
+        dataReportingService.addDataReporting(list);
+        return Result.success();
+    }
+
+    @ApiOperation(value = "鏂板鏁版嵁涓婃姤")
+    @PostMapping("/addDataReporting")
+    public Result<?> addDataReporting(@RequestBody DataReporting dataReporting) {
+        ArrayList<DataReporting> list = new ArrayList<>();
+        list.add(dataReporting);
+        dataReportingService.addDataReporting(list);
+        return Result.success();
+    }
+
+    @ApiOperation(value = "瀵煎嚭鏁版嵁涓婃姤鍒楄〃")
+    @PostMapping("/downDataReportingFile")
+    public Result downDataReportingFile(@RequestBody Map<String, Object> data) {
+        Page page = JSON.parseObject(JSON.toJSONString(data.get("page")), Page.class);
+        DataReportingPageDto dataReportingPageDto = JSON.parseObject(JSON.toJSONString(data.get("entity")), DataReportingPageDto.class);
+        return Result.success("瀵煎嚭鎴愬姛", dataReportingService.downDataReportingFile(page, dataReportingPageDto));
+    }
+
+    @ApiOperation(value = "瀵煎嚭椤圭洰鏁版嵁缁熻鍒楄〃")
+    @PostMapping("/downProductCountFile")
+    public Result downProductCountFile(@RequestBody Map<String, Object> data) {
+        Page page = JSON.parseObject(JSON.toJSONString(data.get("page")), Page.class);
+        ProductCountDto productCountDto = JSON.parseObject(JSON.toJSONString(data.get("entity")), ProductCountDto.class);
+        return Result.success("瀵煎嚭鎴愬姛", dataReportingService.downProductCountFile(page, productCountDto));
+    }
+
+    @ApiOperation(value = "瀵煎嚭鍛樺伐鏁版嵁缁熻鍒楄〃")
+    @PostMapping("/downRegistrantCountFile")
+    public Result downRegistrantCountFile(@RequestBody Map<String, Object> data) {
+        Page page = JSON.parseObject(JSON.toJSONString(data.get("page")), Page.class);
+        RegistrantCountDto registrantCountDto = JSON.parseObject(JSON.toJSONString(data.get("entity")), RegistrantCountDto.class);
+        return Result.success("瀵煎嚭鎴愬姛", dataReportingService.downRegistrantCountFile(page, registrantCountDto));
+    }
+
 }

--
Gitblit v1.9.3