guoshilong
2024-03-25 a6e044780082d6a6507f64edb9a5242b779fb6ee
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
package cn.gistack.sm.sjztmd.controller;
 
import cn.gistack.sm.sjztmd.dto.TbProjectDTO;
import cn.gistack.sm.sjztmd.excel.TbProjectExcel;
import cn.gistack.sm.sjztmd.excel.TbProjectImporter;
import cn.gistack.sm.sjztmd.service.ITbProjectService;
import cn.gistack.sm.sjztmd.statisticsVO.StatisticsParams;
import cn.gistack.sm.sjztmd.statisticsVO.StatisticsTableProject;
import cn.gistack.sm.sjztmd.vo.TbProjectVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
 
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.List;
 
@Slf4j
@Api(tags = "项目填报")
@RestController
@RequestMapping("/sjztmd/tbProject")
@AllArgsConstructor
public class TbProjectController extends BladeController {
 
    private final ITbProjectService tbProjectService;
 
    @GetMapping("/getList")
    public R getList(TbProjectVO tbProjectVO, Query query) {
        Object list = tbProjectService.getList(tbProjectVO, Condition.getPage(query));
        return R.data(list);
    }
 
    @PostMapping("update")
    public R update(@RequestBody TbProjectDTO tbProjectDTO){
        return R.status(tbProjectService.updateCustomize(tbProjectDTO));
    }
 
    @GetMapping("/getDetail")
    public R getDetail(String id){
        return R.data(tbProjectService.getDetail(id));
    }
 
    @GetMapping("/getStatistics")
    public R getStatistics(StatisticsParams statisticsParams){
        List<StatisticsTableProject> list = tbProjectService.getStatisticsTable(statisticsParams);
        return R.data(list);
    }
 
    /**
     * 导入模板
     */
    @GetMapping("export-template")
    public void exportUser(HttpServletResponse response) {
        List<TbProjectExcel> list = new ArrayList<>();
        ExcelUtil.export(response, "用户数据模板", "用户数据表", list, TbProjectExcel.class);
    }
 
    /**
     * 导入用户
     */
    @PostMapping("import-tb-project")
    public R importUser(MultipartFile file, Integer isCovered) {
        TbProjectImporter userImporter = new TbProjectImporter(tbProjectService, isCovered == 1);
        ExcelUtil.save(file, userImporter, TbProjectExcel.class);
        return R.success("操作成功");
    }
 
}