潘志宝
2024-09-12 ac6fb5406fccf2d9a0e39ae5e299c7fa207978da
提交 | 用户 | 时间
9d7e02 1 package com.iailab.module.data.channel.opcda.controller;
2
aecc49 3 import com.iailab.framework.common.pojo.CommonResult;
L 4 import com.iailab.framework.common.pojo.PageResult;
5 import com.iailab.framework.common.util.object.BeanUtils;
9d7e02 6 import com.iailab.module.data.channel.opcda.entity.ChannelOPCDATagEntity;
7 import com.iailab.module.data.channel.opcda.service.ChannelOPCDATagService;
aecc49 8 import com.iailab.module.data.channel.opcda.vo.OpcDaTagPageReqVO;
L 9 import com.iailab.module.data.channel.opcda.vo.OpcDaTagRespVO;
9d7e02 10 import com.iailab.module.data.common.exception.RRException;
11 import org.springframework.beans.factory.annotation.Autowired;
12 import org.springframework.web.bind.annotation.*;
13 import org.springframework.web.multipart.MultipartFile;
14
aecc49 15 import javax.validation.Valid;
L 16 import java.util.Date;
9d7e02 17 import java.util.UUID;
aecc49 18
L 19 import static com.iailab.framework.common.pojo.CommonResult.success;
9d7e02 20
21 /**
22  * 操作OPCDA tag配置
aecc49 23  * @author lirm
L 24  * @Description
25  * @createTime 2024年08月26日
9d7e02 26  */
27 @RestController
aecc49 28 @RequestMapping("/data/channel/opcda/tag")
9d7e02 29 public class ChannelOPCDATagController {
30     @Autowired
31     private ChannelOPCDATagService channelOPCDATagService;
aecc49 32     
L 33     @GetMapping("page")
34     public CommonResult<PageResult<OpcDaTagRespVO>> list(@Valid OpcDaTagPageReqVO reqVO) {
35         PageResult<ChannelOPCDATagEntity> page = channelOPCDATagService.queryPage(reqVO);
36         return success(BeanUtils.toBean(page, OpcDaTagRespVO.class));
9d7e02 37     }
aecc49 38
9d7e02 39     @GetMapping("/info/{id}")
aecc49 40     public CommonResult<ChannelOPCDATagEntity> info(@PathVariable("id") String id) {
L 41         ChannelOPCDATagEntity info = channelOPCDATagService.info(id);
42         return success(info);
9d7e02 43     }
aecc49 44
9d7e02 45     @PostMapping("/add")
aecc49 46     public CommonResult<Boolean> add(@RequestBody ChannelOPCDATagEntity channelOPCDATagEntity) {
L 47         String id = UUID.randomUUID().toString();
48         channelOPCDATagEntity.setId(id);
49         channelOPCDATagEntity.setCreateTime(new Date());
50         channelOPCDATagService.add(channelOPCDATagEntity);
51         return success(true);
9d7e02 52     }
53
aecc49 54     @PutMapping("/update")
L 55     public CommonResult<Boolean> update(@RequestBody ChannelOPCDATagEntity channelOPCDATagEntity) {
56         channelOPCDATagEntity.setUpdateTime(new Date());
9d7e02 57         channelOPCDATagService.update(channelOPCDATagEntity);
aecc49 58         return success(true);
9d7e02 59     }
60
aecc49 61     @DeleteMapping("/delete")
L 62     public CommonResult<Boolean> delete(@RequestParam("id") String id) {
9d7e02 63         channelOPCDATagService.delete(id);
aecc49 64         return success(true);
9d7e02 65     }
66     @PostMapping("/import/{serverId}")
aecc49 67     public CommonResult<String> importTag(@PathVariable("serverId") String serverId, @RequestParam("file") MultipartFile file) {
9d7e02 68         try {
69             if (file.isEmpty()) {
70                 throw new RRException("上传文件不能为空");
71             }
72             channelOPCDATagService.importTag(serverId, file);
73         } catch (Exception ex) {
aecc49 74             ex.getMessage();
9d7e02 75         }
aecc49 76         return success("上传成功");
9d7e02 77     }
78 }