package org.jeecg.modules.iot.controller;
|
|
|
import cn.hutool.core.collection.CollectionUtil;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import lombok.extern.slf4j.Slf4j;
|
import org.jeecg.common.api.vo.Result;
|
import org.jeecg.common.aspect.annotation.AutoLog;
|
import org.jeecg.common.system.base.controller.JeecgController;
|
import org.jeecg.common.system.query.QueryGenerator;
|
import org.jeecg.modules.iot.entity.Equipment;
|
import org.jeecg.modules.iot.entity.ParameterGroup;
|
import org.jeecg.modules.iot.entity.RealParameter;
|
import org.jeecg.modules.iot.service.IEquipmentService;
|
import org.jeecg.modules.iot.service.IParameterGroupService;
|
import org.jeecg.modules.iot.service.IRealParameterService;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.servlet.http.HttpServletRequest;
|
import java.util.HashSet;
|
import java.util.List;
|
import java.util.Set;
|
|
|
/**
|
* @Description: 参数组
|
* @Author: cuikaidong
|
* @Date: 2024-12-23
|
* @Version: V1.0
|
*/
|
@Api(tags = "参数组")
|
@RestController
|
@RequestMapping("/parameter/group")
|
@Slf4j
|
public class ParameterGroupController extends JeecgController<ParameterGroup, IParameterGroupService> {
|
|
private final IParameterGroupService parameterGroupService;
|
|
public ParameterGroupController(IParameterGroupService parameterGroupService) {
|
this.parameterGroupService = parameterGroupService;
|
}
|
|
@Autowired
|
private IEquipmentService equipmentService;
|
@Autowired
|
private IRealParameterService realParameterService;
|
|
/**
|
* 分页列表查询
|
*
|
* @param parameterGroup 参数组
|
* @param pageNo 开始
|
* @param pageSize 结束
|
* @return 参数组列表
|
*/
|
@ApiOperation(value = "参数组-分页列表查询", notes = "参数组-分页列表查询")
|
@GetMapping(value = "/list")
|
public Result<?> queryPageList(ParameterGroup parameterGroup,
|
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
|
HttpServletRequest req) {
|
QueryWrapper<ParameterGroup> queryWrapper = QueryGenerator.initQueryWrapper(parameterGroup, req.getParameterMap());
|
Page<ParameterGroup> page = new Page<>(pageNo, pageSize);
|
IPage<ParameterGroup> pageList = parameterGroupService.page(page, queryWrapper);
|
return Result.ok(pageList);
|
}
|
|
/**
|
* 添加
|
*
|
* @param parameterGroup 参数组
|
* @return 成功消息
|
*/
|
@AutoLog(value = "实参数组-添加")
|
@ApiOperation(value = "实参数组-添加", notes = "实参数组-添加")
|
@PostMapping(value = "/add")
|
public Result<?> add(@RequestBody ParameterGroup parameterGroup) {
|
// 验证编码名称是否重复
|
if (parameterGroupService.findParameterGroupByName(parameterGroup)){
|
return Result.error("参数组名称已存在!");
|
}
|
if (parameterGroupService.findParameterGroupByCode(parameterGroup)){
|
return Result.error("参数组编号已存在!");
|
}
|
Equipment equipment = equipmentService.getById(parameterGroup.getEquipmentId());
|
parameterGroup.setServerDeployId(equipment.getServerId());
|
parameterGroupService.save(parameterGroup);
|
return Result.ok("添加成功!");
|
}
|
|
/**
|
* 编辑
|
*
|
* @param parameterGroup 参数组
|
* @return 成功消息
|
*/
|
@AutoLog(value = "参数组-编辑")
|
@ApiOperation(value = "参数组-编辑", notes = "参数组-编辑")
|
@PutMapping(value = "/edit")
|
public Result<?> edit(@RequestBody ParameterGroup parameterGroup) {
|
parameterGroupService.updateById(parameterGroup);
|
return Result.ok("编辑成功!");
|
}
|
|
/**
|
* 通过id删除
|
*
|
* @param id 参数组id
|
* @return 提示
|
*/
|
@AutoLog(value = "参数组-通过id删除")
|
@ApiOperation(value = "参数组-通过id删除", notes = "参数组-通过id删除")
|
@DeleteMapping(value = "/delete")
|
public Result<?> delete(@RequestParam(name = "id") String id) {
|
// 查询参数组下参数信息
|
Set<String> ids = new HashSet<>();
|
ids.add(id);
|
List<RealParameter> realParameter = realParameterService.findRealParameterByIds(ids);
|
if (CollectionUtil.isNotEmpty(realParameter)) {
|
return Result.error("删除失败,请先删除参数信息!");
|
}
|
parameterGroupService.removeById(id);
|
return Result.ok("删除成功!");
|
}
|
|
/**
|
* 通过参数组id查询设备信息
|
*
|
* @param id
|
* @return
|
*/
|
@GetMapping(value = "/queryById")
|
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) {
|
ParameterGroup parameterGroup = parameterGroupService.getById(id);
|
Equipment equipment = equipmentService.getById(parameterGroup.getEquipmentId());
|
return Result.ok(equipment);
|
}
|
}
|