XiaoRuby
2023-07-25 653cbd6bc42565dbdcc7fdbe652874738b1908df
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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
package com.yuanchu.limslaboratory.controller;
 
import com.yuanchu.limslaboratory.pojo.Product;
import com.yuanchu.limslaboratory.service.ProductService;
import com.yuanchu.limslaboratory.utils.JackSonUtil;
import com.yuanchu.limslaboratory.utils.RedisUtil;
import com.yuanchu.limslaboratory.vo.Result;
import io.swagger.annotations.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*;
 
import java.util.List;
import java.util.Map;
 
/**
 * <p>
 *  前端控制器
 * </p>
 *
 * @author 江苏鵷雏网络科技有限公司
 * @since 2023-07-17
 */
@Api(tags = "标准库-->5、规格-->查看-->子模块")
@RestController
@RequestMapping("/product")
public class ProductController {
 
    @Autowired
    private ProductService productService;
 
    @ApiOperation("添加测试标准")
    @PostMapping("/add")
    public Result<?> addProductInformation(@RequestHeader("X-Token") String token, @RequestBody Product product) throws Exception {
        Object userMessage = RedisUtil.get(token);
        if (!ObjectUtils.isEmpty(userMessage)){
            Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(userMessage), Map.class);
            product.setUserId(Integer.parseInt(unmarshal.get("id").toString()));
        } else {
            return Result.fail("对不起,Token错误!");
        }
        Integer isProductSuccess = productService.addProductInformation(product);
        if (isProductSuccess == 1) {
            return Result.success("添加物料【"+ product.getName() +"】成功!");
        }
        return Result.fail("添加物料【"+ product.getName() +"】失败!");
    }
 
    @ApiOperation("根据物料ID查询所有测试标准")
    @GetMapping("/list")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(value = "物料ID", name = "materialId", dataTypeClass = String.class)
    })
    public Result<?> getListProductInformation(String materialId) {
        List<Map<String, Object>> listMaterialInformation = productService.getListProductInformation(materialId);
        return Result.success(listMaterialInformation);
    }
 
    @ApiOperation("根据测试标准ID查询基本信息")
    @GetMapping("/productId")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(value = "测试标准ID", name = "productId", dataTypeClass = String.class)
    })
    public Result<?> getProductInformation(Integer productId) {
        Map<String, Object> productInformation = productService.getProductInformation(productId);
        return Result.success(productInformation);
    }
 
    @ApiOperation("删除测试标准模块数据")
    @DeleteMapping("/delete")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(value = "测试标准ID", name = "productId", dataTypeClass = String.class)
    })
    public Result<?> deleteProductInformation(Integer productId) {
        Integer isDeleteProduct = productService.deleteProductInformation(productId);
        if (isDeleteProduct == 1) {
            return Result.success("删除成功!");
        }
        return Result.fail("删除失败!");
    }
 
    @ApiOperation("根据测试标准Id修改数据")
    @PutMapping("/update")
    public Result<?> updateMaterialInformation(@RequestBody Product product) {
        Integer isUpdateMaterialSuccess = productService.updateMaterialInformation(product);
        if (isUpdateMaterialSuccess == 1) {
            return Result.success("修改【"+ product.getName() +"】成功!");
        }
        return Result.fail("修改【"+ product.getName() +"】失败!");
    }
}