whycxzp
2023-12-08 e9d5503ee1a17a3a2c9b0b9880b711a4a62061d8
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
package com.whyc.controller;
 
import com.whyc.dto.Response;
import com.whyc.dto.SopDto;
import com.whyc.pojo.SOP;
import com.whyc.pojo.SOPLockLog;
import com.whyc.service.SOPService;
import com.whyc.util.ActionUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
 
import java.io.IOException;
import java.text.ParseException;
import java.util.List;
 
@RequestMapping("sop")
@RestController
@Api(tags = "SOP")
public class SOPController {
 
    @Autowired
    private SOPService service;
 
    @ApiOperation("excel解析")
    @PostMapping("excelParse")
    public Response excelParse(@RequestParam MultipartFile multipartFile) throws IOException, InvalidFormatException, ParseException {
        Response<Object> response = new Response<>();
        String name=multipartFile.getOriginalFilename();
        assert name != null;
        if(!name.substring(name.length()-4).equals(".xls") && !name.substring(name.length()-5).equals(".xlsx")){
            response.set(1,false,"文件解析错误:上传格式非excel格式");
        }else{
            response =  service.excelParse(multipartFile);
        }
        return response;
    }
 
    @ApiOperation("确定sop")
    @PostMapping("confirm")
    public Response add(@RequestParam MultipartFile multipartFile,@RequestParam String sopStr) throws IOException {
        SOP sop=ActionUtil.getGson().fromJson(sopStr,SOP.class);
        return service.add(sop,multipartFile);
    }
 
    @ApiOperation("查询sop信息")
    @PostMapping("getSopInfo")
    public Response getSopInfo(@RequestBody(required = false) List<SopDto> list
            , @RequestParam(required = false) String code, @RequestParam(required = false) String model, @RequestParam(required = false) Integer status
            , @RequestParam int pageCurr, @RequestParam int pageSize) {
        return service.getSopInfo(list,code,model,status,pageCurr,pageSize);
    }
 
    @ApiOperation("查询sop历史")
    @GetMapping("getSopHis")
    public Response getSopHis(@RequestParam(required = false) String fileName) {
        return service.getSopHis(fileName);
    }
 
    @ApiOperation("更新sop说明(不含锁信息)")
    @PostMapping("updateSop")
    public Response updateSop(@RequestBody SOP sop) {
        return service.updateSop(sop);
    }
 
    @ApiOperation("设置sop有效状态")
    @PutMapping("updateStatusById")
    public Response updateStatusById(@RequestBody SOPLockLog lockLog) {
        return service.updateStatusById(lockLog);
    }
 
}