136 changed files with 3143 additions and 5561 deletions
@ -1,209 +0,0 @@ |
|||
package cc.admin.modules.dust.controller; |
|||
|
|||
import cc.admin.common.api.vo.Result; |
|||
import cc.admin.common.aspect.annotation.AutoLog; |
|||
import cc.admin.common.sys.base.controller.BaseController; |
|||
import cc.admin.common.sys.query.QueryGenerator; |
|||
import cc.admin.common.util.RedisUtil; |
|||
import cc.admin.modules.dust.entity.DesignPlan; |
|||
import cc.admin.modules.dust.entity.Pipe; |
|||
import cc.admin.modules.dust.service.IDesignPlanService; |
|||
import cc.admin.modules.dust.service.IPipeDiameterThicknessService; |
|||
import cc.admin.modules.dust.service.IPipeService; |
|||
import cn.hutool.core.util.IdUtil; |
|||
import cn.hutool.core.util.StrUtil; |
|||
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.apache.commons.collections.CollectionUtils; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
import org.springframework.web.servlet.ModelAndView; |
|||
|
|||
import javax.servlet.http.HttpServletRequest; |
|||
import javax.servlet.http.HttpServletResponse; |
|||
import java.util.Arrays; |
|||
import java.util.List; |
|||
import java.util.Map; |
|||
import java.util.Optional; |
|||
import java.util.stream.Collectors; |
|||
|
|||
/** |
|||
* @Description: 设计方案表 |
|||
* @Author: cc-admin |
|||
* @Date: 2024-12-06 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Slf4j |
|||
@Api(tags = "设计方案表") |
|||
@RestController |
|||
@RequestMapping("/design/plan") |
|||
public class DesignPlanController extends BaseController<DesignPlan, IDesignPlanService> { |
|||
@Autowired |
|||
private IDesignPlanService designPlanService; |
|||
@Autowired |
|||
private IPipeService pipeService; |
|||
|
|||
@Autowired |
|||
private RedisUtil redisUtil; |
|||
|
|||
/** |
|||
* 分页列表查询 |
|||
* |
|||
* @param key |
|||
* @param pageNo |
|||
* @param pageSize |
|||
* @param req |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "设计方案表-分页列表查询") |
|||
@ApiOperation(value = "设计方案表-分页列表查询", notes = "设计方案表-分页列表查询") |
|||
@GetMapping(value = "/list") |
|||
public Result<?> queryPageList( |
|||
@RequestParam(name = "key", required = false) String key, |
|||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, |
|||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, |
|||
HttpServletRequest req) { |
|||
QueryWrapper<DesignPlan> queryWrapper = new QueryWrapper<>(); |
|||
if (StrUtil.isNotEmpty(key)) { |
|||
queryWrapper.or(i -> i.like("name", key).or().like("remark", key)); |
|||
|
|||
} |
|||
Page<DesignPlan> page = new Page<DesignPlan>(pageNo, pageSize); |
|||
IPage<DesignPlan> pageList = designPlanService.page(page, queryWrapper); |
|||
|
|||
|
|||
|
|||
return Result.ok(pageList); |
|||
} |
|||
|
|||
/** |
|||
* 添加 |
|||
* |
|||
* @param designPlan |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "设计方案表-添加") |
|||
@ApiOperation(value = "设计方案表-添加", notes = "设计方案表-添加") |
|||
@PostMapping(value = "/add") |
|||
public Result<?> add(@RequestBody DesignPlan designPlan) { |
|||
designPlanService.save(designPlan); |
|||
return Result.ok("添加成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 编辑 |
|||
* |
|||
* @param designPlan |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "设计方案表-编辑") |
|||
@ApiOperation(value = "设计方案表-编辑", notes = "设计方案表-编辑") |
|||
@PutMapping(value = "/edit") |
|||
public Result<?> edit(@RequestBody DesignPlan designPlan) { |
|||
designPlanService.updateById(designPlan); |
|||
|
|||
return Result.ok("编辑成功!"); |
|||
} |
|||
|
|||
|
|||
/** |
|||
* 复制 |
|||
* |
|||
* @param id |
|||
* @param name |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "设计方案表-复制") |
|||
@ApiOperation(value = "设计方案表-复制", notes = "设计方案表-复制") |
|||
@PostMapping(value = "/copy") |
|||
public Result<?> copy(@RequestParam(name = "id", required = true) String id, @RequestParam(name = "name", required = true) String name) { |
|||
DesignPlan designPlan = designPlanService.getById(id); |
|||
designPlanService.copy(designPlan, name); |
|||
return Result.ok("复制成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id删除 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "设计方案表-通过id删除") |
|||
@ApiOperation(value = "设计方案表-通过id删除", notes = "设计方案表-通过id删除") |
|||
@DeleteMapping(value = "/delete") |
|||
public Result<?> delete(@RequestParam(name = "id", required = true) String id) { |
|||
designPlanService.removeById(id); |
|||
pipeService.delByDesignPlanId(id); |
|||
redisUtil.del(id); |
|||
return Result.ok("删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @param ids |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "设计方案表-批量删除") |
|||
@ApiOperation(value = "设计方案表-批量删除", notes = "设计方案表-批量删除") |
|||
@DeleteMapping(value = "/deleteBatch") |
|||
public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { |
|||
this.designPlanService.removeByIds(Arrays.asList(ids.split(","))); |
|||
return Result.ok("批量删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id查询 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "设计方案表-通过id查询") |
|||
@ApiOperation(value = "设计方案表-通过id查询", notes = "设计方案表-通过id查询") |
|||
@GetMapping(value = "/queryById") |
|||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) { |
|||
DesignPlan designPlan = designPlanService.getById(id); |
|||
QueryWrapper<Pipe> objectQueryWrapper = new QueryWrapper<>(); |
|||
objectQueryWrapper.eq("design_plan_id",id); |
|||
List<Pipe> list = pipeService.list(objectQueryWrapper); |
|||
if (CollectionUtils.isNotEmpty(list)) { |
|||
Map<String, Double> groupedByDesignPlanIdWithFlow = list.stream() |
|||
.collect(Collectors.groupingBy( |
|||
pipe -> Optional.ofNullable(pipe.getDesignPlanId()).orElse("defaultKey"), // 确保键不为null
|
|||
Collectors.summingDouble(pipe -> Optional.ofNullable(pipe.getFlow()).orElse(0.0)) // 确保flow不为null
|
|||
)); |
|||
Double orDefault = groupedByDesignPlanIdWithFlow.getOrDefault(designPlan.getId(), 0d); |
|||
designPlan.setTotalFlow(orDefault.toString()); |
|||
} |
|||
return Result.ok(designPlan); |
|||
} |
|||
|
|||
/** |
|||
* 导出excel |
|||
* |
|||
* @param request |
|||
* @param designPlan |
|||
*/ |
|||
@RequestMapping(value = "/exportXls") |
|||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response, DesignPlan designPlan) { |
|||
response.setHeader("Access-Control-Expose-Headers", "Content-Disposition"); |
|||
return super.exportXls(request, designPlan, DesignPlan.class, "设计方案表"); |
|||
} |
|||
|
|||
/** |
|||
* 通过excel导入数据 |
|||
* |
|||
* @param request |
|||
* @param response |
|||
* @return |
|||
*/ |
|||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST) |
|||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { |
|||
return super.importExcel(request, response, DesignPlan.class); |
|||
} |
|||
|
|||
} |
@ -1,174 +0,0 @@ |
|||
package cc.admin.modules.dust.controller; |
|||
|
|||
import cc.admin.common.api.vo.Result; |
|||
import cc.admin.common.aspect.annotation.AutoLog; |
|||
import cc.admin.common.sys.base.controller.BaseController; |
|||
import cc.admin.common.sys.query.QueryGenerator; |
|||
import cc.admin.modules.dust.entity.DustAlarm; |
|||
import cc.admin.modules.dust.service.IDustAlarmService; |
|||
import cn.hutool.core.util.IdUtil; |
|||
import cn.hutool.core.util.StrUtil; |
|||
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.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
import org.springframework.web.servlet.ModelAndView; |
|||
|
|||
import javax.servlet.http.HttpServletRequest; |
|||
import javax.servlet.http.HttpServletResponse; |
|||
import java.util.Arrays; |
|||
|
|||
/** |
|||
* @Description: 警报记录表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Slf4j |
|||
@Api(tags = "警报记录表") |
|||
@RestController |
|||
@RequestMapping("/dust/alarm") |
|||
public class DustAlarmController extends BaseController<DustAlarm, IDustAlarmService> { |
|||
@Autowired |
|||
private IDustAlarmService dustAlarmService; |
|||
|
|||
/** |
|||
* 分页列表查询 |
|||
* |
|||
* @param key |
|||
* @param pageNo |
|||
* @param pageSize |
|||
* @param req |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "警报记录表-分页列表查询") |
|||
@ApiOperation(value = "警报记录表-分页列表查询", notes = "警报记录表-分页列表查询") |
|||
@GetMapping(value = "/list") |
|||
public Result<?> queryPageList( |
|||
@RequestParam(name = "systemId", required = false) String systemId, |
|||
@RequestParam(name = "startTime", required = false) String startTime, |
|||
@RequestParam(name = "endTime", required = false) String endTime, |
|||
@RequestParam(name = "alarmContent", required = false) String alarmContent, |
|||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, |
|||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, |
|||
HttpServletRequest req) { |
|||
QueryWrapper<DustAlarm> queryWrapper = new QueryWrapper<>(); |
|||
if (null != alarmContent) { |
|||
queryWrapper.like("alarm_content", alarmContent); // type 保持精确匹配
|
|||
} |
|||
if (StrUtil.isNotEmpty(systemId)) { |
|||
queryWrapper.eq("system_id", systemId); // systemId 保持精确匹配
|
|||
} |
|||
if (startTime != null) { |
|||
queryWrapper.ge("create_time", startTime); |
|||
} |
|||
if (endTime != null) { |
|||
queryWrapper.le("create_time", endTime); |
|||
} |
|||
queryWrapper.orderByAsc("sort_order") |
|||
.orderByDesc("create_time"); |
|||
Page<DustAlarm> page = new Page<DustAlarm>(pageNo, pageSize); |
|||
IPage<DustAlarm> pageList = dustAlarmService.page(page, queryWrapper); |
|||
return Result.ok(pageList); |
|||
} |
|||
|
|||
/** |
|||
* 添加 |
|||
* |
|||
* @param dustAlarm |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "警报记录表-添加") |
|||
@ApiOperation(value = "警报记录表-添加", notes = "警报记录表-添加") |
|||
@PostMapping(value = "/add") |
|||
public Result<?> add(@RequestBody DustAlarm dustAlarm) { |
|||
dustAlarmService.save(dustAlarm); |
|||
return Result.ok("添加成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 编辑 |
|||
* |
|||
* @param dustAlarm |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "警报记录表-编辑") |
|||
@ApiOperation(value = "警报记录表-编辑", notes = "警报记录表-编辑") |
|||
@PutMapping(value = "/edit") |
|||
public Result<?> edit(@RequestBody DustAlarm dustAlarm) { |
|||
dustAlarmService.updateById(dustAlarm); |
|||
return Result.ok("编辑成功!"); |
|||
} |
|||
|
|||
|
|||
/** |
|||
* 通过id删除 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "警报记录表-通过id删除") |
|||
@ApiOperation(value = "警报记录表-通过id删除", notes = "警报记录表-通过id删除") |
|||
@DeleteMapping(value = "/delete") |
|||
public Result<?> delete(@RequestParam(name = "id", required = true) String id) { |
|||
dustAlarmService.removeById(id); |
|||
return Result.ok("删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @param ids |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "警报记录表-批量删除") |
|||
@ApiOperation(value = "警报记录表-批量删除", notes = "警报记录表-批量删除") |
|||
@DeleteMapping(value = "/deleteBatch") |
|||
public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { |
|||
this.dustAlarmService.removeByIds(Arrays.asList(ids.split(","))); |
|||
return Result.ok("批量删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id查询 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "警报记录表-通过id查询") |
|||
@ApiOperation(value = "警报记录表-通过id查询", notes = "警报记录表-通过id查询") |
|||
@GetMapping(value = "/queryById") |
|||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) { |
|||
DustAlarm dustAlarm = dustAlarmService.getById(id); |
|||
return Result.ok(dustAlarm); |
|||
} |
|||
|
|||
/** |
|||
* 导出excel |
|||
* |
|||
* @param request |
|||
* @param dustAlarm |
|||
*/ |
|||
@RequestMapping(value = "/exportXls") |
|||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response, DustAlarm dustAlarm) { |
|||
response.setHeader("Access-Control-Expose-Headers", "Content-Disposition"); |
|||
return super.exportXls(request, dustAlarm, DustAlarm.class, "警报记录表"); |
|||
} |
|||
|
|||
/** |
|||
* 通过excel导入数据 |
|||
* |
|||
* @param request |
|||
* @param response |
|||
* @return |
|||
*/ |
|||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST) |
|||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { |
|||
return super.importExcel(request, response, DustAlarm.class); |
|||
} |
|||
|
|||
} |
@ -1,251 +0,0 @@ |
|||
package cc.admin.modules.dust.controller; |
|||
|
|||
import cc.admin.common.api.vo.Result; |
|||
import cc.admin.common.aspect.annotation.AutoLog; |
|||
import cc.admin.common.util.RedisUtil; |
|||
import cc.admin.modules.dust.entity.*; |
|||
import cc.admin.modules.dust.po.DustQuery; |
|||
import cc.admin.modules.dust.service.*; |
|||
import cc.admin.modules.dust.utils.RecommendPlanUtils; |
|||
import cc.admin.modules.dust.vo.CombinationResult; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; |
|||
import io.swagger.annotations.Api; |
|||
import io.swagger.annotations.ApiOperation; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.apache.commons.collections.CollectionUtils; |
|||
import org.apache.commons.lang3.StringUtils; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
import oshi.util.StringUtil; |
|||
|
|||
import javax.annotation.Resource; |
|||
import java.io.IOException; |
|||
import java.util.*; |
|||
import java.util.concurrent.CompletableFuture; |
|||
import java.util.concurrent.CopyOnWriteArrayList; |
|||
import java.util.stream.Collectors; |
|||
import java.util.stream.IntStream; |
|||
|
|||
|
|||
@Slf4j |
|||
@Api(tags = "计算表") |
|||
@RestController |
|||
@RequestMapping("/dust/config") |
|||
public class DustController { |
|||
@Autowired |
|||
private IPipeDiameterThicknessService iPipeDiameterThicknessService; |
|||
@Autowired |
|||
private IPipeService pipeService; |
|||
@Autowired |
|||
private RedisUtil redisUtil; |
|||
@Resource |
|||
private IRecommendPlanService iRecommendPlanService; |
|||
|
|||
/** |
|||
* 初步计算 |
|||
* |
|||
* @param airVolume 风量(单位根据实际情况设定) |
|||
* @param airSpeed 风速(单位根据实际情况设定) |
|||
* @return 计算得到的 管径值 |
|||
* @throws IllegalArgumentException 如果 airVolume 或 airSpeed 非正 |
|||
*/ |
|||
public static double calculate(double airVolume, double airSpeed) { |
|||
// 检查输入是否为有效的正数
|
|||
if (airVolume <= 0 || airSpeed <= 0) { |
|||
throw new IllegalArgumentException("风量和风速必须是正数。"); |
|||
} |
|||
|
|||
// 计算 d 的值
|
|||
return 2000 * Math.sqrt(airVolume / airSpeed / 3600 / Math.PI); |
|||
} |
|||
|
|||
/** |
|||
* 初步计算 |
|||
* |
|||
* @param airVolume 风量(单位根据实际情况设定) |
|||
* @param diameter 管道内径(单位根据实际情况设定) |
|||
* @return 计算得到的 风速 |
|||
* @throws IllegalArgumentException 如果 airVolume 或 airSpeed 非正 |
|||
*/ |
|||
public static double calculateAirSpeed(double airVolume, double diameter) { |
|||
|
|||
double radiusMeters = diameter / 2000.0; // 2000 = 2 * 1000 (to get radius in meters)
|
|||
|
|||
double area = Math.PI * Math.pow(radiusMeters, 2); |
|||
|
|||
return airVolume / (area * 3600.0); |
|||
} |
|||
|
|||
|
|||
@AutoLog(value = "初步计算") |
|||
@ApiOperation(value = "初步计算", notes = "初步计算") |
|||
@GetMapping(value = "/designPipe") |
|||
public Result<?> designPipe(@RequestParam(name = "designPlanId", required = true) String designPlanId, |
|||
@RequestParam(name = "pipeDiameterId", required = true) String pipeDiameterId) { |
|||
// 创建 QueryWrapper 以获取所有匹配的 DesignPlanPipeConfig
|
|||
QueryWrapper<Pipe> configQueryWrapper = new QueryWrapper<>(); |
|||
configQueryWrapper.eq("design_plan_id", designPlanId); |
|||
|
|||
List<Pipe> configList = pipeService.list(configQueryWrapper); |
|||
|
|||
if (CollectionUtils.isEmpty(configList)) { |
|||
return Result.ok(null); |
|||
} |
|||
List<Pipe> design = design(designPlanId, pipeDiameterId, configList); |
|||
|
|||
return Result.ok(design); |
|||
} |
|||
|
|||
private List<Pipe> design(String designPlanId, String pipeDiameterId, List<Pipe> configList) { |
|||
Map<String, List<Pipe>> pipesGroupedByParentId = configList.stream() |
|||
.filter(a -> StringUtils.isNotBlank(a.getParentId()) && a.getIsLeaf().equals(1)).collect(Collectors.groupingBy(Pipe::getParentId)); |
|||
List<Pipe> pipesToUpdate = new ArrayList<>(); |
|||
|
|||
PipeDiameterThickness byId = iPipeDiameterThicknessService.getById(pipeDiameterId); |
|||
List<Double> collect = Arrays.stream(byId.getDiameter().split(",")) |
|||
.map(str -> str.replaceAll("[\\u00A0\\s]+", "").trim()) // 去除所有空白字符,包括非断行空格
|
|||
.filter(str -> !str.isEmpty()) // 过滤空字符串
|
|||
.map(Double::parseDouble) |
|||
.collect(Collectors.toList()); |
|||
|
|||
|
|||
for (Map.Entry<String, List<Pipe>> entry : pipesGroupedByParentId.entrySet()) { |
|||
List<Pipe> parentPipes = entry.getValue(); |
|||
parentPipes.sort(Comparator.comparingInt(Pipe::getSortOrder)); |
|||
// 计算累积值
|
|||
double cumulativeSum = 0.0; |
|||
|
|||
for (Pipe pipe : parentPipes) { |
|||
double valveOpening = pipe.getValveOpening(); |
|||
double v = valveOpening / 100.0; |
|||
double adjustedFlow = pipe.getFlow() * v; |
|||
cumulativeSum += adjustedFlow; |
|||
double calculate = calculate(cumulativeSum, 19d); |
|||
double ceil = collect.stream() |
|||
.filter(num -> num >= calculate) // 过滤出不小于 calculate 的数
|
|||
.min(Double::compareTo) |
|||
.orElseGet(() -> collect.stream() |
|||
.max(Double::compareTo) |
|||
.orElse(Double.NaN)); |
|||
// 更新当前 Pipe 对象
|
|||
if (null != pipe.getDiameter()) { |
|||
pipe.setComputeDiameter(pipe.getDiameter()); |
|||
} |
|||
pipe.setDiameter(ceil); |
|||
pipe.setPipeDiameter(calculate); |
|||
pipe.setPipeFlow(cumulativeSum); |
|||
pipe.setValveOpening(valveOpening); |
|||
pipesToUpdate.add(pipe); |
|||
|
|||
|
|||
} |
|||
} |
|||
redisUtil.set(designPlanId, pipesToUpdate); |
|||
return pipesToUpdate; |
|||
} |
|||
|
|||
@AutoLog(value = "平衡计算") |
|||
@ApiOperation(value = "平衡计算", notes = "平衡计算") |
|||
@PostMapping(value = "/balance") |
|||
public Result<?> balance(@RequestBody DustQuery query) { |
|||
Object object = redisUtil.get(query.getDesignPlanId()); |
|||
|
|||
if (ObjectUtils.isEmpty(object)) { |
|||
return Result.error("设计方案管道配置不能为空"); |
|||
} |
|||
|
|||
Map<String, Double> pipeIdToValveOpeningMap = query.getList().stream() |
|||
.collect(Collectors.toMap( |
|||
Pipe::getId, |
|||
Pipe::getValveOpening, |
|||
(existing, replacement) -> existing)); |
|||
|
|||
Set<String> pipeIdsSet = pipeIdToValveOpeningMap.keySet(); |
|||
List<Pipe> pipes = convertToList(object); |
|||
|
|||
List<Pipe> filteredPipes = pipes.stream() |
|||
.filter(pipe -> pipeIdsSet.contains(pipe.getId())) // 假设 Pipe 类有 getId() 方法
|
|||
.collect(Collectors.toList()); |
|||
|
|||
Map<String, List<Pipe>> pipesGroupedByParentId = filteredPipes.stream() |
|||
.filter(a -> StringUtils.isNotBlank(a.getParentId()) && a.getIsLeaf().equals(1)).collect(Collectors.groupingBy(Pipe::getParentId)); |
|||
|
|||
|
|||
for (Map.Entry<String, List<Pipe>> entry : pipesGroupedByParentId.entrySet()) { |
|||
List<Pipe> parentPipes = entry.getValue(); |
|||
parentPipes.sort(Comparator.comparingInt(Pipe::getSortOrder)); |
|||
|
|||
// 计算累积值
|
|||
double cumulativeSum = 0.0; |
|||
double diameter; |
|||
for (Pipe pipe : parentPipes) { |
|||
double valveOpening = pipeIdToValveOpeningMap.getOrDefault(pipe.getId(), 100.0); |
|||
double v = valveOpening / 100.0; |
|||
double adjustedFlow = pipe.getFlow() * v; |
|||
cumulativeSum += adjustedFlow; |
|||
diameter = pipe.getDiameter(); |
|||
if (null != pipe.getComputeDiameter()) { |
|||
diameter = pipe.getComputeDiameter(); |
|||
} |
|||
double windSpeed = calculateAirSpeed(cumulativeSum, diameter); |
|||
log.info("风量{},开度: {},管道内径{}", cumulativeSum, v, diameter); |
|||
pipe.setWindSpeed(windSpeed); |
|||
pipe.setPipeFlow(cumulativeSum); |
|||
pipe.setValveOpening(valveOpening); |
|||
} |
|||
} |
|||
|
|||
return Result.ok(pipes); |
|||
} |
|||
|
|||
public List<Pipe> convertToList(Object object) { |
|||
if (!(object instanceof Collection<?>)) { |
|||
throw new IllegalArgumentException("Object is not a Collection"); |
|||
} |
|||
|
|||
Collection<?> collection = (Collection<?>) object; |
|||
List<Pipe> list = new ArrayList<>(); |
|||
|
|||
int index = 0; |
|||
for (Object item : collection) { |
|||
if (item == null) { |
|||
throw new NullPointerException("Collection contains null element at index " + index); |
|||
} |
|||
if (item instanceof Pipe) { |
|||
list.add((Pipe) item); |
|||
} else { |
|||
String foundType = item.getClass().getName(); |
|||
throw new ClassCastException("Element at index " + index + " is not a DesignPlanPipeConfig. Found: " + foundType); |
|||
} |
|||
index++; |
|||
} |
|||
return list; |
|||
} |
|||
|
|||
@AutoLog(value = "推荐方案") |
|||
@ApiOperation(value = "推荐方案", notes = "推荐方案") |
|||
@GetMapping(value = "/recommend") |
|||
public Result<?> recommend(@RequestParam(name = "designPlanId", required = true) String designPlanId, |
|||
@RequestParam(name = "parentPipeId", required = true) String parentPipeId, |
|||
@RequestParam(name = "pipeDiameterId", required = true) String pipeDiameterId, |
|||
@RequestParam(name = "minSpeed", required = true) Double minSpeed, |
|||
@RequestParam(name = "minRate", required = true) Double minRate) throws IOException { |
|||
QueryWrapper<Pipe> configQueryWrapper = new QueryWrapper<>(); |
|||
configQueryWrapper.eq("design_plan_id", designPlanId); |
|||
configQueryWrapper.eq("parent_id", parentPipeId); |
|||
List<Pipe> configList = pipeService.list(configQueryWrapper); |
|||
if (CollectionUtils.isEmpty(configList)){ |
|||
return Result.error("管道为空"); |
|||
} |
|||
List<Pipe> data = design(designPlanId, pipeDiameterId, configList); |
|||
data.sort(Comparator.comparingInt(Pipe::getSortOrder)); |
|||
|
|||
Set<Integer> pipeIndexes = IntStream.range(0, data.size()) |
|||
.filter(i -> data.get(i).getValveOpening() == 100) // 满足条件的 Pipe 的下标
|
|||
.boxed() // 转换为 Integer 类型
|
|||
.collect(Collectors.toSet()); |
|||
List<RecommendPlan> recommendPlanList = RecommendPlanUtils.generateCombinations(data, minSpeed, minRate, pipeIndexes); |
|||
return Result.ok(recommendPlanList); |
|||
} |
|||
} |
@ -1,311 +0,0 @@ |
|||
package cc.admin.modules.dust.controller; |
|||
|
|||
import cc.admin.common.api.vo.Result; |
|||
import cc.admin.common.aspect.annotation.AutoLog; |
|||
import cc.admin.common.sys.base.controller.BaseController; |
|||
import cc.admin.common.sys.query.QueryGenerator; |
|||
import cc.admin.modules.dust.entity.DustDataTag; |
|||
import cc.admin.modules.dust.entity.DustSystem; |
|||
import cc.admin.modules.dust.service.IDustDataTagService; |
|||
import cc.admin.modules.dust.service.IDustSystemService; |
|||
import cc.admin.modules.dust.vo.DataTagExcel; |
|||
import cc.admin.modules.dust.vo.DataTagPair; |
|||
import cn.hutool.core.util.IdUtil; |
|||
import cn.hutool.core.util.StrUtil; |
|||
import com.alibaba.excel.EasyExcelFactory; |
|||
import com.alibaba.excel.context.AnalysisContext; |
|||
import com.alibaba.excel.event.AnalysisEventListener; |
|||
import com.alibaba.excel.read.listener.ReadListener; |
|||
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.apache.commons.lang3.StringUtils; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
import org.springframework.web.multipart.MultipartFile; |
|||
import org.springframework.web.multipart.MultipartHttpServletRequest; |
|||
import org.springframework.web.servlet.ModelAndView; |
|||
|
|||
import javax.servlet.http.HttpServletRequest; |
|||
import javax.servlet.http.HttpServletResponse; |
|||
import java.util.*; |
|||
import java.util.function.Function; |
|||
import java.util.stream.Collectors; |
|||
|
|||
/** |
|||
* @Description: 数据点位表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Slf4j |
|||
@Api(tags = "数据点位表") |
|||
@RestController |
|||
@RequestMapping("/dust/dataTag") |
|||
public class DustDataTagController extends BaseController<DustDataTag, IDustDataTagService> { |
|||
@Autowired |
|||
private IDustDataTagService dustDataTagService; |
|||
@Autowired |
|||
private IDustSystemService iDustSystemService; |
|||
|
|||
/** |
|||
* 分页列表查询 |
|||
* |
|||
* @param key |
|||
* @param pageNo |
|||
* @param pageSize |
|||
* @param req |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "数据点位表-分页列表查询") |
|||
@ApiOperation(value = "数据点位表-分页列表查询", notes = "数据点位表-分页列表查询") |
|||
@GetMapping(value = "/list") |
|||
public Result<?> queryPageList( |
|||
@RequestParam(name = "systemId", required = false) String systemId, |
|||
@RequestParam(name = "name", required = false) String name, |
|||
@RequestParam(name = "dataTag", required = false) String dataTag, |
|||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, |
|||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, |
|||
HttpServletRequest req) { |
|||
QueryWrapper<DustDataTag> queryWrapper = new QueryWrapper<>(); |
|||
if (StrUtil.isNotEmpty(systemId)) { |
|||
queryWrapper.eq("system_id", systemId); |
|||
} |
|||
if (StrUtil.isNotEmpty(name)) { |
|||
queryWrapper.eq("name", name); |
|||
} |
|||
if (StrUtil.isNotEmpty(dataTag)) { |
|||
queryWrapper.eq("data_tag", dataTag); |
|||
} |
|||
|
|||
queryWrapper.orderByAsc("sort_order") |
|||
.orderByDesc("create_time"); |
|||
Page<DustDataTag> page = new Page<DustDataTag>(pageNo, pageSize); |
|||
IPage<DustDataTag> pageList = dustDataTagService.page(page, queryWrapper); |
|||
return Result.ok(pageList); |
|||
} |
|||
|
|||
/** |
|||
* 添加 |
|||
* |
|||
* @param dustDataTag |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "数据点位表-添加") |
|||
@ApiOperation(value = "数据点位表-添加", notes = "数据点位表-添加") |
|||
@PostMapping(value = "/add") |
|||
public Result<?> add(@RequestBody DustDataTag dustDataTag) { |
|||
checkUniqueName(dustDataTag); |
|||
dustDataTagService.save(dustDataTag); |
|||
return Result.ok("添加成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 编辑 |
|||
* |
|||
* @param dustDataTag |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "数据点位表-编辑") |
|||
@ApiOperation(value = "数据点位表-编辑", notes = "数据点位表-编辑") |
|||
@PutMapping(value = "/edit") |
|||
public Result<?> edit(@RequestBody DustDataTag dustDataTag) { |
|||
checkUniqueName(dustDataTag); |
|||
dustDataTagService.updateById(dustDataTag); |
|||
return Result.ok("编辑成功!"); |
|||
} |
|||
|
|||
|
|||
/** |
|||
* 复制 |
|||
* |
|||
* @param id |
|||
* @param name |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "数据点位表-复制") |
|||
@ApiOperation(value = "数据点位表-复制", notes = "数据点位表-复制") |
|||
@PostMapping(value = "/copy") |
|||
public Result<?> copy(@RequestParam(name = "id", required = true) String id, @RequestParam(name = "name", required = true) String name) { |
|||
DustDataTag dustDataTag = dustDataTagService.getById(id); |
|||
dustDataTag.setId(IdUtil.fastUUID()); |
|||
dustDataTag.setName(name); |
|||
dustDataTagService.save(dustDataTag); |
|||
return Result.ok("复制成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id删除 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "数据点位表-通过id删除") |
|||
@ApiOperation(value = "数据点位表-通过id删除", notes = "数据点位表-通过id删除") |
|||
@DeleteMapping(value = "/delete") |
|||
public Result<?> delete(@RequestParam(name = "id", required = true) String id) { |
|||
dustDataTagService.removeById(id); |
|||
return Result.ok("删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @param ids |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "数据点位表-批量删除") |
|||
@ApiOperation(value = "数据点位表-批量删除", notes = "数据点位表-批量删除") |
|||
@DeleteMapping(value = "/deleteBatch") |
|||
public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { |
|||
this.dustDataTagService.removeByIds(Arrays.asList(ids.split(","))); |
|||
return Result.ok("批量删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id查询 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "数据点位表-通过id查询") |
|||
@ApiOperation(value = "数据点位表-通过id查询", notes = "数据点位表-通过id查询") |
|||
@GetMapping(value = "/queryById") |
|||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) { |
|||
DustDataTag dustDataTag = dustDataTagService.getById(id); |
|||
return Result.ok(dustDataTag); |
|||
} |
|||
|
|||
/** |
|||
* 导出excel |
|||
* |
|||
* @param request |
|||
* @param dustDataTag |
|||
*/ |
|||
@RequestMapping(value = "/exportXls") |
|||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response, DustDataTag dustDataTag) { |
|||
response.setHeader("Access-Control-Expose-Headers", "Content-Disposition"); |
|||
return super.exportXls(request, dustDataTag, DustDataTag.class, "数据点位表"); |
|||
} |
|||
|
|||
/** |
|||
* 通过excel导入数据 |
|||
* |
|||
* @param request |
|||
* @param response |
|||
* @return |
|||
*/ |
|||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST) |
|||
public Result<?> importExcel(HttpServletRequest request, |
|||
HttpServletResponse response) { |
|||
try { |
|||
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; |
|||
Map<String, MultipartFile> fileMap = multipartRequest.getFileMap(); |
|||
|
|||
if (fileMap.isEmpty()) { |
|||
return Result.error("请上传 Excel 文件"); |
|||
} |
|||
|
|||
MultipartFile file = fileMap.values().iterator().next(); |
|||
if (file == null || file.isEmpty()) { |
|||
return Result.error("上传的文件为空"); |
|||
} |
|||
List<DustDataTag> metaDataValues = new ArrayList<>(); |
|||
List<String> errorList = new ArrayList<>(); |
|||
HashSet<String> dataTagSet = new HashSet<>(); |
|||
HashSet<String> nameSet = new HashSet<>(); |
|||
|
|||
List<DustSystem> systemList = iDustSystemService.list(); |
|||
Map<String, DustSystem> systemMap = systemList.stream().collect(Collectors.toMap(DustSystem::getName, dustSystem -> dustSystem)); |
|||
EasyExcelFactory.read(file.getInputStream(), DataTagExcel.class, |
|||
new AnalysisEventListener<DataTagExcel>() { |
|||
@Override |
|||
public void invoke(DataTagExcel rowData, AnalysisContext context) { |
|||
if (StringUtils.isEmpty(rowData.getDataTag()) || StringUtils.isEmpty(rowData.getName())) { |
|||
errorList.add(String.format("第 %d 行数据不完整:名称 或 数据点位 为空", context.readRowHolder().getRowIndex() + 1)); |
|||
return; |
|||
} |
|||
if (StringUtils.isEmpty(rowData.getSystemName())) { |
|||
errorList.add(String.format("第 %d 行数据不完整:除尘系统为空", context.readRowHolder().getRowIndex() + 1)); |
|||
return; |
|||
} |
|||
// 检查 dataTag 是否重复
|
|||
String dataTag = rowData.getDataTag().trim(); |
|||
if (!dataTagSet.add(dataTag)) { |
|||
// 如果 dataTag 已存在,记录错误
|
|||
errorList.add(String.format("第 %d 行数据重复:数据点位 %s 已存在", context.readRowHolder().getRowIndex() + 1, dataTag)); |
|||
return; |
|||
} |
|||
|
|||
if (!nameSet.add(rowData.getName() + rowData.getSystemName())) { |
|||
// 如果 dataTag 已存在,记录错误
|
|||
errorList.add(String.format("第 %d 行数据重复:该系统下除尘点位名称 %s 已存在", context.readRowHolder().getRowIndex() + 1, rowData.getName())); |
|||
return; |
|||
} |
|||
DustSystem dustSystem = systemMap.get(rowData.getSystemName().trim()); |
|||
if (dustSystem == null) { |
|||
errorList.add(String.format("第 %d 行数据错误:所属系统 %s 不存在", context.readRowHolder().getRowIndex() + 1, rowData.getSystemName())); |
|||
return; |
|||
} |
|||
DustDataTag dustDataTag = new DustDataTag(); |
|||
dustDataTag.setName(rowData.getName()); |
|||
dustDataTag.setDataTag(rowData.getDataTag().trim()); |
|||
dustDataTag.setSystemId(dustSystem.getId()); |
|||
|
|||
|
|||
checkUniqueName(dustDataTag); |
|||
|
|||
|
|||
metaDataValues.add(dustDataTag); |
|||
} |
|||
|
|||
@Override |
|||
public void doAfterAllAnalysed(AnalysisContext context) { |
|||
log.info("所有数据读取完成,共有 " + metaDataValues.size() + " 条数据"); |
|||
} |
|||
}) |
|||
.sheet() |
|||
.doRead(); |
|||
|
|||
if (!errorList.isEmpty()) { |
|||
return Result.error("导入失败,存在以下错误:\n" + String.join("\n", errorList)); |
|||
} |
|||
QueryWrapper<DustDataTag> dataTagQueryWrapper = new QueryWrapper<>(); |
|||
dataTagQueryWrapper.in("data_tag", dataTagSet); |
|||
List<DustDataTag> list = dustDataTagService.list(dataTagQueryWrapper); |
|||
Map<String, DustDataTag> collect = list.stream().collect(Collectors.toMap(DustDataTag::getDataTag, Function.identity())); |
|||
for (DustDataTag metaDataValue : metaDataValues) { |
|||
DustDataTag dustDataTag = collect.get(metaDataValue.getDataTag()); |
|||
if (dustDataTag != null) { |
|||
metaDataValue.setId(dustDataTag.getId()); |
|||
} |
|||
} |
|||
dustDataTagService.saveOrUpdateBatch(metaDataValues); |
|||
} catch (Exception e) { |
|||
e.printStackTrace(); |
|||
return Result.error("导入失败:" + e.getMessage()); |
|||
} |
|||
return Result.ok("导入成功"); |
|||
} |
|||
|
|||
public void checkUniqueName(DustDataTag origin) { |
|||
QueryWrapper<DustDataTag> coalQueryWrapper = new QueryWrapper<>(); |
|||
coalQueryWrapper.eq("data_tag", origin.getDataTag()); |
|||
DustDataTag existing = dustDataTagService.getOne(coalQueryWrapper); |
|||
|
|||
if (existing != null) { |
|||
if (origin.getId() != null) { |
|||
// ID不同且名称已被占用才抛异常
|
|||
if (!existing.getId().equals(origin.getId())) { |
|||
throw new IllegalArgumentException("数据点位 '" + origin.getDataTag() + "' 已存在"); |
|||
} |
|||
// ID相同是更新自身,不抛异常,直接返回
|
|||
return; |
|||
} |
|||
throw new IllegalArgumentException("数据点位 '" + origin.getDataTag() + "' 已存在"); |
|||
} |
|||
} |
|||
} |
@ -1,242 +0,0 @@ |
|||
package cc.admin.modules.dust.controller; |
|||
|
|||
import cc.admin.common.api.vo.Result; |
|||
import cc.admin.common.aspect.annotation.AutoLog; |
|||
import cc.admin.common.util.RedisUtil; |
|||
import cc.admin.influxdb.core.InfluxdbTemplate; |
|||
import cc.admin.influxdb.dust.DustLog; |
|||
import cc.admin.modules.dust.entity.*; |
|||
import cc.admin.modules.dust.service.*; |
|||
import cc.admin.modules.dust.utils.KeyUtils; |
|||
import cc.admin.modules.dust.vo.DataTagPair; |
|||
import cc.admin.modules.dust.vo.DustMonitorItemVo; |
|||
import cn.hutool.core.bean.BeanUtil; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; |
|||
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; |
|||
import io.swagger.annotations.Api; |
|||
import io.swagger.annotations.ApiOperation; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import javax.servlet.http.HttpServletRequest; |
|||
import java.time.LocalDateTime; |
|||
import java.time.ZoneOffset; |
|||
import java.time.format.DateTimeFormatter; |
|||
import java.util.ArrayList; |
|||
import java.util.HashMap; |
|||
import java.util.List; |
|||
import java.util.Map; |
|||
import java.util.stream.Collectors; |
|||
|
|||
/** |
|||
* @Description: 综合监控 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Slf4j |
|||
@Api(tags = "综合监控") |
|||
@RestController |
|||
@RequestMapping("/dust/monitor") |
|||
public class DustMonitorController { |
|||
@Autowired |
|||
private IDustDataTagService iDustDataTagService; |
|||
@Autowired |
|||
private IDustValveService dustValveService; |
|||
@Autowired |
|||
private IDustMonitorItemService dustMonitorItemService; |
|||
@Autowired |
|||
private IDustMonitorValveService dustMonitorValveService; |
|||
@Autowired |
|||
private InfluxdbTemplate influxdbTemplate; |
|||
@Autowired |
|||
private RedisUtil redisUtil; |
|||
|
|||
@AutoLog(value = "大屏监控-监控看板") |
|||
@ApiOperation(value = "大屏监控-监控看板", notes = "大屏监控项表-监控看板") |
|||
@GetMapping(value = "/boardList") |
|||
public Result<?> boardList(HttpServletRequest req) { |
|||
|
|||
ArrayList<DustMonitorItemVo> monitorItemList = new ArrayList<>(); |
|||
|
|||
Map<Object, Object> hmget = redisUtil.hmget(KeyUtils.dustdataTag); |
|||
if (ObjectUtils.isEmpty(hmget)) { |
|||
return Result.ok(monitorItemList); |
|||
} |
|||
|
|||
List<DustMonitorItem> list = dustMonitorItemService.list(); |
|||
Map<String, DustMonitorItem> collect = list.stream().collect(Collectors.toMap( |
|||
DustMonitorItem::getSystemId, // Key mapper
|
|||
item -> item, // Value mapper
|
|||
(existing, replacement) -> existing // Merge function (keep the first item if duplicate keys)
|
|||
)); |
|||
for (String systemId : collect.keySet()) { |
|||
DustMonitorItem dustMonitorItem = collect.get(systemId); |
|||
DustMonitorItemVo vo = new DustMonitorItemVo(); |
|||
BeanUtil.copyProperties(dustMonitorItem, vo); |
|||
Double inletPressure = hmget.get(dustMonitorItem.getInletPressureDataTagId()) != null |
|||
? Double.valueOf(hmget.get(dustMonitorItem.getInletPressureDataTagId()).toString()) : null; |
|||
|
|||
Double outletPressure = hmget.get(dustMonitorItem.getOutletPressureDataTagId()) != null |
|||
? Double.valueOf(hmget.get(dustMonitorItem.getOutletPressureDataTagId()).toString()) : null; |
|||
|
|||
Double pressureDifference = hmget.get(dustMonitorItem.getPressureDifferenceId()) != null |
|||
? Double.valueOf(hmget.get(dustMonitorItem.getPressureDifferenceId()).toString()) : null; |
|||
|
|||
Double fanSpeed = hmget.get(dustMonitorItem.getFanSpeedDataTagId()) != null |
|||
? Double.valueOf(hmget.get(dustMonitorItem.getFanSpeedDataTagId()).toString()) : null; |
|||
|
|||
Double motorCurrent = hmget.get(dustMonitorItem.getMotorCurrentDataTagId()) != null |
|||
? Double.valueOf(hmget.get(dustMonitorItem.getMotorCurrentDataTagId()).toString()) : null; |
|||
|
|||
Double cemsAirVolume = hmget.get(dustMonitorItem.getCemsAirVolumeDataTagId()) != null |
|||
? Double.valueOf(hmget.get(dustMonitorItem.getCemsAirVolumeDataTagId()).toString()) : null; |
|||
|
|||
Double dustConcentration = hmget.get(dustMonitorItem.getDustConcentrationDataTagId()) != null |
|||
? Double.valueOf(hmget.get(dustMonitorItem.getDustConcentrationDataTagId()).toString()) : null; |
|||
|
|||
Integer fanStatus = toInteger(hmget.get(dustMonitorItem.getFanStatusDataTagId())); |
|||
vo.setInletPressureDataTagValue(inletPressure); |
|||
vo.setOutletPressureDataTagValue(outletPressure); |
|||
vo.setPressureDifference(pressureDifference); |
|||
vo.setFanSpeedDataTagValue(fanSpeed); |
|||
vo.setMotorCurrentDataTagValue(motorCurrent); |
|||
vo.setCemsAirVolumeDataTagValue(cemsAirVolume); |
|||
vo.setDustConcentrationDataTagValue(dustConcentration); |
|||
vo.setFanStatusDataTagStatus(fanStatus); |
|||
monitorItemList.add(vo); |
|||
} |
|||
|
|||
return Result.ok(monitorItemList); |
|||
} |
|||
|
|||
private Integer toInteger(Object value) { |
|||
if (value == null) return null; |
|||
try { |
|||
return Integer.valueOf(value.toString()); |
|||
} catch (NumberFormatException e) { |
|||
return null; // 或返回默认值,比如 0
|
|||
} |
|||
} |
|||
|
|||
@AutoLog(value = "大屏监控-阀门点位") |
|||
@ApiOperation(value = "大屏监控-阀门点位", notes = "大屏监控项表-阀门点位") |
|||
@GetMapping(value = "/boardValve") |
|||
public Result<?> boardValve(HttpServletRequest req) { |
|||
|
|||
Map<Object, Object> hmget = redisUtil.hmget(KeyUtils.dustdataTag); |
|||
|
|||
List<DustMonitorValve> list = dustMonitorValveService.valveList(); |
|||
|
|||
Map<String, DustMonitorValve> collect = list.stream().collect(Collectors.toMap( |
|||
DustMonitorValve::getValveId, // Key mapper
|
|||
item -> item, // Value mapper
|
|||
(existing, replacement) -> existing // Merge function (keep the first item if duplicate keys)
|
|||
)); |
|||
ArrayList<DustMonitorValve> objects = new ArrayList<>(); |
|||
for (String key : collect.keySet()) { |
|||
DustMonitorValve dustMonitorValve = collect.get(key); |
|||
Integer status = toInteger(hmget.get(dustMonitorValve.getDataTagId())); |
|||
dustMonitorValve.setStatus(status); |
|||
objects.add(dustMonitorValve); |
|||
} |
|||
return Result.ok(objects); |
|||
} |
|||
|
|||
@AutoLog(value = "大屏监控-阀门状态") |
|||
@ApiOperation(value = "大屏监控表-阀门状态", notes = "大屏监控项表-阀门状态") |
|||
@GetMapping(value = "/valveStatusList") |
|||
public Result<?> valveStatusList(HttpServletRequest req, |
|||
@RequestParam(name = "systemId", required = true) String systemId) { |
|||
|
|||
QueryWrapper<DustValve> valveQueryWrapper = new QueryWrapper<>(); |
|||
valveQueryWrapper.eq("system_id", systemId); |
|||
List<DustValve> list = dustValveService.list(valveQueryWrapper); |
|||
if (ObjectUtils.isEmpty(list)) { |
|||
return Result.ok(new ArrayList<>()); |
|||
} |
|||
Map<Object, Object> hmget = redisUtil.hmget(KeyUtils.dustdataTag); |
|||
for (DustValve dustValve : list) { |
|||
Integer status = toInteger(hmget.get(dustValve.getDataTagId())); |
|||
dustValve.setStatus(status); |
|||
} |
|||
return Result.ok(list); |
|||
} |
|||
|
|||
@AutoLog(value = "历史记录") |
|||
@ApiOperation(value = "历史记录", notes = "历史记录") |
|||
@GetMapping(value = "/historyList") |
|||
public Result<?> historyList(HttpServletRequest req, |
|||
@RequestParam(name = "systemId", required = true) String systemId, |
|||
@RequestParam(name = "startTime", required = true) String startTime, |
|||
@RequestParam(name = "endTime", required = true) String endTime) { |
|||
|
|||
QueryWrapper<DustMonitorItem> objectQueryWrapper = new QueryWrapper<>(); |
|||
objectQueryWrapper.eq("system_id", systemId); |
|||
DustMonitorItem one = dustMonitorItemService.getOne(objectQueryWrapper); |
|||
if (ObjectUtils.isEmpty(one)) { |
|||
return Result.ok(new ArrayList<>()); |
|||
} |
|||
// 从 one 中提取 dataTag 列表
|
|||
List<DataTagPair> dataTag = new ArrayList<>(); |
|||
dataTag.add(new DataTagPair(one.getInletPressureDataTagId(), "除尘器进气压力(pa)")); |
|||
dataTag.add(new DataTagPair(one.getOutletPressureDataTagId(), "除尘器出气压力(pa)")); |
|||
dataTag.add(new DataTagPair(one.getFanSpeedDataTagId(), "风机转速(r/min)")); |
|||
dataTag.add(new DataTagPair(one.getMotorCurrentDataTagId(), "电机电流(A)")); |
|||
dataTag.add(new DataTagPair(one.getDustConcentrationDataTagId(), "粉尘浓度(mg/m³)")); |
|||
dataTag.add(new DataTagPair(one.getCemsAirVolumeDataTagId(), "烟尘CEMS风量(m³/h)")); |
|||
dataTag.add(new DataTagPair(one.getPressureDifferenceId(), "除尘器进出口压差(pa)")); |
|||
|
|||
QueryWrapper<DustDataTag> dataTagQueryWrapper = new QueryWrapper<>(); |
|||
dataTagQueryWrapper.in("id", dataTag.stream().map(DataTagPair::getTagId).collect(Collectors.toList())); |
|||
List<DustDataTag> list = iDustDataTagService.list(dataTagQueryWrapper); |
|||
|
|||
HashMap<String, List<DustLog>> resultMap = new HashMap<>(); |
|||
if (CollectionUtils.isNotEmpty(list)) { |
|||
// 时间格式化和转换
|
|||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); |
|||
LocalDateTime startTimeDateTime = LocalDateTime.parse(startTime, formatter); |
|||
LocalDateTime endTimeDateTime = LocalDateTime.parse(endTime, formatter); |
|||
long startTimeEpochSeconds = startTimeDateTime.toEpochSecond(ZoneOffset.UTC); |
|||
long endTimeEpochSeconds = endTimeDateTime.toEpochSecond(ZoneOffset.UTC); |
|||
|
|||
|
|||
Map<String, DustDataTag> tagIdToDustDataTag = list.stream() |
|||
.collect(Collectors.toMap( |
|||
DustDataTag::getId, |
|||
dustDataTag -> dustDataTag, |
|||
(existing, replacement) -> existing |
|||
)); |
|||
|
|||
for (DataTagPair dataTagPair : dataTag) { |
|||
String tagId = dataTagPair.getTagId(); |
|||
String description = dataTagPair.getDescription(); |
|||
DustDataTag dustDataTag = tagIdToDustDataTag.get(tagId); |
|||
if (dustDataTag != null) { |
|||
String sqlStr = String.format( |
|||
"SELECT first(value) as value " + // 这里添加了空格
|
|||
"FROM dust_log " + |
|||
"WHERE time >= %ds AND time <= %ds " + |
|||
"AND dataTag = '%s' " + |
|||
"GROUP BY time(1m)", |
|||
startTimeEpochSeconds, endTimeEpochSeconds, dustDataTag.getId() |
|||
); |
|||
|
|||
String format = String.format(sqlStr, startTimeEpochSeconds, endTimeEpochSeconds); |
|||
List<DustLog> mqttLogs = influxdbTemplate.selectList( |
|||
format, |
|||
DustLog.class); |
|||
mqttLogs = mqttLogs.stream() |
|||
.filter(log -> log.getValue() != null) |
|||
.collect(Collectors.toList()); |
|||
resultMap.put(description, mqttLogs); |
|||
} else { |
|||
resultMap.put(description, new ArrayList<>()); |
|||
} |
|||
} |
|||
} |
|||
return Result.ok(resultMap); |
|||
} |
|||
} |
@ -1,328 +0,0 @@ |
|||
package cc.admin.modules.dust.controller; |
|||
|
|||
import cc.admin.common.api.vo.Result; |
|||
import cc.admin.common.aspect.annotation.AutoLog; |
|||
import cc.admin.common.sys.base.controller.BaseController; |
|||
import cc.admin.common.sys.query.QueryGenerator; |
|||
import cc.admin.modules.dust.entity.DustDataTag; |
|||
import cc.admin.modules.dust.entity.DustMonitorItem; |
|||
import cc.admin.modules.dust.entity.DustSystem; |
|||
import cc.admin.modules.dust.entity.DustValve; |
|||
import cc.admin.modules.dust.enums.ValveType; |
|||
import cc.admin.modules.dust.service.IDustDataTagService; |
|||
import cc.admin.modules.dust.service.IDustMonitorItemService; |
|||
import cc.admin.modules.dust.service.IDustSystemService; |
|||
import cc.admin.modules.dust.vo.DataValveExcel; |
|||
import cc.admin.modules.dust.vo.DustMonitorItemExcel; |
|||
import cn.hutool.core.bean.BeanUtil; |
|||
import cn.hutool.core.util.IdUtil; |
|||
import cn.hutool.core.util.StrUtil; |
|||
import com.alibaba.excel.EasyExcelFactory; |
|||
import com.alibaba.excel.context.AnalysisContext; |
|||
import com.alibaba.excel.event.AnalysisEventListener; |
|||
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.apache.commons.lang3.StringUtils; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
import org.springframework.web.multipart.MultipartFile; |
|||
import org.springframework.web.multipart.MultipartHttpServletRequest; |
|||
import org.springframework.web.servlet.ModelAndView; |
|||
|
|||
import javax.servlet.http.HttpServletRequest; |
|||
import javax.servlet.http.HttpServletResponse; |
|||
import java.util.*; |
|||
import java.util.function.Consumer; |
|||
import java.util.function.Function; |
|||
import java.util.stream.Collectors; |
|||
|
|||
/** |
|||
* @Description: 大屏监控项表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Slf4j |
|||
@Api(tags = "大屏监控项表") |
|||
@RestController |
|||
@RequestMapping("/dust/monitorItem") |
|||
public class DustMonitorItemController extends BaseController<DustMonitorItem, IDustMonitorItemService> { |
|||
@Autowired |
|||
private IDustMonitorItemService dustMonitorItemService; |
|||
@Autowired |
|||
private IDustSystemService dustSystemService; |
|||
@Autowired |
|||
private IDustDataTagService dustDataTagService; |
|||
/** |
|||
* 分页列表查询 |
|||
* |
|||
* @param key |
|||
* @param pageNo |
|||
* @param pageSize |
|||
* @param req |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "大屏监控项表-分页列表查询") |
|||
@ApiOperation(value = "大屏监控项表-分页列表查询", notes = "大屏监控项表-分页列表查询") |
|||
@GetMapping(value = "/list") |
|||
public Result<?> queryPageList( |
|||
@RequestParam(name = "key", required = false) String key, |
|||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, |
|||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, |
|||
HttpServletRequest req) { |
|||
QueryWrapper<DustMonitorItem> queryWrapper = QueryGenerator.initQueryWrapper(new DustMonitorItem(), req.getParameterMap()); |
|||
if (StrUtil.isNotEmpty(key)) { |
|||
|
|||
} |
|||
queryWrapper.orderByAsc("sort_order") |
|||
.orderByDesc("create_time"); |
|||
Page<DustMonitorItem> page = new Page<DustMonitorItem>(pageNo, pageSize); |
|||
IPage<DustMonitorItem> pageList = dustMonitorItemService.page(page, queryWrapper); |
|||
return Result.ok(pageList); |
|||
} |
|||
|
|||
/** |
|||
* 添加 |
|||
* |
|||
* @param dustMonitorItem |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "大屏监控项表-添加") |
|||
@ApiOperation(value = "大屏监控项表-添加", notes = "大屏监控项表-添加") |
|||
@PostMapping(value = "/add") |
|||
public Result<?> add(@RequestBody DustMonitorItem dustMonitorItem) { |
|||
checkUniqueName(dustMonitorItem); |
|||
dustMonitorItemService.save(dustMonitorItem); |
|||
return Result.ok("添加成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 编辑 |
|||
* |
|||
* @param dustMonitorItem |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "大屏监控项表-编辑") |
|||
@ApiOperation(value = "大屏监控项表-编辑", notes = "大屏监控项表-编辑") |
|||
@PutMapping(value = "/edit") |
|||
public Result<?> edit(@RequestBody DustMonitorItem dustMonitorItem) { |
|||
checkUniqueName(dustMonitorItem); |
|||
dustMonitorItemService.updateById(dustMonitorItem); |
|||
return Result.ok("编辑成功!"); |
|||
} |
|||
|
|||
|
|||
/** |
|||
* 通过id删除 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "大屏监控项表-通过id删除") |
|||
@ApiOperation(value = "大屏监控项表-通过id删除", notes = "大屏监控项表-通过id删除") |
|||
@DeleteMapping(value = "/delete") |
|||
public Result<?> delete(@RequestParam(name = "id", required = true) String id) { |
|||
dustMonitorItemService.removeById(id); |
|||
return Result.ok("删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @param ids |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "大屏监控项表-批量删除") |
|||
@ApiOperation(value = "大屏监控项表-批量删除", notes = "大屏监控项表-批量删除") |
|||
@DeleteMapping(value = "/deleteBatch") |
|||
public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { |
|||
this.dustMonitorItemService.removeByIds(Arrays.asList(ids.split(","))); |
|||
return Result.ok("批量删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id查询 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "大屏监控项表-通过id查询") |
|||
@ApiOperation(value = "大屏监控项表-通过id查询", notes = "大屏监控项表-通过id查询") |
|||
@GetMapping(value = "/queryById") |
|||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) { |
|||
DustMonitorItem dustMonitorItem = dustMonitorItemService.getById(id); |
|||
return Result.ok(dustMonitorItem); |
|||
} |
|||
|
|||
/** |
|||
* 导出excel |
|||
* |
|||
* @param request |
|||
* @param dustMonitorItem |
|||
*/ |
|||
@RequestMapping(value = "/exportXls") |
|||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response, DustMonitorItem dustMonitorItem) { |
|||
response.setHeader("Access-Control-Expose-Headers", "Content-Disposition"); |
|||
return super.exportXls(request, dustMonitorItem, DustMonitorItem.class, "大屏监控项表"); |
|||
} |
|||
|
|||
|
|||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST) |
|||
public Result<?> importExcel(HttpServletRequest request, |
|||
HttpServletResponse response) { |
|||
try { |
|||
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; |
|||
Map<String, MultipartFile> fileMap = multipartRequest.getFileMap(); |
|||
|
|||
if (fileMap.isEmpty()) { |
|||
return Result.error("请上传 Excel 文件"); |
|||
} |
|||
|
|||
MultipartFile file = fileMap.values().iterator().next(); |
|||
if (file == null || file.isEmpty()) { |
|||
return Result.error("上传的文件为空"); |
|||
} |
|||
List<DustMonitorItemExcel> metaDataValues = new ArrayList<>(); |
|||
List<String> errorList = new ArrayList<>(); |
|||
HashSet<String> idSet = new HashSet<>(); |
|||
HashSet<String> NameSet = new HashSet<>(); |
|||
|
|||
EasyExcelFactory.read(file.getInputStream(), DustMonitorItemExcel.class, |
|||
new AnalysisEventListener<DustMonitorItemExcel>() { |
|||
@Override |
|||
public void invoke(DustMonitorItemExcel rowData, AnalysisContext context) { |
|||
int rowIndex = context.readRowHolder().getRowIndex() + 1; |
|||
|
|||
// 将所有 dataTag 添加到 idSet 并检查重复
|
|||
String[] dataTags = { |
|||
rowData.getCemsAirVolumeDataTagName()+rowData.getSystemName(), |
|||
rowData.getOutletPressureDataTagName()+rowData.getSystemName(), |
|||
rowData.getInletPressureDataTagName()+rowData.getSystemName(), |
|||
rowData.getDustConcentrationDataTagName()+rowData.getSystemName(), |
|||
rowData.getFanStatusDataTagStatusName()+rowData.getSystemName(), |
|||
rowData.getFanSpeedDataTagName()+rowData.getSystemName(), |
|||
rowData.getMotorCurrentDataTagName()+rowData.getSystemName() |
|||
}; |
|||
NameSet.add(rowData.getCemsAirVolumeDataTagName()); |
|||
NameSet.add(rowData.getOutletPressureDataTagName()); |
|||
NameSet.add(rowData.getInletPressureDataTagName()); |
|||
NameSet.add(rowData.getDustConcentrationDataTagName()); |
|||
NameSet.add(rowData.getFanStatusDataTagStatusName()); |
|||
NameSet.add(rowData.getFanSpeedDataTagName()); |
|||
NameSet.add(rowData.getMotorCurrentDataTagName()); |
|||
// 检查 dataTag 是否重复
|
|||
for (String dataTag : dataTags) { |
|||
if (StringUtils.isNotEmpty(dataTag)) { // 跳过空值
|
|||
if (!idSet.add(dataTag)) { // 如果添加失败,说明已存在
|
|||
errorList.add(String.format("第 %d 行数据重复:数据点位 %s 已存在", rowIndex, dataTag)); |
|||
return; // 发现重复后直接返回(根据你的代码逻辑)
|
|||
} |
|||
} |
|||
} |
|||
metaDataValues.add(rowData); |
|||
} |
|||
|
|||
|
|||
@Override |
|||
public void doAfterAllAnalysed(AnalysisContext context) { |
|||
log.info("所有数据读取完成,共有 " + metaDataValues.size() + " 条数据"); |
|||
} |
|||
}) |
|||
.sheet() |
|||
.doRead(); |
|||
|
|||
if (!errorList.isEmpty()) { |
|||
return Result.error("导入失败,存在以下错误:\n" + String.join("\n", errorList)); |
|||
} |
|||
|
|||
List<DustSystem> systemList = dustSystemService.list(); |
|||
Map<String, DustSystem> systemMap = systemList.stream().collect(Collectors.toMap(DustSystem::getName, dustSystem -> dustSystem)); |
|||
|
|||
QueryWrapper<DustDataTag> objectQueryWrapper = new QueryWrapper<>(); |
|||
objectQueryWrapper.eq("name",idSet); |
|||
List<DustDataTag> dataTagList = dustDataTagService.list(objectQueryWrapper); |
|||
Map<String, DustDataTag> tagMap = dataTagList.stream().collect(Collectors.toMap( |
|||
dustDataTag -> dustDataTag.getDataTag() + dustDataTag.getSystemId(), |
|||
Function.identity())); |
|||
ArrayList<DustMonitorItem> objects = new ArrayList<>(); |
|||
|
|||
|
|||
List<DustMonitorItem> list = dustMonitorItemService.list(); |
|||
Map<String, DustMonitorItem> collect = list.stream().collect(Collectors.toMap(DustMonitorItem::getSystemId, Function.identity())); |
|||
|
|||
for (DustMonitorItemExcel metaDataValue : metaDataValues) { |
|||
DustMonitorItem dustMonitorItem = new DustMonitorItem(); |
|||
DustSystem dustSystem = systemMap.get(metaDataValue.getSystemName().trim()); |
|||
if (null != dustSystem){ |
|||
dustMonitorItem.setSystemId(dustSystem.getId()); |
|||
} |
|||
DustDataTag dustDataTag = tagMap.get(metaDataValue.getInletPressureDataTagName().trim()+ dustMonitorItem.getSystemId()); |
|||
if (dustDataTag != null){ |
|||
dustMonitorItem.setInletPressureDataTagId(dustDataTag.getId()); |
|||
} |
|||
DustDataTag dustDataTag1 = tagMap.get(metaDataValue.getOutletPressureDataTagName().trim() + dustMonitorItem.getSystemId()); |
|||
if (dustDataTag1 != null){ |
|||
dustMonitorItem.setOutletPressureDataTagId(dustDataTag1.getId()); |
|||
} |
|||
|
|||
DustDataTag dustDataTag2 = tagMap.get(metaDataValue.getDustConcentrationDataTagName().trim() + dustMonitorItem.getSystemId()); |
|||
if (dustDataTag2 != null){ |
|||
dustMonitorItem.setDustConcentrationDataTagId(dustDataTag2.getId()); |
|||
} |
|||
|
|||
DustDataTag dustDataTag3 = tagMap.get(metaDataValue.getCemsAirVolumeDataTagName().trim() + dustMonitorItem.getSystemId()); |
|||
if (dustDataTag3 != null){ |
|||
dustMonitorItem.setCemsAirVolumeDataTagId(dustDataTag3.getId()); |
|||
} |
|||
|
|||
DustDataTag dustDataTag4 = tagMap.get(metaDataValue.getMotorCurrentDataTagName().trim() + dustMonitorItem.getSystemId()); |
|||
if (dustDataTag4 != null){ |
|||
dustMonitorItem.setMotorCurrentDataTagId(dustDataTag4.getId()); |
|||
} |
|||
|
|||
DustDataTag dustDataTag5 = tagMap.get(metaDataValue.getFanStatusDataTagStatusName().trim() + dustMonitorItem.getSystemId()); |
|||
if (dustDataTag5 != null){ |
|||
dustMonitorItem.setFanStatusDataTagId(dustDataTag5.getId()); |
|||
} |
|||
|
|||
DustDataTag dustDataTag6 = tagMap.get(metaDataValue.getFanSpeedDataTagName().trim() + dustMonitorItem.getSystemId()); |
|||
if (dustDataTag6 != null){ |
|||
dustMonitorItem.setFanSpeedDataTagId(dustDataTag6.getId()); |
|||
} |
|||
|
|||
DustMonitorItem dustMonitorItem1 = collect.get(dustMonitorItem.getSystemId()); |
|||
if (null != dustMonitorItem1){ |
|||
dustMonitorItem.setId(dustMonitorItem1.getId()); |
|||
} |
|||
objects.add(dustMonitorItem); |
|||
} |
|||
dustMonitorItemService.saveOrUpdateBatch(objects); |
|||
} catch (Exception e) { |
|||
e.printStackTrace(); |
|||
return Result.error("导入失败:" + e.getMessage()); |
|||
} |
|||
return Result.ok("导入成功"); |
|||
} |
|||
|
|||
public void checkUniqueName(DustMonitorItem item) { |
|||
QueryWrapper<DustMonitorItem> coalQueryWrapper = new QueryWrapper<>(); |
|||
coalQueryWrapper.eq("system_id", item.getSystemId()); |
|||
DustMonitorItem existing = dustMonitorItemService.getOne(coalQueryWrapper); |
|||
|
|||
if (existing != null) { |
|||
if (item.getId() != null) { |
|||
// ID不同且名称已被占用才抛异常
|
|||
if (!existing.getId().equals(item.getId())) { |
|||
throw new IllegalArgumentException("系统已存在"); |
|||
} |
|||
// ID相同是更新自身,不抛异常,直接返回
|
|||
return; |
|||
} |
|||
throw new IllegalArgumentException("系统已存在"); |
|||
} |
|||
} |
|||
} |
@ -1,341 +0,0 @@ |
|||
package cc.admin.modules.dust.controller; |
|||
|
|||
import cc.admin.common.api.vo.Result; |
|||
import cc.admin.common.aspect.annotation.AutoLog; |
|||
import cc.admin.common.sys.base.controller.BaseController; |
|||
import cc.admin.common.sys.query.QueryGenerator; |
|||
import cc.admin.modules.dust.entity.DustDataTag; |
|||
import cc.admin.modules.dust.entity.DustSystem; |
|||
import cc.admin.modules.dust.entity.DustValve; |
|||
import cc.admin.modules.dust.enums.ValveType; |
|||
import cc.admin.modules.dust.service.IDustDataTagService; |
|||
import cc.admin.modules.dust.service.IDustSystemService; |
|||
import cc.admin.modules.dust.service.IDustValveService; |
|||
import cc.admin.modules.dust.utils.BeanCopyUtil; |
|||
import cc.admin.modules.dust.vo.DataTagExcel; |
|||
import cc.admin.modules.dust.vo.DataValveExcel; |
|||
import cn.hutool.core.bean.BeanUtil; |
|||
import cn.hutool.core.util.IdUtil; |
|||
import cn.hutool.core.util.StrUtil; |
|||
import com.alibaba.excel.EasyExcelFactory; |
|||
import com.alibaba.excel.context.AnalysisContext; |
|||
import com.alibaba.excel.event.AnalysisEventListener; |
|||
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.apache.commons.lang3.StringUtils; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
import org.springframework.web.multipart.MultipartFile; |
|||
import org.springframework.web.multipart.MultipartHttpServletRequest; |
|||
import org.springframework.web.servlet.ModelAndView; |
|||
|
|||
import javax.servlet.http.HttpServletRequest; |
|||
import javax.servlet.http.HttpServletResponse; |
|||
import java.util.*; |
|||
import java.util.function.Function; |
|||
import java.util.stream.Collectors; |
|||
|
|||
/** |
|||
* @Description: 阀门表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Slf4j |
|||
@Api(tags = "阀门表") |
|||
@RestController |
|||
@RequestMapping("/dust/valve") |
|||
public class DustValveController extends BaseController<DustValve, IDustValveService> { |
|||
@Autowired |
|||
private IDustValveService dustValveService; |
|||
@Autowired |
|||
private IDustDataTagService dustDataTagService; |
|||
@Autowired |
|||
private IDustSystemService dustSystemService; |
|||
|
|||
/** |
|||
* 分页列表查询 |
|||
* @param pageNo |
|||
* @param pageSize |
|||
* @param req |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "阀门表-分页列表查询") |
|||
@ApiOperation(value = "阀门表-分页列表查询", notes = "阀门表-分页列表查询") |
|||
@GetMapping(value = "/list") |
|||
public Result<?> queryPageList( |
|||
@RequestParam(name = "systemId", required = false) String systemId, |
|||
@RequestParam(name = "dataTagId", required = false) String dataTagId, |
|||
@RequestParam(name = "name", required = false) String name, |
|||
@RequestParam(name = "parameter", required = false) String parameter, |
|||
@RequestParam(name = "location", required = false) String location, |
|||
@RequestParam(name = "type", required = false) Integer type, |
|||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, |
|||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, |
|||
HttpServletRequest req) { |
|||
QueryWrapper<DustValve> queryWrapper = new QueryWrapper<>(); |
|||
if (StrUtil.isNotEmpty(parameter)) { |
|||
queryWrapper.like("parameter", parameter); // parameter 模糊查询
|
|||
} |
|||
if (StrUtil.isNotEmpty(location)) { |
|||
queryWrapper.like("location", location); // location 改为模糊查询
|
|||
} |
|||
if (StrUtil.isNotEmpty(name)) { |
|||
queryWrapper.like("name", name); // location 改为模糊查询
|
|||
} |
|||
if (null != type) { |
|||
queryWrapper.eq("type", type); // type 保持精确匹配
|
|||
} |
|||
if (StrUtil.isNotEmpty(systemId)) { |
|||
queryWrapper.eq("system_id", systemId); // systemId 保持精确匹配
|
|||
} |
|||
if (StrUtil.isNotEmpty(dataTagId)) { |
|||
queryWrapper.eq("data_tag_id", dataTagId); // systemId 保持精确匹配
|
|||
} |
|||
queryWrapper.orderByAsc("sort_order") |
|||
.orderByDesc("create_time"); |
|||
Page<DustValve> page = new Page<DustValve>(pageNo, pageSize); |
|||
IPage<DustValve> pageList = dustValveService.page(page, queryWrapper); |
|||
return Result.ok(pageList); |
|||
} |
|||
|
|||
/** |
|||
* 添加 |
|||
* |
|||
* @param dustValve |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "阀门表-添加") |
|||
@ApiOperation(value = "阀门表-添加", notes = "阀门表-添加") |
|||
@PostMapping(value = "/add") |
|||
public Result<?> add(@RequestBody DustValve dustValve) { |
|||
dustValveService.save(dustValve); |
|||
return Result.ok("添加成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 编辑 |
|||
* |
|||
* @param dustValve |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "阀门表-编辑") |
|||
@ApiOperation(value = "阀门表-编辑", notes = "阀门表-编辑") |
|||
@PutMapping(value = "/edit") |
|||
public Result<?> edit(@RequestBody DustValve dustValve) { |
|||
dustValveService.updateById(dustValve); |
|||
return Result.ok("编辑成功!"); |
|||
} |
|||
|
|||
|
|||
/** |
|||
* 复制 |
|||
* |
|||
* @param id |
|||
* @param name |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "阀门表-复制") |
|||
@ApiOperation(value = "阀门表-复制", notes = "阀门表-复制") |
|||
@PostMapping(value = "/copy") |
|||
public Result<?> copy(@RequestParam(name = "id", required = true) String id, @RequestParam(name = "name", required = true) String name) { |
|||
DustValve dustValve = dustValveService.getById(id); |
|||
dustValve.setId(IdUtil.fastUUID()); |
|||
dustValve.setName(name); |
|||
dustValveService.save(dustValve); |
|||
return Result.ok("复制成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id删除 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "阀门表-通过id删除") |
|||
@ApiOperation(value = "阀门表-通过id删除", notes = "阀门表-通过id删除") |
|||
@DeleteMapping(value = "/delete") |
|||
public Result<?> delete(@RequestParam(name = "id", required = true) String id) { |
|||
dustValveService.removeById(id); |
|||
return Result.ok("删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @param ids |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "阀门表-批量删除") |
|||
@ApiOperation(value = "阀门表-批量删除", notes = "阀门表-批量删除") |
|||
@DeleteMapping(value = "/deleteBatch") |
|||
public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { |
|||
this.dustValveService.removeByIds(Arrays.asList(ids.split(","))); |
|||
return Result.ok("批量删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id查询 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "阀门表-通过id查询") |
|||
@ApiOperation(value = "阀门表-通过id查询", notes = "阀门表-通过id查询") |
|||
@GetMapping(value = "/queryById") |
|||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) { |
|||
DustValve dustValve = dustValveService.getById(id); |
|||
return Result.ok(dustValve); |
|||
} |
|||
|
|||
/** |
|||
* 导出excel |
|||
* |
|||
* @param request |
|||
* @param dustValve |
|||
*/ |
|||
@RequestMapping(value = "/exportXls") |
|||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response, DustValve dustValve) { |
|||
response.setHeader("Access-Control-Expose-Headers", "Content-Disposition"); |
|||
return super.exportXls(request, dustValve, DustValve.class, "阀门表"); |
|||
} |
|||
|
|||
/** |
|||
* 通过excel导入数据 |
|||
* |
|||
* @param request |
|||
* @param response |
|||
* @return |
|||
*/ |
|||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST) |
|||
public Result<?> importExcel(HttpServletRequest request, |
|||
HttpServletResponse response) { |
|||
try { |
|||
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; |
|||
Map<String, MultipartFile> fileMap = multipartRequest.getFileMap(); |
|||
|
|||
if (fileMap.isEmpty()) { |
|||
return Result.error("请上传 Excel 文件"); |
|||
} |
|||
|
|||
MultipartFile file = fileMap.values().iterator().next(); |
|||
if (file == null || file.isEmpty()) { |
|||
return Result.error("上传的文件为空"); |
|||
} |
|||
List<DustValve> metaDataValues = new ArrayList<>(); |
|||
List<String> errorList = new ArrayList<>(); |
|||
HashSet<String> set = new HashSet<>(); |
|||
HashSet<String> dataTagSet = new HashSet<>(); |
|||
HashSet<String> nameSet = new HashSet<>(); |
|||
|
|||
List<DustSystem> systemList = dustSystemService.list(); |
|||
Map<String, DustSystem> systemMap = systemList.stream().collect(Collectors.toMap(DustSystem::getName, dustSystem -> dustSystem)); |
|||
|
|||
|
|||
EasyExcelFactory.read(file.getInputStream(), DataValveExcel.class, |
|||
new AnalysisEventListener<DataValveExcel>() { |
|||
@Override |
|||
public void invoke(DataValveExcel rowData, AnalysisContext context) { |
|||
int rowIndex = context.readRowHolder().getRowIndex() + 1; |
|||
|
|||
if (StringUtils.isEmpty(rowData.getSystemName())) { |
|||
errorList.add(String.format("第 %d 行数据不完整:系统名称 为空", rowIndex)); |
|||
return; |
|||
} |
|||
|
|||
if (StringUtils.isEmpty(rowData.getName())) { |
|||
errorList.add(String.format("第 %d 行数据不完整:阀门名称 为空", rowIndex)); |
|||
return; |
|||
} |
|||
if (StringUtils.isEmpty(rowData.getTypeName())) { |
|||
errorList.add(String.format("第 %d 行数据不完整:类型 为空", rowIndex)); |
|||
return; |
|||
} |
|||
|
|||
if (StringUtils.isEmpty(rowData.getDataTag())) { |
|||
errorList.add(String.format("第 %d 行数据不完整:所属点位 为空", rowIndex)); |
|||
return; |
|||
} |
|||
// 检查 dataTag 是否重复
|
|||
String dataTag = rowData.getDataTag(); |
|||
if (!set.add(dataTag + rowData.getSystemName())) { |
|||
errorList.add(String.format("第 %d 行数据重复:数据点位 %s 已存在", rowIndex, dataTag)); |
|||
return; |
|||
} |
|||
|
|||
// 验证 typeName 是否合法
|
|||
Integer valveType; |
|||
try { |
|||
valveType = ValveType.getTypeByName(rowData.getTypeName()); |
|||
} catch (IllegalArgumentException e) { |
|||
errorList.add(String.format("第 %d 行数据无效:类型 %s 不合法,应为 '升关阀' 或 '调节阀'", rowIndex, rowData.getTypeName())); |
|||
return; |
|||
} |
|||
DustValve dustValve = new DustValve(); |
|||
BeanUtil.copyProperties(rowData, dustValve); |
|||
dustValve.setType(valveType); |
|||
DustSystem dustSystem = systemMap.get(rowData.getSystemName().trim()); |
|||
if (dustSystem == null) { |
|||
errorList.add(String.format("第 %d 行数据错误:所属系统 %s 不存在", context.readRowHolder().getRowIndex() + 1, rowData.getSystemName())); |
|||
return; |
|||
} |
|||
dataTagSet.add(dataTag); |
|||
nameSet.add(rowData.getName()); |
|||
dustValve.setSystemId(dustSystem.getId()); |
|||
|
|||
metaDataValues.add(dustValve); |
|||
} |
|||
|
|||
@Override |
|||
public void doAfterAllAnalysed(AnalysisContext context) { |
|||
log.info("所有数据读取完成,共有 " + metaDataValues.size() + " 条数据"); |
|||
} |
|||
}) |
|||
.sheet() |
|||
.doRead(); |
|||
|
|||
if (!errorList.isEmpty()) { |
|||
return Result.error("导入失败,存在以下错误:\n" + String.join("\n", errorList)); |
|||
} |
|||
QueryWrapper<DustDataTag> dataTagQueryWrapper = new QueryWrapper<>(); |
|||
dataTagQueryWrapper.in("name", dataTagSet); |
|||
List<DustDataTag> list = dustDataTagService.list(dataTagQueryWrapper); |
|||
|
|||
Map<String, DustDataTag> collect = list.stream().collect(Collectors.toMap( |
|||
dustDataTag -> dustDataTag.getName() + dustDataTag.getSystemId(), |
|||
Function.identity())); // 值:DustDataTag 对象本身
|
|||
|
|||
QueryWrapper<DustValve> dustValveQueryWrapper = new QueryWrapper<>(); |
|||
dustValveQueryWrapper.in("name", nameSet); |
|||
List<DustValve> valveList = dustValveService.list(dustValveQueryWrapper); |
|||
Map<String, DustValve> valveMap = valveList.stream().collect(Collectors.toMap( |
|||
dustDataTag -> dustDataTag.getName() + dustDataTag.getSystemId(), |
|||
Function.identity())); |
|||
|
|||
|
|||
for (DustValve metaDataValue : metaDataValues) { |
|||
String tag = metaDataValue.getDataTag().trim() + metaDataValue.getSystemId(); |
|||
DustDataTag dustDataTag = collect.get(tag); |
|||
if (dustDataTag != null) { |
|||
metaDataValue.setDataTagId(dustDataTag.getId()); |
|||
} |
|||
|
|||
String valve = metaDataValue.getName().trim() + metaDataValue.getSystemId(); |
|||
DustValve dustValve = valveMap.get(valve); |
|||
if (dustValve != null) { |
|||
metaDataValue.setId(dustValve.getId()); |
|||
} |
|||
} |
|||
dustValveService.saveOrUpdateBatch(metaDataValues); |
|||
} catch (Exception e) { |
|||
e.printStackTrace(); |
|||
return Result.error("导入失败:" + e.getMessage()); |
|||
} |
|||
return Result.ok("导入成功"); |
|||
} |
|||
|
|||
} |
@ -1,304 +0,0 @@ |
|||
package cc.admin.modules.dust.controller; |
|||
|
|||
import cc.admin.common.api.vo.Result; |
|||
import cc.admin.common.aspect.annotation.AutoLog; |
|||
import cc.admin.common.sys.base.controller.BaseController; |
|||
import cc.admin.common.util.RedisUtil; |
|||
import cc.admin.modules.dust.entity.Pipe; |
|||
import cc.admin.modules.dust.service.IPipeService; |
|||
import cc.admin.modules.dust.service.IRecommendPlanService; |
|||
import cc.admin.modules.dust.vo.DustConfigVo; |
|||
import cc.admin.poi.util.HeaderCell; |
|||
import cn.hutool.core.util.StrUtil; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; |
|||
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.apache.poi.openxml4j.exceptions.InvalidFormatException; |
|||
import org.apache.poi.ss.usermodel.Row; |
|||
import org.apache.poi.ss.usermodel.Sheet; |
|||
import org.apache.poi.ss.usermodel.Workbook; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
import org.springframework.web.multipart.MultipartFile; |
|||
import org.springframework.web.multipart.MultipartHttpServletRequest; |
|||
import org.springframework.web.servlet.ModelAndView; |
|||
|
|||
import javax.servlet.http.HttpServletRequest; |
|||
import javax.servlet.http.HttpServletResponse; |
|||
import java.io.IOException; |
|||
import java.io.InputStream; |
|||
import java.util.*; |
|||
import java.util.function.Function; |
|||
import java.util.stream.Collectors; |
|||
|
|||
import static cc.admin.modules.dust.utils.ExcelUtil.*; |
|||
import static cc.admin.poi.util.ExcelUtil.*; |
|||
|
|||
|
|||
/** |
|||
* @Description: 管道表 |
|||
* @Author: cc-admin |
|||
* @Date: 2024-12-06 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Slf4j |
|||
@Api(tags = "管道表") |
|||
@RestController |
|||
@RequestMapping("/pipe") |
|||
public class PipeController extends BaseController<Pipe, IPipeService> { |
|||
private static final List<HeaderCell> headerCellList = Arrays.asList( |
|||
new HeaderCell(0, 0, "序号"), |
|||
new HeaderCell(0, 1, "管道名称"), |
|||
new HeaderCell(0, 2, "设计风量"), |
|||
new HeaderCell(0, 3, "阀门开度(%)"), |
|||
new HeaderCell(0, 4, "备注") |
|||
); |
|||
@Autowired |
|||
private IPipeService pipeService; |
|||
|
|||
@AutoLog(value = "管道表-分页列表查询") |
|||
@ApiOperation(value = "管道表-分页列表查询", notes = "管道表-分页列表查询") |
|||
@GetMapping(value = "/list") |
|||
public Result<?> queryPageList( |
|||
@RequestParam(name = "key", required = false) String key, |
|||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, |
|||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, |
|||
HttpServletRequest req) { |
|||
QueryWrapper<Pipe> queryWrapper = new QueryWrapper<>(); |
|||
if (StrUtil.isNotEmpty(key)) { |
|||
|
|||
} |
|||
queryWrapper.orderByAsc("sort_order"); |
|||
Page<Pipe> page = new Page<>(pageNo, pageSize); |
|||
IPage<Pipe> pageList = pipeService.page(page, queryWrapper); |
|||
return Result.ok(pageList); |
|||
} |
|||
|
|||
/** |
|||
* 添加 |
|||
* |
|||
* @param pipe |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "管道表-添加") |
|||
@ApiOperation(value = "管道表-添加", notes = "管道表-添加") |
|||
@PostMapping(value = "/add") |
|||
public Result<?> add(@RequestBody Pipe pipe) { |
|||
pipeService.savePipe(pipe); |
|||
return Result.ok("添加成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 编辑 |
|||
* |
|||
* @param pipe |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "管道表-编辑") |
|||
@ApiOperation(value = "管道表-编辑", notes = "管道表-编辑") |
|||
@PutMapping(value = "/edit") |
|||
public Result<?> edit(@RequestBody Pipe pipe) { |
|||
pipeService.updatePipe(pipe); |
|||
return Result.ok("编辑成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 编辑 |
|||
* |
|||
* @param pipe |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "管道表-批量编辑") |
|||
@ApiOperation(value = "管道表-批量编辑", notes = "管道表-批量编辑") |
|||
@PostMapping(value = "/updateByList") |
|||
public Result<?> updateById(@RequestBody Pipe pipe) { |
|||
List<Pipe> list = pipe.getList(); |
|||
|
|||
for (Pipe pipe1 : list) { |
|||
Pipe byId = pipeService.getById(pipe1.getId()); |
|||
if (null != byId && null != byId.getDiameter()){ |
|||
pipe1.setDiameter(byId.getDiameter()); |
|||
} |
|||
} |
|||
pipeService.updateBatchById(list); |
|||
return Result.ok("编辑成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 批量编辑 |
|||
* |
|||
* @param ids |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "管道表-批量删除") |
|||
@ApiOperation(value = "管道表-批量删除", notes = "管道表-批量删除") |
|||
@DeleteMapping(value = "/deleteBatch") |
|||
public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { |
|||
this.pipeService.removeByIds(Arrays.asList(ids.split(","))); |
|||
return Result.ok("批量删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id删除 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "管道表-通过id删除") |
|||
@ApiOperation(value = "管道表-通过id删除", notes = "管道表-通过id删除") |
|||
@DeleteMapping(value = "/delete") |
|||
public Result<?> delete(@RequestParam(name = "id", required = true) String id) { |
|||
pipeService.remove(id); |
|||
return Result.ok("删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id查询 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "管道表-通过id查询") |
|||
@ApiOperation(value = "管道表-通过id查询", notes = "管道表-通过id查询") |
|||
@GetMapping(value = "/queryById") |
|||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) { |
|||
Pipe pipe = pipeService.getById(id); |
|||
return Result.ok(pipe); |
|||
} |
|||
|
|||
/** |
|||
* 导出excel |
|||
* |
|||
* @param request |
|||
* @param pipe |
|||
*/ |
|||
@RequestMapping(value = "/exportXls") |
|||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response, Pipe pipe) { |
|||
response.setHeader("Access-Control-Expose-Headers", "Content-Disposition"); |
|||
return super.exportXls(request, pipe, Pipe.class, "管道表"); |
|||
} |
|||
|
|||
/** |
|||
* 通过excel导入数据 |
|||
* |
|||
* @param request |
|||
* @param response |
|||
* @return |
|||
*/ |
|||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST) |
|||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response, |
|||
@RequestParam(name = "designPlanId", required = true) String designPlanId) { |
|||
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; |
|||
Map<String, MultipartFile> fileMap = multipartRequest.getFileMap(); |
|||
for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) { |
|||
MultipartFile file = entity.getValue();// 获取上传文件对象
|
|||
try { |
|||
List<String> errorList = new ArrayList<>(); // 保存错误提示信息
|
|||
List<DustConfigVo> configVoList = readXls(file.getInputStream(), errorList,designPlanId); |
|||
Map<String, Long> nameCounts = configVoList.stream() |
|||
.map(DustConfigVo::getPipeName) |
|||
.filter(pipeName -> pipeName != null && !pipeName.trim().isEmpty()) |
|||
.collect(Collectors.groupingBy(Function.identity(), Collectors.counting())); |
|||
boolean hasDuplicates = nameCounts.values().stream().anyMatch(count -> count > 1); |
|||
if (hasDuplicates) { |
|||
return Result.error("导入有重复名称,请检查"); |
|||
} |
|||
DustConfigVo dustConfigVo = configVoList.get(0); |
|||
if (!dustConfigVo.getSerialNumber().equals("0")){ |
|||
return Result.error("父级管道序号必须是0"); |
|||
} |
|||
return pipeService.importList(configVoList, errorList,designPlanId); |
|||
} catch (Exception e) { |
|||
log.error(e.getMessage(), e); |
|||
return Result.error("文件导入失败:" + e.getMessage()); |
|||
} finally { |
|||
try { |
|||
file.getInputStream().close(); |
|||
} catch (IOException e) { |
|||
log.error(e.getMessage(), e); |
|||
} |
|||
} |
|||
} |
|||
return Result.error("文件导入失败!"); |
|||
|
|||
} |
|||
|
|||
private List<DustConfigVo> readXls(InputStream inputStream, List<String> errorList,String designPlanId) throws Exception { |
|||
long start = System.currentTimeMillis(); |
|||
|
|||
Workbook book = getWorkbook(inputStream); |
|||
|
|||
String sheetName = book.getSheetName(0); |
|||
Sheet sheet = book.getSheetAt(0); |
|||
|
|||
// 检查表头格式
|
|||
checkTableHeader(sheet, sheetName, headerCellList); |
|||
// 处理导入对象
|
|||
List<DustConfigVo> recordList = new ArrayList<>(); |
|||
List<String> columnNameList = headerCellList.stream().map(HeaderCell::getTitle).collect(Collectors.toList()); |
|||
|
|||
for (int j = 1; j <= sheet.getLastRowNum(); j++) { |
|||
try { |
|||
log.debug("read row {}", j); |
|||
Row row = sheet.getRow(j); |
|||
int column = 0; |
|||
|
|||
String serialNumber = readCellAsString(row.getCell(column)); |
|||
if (StrUtil.isEmpty(serialNumber)) { |
|||
errorList.add(String.format("第 %d 行%s为空", j + 1, columnNameList.get(column))); |
|||
continue; |
|||
} |
|||
if (serialNumber.contains(".0")) { |
|||
serialNumber = serialNumber.substring(0, serialNumber.indexOf(".0")); |
|||
} |
|||
String pipeName = readCellAsString(row.getCell(++column)); |
|||
Double flow = readCellAsDouble(row.getCell(++column)); |
|||
String valveOpening = readCellAsString(row.getCell(++column)); |
|||
String remark = readCellAsString(row.getCell(++column)); |
|||
DustConfigVo dustConfigVo = new DustConfigVo(); |
|||
dustConfigVo.setId(UUID.randomUUID().toString()); |
|||
dustConfigVo.setDesignPlanId(designPlanId); |
|||
dustConfigVo.setSerialNumber(serialNumber); |
|||
dustConfigVo.setPipeName(pipeName); |
|||
dustConfigVo.setIsCompute(1); |
|||
dustConfigVo.setFlow(flow != null ? flow : 0); |
|||
dustConfigVo.setValveOpening(parseValveOpening(valveOpening)); |
|||
|
|||
dustConfigVo.setSortOrder(j); |
|||
dustConfigVo.setRemark(remark); |
|||
recordList.add(dustConfigVo); |
|||
} catch (Exception e) { |
|||
log.error(e.getMessage(), e); |
|||
e.printStackTrace(); |
|||
errorList.add(String.format("%s第 %d 行数据异常:%s", sheetName, j + 1, e.getMessage())); |
|||
} |
|||
} |
|||
log.info("读excel消耗时间" + (System.currentTimeMillis() - start) + "毫秒"); |
|||
|
|||
return recordList; |
|||
|
|||
} |
|||
private Double parseValveOpening(String valveOpeningStr) { |
|||
if (valveOpeningStr == null || valveOpeningStr.trim().isEmpty()) { |
|||
return 10.0; // 默认值
|
|||
} |
|||
valveOpeningStr = valveOpeningStr.trim(); |
|||
try { |
|||
if (valveOpeningStr.endsWith("%")) { |
|||
valveOpeningStr = valveOpeningStr.substring(0, valveOpeningStr.length() - 1); |
|||
} |
|||
double v = Double.parseDouble(valveOpeningStr); |
|||
if (v <= 1){ |
|||
v = v * 100; |
|||
} |
|||
return v; |
|||
} catch (NumberFormatException e) { |
|||
log.warn("无法解析阀门开度 '{}', 使用默认值 10.0", valveOpeningStr); |
|||
return 10.0; // 默认值
|
|||
} |
|||
} |
|||
} |
@ -1,156 +0,0 @@ |
|||
package cc.admin.modules.dust.controller; |
|||
|
|||
import cc.admin.common.api.vo.Result; |
|||
import cc.admin.common.aspect.annotation.AutoLog; |
|||
import cc.admin.common.sys.base.controller.BaseController; |
|||
import cc.admin.common.sys.query.QueryGenerator; |
|||
import cc.admin.modules.dust.entity.Pipe; |
|||
import cc.admin.modules.dust.entity.RecommendPlan; |
|||
import cc.admin.modules.dust.entity.RecommendPlanPipeConfig; |
|||
import cc.admin.modules.dust.service.IPipeService; |
|||
import cc.admin.modules.dust.service.IRecommendPlanService; |
|||
import cn.hutool.core.util.IdUtil; |
|||
import cn.hutool.core.util.StrUtil; |
|||
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.apache.commons.collections.CollectionUtils; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
import org.springframework.web.servlet.ModelAndView; |
|||
|
|||
import javax.servlet.http.HttpServletRequest; |
|||
import javax.servlet.http.HttpServletResponse; |
|||
import java.sql.Array; |
|||
import java.util.*; |
|||
import java.util.stream.Collectors; |
|||
|
|||
/** |
|||
* @Description: 推荐方案表 |
|||
* @Author: cc-admin |
|||
* @Date: 2024-12-06 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Slf4j |
|||
@Api(tags = "推荐方案表") |
|||
@RestController |
|||
@RequestMapping("/recommend/plan") |
|||
public class RecommendPlanController extends BaseController<RecommendPlan, IRecommendPlanService> { |
|||
@Autowired |
|||
private IRecommendPlanService recommendPlanService; |
|||
@Autowired |
|||
private IPipeService iPipeService; |
|||
|
|||
/** |
|||
* 添加 |
|||
* |
|||
* @param recommendPlan |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "推荐方案表-添加") |
|||
@ApiOperation(value = "推荐方案表-添加", notes = "推荐方案表-添加") |
|||
@PostMapping(value = "/add") |
|||
public Result<?> add(@RequestBody RecommendPlan recommendPlan) { |
|||
recommendPlanService.save(recommendPlan); |
|||
return Result.ok("添加成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 编辑 |
|||
* |
|||
* @param recommendPlan |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "推荐方案表-编辑") |
|||
@ApiOperation(value = "推荐方案表-编辑", notes = "推荐方案表-编辑") |
|||
@PutMapping(value = "/edit") |
|||
public Result<?> edit(@RequestBody RecommendPlan recommendPlan) { |
|||
recommendPlanService.updateById(recommendPlan); |
|||
return Result.ok("编辑成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "推荐方案表-批量删除") |
|||
@ApiOperation(value = "推荐方案表-批量删除", notes = "推荐方案表-批量删除") |
|||
@DeleteMapping(value = "/deleteByDesignPlanId") |
|||
public Result<?> deleteByDesignPlanId(@RequestParam(name = "designPlanId", required = true) String designPlanId) { |
|||
QueryWrapper<RecommendPlan> objectQueryWrapper = new QueryWrapper<>(); |
|||
objectQueryWrapper.eq("design_plan_id", designPlanId); |
|||
recommendPlanService.deleteByDesignPlanId(designPlanId); |
|||
return Result.ok("批量删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id删除 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "推荐方案表-通过id删除") |
|||
@ApiOperation(value = "推荐方案表-通过id删除", notes = "推荐方案表-通过id删除") |
|||
@DeleteMapping(value = "/delete") |
|||
public Result<?> delete(@RequestParam(name = "id", required = true) String id) { |
|||
recommendPlanService.removeById(id); |
|||
return Result.ok("删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @param ids |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "推荐方案表-批量删除") |
|||
@ApiOperation(value = "推荐方案表-批量删除", notes = "推荐方案表-批量删除") |
|||
@DeleteMapping(value = "/deleteBatch") |
|||
public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { |
|||
this.recommendPlanService.removeByIds(Arrays.asList(ids.split(","))); |
|||
return Result.ok("批量删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id查询 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "推荐方案表-通过id查询") |
|||
@ApiOperation(value = "推荐方案表-通过id查询", notes = "推荐方案表-通过id查询") |
|||
@GetMapping(value = "/queryById") |
|||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) { |
|||
RecommendPlan recommendPlan = recommendPlanService.getById(id); |
|||
return Result.ok(recommendPlan); |
|||
} |
|||
|
|||
/** |
|||
* 导出excel |
|||
* |
|||
* @param request |
|||
* @param recommendPlan |
|||
*/ |
|||
@RequestMapping(value = "/exportXls") |
|||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response, RecommendPlan recommendPlan) { |
|||
response.setHeader("Access-Control-Expose-Headers", "Content-Disposition"); |
|||
return super.exportXls(request, recommendPlan, RecommendPlan.class, "推荐方案表"); |
|||
} |
|||
|
|||
/** |
|||
* 通过excel导入数据 |
|||
* |
|||
* @param request |
|||
* @param response |
|||
* @return |
|||
*/ |
|||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST) |
|||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { |
|||
return super.importExcel(request, response, RecommendPlan.class); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,161 @@ |
|||
package cc.admin.modules.dust.controller; |
|||
|
|||
import cc.admin.common.api.vo.Result; |
|||
import cc.admin.common.aspect.annotation.AutoLog; |
|||
import cc.admin.common.sys.base.controller.BaseController; |
|||
import cc.admin.common.sys.query.QueryGenerator; |
|||
import cc.admin.modules.dust.entity.TbDustCompanyinfo; |
|||
import cc.admin.modules.dust.service.ITbDustCompanyinfoService; |
|||
import cn.hutool.core.util.IdUtil; |
|||
import cn.hutool.core.util.StrUtil; |
|||
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.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
import org.springframework.web.servlet.ModelAndView; |
|||
|
|||
import javax.servlet.http.HttpServletRequest; |
|||
import javax.servlet.http.HttpServletResponse; |
|||
import java.util.Arrays; |
|||
|
|||
/** |
|||
* @Description: 企业基础信息表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Slf4j |
|||
@Api(tags = "企业基础信息表") |
|||
@RestController |
|||
@RequestMapping("/tb/dustCompanyinfo") |
|||
public class TbDustCompanyinfoController extends BaseController<TbDustCompanyinfo, ITbDustCompanyinfoService> { |
|||
@Autowired |
|||
private ITbDustCompanyinfoService tbDustCompanyinfoService; |
|||
|
|||
/** |
|||
* 分页列表查询 |
|||
* |
|||
* @param key |
|||
* @param pageNo |
|||
* @param pageSize |
|||
* @param req |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "企业基础信息表-分页列表查询") |
|||
@ApiOperation(value = "企业基础信息表-分页列表查询", notes = "企业基础信息表-分页列表查询") |
|||
@GetMapping(value = "/list") |
|||
public Result<?> queryPageList( |
|||
@RequestParam(name = "key", required = false) String key, |
|||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, |
|||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, |
|||
HttpServletRequest req) { |
|||
QueryWrapper<TbDustCompanyinfo> queryWrapper = QueryGenerator.initQueryWrapper(new TbDustCompanyinfo(), req.getParameterMap()); |
|||
if (StrUtil.isNotEmpty(key)) { |
|||
|
|||
} |
|||
|
|||
Page<TbDustCompanyinfo> page = new Page<TbDustCompanyinfo>(pageNo, pageSize); |
|||
IPage<TbDustCompanyinfo> pageList = tbDustCompanyinfoService.page(page, queryWrapper); |
|||
return Result.ok(pageList); |
|||
} |
|||
|
|||
/** |
|||
* 添加 |
|||
* |
|||
* @param tbDustCompanyinfo |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "企业基础信息表-添加") |
|||
@ApiOperation(value = "企业基础信息表-添加", notes = "企业基础信息表-添加") |
|||
@PostMapping(value = "/add") |
|||
public Result<?> add(@RequestBody TbDustCompanyinfo tbDustCompanyinfo) { |
|||
tbDustCompanyinfoService.save(tbDustCompanyinfo); |
|||
return Result.ok("添加成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 编辑 |
|||
* |
|||
* @param tbDustCompanyinfo |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "企业基础信息表-编辑") |
|||
@ApiOperation(value = "企业基础信息表-编辑", notes = "企业基础信息表-编辑") |
|||
@PutMapping(value = "/edit") |
|||
public Result<?> edit(@RequestBody TbDustCompanyinfo tbDustCompanyinfo) { |
|||
tbDustCompanyinfoService.updateById(tbDustCompanyinfo); |
|||
return Result.ok("编辑成功!"); |
|||
} |
|||
|
|||
|
|||
/** |
|||
* 通过id删除 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "企业基础信息表-通过id删除") |
|||
@ApiOperation(value = "企业基础信息表-通过id删除", notes = "企业基础信息表-通过id删除") |
|||
@DeleteMapping(value = "/delete") |
|||
public Result<?> delete(@RequestParam(name = "id", required = true) String id) { |
|||
tbDustCompanyinfoService.removeById(id); |
|||
return Result.ok("删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @param ids |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "企业基础信息表-批量删除") |
|||
@ApiOperation(value = "企业基础信息表-批量删除", notes = "企业基础信息表-批量删除") |
|||
@DeleteMapping(value = "/deleteBatch") |
|||
public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { |
|||
this.tbDustCompanyinfoService.removeByIds(Arrays.asList(ids.split(","))); |
|||
return Result.ok("批量删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id查询 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "企业基础信息表-通过id查询") |
|||
@ApiOperation(value = "企业基础信息表-通过id查询", notes = "企业基础信息表-通过id查询") |
|||
@GetMapping(value = "/queryById") |
|||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) { |
|||
TbDustCompanyinfo tbDustCompanyinfo = tbDustCompanyinfoService.getById(id); |
|||
return Result.ok(tbDustCompanyinfo); |
|||
} |
|||
|
|||
/** |
|||
* 导出excel |
|||
* |
|||
* @param request |
|||
* @param tbDustCompanyinfo |
|||
*/ |
|||
@RequestMapping(value = "/exportXls") |
|||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response, TbDustCompanyinfo tbDustCompanyinfo) { |
|||
response.setHeader("Access-Control-Expose-Headers", "Content-Disposition"); |
|||
return super.exportXls(request, tbDustCompanyinfo, TbDustCompanyinfo.class, "企业基础信息表"); |
|||
} |
|||
|
|||
/** |
|||
* 通过excel导入数据 |
|||
* |
|||
* @param request |
|||
* @param response |
|||
* @return |
|||
*/ |
|||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST) |
|||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { |
|||
return super.importExcel(request, response, TbDustCompanyinfo.class); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,161 @@ |
|||
package cc.admin.modules.dust.controller; |
|||
|
|||
import cc.admin.common.api.vo.Result; |
|||
import cc.admin.common.aspect.annotation.AutoLog; |
|||
import cc.admin.common.sys.base.controller.BaseController; |
|||
import cc.admin.common.sys.query.QueryGenerator; |
|||
import cc.admin.modules.dust.entity.TbDustEquipinfo; |
|||
import cc.admin.modules.dust.service.ITbDustEquipinfoService; |
|||
import cn.hutool.core.util.IdUtil; |
|||
import cn.hutool.core.util.StrUtil; |
|||
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.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
import org.springframework.web.servlet.ModelAndView; |
|||
|
|||
import javax.servlet.http.HttpServletRequest; |
|||
import javax.servlet.http.HttpServletResponse; |
|||
import java.util.Arrays; |
|||
|
|||
/** |
|||
* @Description: 除尘系统信息表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Slf4j |
|||
@Api(tags = "除尘系统信息表") |
|||
@RestController |
|||
@RequestMapping("/tb/dustEquipinfo") |
|||
public class TbDustEquipinfoController extends BaseController<TbDustEquipinfo, ITbDustEquipinfoService> { |
|||
@Autowired |
|||
private ITbDustEquipinfoService tbDustEquipinfoService; |
|||
|
|||
/** |
|||
* 分页列表查询 |
|||
* |
|||
* @param key |
|||
* @param pageNo |
|||
* @param pageSize |
|||
* @param req |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "除尘系统信息表-分页列表查询") |
|||
@ApiOperation(value = "除尘系统信息表-分页列表查询", notes = "除尘系统信息表-分页列表查询") |
|||
@GetMapping(value = "/list") |
|||
public Result<?> queryPageList( |
|||
@RequestParam(name = "key", required = false) String key, |
|||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, |
|||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, |
|||
HttpServletRequest req) { |
|||
QueryWrapper<TbDustEquipinfo> queryWrapper = QueryGenerator.initQueryWrapper(new TbDustEquipinfo(), req.getParameterMap()); |
|||
if (StrUtil.isNotEmpty(key)) { |
|||
|
|||
} |
|||
|
|||
Page<TbDustEquipinfo> page = new Page<TbDustEquipinfo>(pageNo, pageSize); |
|||
IPage<TbDustEquipinfo> pageList = tbDustEquipinfoService.page(page, queryWrapper); |
|||
return Result.ok(pageList); |
|||
} |
|||
|
|||
/** |
|||
* 添加 |
|||
* |
|||
* @param tbDustEquipinfo |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "除尘系统信息表-添加") |
|||
@ApiOperation(value = "除尘系统信息表-添加", notes = "除尘系统信息表-添加") |
|||
@PostMapping(value = "/add") |
|||
public Result<?> add(@RequestBody TbDustEquipinfo tbDustEquipinfo) { |
|||
tbDustEquipinfoService.save(tbDustEquipinfo); |
|||
return Result.ok("添加成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 编辑 |
|||
* |
|||
* @param tbDustEquipinfo |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "除尘系统信息表-编辑") |
|||
@ApiOperation(value = "除尘系统信息表-编辑", notes = "除尘系统信息表-编辑") |
|||
@PutMapping(value = "/edit") |
|||
public Result<?> edit(@RequestBody TbDustEquipinfo tbDustEquipinfo) { |
|||
tbDustEquipinfoService.updateById(tbDustEquipinfo); |
|||
return Result.ok("编辑成功!"); |
|||
} |
|||
|
|||
|
|||
/** |
|||
* 通过id删除 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "除尘系统信息表-通过id删除") |
|||
@ApiOperation(value = "除尘系统信息表-通过id删除", notes = "除尘系统信息表-通过id删除") |
|||
@DeleteMapping(value = "/delete") |
|||
public Result<?> delete(@RequestParam(name = "id", required = true) String id) { |
|||
tbDustEquipinfoService.removeById(id); |
|||
return Result.ok("删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @param ids |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "除尘系统信息表-批量删除") |
|||
@ApiOperation(value = "除尘系统信息表-批量删除", notes = "除尘系统信息表-批量删除") |
|||
@DeleteMapping(value = "/deleteBatch") |
|||
public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { |
|||
this.tbDustEquipinfoService.removeByIds(Arrays.asList(ids.split(","))); |
|||
return Result.ok("批量删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id查询 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "除尘系统信息表-通过id查询") |
|||
@ApiOperation(value = "除尘系统信息表-通过id查询", notes = "除尘系统信息表-通过id查询") |
|||
@GetMapping(value = "/queryById") |
|||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) { |
|||
TbDustEquipinfo tbDustEquipinfo = tbDustEquipinfoService.getById(id); |
|||
return Result.ok(tbDustEquipinfo); |
|||
} |
|||
|
|||
/** |
|||
* 导出excel |
|||
* |
|||
* @param request |
|||
* @param tbDustEquipinfo |
|||
*/ |
|||
@RequestMapping(value = "/exportXls") |
|||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response, TbDustEquipinfo tbDustEquipinfo) { |
|||
response.setHeader("Access-Control-Expose-Headers", "Content-Disposition"); |
|||
return super.exportXls(request, tbDustEquipinfo, TbDustEquipinfo.class, "除尘系统信息表"); |
|||
} |
|||
|
|||
/** |
|||
* 通过excel导入数据 |
|||
* |
|||
* @param request |
|||
* @param response |
|||
* @return |
|||
*/ |
|||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST) |
|||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { |
|||
return super.importExcel(request, response, TbDustEquipinfo.class); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,163 @@ |
|||
package cc.admin.modules.dust.controller; |
|||
|
|||
import cc.admin.common.api.vo.Result; |
|||
import cc.admin.common.aspect.annotation.AutoLog; |
|||
import cc.admin.common.sys.base.controller.BaseController; |
|||
import cc.admin.common.sys.query.QueryGenerator; |
|||
import cc.admin.modules.dust.entity.TbDustTargetinfo; |
|||
import cc.admin.modules.dust.service.ITbDustTargetinfoService; |
|||
import cn.hutool.core.util.IdUtil; |
|||
import cn.hutool.core.util.StrUtil; |
|||
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.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
import org.springframework.web.servlet.ModelAndView; |
|||
|
|||
import javax.servlet.http.HttpServletRequest; |
|||
import javax.servlet.http.HttpServletResponse; |
|||
import java.util.Arrays; |
|||
|
|||
/** |
|||
* @Description: 除尘系统监测指标信息表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Slf4j |
|||
@Api(tags = "除尘系统监测指标信息表") |
|||
@RestController |
|||
@RequestMapping("/tb/dustTargetinfo") |
|||
public class TbDustTargetinfoController extends BaseController<TbDustTargetinfo, ITbDustTargetinfoService> { |
|||
@Autowired |
|||
private ITbDustTargetinfoService tbDustTargetinfoService; |
|||
|
|||
/** |
|||
* 分页列表查询 |
|||
* |
|||
* @param key |
|||
* @param pageNo |
|||
* @param pageSize |
|||
* @param req |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "除尘系统监测指标信息表-分页列表查询") |
|||
@ApiOperation(value = "除尘系统监测指标信息表-分页列表查询", notes = "除尘系统监测指标信息表-分页列表查询") |
|||
@GetMapping(value = "/list") |
|||
public Result<?> queryPageList( |
|||
@RequestParam(name = "key", required = false) String key, |
|||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, |
|||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, |
|||
HttpServletRequest req) { |
|||
QueryWrapper<TbDustTargetinfo> queryWrapper = QueryGenerator.initQueryWrapper(new TbDustTargetinfo(), req.getParameterMap()); |
|||
if (StrUtil.isNotEmpty(key)) { |
|||
|
|||
} |
|||
|
|||
Page<TbDustTargetinfo> page = new Page<TbDustTargetinfo>(pageNo, pageSize); |
|||
IPage<TbDustTargetinfo> pageList = tbDustTargetinfoService.page(page, queryWrapper); |
|||
return Result.ok(pageList); |
|||
} |
|||
|
|||
/** |
|||
* 添加 |
|||
* |
|||
* @param tbDustTargetinfo |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "除尘系统监测指标信息表-添加") |
|||
@ApiOperation(value = "除尘系统监测指标信息表-添加", notes = "除尘系统监测指标信息表-添加") |
|||
@PostMapping(value = "/add") |
|||
public Result<?> add(@RequestBody TbDustTargetinfo tbDustTargetinfo) { |
|||
tbDustTargetinfoService.save(tbDustTargetinfo); |
|||
return Result.ok("添加成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 编辑 |
|||
* |
|||
* @param tbDustTargetinfo |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "除尘系统监测指标信息表-编辑") |
|||
@ApiOperation(value = "除尘系统监测指标信息表-编辑", notes = "除尘系统监测指标信息表-编辑") |
|||
@PutMapping(value = "/edit") |
|||
public Result<?> edit(@RequestBody TbDustTargetinfo tbDustTargetinfo) { |
|||
tbDustTargetinfoService.updateById(tbDustTargetinfo); |
|||
return Result.ok("编辑成功!"); |
|||
} |
|||
|
|||
|
|||
|
|||
|
|||
/** |
|||
* 通过id删除 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "除尘系统监测指标信息表-通过id删除") |
|||
@ApiOperation(value = "除尘系统监测指标信息表-通过id删除", notes = "除尘系统监测指标信息表-通过id删除") |
|||
@DeleteMapping(value = "/delete") |
|||
public Result<?> delete(@RequestParam(name = "id", required = true) String id) { |
|||
tbDustTargetinfoService.removeById(id); |
|||
return Result.ok("删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @param ids |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "除尘系统监测指标信息表-批量删除") |
|||
@ApiOperation(value = "除尘系统监测指标信息表-批量删除", notes = "除尘系统监测指标信息表-批量删除") |
|||
@DeleteMapping(value = "/deleteBatch") |
|||
public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { |
|||
this.tbDustTargetinfoService.removeByIds(Arrays.asList(ids.split(","))); |
|||
return Result.ok("批量删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id查询 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "除尘系统监测指标信息表-通过id查询") |
|||
@ApiOperation(value = "除尘系统监测指标信息表-通过id查询", notes = "除尘系统监测指标信息表-通过id查询") |
|||
@GetMapping(value = "/queryById") |
|||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) { |
|||
TbDustTargetinfo tbDustTargetinfo = tbDustTargetinfoService.getById(id); |
|||
return Result.ok(tbDustTargetinfo); |
|||
} |
|||
|
|||
/** |
|||
* 导出excel |
|||
* |
|||
* @param request |
|||
* @param tbDustTargetinfo |
|||
*/ |
|||
@RequestMapping(value = "/exportXls") |
|||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response, TbDustTargetinfo tbDustTargetinfo) { |
|||
response.setHeader("Access-Control-Expose-Headers", "Content-Disposition"); |
|||
return super.exportXls(request, tbDustTargetinfo, TbDustTargetinfo.class, "除尘系统监测指标信息表"); |
|||
} |
|||
|
|||
/** |
|||
* 通过excel导入数据 |
|||
* |
|||
* @param request |
|||
* @param response |
|||
* @return |
|||
*/ |
|||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST) |
|||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { |
|||
return super.importExcel(request, response, TbDustTargetinfo.class); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,161 @@ |
|||
package cc.admin.modules.dust.controller; |
|||
|
|||
import cc.admin.common.api.vo.Result; |
|||
import cc.admin.common.aspect.annotation.AutoLog; |
|||
import cc.admin.common.sys.base.controller.BaseController; |
|||
import cc.admin.common.sys.query.QueryGenerator; |
|||
import cc.admin.modules.dust.entity.TbDustVideoinfo; |
|||
import cc.admin.modules.dust.service.ITbDustVideoinfoService; |
|||
import cn.hutool.core.util.IdUtil; |
|||
import cn.hutool.core.util.StrUtil; |
|||
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.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
import org.springframework.web.servlet.ModelAndView; |
|||
|
|||
import javax.servlet.http.HttpServletRequest; |
|||
import javax.servlet.http.HttpServletResponse; |
|||
import java.util.Arrays; |
|||
|
|||
/** |
|||
* @Description: 视频设备信息中间数据表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Slf4j |
|||
@Api(tags = "视频设备信息中间数据表") |
|||
@RestController |
|||
@RequestMapping("/tb/dustVideoinfo") |
|||
public class TbDustVideoinfoController extends BaseController<TbDustVideoinfo, ITbDustVideoinfoService> { |
|||
@Autowired |
|||
private ITbDustVideoinfoService tbDustVideoinfoService; |
|||
|
|||
/** |
|||
* 分页列表查询 |
|||
* |
|||
* @param key |
|||
* @param pageNo |
|||
* @param pageSize |
|||
* @param req |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "视频设备信息中间数据表-分页列表查询") |
|||
@ApiOperation(value = "视频设备信息中间数据表-分页列表查询", notes = "视频设备信息中间数据表-分页列表查询") |
|||
@GetMapping(value = "/list") |
|||
public Result<?> queryPageList( |
|||
@RequestParam(name = "key", required = false) String key, |
|||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, |
|||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, |
|||
HttpServletRequest req) { |
|||
QueryWrapper<TbDustVideoinfo> queryWrapper = QueryGenerator.initQueryWrapper(new TbDustVideoinfo(), req.getParameterMap()); |
|||
if (StrUtil.isNotEmpty(key)) { |
|||
|
|||
} |
|||
|
|||
Page<TbDustVideoinfo> page = new Page<TbDustVideoinfo>(pageNo, pageSize); |
|||
IPage<TbDustVideoinfo> pageList = tbDustVideoinfoService.page(page, queryWrapper); |
|||
return Result.ok(pageList); |
|||
} |
|||
|
|||
/** |
|||
* 添加 |
|||
* |
|||
* @param tbDustVideoinfo |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "视频设备信息中间数据表-添加") |
|||
@ApiOperation(value = "视频设备信息中间数据表-添加", notes = "视频设备信息中间数据表-添加") |
|||
@PostMapping(value = "/add") |
|||
public Result<?> add(@RequestBody TbDustVideoinfo tbDustVideoinfo) { |
|||
tbDustVideoinfoService.save(tbDustVideoinfo); |
|||
return Result.ok("添加成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 编辑 |
|||
* |
|||
* @param tbDustVideoinfo |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "视频设备信息中间数据表-编辑") |
|||
@ApiOperation(value = "视频设备信息中间数据表-编辑", notes = "视频设备信息中间数据表-编辑") |
|||
@PutMapping(value = "/edit") |
|||
public Result<?> edit(@RequestBody TbDustVideoinfo tbDustVideoinfo) { |
|||
tbDustVideoinfoService.updateById(tbDustVideoinfo); |
|||
return Result.ok("编辑成功!"); |
|||
} |
|||
|
|||
|
|||
/** |
|||
* 通过id删除 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "视频设备信息中间数据表-通过id删除") |
|||
@ApiOperation(value = "视频设备信息中间数据表-通过id删除", notes = "视频设备信息中间数据表-通过id删除") |
|||
@DeleteMapping(value = "/delete") |
|||
public Result<?> delete(@RequestParam(name = "id", required = true) String id) { |
|||
tbDustVideoinfoService.removeById(id); |
|||
return Result.ok("删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @param ids |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "视频设备信息中间数据表-批量删除") |
|||
@ApiOperation(value = "视频设备信息中间数据表-批量删除", notes = "视频设备信息中间数据表-批量删除") |
|||
@DeleteMapping(value = "/deleteBatch") |
|||
public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { |
|||
this.tbDustVideoinfoService.removeByIds(Arrays.asList(ids.split(","))); |
|||
return Result.ok("批量删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id查询 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "视频设备信息中间数据表-通过id查询") |
|||
@ApiOperation(value = "视频设备信息中间数据表-通过id查询", notes = "视频设备信息中间数据表-通过id查询") |
|||
@GetMapping(value = "/queryById") |
|||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) { |
|||
TbDustVideoinfo tbDustVideoinfo = tbDustVideoinfoService.getById(id); |
|||
return Result.ok(tbDustVideoinfo); |
|||
} |
|||
|
|||
/** |
|||
* 导出excel |
|||
* |
|||
* @param request |
|||
* @param tbDustVideoinfo |
|||
*/ |
|||
@RequestMapping(value = "/exportXls") |
|||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response, TbDustVideoinfo tbDustVideoinfo) { |
|||
response.setHeader("Access-Control-Expose-Headers", "Content-Disposition"); |
|||
return super.exportXls(request, tbDustVideoinfo, TbDustVideoinfo.class, "视频设备信息中间数据表"); |
|||
} |
|||
|
|||
/** |
|||
* 通过excel导入数据 |
|||
* |
|||
* @param request |
|||
* @param response |
|||
* @return |
|||
*/ |
|||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST) |
|||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { |
|||
return super.importExcel(request, response, TbDustVideoinfo.class); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,161 @@ |
|||
package cc.admin.modules.dust.controller; |
|||
|
|||
import cc.admin.common.api.vo.Result; |
|||
import cc.admin.common.aspect.annotation.AutoLog; |
|||
import cc.admin.common.sys.base.controller.BaseController; |
|||
import cc.admin.common.sys.query.QueryGenerator; |
|||
import cc.admin.modules.dust.entity.TbDustWarning; |
|||
import cc.admin.modules.dust.service.ITbDustWarningService; |
|||
import cn.hutool.core.util.IdUtil; |
|||
import cn.hutool.core.util.StrUtil; |
|||
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.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
import org.springframework.web.servlet.ModelAndView; |
|||
|
|||
import javax.servlet.http.HttpServletRequest; |
|||
import javax.servlet.http.HttpServletResponse; |
|||
import java.util.Arrays; |
|||
|
|||
/** |
|||
* @Description: 预警信息推送记录表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Slf4j |
|||
@Api(tags = "预警信息推送记录表") |
|||
@RestController |
|||
@RequestMapping("/tb/dustWarning") |
|||
public class TbDustWarningController extends BaseController<TbDustWarning, ITbDustWarningService> { |
|||
@Autowired |
|||
private ITbDustWarningService tbDustWarningService; |
|||
|
|||
/** |
|||
* 分页列表查询 |
|||
* |
|||
* @param key |
|||
* @param pageNo |
|||
* @param pageSize |
|||
* @param req |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "预警信息推送记录表-分页列表查询") |
|||
@ApiOperation(value = "预警信息推送记录表-分页列表查询", notes = "预警信息推送记录表-分页列表查询") |
|||
@GetMapping(value = "/list") |
|||
public Result<?> queryPageList( |
|||
@RequestParam(name = "key", required = false) String key, |
|||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, |
|||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, |
|||
HttpServletRequest req) { |
|||
QueryWrapper<TbDustWarning> queryWrapper = QueryGenerator.initQueryWrapper(new TbDustWarning(), req.getParameterMap()); |
|||
if (StrUtil.isNotEmpty(key)) { |
|||
|
|||
} |
|||
|
|||
Page<TbDustWarning> page = new Page<TbDustWarning>(pageNo, pageSize); |
|||
IPage<TbDustWarning> pageList = tbDustWarningService.page(page, queryWrapper); |
|||
return Result.ok(pageList); |
|||
} |
|||
|
|||
/** |
|||
* 添加 |
|||
* |
|||
* @param tbDustWarning |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "预警信息推送记录表-添加") |
|||
@ApiOperation(value = "预警信息推送记录表-添加", notes = "预警信息推送记录表-添加") |
|||
@PostMapping(value = "/add") |
|||
public Result<?> add(@RequestBody TbDustWarning tbDustWarning) { |
|||
tbDustWarningService.save(tbDustWarning); |
|||
return Result.ok("添加成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 编辑 |
|||
* |
|||
* @param tbDustWarning |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "预警信息推送记录表-编辑") |
|||
@ApiOperation(value = "预警信息推送记录表-编辑", notes = "预警信息推送记录表-编辑") |
|||
@PutMapping(value = "/edit") |
|||
public Result<?> edit(@RequestBody TbDustWarning tbDustWarning) { |
|||
tbDustWarningService.updateById(tbDustWarning); |
|||
return Result.ok("编辑成功!"); |
|||
} |
|||
|
|||
|
|||
/** |
|||
* 通过id删除 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "预警信息推送记录表-通过id删除") |
|||
@ApiOperation(value = "预警信息推送记录表-通过id删除", notes = "预警信息推送记录表-通过id删除") |
|||
@DeleteMapping(value = "/delete") |
|||
public Result<?> delete(@RequestParam(name = "id", required = true) String id) { |
|||
tbDustWarningService.removeById(id); |
|||
return Result.ok("删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @param ids |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "预警信息推送记录表-批量删除") |
|||
@ApiOperation(value = "预警信息推送记录表-批量删除", notes = "预警信息推送记录表-批量删除") |
|||
@DeleteMapping(value = "/deleteBatch") |
|||
public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { |
|||
this.tbDustWarningService.removeByIds(Arrays.asList(ids.split(","))); |
|||
return Result.ok("批量删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id查询 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "预警信息推送记录表-通过id查询") |
|||
@ApiOperation(value = "预警信息推送记录表-通过id查询", notes = "预警信息推送记录表-通过id查询") |
|||
@GetMapping(value = "/queryById") |
|||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) { |
|||
TbDustWarning tbDustWarning = tbDustWarningService.getById(id); |
|||
return Result.ok(tbDustWarning); |
|||
} |
|||
|
|||
/** |
|||
* 导出excel |
|||
* |
|||
* @param request |
|||
* @param tbDustWarning |
|||
*/ |
|||
@RequestMapping(value = "/exportXls") |
|||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response, TbDustWarning tbDustWarning) { |
|||
response.setHeader("Access-Control-Expose-Headers", "Content-Disposition"); |
|||
return super.exportXls(request, tbDustWarning, TbDustWarning.class, "预警信息推送记录表"); |
|||
} |
|||
|
|||
/** |
|||
* 通过excel导入数据 |
|||
* |
|||
* @param request |
|||
* @param response |
|||
* @return |
|||
*/ |
|||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST) |
|||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { |
|||
return super.importExcel(request, response, TbDustWarning.class); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,161 @@ |
|||
package cc.admin.modules.dust.controller; |
|||
|
|||
import cc.admin.common.api.vo.Result; |
|||
import cc.admin.common.aspect.annotation.AutoLog; |
|||
import cc.admin.common.sys.base.controller.BaseController; |
|||
import cc.admin.common.sys.query.QueryGenerator; |
|||
import cc.admin.modules.dust.entity.TbDustWarningFeedback; |
|||
import cc.admin.modules.dust.service.ITbDustWarningFeedbackService; |
|||
import cn.hutool.core.util.IdUtil; |
|||
import cn.hutool.core.util.StrUtil; |
|||
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.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
import org.springframework.web.servlet.ModelAndView; |
|||
|
|||
import javax.servlet.http.HttpServletRequest; |
|||
import javax.servlet.http.HttpServletResponse; |
|||
import java.util.Arrays; |
|||
|
|||
/** |
|||
* @Description: 预警消息处置反馈表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Slf4j |
|||
@Api(tags = "预警消息处置反馈表") |
|||
@RestController |
|||
@RequestMapping("/tb/dustWarningFeedback") |
|||
public class TbDustWarningFeedbackController extends BaseController<TbDustWarningFeedback, ITbDustWarningFeedbackService> { |
|||
@Autowired |
|||
private ITbDustWarningFeedbackService tbDustWarningFeedbackService; |
|||
|
|||
/** |
|||
* 分页列表查询 |
|||
* |
|||
* @param key |
|||
* @param pageNo |
|||
* @param pageSize |
|||
* @param req |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "预警消息处置反馈表-分页列表查询") |
|||
@ApiOperation(value = "预警消息处置反馈表-分页列表查询", notes = "预警消息处置反馈表-分页列表查询") |
|||
@GetMapping(value = "/list") |
|||
public Result<?> queryPageList( |
|||
@RequestParam(name = "key", required = false) String key, |
|||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, |
|||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, |
|||
HttpServletRequest req) { |
|||
QueryWrapper<TbDustWarningFeedback> queryWrapper = QueryGenerator.initQueryWrapper(new TbDustWarningFeedback(), req.getParameterMap()); |
|||
if (StrUtil.isNotEmpty(key)) { |
|||
|
|||
} |
|||
|
|||
Page<TbDustWarningFeedback> page = new Page<TbDustWarningFeedback>(pageNo, pageSize); |
|||
IPage<TbDustWarningFeedback> pageList = tbDustWarningFeedbackService.page(page, queryWrapper); |
|||
return Result.ok(pageList); |
|||
} |
|||
|
|||
/** |
|||
* 添加 |
|||
* |
|||
* @param tbDustWarningFeedback |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "预警消息处置反馈表-添加") |
|||
@ApiOperation(value = "预警消息处置反馈表-添加", notes = "预警消息处置反馈表-添加") |
|||
@PostMapping(value = "/add") |
|||
public Result<?> add(@RequestBody TbDustWarningFeedback tbDustWarningFeedback) { |
|||
tbDustWarningFeedbackService.save(tbDustWarningFeedback); |
|||
return Result.ok("添加成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 编辑 |
|||
* |
|||
* @param tbDustWarningFeedback |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "预警消息处置反馈表-编辑") |
|||
@ApiOperation(value = "预警消息处置反馈表-编辑", notes = "预警消息处置反馈表-编辑") |
|||
@PutMapping(value = "/edit") |
|||
public Result<?> edit(@RequestBody TbDustWarningFeedback tbDustWarningFeedback) { |
|||
tbDustWarningFeedbackService.updateById(tbDustWarningFeedback); |
|||
return Result.ok("编辑成功!"); |
|||
} |
|||
|
|||
|
|||
/** |
|||
* 通过id删除 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "预警消息处置反馈表-通过id删除") |
|||
@ApiOperation(value = "预警消息处置反馈表-通过id删除", notes = "预警消息处置反馈表-通过id删除") |
|||
@DeleteMapping(value = "/delete") |
|||
public Result<?> delete(@RequestParam(name = "id", required = true) String id) { |
|||
tbDustWarningFeedbackService.removeById(id); |
|||
return Result.ok("删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @param ids |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "预警消息处置反馈表-批量删除") |
|||
@ApiOperation(value = "预警消息处置反馈表-批量删除", notes = "预警消息处置反馈表-批量删除") |
|||
@DeleteMapping(value = "/deleteBatch") |
|||
public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { |
|||
this.tbDustWarningFeedbackService.removeByIds(Arrays.asList(ids.split(","))); |
|||
return Result.ok("批量删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id查询 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "预警消息处置反馈表-通过id查询") |
|||
@ApiOperation(value = "预警消息处置反馈表-通过id查询", notes = "预警消息处置反馈表-通过id查询") |
|||
@GetMapping(value = "/queryById") |
|||
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) { |
|||
TbDustWarningFeedback tbDustWarningFeedback = tbDustWarningFeedbackService.getById(id); |
|||
return Result.ok(tbDustWarningFeedback); |
|||
} |
|||
|
|||
/** |
|||
* 导出excel |
|||
* |
|||
* @param request |
|||
* @param tbDustWarningFeedback |
|||
*/ |
|||
@RequestMapping(value = "/exportXls") |
|||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response, TbDustWarningFeedback tbDustWarningFeedback) { |
|||
response.setHeader("Access-Control-Expose-Headers", "Content-Disposition"); |
|||
return super.exportXls(request, tbDustWarningFeedback, TbDustWarningFeedback.class, "预警消息处置反馈表"); |
|||
} |
|||
|
|||
/** |
|||
* 通过excel导入数据 |
|||
* |
|||
* @param request |
|||
* @param response |
|||
* @return |
|||
*/ |
|||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST) |
|||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { |
|||
return super.importExcel(request, response, TbDustWarningFeedback.class); |
|||
} |
|||
|
|||
} |
@ -1,162 +0,0 @@ |
|||
package cc.admin.modules.dust.controller; |
|||
|
|||
import cc.admin.common.api.vo.Result; |
|||
import cc.admin.common.aspect.annotation.AutoLog; |
|||
import cc.admin.common.sys.base.controller.BaseController; |
|||
import cc.admin.common.sys.query.QueryGenerator; |
|||
import cc.admin.modules.dust.entity.WindSpeedColor; |
|||
import cc.admin.modules.dust.service.IWindSpeedColorService; |
|||
import cn.hutool.core.util.IdUtil; |
|||
import cn.hutool.core.util.StrUtil; |
|||
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.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
import org.springframework.web.servlet.ModelAndView; |
|||
|
|||
import javax.servlet.http.HttpServletRequest; |
|||
import javax.servlet.http.HttpServletResponse; |
|||
import java.util.Arrays; |
|||
|
|||
/** |
|||
* @Description: 风速颜色表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-01-09 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Slf4j |
|||
@Api(tags="风速颜色表") |
|||
@RestController |
|||
@RequestMapping("/wind/speedColor") |
|||
public class WindSpeedColorController extends BaseController<WindSpeedColor, IWindSpeedColorService> { |
|||
@Autowired |
|||
private IWindSpeedColorService windSpeedColorService; |
|||
|
|||
/** |
|||
* 分页列表查询 |
|||
* |
|||
* @param key |
|||
* @param pageNo |
|||
* @param pageSize |
|||
* @param req |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "风速颜色表-分页列表查询") |
|||
@ApiOperation(value="风速颜色表-分页列表查询", notes="风速颜色表-分页列表查询") |
|||
@GetMapping(value = "/list") |
|||
public Result<?> queryPageList( |
|||
@RequestParam(name="key",required = false) String key, |
|||
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo, |
|||
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize, |
|||
HttpServletRequest req) { |
|||
QueryWrapper<WindSpeedColor> queryWrapper = QueryGenerator.initQueryWrapper(new WindSpeedColor(), req.getParameterMap()); |
|||
if (StrUtil.isNotEmpty(key)) { |
|||
|
|||
} |
|||
|
|||
Page<WindSpeedColor> page = new Page<WindSpeedColor>(pageNo, pageSize); |
|||
IPage<WindSpeedColor> pageList = windSpeedColorService.page(page, queryWrapper); |
|||
return Result.ok(pageList); |
|||
} |
|||
|
|||
/** |
|||
* 添加 |
|||
* |
|||
* @param windSpeedColor |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "风速颜色表-添加") |
|||
@ApiOperation(value="风速颜色表-添加", notes="风速颜色表-添加") |
|||
@PostMapping(value = "/add") |
|||
public Result<?> add(@RequestBody WindSpeedColor windSpeedColor) { |
|||
windSpeedColorService.save(windSpeedColor); |
|||
return Result.ok("添加成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 编辑 |
|||
* |
|||
* @param windSpeedColor |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "风速颜色表-编辑") |
|||
@ApiOperation(value="风速颜色表-编辑", notes="风速颜色表-编辑") |
|||
@PutMapping(value = "/edit") |
|||
public Result<?> edit(@RequestBody WindSpeedColor windSpeedColor) { |
|||
windSpeedColorService.updateById(windSpeedColor); |
|||
return Result.ok("编辑成功!"); |
|||
} |
|||
|
|||
|
|||
|
|||
/** |
|||
* 通过id删除 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "风速颜色表-通过id删除") |
|||
@ApiOperation(value="风速颜色表-通过id删除", notes="风速颜色表-通过id删除") |
|||
@DeleteMapping(value = "/delete") |
|||
public Result<?> delete(@RequestParam(name="id",required=true) String id) { |
|||
windSpeedColorService.removeById(id); |
|||
return Result.ok("删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @param ids |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "风速颜色表-批量删除") |
|||
@ApiOperation(value="风速颜色表-批量删除", notes="风速颜色表-批量删除") |
|||
@DeleteMapping(value = "/deleteBatch") |
|||
public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) { |
|||
this.windSpeedColorService.removeByIds(Arrays.asList(ids.split(","))); |
|||
return Result.ok("批量删除成功!"); |
|||
} |
|||
|
|||
/** |
|||
* 通过id查询 |
|||
* |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@AutoLog(value = "风速颜色表-通过id查询") |
|||
@ApiOperation(value="风速颜色表-通过id查询", notes="风速颜色表-通过id查询") |
|||
@GetMapping(value = "/queryById") |
|||
public Result<?> queryById(@RequestParam(name="id",required=true) String id) { |
|||
WindSpeedColor windSpeedColor = windSpeedColorService.getById(id); |
|||
return Result.ok(windSpeedColor); |
|||
} |
|||
|
|||
/** |
|||
* 导出excel |
|||
* |
|||
* @param request |
|||
* @param windSpeedColor |
|||
*/ |
|||
@RequestMapping(value = "/exportXls") |
|||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response, WindSpeedColor windSpeedColor) { |
|||
response.setHeader("Access-Control-Expose-Headers", "Content-Disposition"); |
|||
return super.exportXls(request, windSpeedColor, WindSpeedColor.class, "风速颜色表"); |
|||
} |
|||
|
|||
/** |
|||
* 通过excel导入数据 |
|||
* |
|||
* @param request |
|||
* @param response |
|||
* @return |
|||
*/ |
|||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST) |
|||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { |
|||
return super.importExcel(request, response, WindSpeedColor.class); |
|||
} |
|||
|
|||
} |
@ -1,84 +0,0 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
import java.util.List; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 设计方案表 |
|||
* @Author: cc-admin |
|||
* @Date: 2024-12-06 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("design_plan") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value="design_plan对象", description="设计方案表") |
|||
public class DesignPlan { |
|||
|
|||
/**主键ID*/ |
|||
@Excel(name = "主键ID", width = 15) |
|||
@ApiModelProperty(value = "主键ID") |
|||
private String id; |
|||
/**主键ID*/ |
|||
@Excel(name = "管道配置id", width = 15) |
|||
@ApiModelProperty(value = "管道配置id") |
|||
private String pipeDiameterId; |
|||
@Excel(name = "方案名称", width = 15) |
|||
@ApiModelProperty(value = "方案名称") |
|||
private String name; |
|||
/**总管风量*/ |
|||
@Excel(name = "总管风量", width = 15) |
|||
@ApiModelProperty(value = "总管风量") |
|||
private String totalFlow; |
|||
/**排序*/ |
|||
@Excel(name = "排序", width = 15) |
|||
@ApiModelProperty(value = "排序") |
|||
private Integer sortOrder; |
|||
/**备注*/ |
|||
@Excel(name = "备注", width = 15) |
|||
@ApiModelProperty(value = "备注") |
|||
private String remark; |
|||
|
|||
/**删除状态(0-正常,1-已删除)*/ |
|||
@Excel(name = "方案标识位", width = 15) |
|||
@ApiModelProperty(value = "方案标识位") |
|||
private Integer planFlag; |
|||
|
|||
/**删除状态(0-正常,1-已删除)*/ |
|||
@Excel(name = "删除状态(0-正常,1-已删除)", width = 15) |
|||
@ApiModelProperty(value = "删除状态(0-正常,1-已删除)") |
|||
@TableLogic |
|||
private Integer delFlag; |
|||
/**创建人*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String createBy; |
|||
/**创建时间*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/**更新人*/ |
|||
@Excel(name = "更新人", width = 15) |
|||
@ApiModelProperty(value = "更新人") |
|||
private String updateBy; |
|||
/**更新时间*/ |
|||
@Excel(name = "更新时间", width = 15) |
|||
@ApiModelProperty(value = "更新时间") |
|||
private Date updateTime; |
|||
|
|||
@TableField(exist = false) |
|||
private List<String> pipeIdList; |
|||
} |
@ -1,75 +0,0 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 警报记录表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("dust_alarm") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value="dust_alarm对象", description="警报记录表") |
|||
public class DustAlarm { |
|||
|
|||
/**主键ID*/ |
|||
@Excel(name = "主键ID", width = 15) |
|||
@ApiModelProperty(value = "主键ID") |
|||
private String id; |
|||
/**所属系统*/ |
|||
@Excel(name = "所属系统", width = 15) |
|||
@ApiModelProperty(value = "所属系统") |
|||
private String systemId; |
|||
/**警报时间*/ |
|||
@Excel(name = "警报时间", width = 15) |
|||
@ApiModelProperty(value = "警报时间") |
|||
private Date startTime; |
|||
/**警报结束时间*/ |
|||
@Excel(name = "警报结束时间", width = 15) |
|||
@ApiModelProperty(value = "警报结束时间") |
|||
private Date endTime; |
|||
/**警报内容*/ |
|||
@Excel(name = "警报内容", width = 15) |
|||
@ApiModelProperty(value = "警报内容") |
|||
private String alarmContent; |
|||
/**备注*/ |
|||
@Excel(name = "备注", width = 15) |
|||
@ApiModelProperty(value = "备注") |
|||
private String remark; |
|||
/**删除标志*/ |
|||
@Excel(name = "删除标志", width = 15) |
|||
@ApiModelProperty(value = "删除标志") |
|||
@TableLogic |
|||
private Integer delFlag; |
|||
/**创建时间*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/**创建人*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String createBy; |
|||
/**更新时间*/ |
|||
@Excel(name = "更新时间", width = 15) |
|||
@ApiModelProperty(value = "更新时间") |
|||
private Date updateTime; |
|||
/**更新人*/ |
|||
@Excel(name = "更新人", width = 15) |
|||
@ApiModelProperty(value = "更新人") |
|||
private String updateBy; |
|||
} |
@ -1,76 +0,0 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 数据点位表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("dust_data_tag") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value="dust_data_tag对象", description="数据点位表") |
|||
public class DustDataTag { |
|||
|
|||
/**主键ID*/ |
|||
@Excel(name = "主键ID", width = 15) |
|||
@ApiModelProperty(value = "主键ID") |
|||
private String id; |
|||
/**名称*/ |
|||
@Excel(name = "除尘系统id", width = 15) |
|||
@ApiModelProperty(value = "除尘系统id") |
|||
private String systemId; |
|||
|
|||
/**名称*/ |
|||
@Excel(name = "名称", width = 15) |
|||
@ApiModelProperty(value = "名称") |
|||
private String name; |
|||
/**数据点位*/ |
|||
@Excel(name = "数据点位", width = 15) |
|||
@ApiModelProperty(value = "数据点位") |
|||
private String dataTag; |
|||
/**排序*/ |
|||
@Excel(name = "排序", width = 15) |
|||
@ApiModelProperty(value = "排序") |
|||
private Integer sortOrder; |
|||
/**备注*/ |
|||
@Excel(name = "备注", width = 15) |
|||
@ApiModelProperty(value = "备注") |
|||
private String remark; |
|||
/**删除标志*/ |
|||
@Excel(name = "删除标志", width = 15) |
|||
@ApiModelProperty(value = "删除标志") |
|||
@TableLogic |
|||
private Integer delFlag; |
|||
/**创建时间*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/**创建人*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String createBy; |
|||
/**更新时间*/ |
|||
@Excel(name = "更新时间", width = 15) |
|||
@ApiModelProperty(value = "更新时间") |
|||
private Date updateTime; |
|||
/**更新人*/ |
|||
@Excel(name = "更新人", width = 15) |
|||
@ApiModelProperty(value = "更新人") |
|||
private String updateBy; |
|||
} |
@ -1,102 +0,0 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 大屏监控项表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("dust_monitor_item") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value="dust_monitor_item对象", description="大屏监控项表") |
|||
public class DustMonitorItem { |
|||
|
|||
/**主键ID*/ |
|||
@Excel(name = "主键ID", width = 15) |
|||
@ApiModelProperty(value = "主键ID") |
|||
private String id; |
|||
/**所属系统*/ |
|||
@Excel(name = "所属系统", width = 15) |
|||
@ApiModelProperty(value = "所属系统") |
|||
private String systemId; |
|||
/**入口压力数据点位*/ |
|||
@Excel(name = "除尘器进口压力", width = 15) |
|||
@ApiModelProperty(value = "除尘器进口压力") |
|||
private String inletPressureDataTagId; |
|||
|
|||
/**出口压力数据点位*/ |
|||
@Excel(name = "除尘器出口压力", width = 15) |
|||
@ApiModelProperty(value = "除尘器出口压力") |
|||
private String outletPressureDataTagId; |
|||
|
|||
/**除尘器进出口压差(pa)*/ |
|||
@Excel(name = "除尘器进出口压差(pa)", width = 15) |
|||
@ApiModelProperty(value = "除尘器进出口压差(pa)") |
|||
private String pressureDifferenceId; |
|||
|
|||
/**风机速度*/ |
|||
@Excel(name = "风机速度", width = 15) |
|||
@ApiModelProperty(value = "风机速度") |
|||
private String fanSpeedDataTagId; |
|||
/**电机电流*/ |
|||
@Excel(name = "电机电流", width = 15) |
|||
@ApiModelProperty(value = "电机电流") |
|||
private String motorCurrentDataTagId; |
|||
/**烟囱CEMS风量*/ |
|||
@Excel(name = "烟囱CEMS风量", width = 15) |
|||
@ApiModelProperty(value = "烟囱CEMS风量") |
|||
private String cemsAirVolumeDataTagId; |
|||
/**粉尘浓度*/ |
|||
@Excel(name = "粉尘浓度", width = 15) |
|||
@ApiModelProperty(value = "粉尘浓度") |
|||
private String dustConcentrationDataTagId; |
|||
/**风机运行状态*/ |
|||
@Excel(name = "风机运行状态", width = 15) |
|||
@ApiModelProperty(value = "风机运行状态") |
|||
private String fanStatusDataTagId; |
|||
/**排序*/ |
|||
@Excel(name = "排序", width = 15) |
|||
@ApiModelProperty(value = "排序") |
|||
private Integer sortOrder; |
|||
/**备注*/ |
|||
@Excel(name = "备注", width = 15) |
|||
@ApiModelProperty(value = "备注") |
|||
private String remark; |
|||
/**删除标志*/ |
|||
@Excel(name = "删除标志", width = 15) |
|||
@ApiModelProperty(value = "删除标志") |
|||
@TableLogic |
|||
private Integer delFlag; |
|||
/**创建时间*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/**创建人*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String createBy; |
|||
/**更新时间*/ |
|||
@Excel(name = "更新时间", width = 15) |
|||
@ApiModelProperty(value = "更新时间") |
|||
private Date updateTime; |
|||
/**更新人*/ |
|||
@Excel(name = "更新人", width = 15) |
|||
@ApiModelProperty(value = "更新人") |
|||
private String updateBy; |
|||
} |
@ -1,99 +0,0 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 大屏阀门监控表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("dust_monitor_valve") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value = "dust_monitor_valve对象", description = "大屏阀门监控表") |
|||
public class DustMonitorValve { |
|||
|
|||
/** |
|||
* 主键ID |
|||
*/ |
|||
@Excel(name = "主键ID", width = 15) |
|||
@ApiModelProperty(value = "主键ID") |
|||
private String id; |
|||
/** |
|||
* 阀门ID |
|||
*/ |
|||
@Excel(name = "阀门ID", width = 15) |
|||
@ApiModelProperty(value = "阀门ID") |
|||
private String valveId; |
|||
/** |
|||
* 数据点位 |
|||
*/ |
|||
@Excel(name = "数据点位", width = 15) |
|||
@ApiModelProperty(value = "数据点位") |
|||
private String dataTagId; |
|||
/** |
|||
* 排序 |
|||
*/ |
|||
@Excel(name = "排序", width = 15) |
|||
@ApiModelProperty(value = "排序") |
|||
private Integer sortOrder; |
|||
/** |
|||
* 备注 |
|||
*/ |
|||
@Excel(name = "备注", width = 15) |
|||
@ApiModelProperty(value = "备注") |
|||
private String remark; |
|||
/** |
|||
* 删除标志 |
|||
*/ |
|||
@Excel(name = "删除标志", width = 15) |
|||
@ApiModelProperty(value = "删除标志") |
|||
@TableLogic |
|||
private Integer delFlag; |
|||
/** |
|||
* 创建时间 |
|||
*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/** |
|||
* 创建人 |
|||
*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String createBy; |
|||
/** |
|||
* 更新时间 |
|||
*/ |
|||
@Excel(name = "更新时间", width = 15) |
|||
@ApiModelProperty(value = "更新时间") |
|||
private Date updateTime; |
|||
/** |
|||
* 更新人 |
|||
*/ |
|||
@Excel(name = "更新人", width = 15) |
|||
@ApiModelProperty(value = "更新人") |
|||
private String updateBy; |
|||
|
|||
@ApiModelProperty(value = "所属系统") |
|||
@TableField(exist = false) |
|||
private String systemId; |
|||
|
|||
@ApiModelProperty(value = "状态") |
|||
@TableField(exist = false) |
|||
private Integer status; |
|||
} |
@ -1,67 +0,0 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 除尘系统表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("dust_system") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value="dust_system对象", description="除尘系统表") |
|||
public class DustSystem { |
|||
|
|||
/**主键ID*/ |
|||
@Excel(name = "主键ID", width = 15) |
|||
@ApiModelProperty(value = "主键ID") |
|||
private String id; |
|||
/**名称*/ |
|||
@Excel(name = "名称", width = 15) |
|||
@ApiModelProperty(value = "名称") |
|||
private String name; |
|||
/**排序*/ |
|||
@Excel(name = "排序", width = 15) |
|||
@ApiModelProperty(value = "排序") |
|||
private Integer sortOrder; |
|||
/**备注*/ |
|||
@Excel(name = "备注", width = 15) |
|||
@ApiModelProperty(value = "备注") |
|||
private String remark; |
|||
/**删除标志*/ |
|||
@Excel(name = "删除标志", width = 15) |
|||
@ApiModelProperty(value = "删除标志") |
|||
@TableLogic |
|||
private Integer delFlag; |
|||
/**创建时间*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/**创建人*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String createBy; |
|||
/**更新时间*/ |
|||
@Excel(name = "更新时间", width = 15) |
|||
@ApiModelProperty(value = "更新时间") |
|||
private Date updateTime; |
|||
/**更新人*/ |
|||
@Excel(name = "更新人", width = 15) |
|||
@ApiModelProperty(value = "更新人") |
|||
private String updateBy; |
|||
} |
@ -1,95 +0,0 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 阀门表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("dust_valve") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value="dust_valve对象", description="阀门表") |
|||
public class DustValve { |
|||
|
|||
/**主键ID*/ |
|||
@Excel(name = "主键ID", width = 15) |
|||
@ApiModelProperty(value = "主键ID") |
|||
private String id; |
|||
/**所属系统*/ |
|||
@Excel(name = "所属系统", width = 15) |
|||
@ApiModelProperty(value = "所属系统") |
|||
private String systemId; |
|||
@TableField(exist = false) |
|||
private String systemName; |
|||
/**数据点位*/ |
|||
@Excel(name = "数据点位", width = 15) |
|||
@ApiModelProperty(value = "数据点位") |
|||
private String dataTagId; |
|||
@TableField(exist = false) |
|||
private String dataTag; |
|||
/**阀门名称*/ |
|||
@Excel(name = "阀门", width = 15) |
|||
@ApiModelProperty(value = "阀门") |
|||
private String name; |
|||
/**类型 (0: 升关阀, 1: 调节阀)*/ |
|||
@Excel(name = "类型 (0: 升关阀, 1: 调节阀)", width = 15) |
|||
@ApiModelProperty(value = "类型 (0: 升关阀, 1: 调节阀)") |
|||
private Integer type; |
|||
/**阀门位置*/ |
|||
@Excel(name = "除尘部位", width = 15) |
|||
@ApiModelProperty(value = "除尘部位") |
|||
private String location; |
|||
/**阀门参数*/ |
|||
@Excel(name = "阀门参数", width = 15) |
|||
@ApiModelProperty(value = "阀门参数") |
|||
private String parameter; |
|||
/**排序*/ |
|||
@Excel(name = "排序", width = 15) |
|||
@ApiModelProperty(value = "排序") |
|||
private Integer sortOrder; |
|||
/**备注*/ |
|||
@Excel(name = "备注", width = 15) |
|||
@ApiModelProperty(value = "备注") |
|||
private String remark; |
|||
/**删除标志*/ |
|||
@Excel(name = "删除标志", width = 15) |
|||
@ApiModelProperty(value = "删除标志") |
|||
@TableLogic |
|||
private Integer delFlag; |
|||
/**创建时间*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/**创建人*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String createBy; |
|||
/**更新时间*/ |
|||
@Excel(name = "更新时间", width = 15) |
|||
@ApiModelProperty(value = "更新时间") |
|||
private Date updateTime; |
|||
/**更新人*/ |
|||
@Excel(name = "更新人", width = 15) |
|||
@ApiModelProperty(value = "更新人") |
|||
private String updateBy; |
|||
|
|||
@ApiModelProperty(value = "状态") |
|||
@TableField(exist = false) |
|||
private Integer status; |
|||
} |
@ -1,190 +0,0 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
|
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import com.baomidou.mybatisplus.annotation.FieldStrategy; |
|||
import com.baomidou.mybatisplus.annotation.TableField; |
|||
import com.baomidou.mybatisplus.annotation.TableLogic; |
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
import com.fasterxml.jackson.annotation.JsonIgnoreProperties; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.Date; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @Description: 管道表 |
|||
* @Author: cc-admin |
|||
* @Date: 2024-12-06 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("pipe") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value = "pipe对象", description = "管道表") |
|||
@JsonIgnoreProperties(ignoreUnknown = true) |
|||
public class Pipe { |
|||
|
|||
/** |
|||
* 主键ID |
|||
*/ |
|||
@Excel(name = "主键ID", width = 15) |
|||
@ApiModelProperty(value = "主键ID") |
|||
private String id; |
|||
/** |
|||
* 父管道ID |
|||
*/ |
|||
@Excel(name = "父管道ID", width = 15) |
|||
@ApiModelProperty(value = "父管道ID") |
|||
private String parentId; |
|||
|
|||
/** |
|||
* 父管道ID |
|||
*/ |
|||
@Excel(name = "计划方案ID", width = 15) |
|||
@ApiModelProperty(value = "计划方案ID") |
|||
private String designPlanId; |
|||
|
|||
|
|||
/** |
|||
* 管道名称 |
|||
*/ |
|||
@Excel(name = "管道名称", width = 15) |
|||
@ApiModelProperty(value = "管道名称") |
|||
private String name; |
|||
/** |
|||
* 设计风量 |
|||
*/ |
|||
@Excel(name = "设计风量", width = 15) |
|||
@ApiModelProperty(value = "设计风量") |
|||
private Double flow; |
|||
//管道风量
|
|||
@TableField(exist = false) |
|||
private Double pipeFlow; |
|||
//开度
|
|||
@Excel(name = "节点阀门打开度", width = 15) |
|||
@ApiModelProperty(value = "节点阀门打开度") |
|||
private Double valveOpening; |
|||
//开度
|
|||
@Excel(name = "推荐方案节点阀门打开度(%)", width = 15) |
|||
@ApiModelProperty(value = "推荐方案节点阀门打开度(%)") |
|||
private Double recommendValveOpening; |
|||
//开度
|
|||
@Excel(name = "实际生产阀门打开度(%)", width = 15) |
|||
@ApiModelProperty(value = "实际生产阀门打开度(%)") |
|||
private Double productionValveOpening; |
|||
//开度
|
|||
@Excel(name = "自定义开度(%)", width = 15) |
|||
@ApiModelProperty(value = "自定义开度(%)") |
|||
private Double customValveOpening; |
|||
/** |
|||
* 所属分组 |
|||
*/ |
|||
@Excel(name = "所属分组", width = 15) |
|||
@ApiModelProperty(value = "所属分组") |
|||
private String groupName; |
|||
|
|||
@Excel(name = "选择管径", width = 15) |
|||
@ApiModelProperty(value = "选择管径") |
|||
@TableField(strategy = FieldStrategy.IGNORED) |
|||
private Double diameter; |
|||
//管道内径
|
|||
@TableField(exist = false) |
|||
private Double pipeDiameter; |
|||
//计算管道内径
|
|||
@TableField(exist = false) |
|||
private Double computeDiameter; |
|||
/** |
|||
* 壁厚 |
|||
*/ |
|||
@Excel(name = "壁厚", width = 15) |
|||
@ApiModelProperty(value = "壁厚") |
|||
private Double thickness; |
|||
/** |
|||
* 是否除尘节点(0-否,1-是) |
|||
*/ |
|||
@Excel(name = "是否除尘节点(0-否,1-是)", width = 15) |
|||
@ApiModelProperty(value = "是否除尘节点(0-否,1-是)") |
|||
private Integer isLeaf; |
|||
|
|||
/** |
|||
* 是否除尘节点(0-否,1-是) |
|||
*/ |
|||
@Excel(name = "是否加入推荐方案计算(0-否,1-是)", width = 15) |
|||
@ApiModelProperty(value = "是否加入推荐方案计算(0-否,1-是)") |
|||
private Integer isCompute; |
|||
|
|||
/** |
|||
* 是否除尘节点(0-否,1-是) |
|||
*/ |
|||
@Excel(name = "是否常开(0-否,1-是)", width = 15) |
|||
@ApiModelProperty(value = "是否常开(0-否,1-是)") |
|||
private Integer isNormallyOpen; |
|||
/** |
|||
* 排序 |
|||
*/ |
|||
@Excel(name = "排序", width = 15) |
|||
@ApiModelProperty(value = "排序") |
|||
private Integer sortOrder; |
|||
/** |
|||
* 备注 |
|||
*/ |
|||
@Excel(name = "备注", width = 15) |
|||
@ApiModelProperty(value = "备注") |
|||
private String remark; |
|||
/** |
|||
* 删除状态(0-正常,1-已删除) |
|||
*/ |
|||
@Excel(name = "删除状态(0-正常,1-已删除)", width = 15) |
|||
@ApiModelProperty(value = "删除状态(0-正常,1-已删除)") |
|||
@TableLogic |
|||
private Integer delFlag; |
|||
/** |
|||
* 创建人 |
|||
*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String createBy; |
|||
/** |
|||
* 创建时间 |
|||
*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/** |
|||
* 更新人 |
|||
*/ |
|||
@Excel(name = "更新人", width = 15) |
|||
@ApiModelProperty(value = "更新人") |
|||
private String updateBy; |
|||
/** |
|||
* 更新时间 |
|||
*/ |
|||
@Excel(name = "更新时间", width = 15) |
|||
@ApiModelProperty(value = "更新时间") |
|||
private Date updateTime; |
|||
@Excel(name = "风速", width = 15) |
|||
@ApiModelProperty(value = "风速") |
|||
private double windSpeed; |
|||
|
|||
//---------------------
|
|||
|
|||
@TableField(exist = false) |
|||
private double branchPipeFlow;//支管风量
|
|||
@TableField(exist = false) |
|||
private double totalPipeFlow;//总管风量
|
|||
@TableField(exist = false) |
|||
private double totalWindSpeed;//总管风速
|
|||
@TableField(exist = false) |
|||
private List<Pipe> list; |
|||
@TableField(exist = false) |
|||
private List<Pipe> children = new ArrayList<>();// 初始化为一个空列表
|
|||
@TableField(exist = false) |
|||
private double area;//面积
|
|||
} |
@ -1,71 +0,0 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 管径壁厚对应表 |
|||
* @Author: cc-admin |
|||
* @Date: 2024-12-06 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("pipe_diameter_thickness") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value="pipe_diameter_thickness对象", description="管径壁厚对应表") |
|||
public class PipeDiameterThickness { |
|||
|
|||
/**主键ID*/ |
|||
@Excel(name = "主键ID", width = 15) |
|||
@ApiModelProperty(value = "主键ID") |
|||
private String id; |
|||
/**主键ID*/ |
|||
@Excel(name = "名称", width = 15) |
|||
@ApiModelProperty(value = "名称") |
|||
private String name; |
|||
/**管道内径*/ |
|||
@Excel(name = "管道内径(逗号分割)", width = 15) |
|||
@ApiModelProperty(value = "管道内径(逗号分割)") |
|||
private String diameter; |
|||
/**排序*/ |
|||
@Excel(name = "排序", width = 15) |
|||
@ApiModelProperty(value = "排序") |
|||
private Integer sortOrder; |
|||
/**备注*/ |
|||
@Excel(name = "备注", width = 15) |
|||
@ApiModelProperty(value = "备注") |
|||
private String remark; |
|||
/**删除状态(0-正常,1-已删除)*/ |
|||
@Excel(name = "删除状态(0-正常,1-已删除)", width = 15) |
|||
@ApiModelProperty(value = "删除状态(0-正常,1-已删除)") |
|||
@TableLogic |
|||
private Integer delFlag; |
|||
/**创建人*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String createBy; |
|||
/**创建时间*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/**更新人*/ |
|||
@Excel(name = "更新人", width = 15) |
|||
@ApiModelProperty(value = "更新人") |
|||
private String updateBy; |
|||
/**更新时间*/ |
|||
@Excel(name = "更新时间", width = 15) |
|||
@ApiModelProperty(value = "更新时间") |
|||
private Date updateTime; |
|||
} |
@ -1,93 +0,0 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
import java.util.List; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 推荐方案表 |
|||
* @Author: cc-admin |
|||
* @Date: 2024-12-06 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("recommend_plan") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value="recommend_plan对象", description="推荐方案表") |
|||
public class RecommendPlan { |
|||
|
|||
/**主键ID*/ |
|||
@Excel(name = "主键ID", width = 15) |
|||
@ApiModelProperty(value = "主键ID") |
|||
private String id; |
|||
/**关联的设计方案ID*/ |
|||
@Excel(name = "关联的设计方案ID", width = 15) |
|||
@ApiModelProperty(value = "关联的设计方案ID") |
|||
private String designPlanId; |
|||
/**推荐方案名称*/ |
|||
@Excel(name = "推荐方案名称", width = 15) |
|||
@ApiModelProperty(value = "推荐方案名称") |
|||
private String name; |
|||
/**总管风量*/ |
|||
@Excel(name = "总管风量", width = 15) |
|||
@ApiModelProperty(value = "总管风量") |
|||
private Double flow; |
|||
/**总管风量*/ |
|||
@Excel(name = "最小速度", width = 15) |
|||
@ApiModelProperty(value = "最小速度") |
|||
private Double minSpeed; |
|||
/**总管风量*/ |
|||
@Excel(name = "最大速度", width = 15) |
|||
@ApiModelProperty(value = "最大速度") |
|||
private Double maxSpeed; |
|||
/**总管风量*/ |
|||
@Excel(name = "管道ids", width = 15) |
|||
@ApiModelProperty(value = "管道ids") |
|||
private String pipeConfig; |
|||
/**排序*/ |
|||
@Excel(name = "排序", width = 15) |
|||
@ApiModelProperty(value = "排序") |
|||
private Integer sortOrder; |
|||
/**备注*/ |
|||
@Excel(name = "备注", width = 15) |
|||
@ApiModelProperty(value = "备注") |
|||
private String remark; |
|||
/**删除状态(0-正常,1-已删除)*/ |
|||
@Excel(name = "删除状态(0-正常,1-已删除)", width = 15) |
|||
@ApiModelProperty(value = "删除状态(0-正常,1-已删除)") |
|||
@TableLogic |
|||
private Integer delFlag; |
|||
/**创建人*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String createBy; |
|||
/**创建时间*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/**更新人*/ |
|||
@Excel(name = "更新人", width = 15) |
|||
@ApiModelProperty(value = "更新人") |
|||
private String updateBy; |
|||
/**更新时间*/ |
|||
@Excel(name = "更新时间", width = 15) |
|||
@ApiModelProperty(value = "更新时间") |
|||
private Date updateTime; |
|||
|
|||
@TableField(exist = false) |
|||
private List<RecommendPlanPipeConfig> configList; |
|||
|
|||
|
|||
} |
@ -1,67 +0,0 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 推荐方案管道配置表 |
|||
* @Author: cc-admin |
|||
* @Date: 2024-12-06 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
public class RecommendPlanPipeConfig { |
|||
|
|||
|
|||
@Excel(name = "推荐方案ID(关联recommend_plan)", width = 15) |
|||
@ApiModelProperty(value = "推荐方案ID(关联recommend_plan)") |
|||
private String recommendPlanId; |
|||
/**关联的设计方案ID*/ |
|||
@Excel(name = "关联的设计方案ID", width = 15) |
|||
@ApiModelProperty(value = "关联的设计方案ID") |
|||
private String designPlanId; |
|||
/**管道ID(关联pipe)*/ |
|||
@Excel(name = "管道ID(关联pipe)", width = 15) |
|||
@ApiModelProperty(value = "管道ID(关联pipe)") |
|||
private String pipeId; |
|||
/**节点阀门打开度(%)*/ |
|||
@Excel(name = "节点阀门打开度(%)", width = 15) |
|||
@ApiModelProperty(value = "节点阀门打开度(%)") |
|||
private Double valveOpening; |
|||
/**管道风量*/ |
|||
@Excel(name = "管道风量", width = 15) |
|||
@ApiModelProperty(value = "管道风量") |
|||
private Double pipeFlow; |
|||
/**删除状态(0-正常,1-已删除)*/ |
|||
@Excel(name = "删除状态(0-正常,1-已删除)", width = 15) |
|||
@ApiModelProperty(value = "删除状态(0-正常,1-已删除)") |
|||
@TableLogic |
|||
private Integer delFlag; |
|||
/**创建人*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String createBy; |
|||
/**创建时间*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/**更新人*/ |
|||
@Excel(name = "更新人", width = 15) |
|||
@ApiModelProperty(value = "更新人") |
|||
private String updateBy; |
|||
/**更新时间*/ |
|||
@Excel(name = "更新时间", width = 15) |
|||
@ApiModelProperty(value = "更新时间") |
|||
private Date updateTime; |
|||
} |
@ -0,0 +1,121 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 附件信息表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("tb_dust_attachment") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value = "tb_dust_attachment对象", description = "附件信息表") |
|||
public class TbDustAttachment { |
|||
|
|||
/** |
|||
* 附件主键,主键,唯一 |
|||
*/ |
|||
@Excel(name = "附件主键,主键,唯一", width = 15) |
|||
@ApiModelProperty(value = "附件主键,主键,唯一") |
|||
private String attachId; |
|||
/** |
|||
* 附件标题 |
|||
*/ |
|||
@Excel(name = "附件标题", width = 15) |
|||
@ApiModelProperty(value = "附件标题") |
|||
private String attachTitle; |
|||
/** |
|||
* 附件名称 |
|||
*/ |
|||
@Excel(name = "附件名称", width = 15) |
|||
@ApiModelProperty(value = "附件名称") |
|||
private String attachName; |
|||
/** |
|||
* 关联业务类别:1-报警处置附件;2-粉尘清扫打卡附件 |
|||
*/ |
|||
@Excel(name = "关联业务类别:1-报警处置附件;2-粉尘清扫打卡附件", width = 15) |
|||
@ApiModelProperty(value = "关联业务类别:1-报警处置附件;2-粉尘清扫打卡附件") |
|||
private String referType; |
|||
/** |
|||
* 关联业务主键,填写的是业务表的主键 |
|||
*/ |
|||
@Excel(name = "关联业务主键,填写的是业务表的主键", width = 15) |
|||
@ApiModelProperty(value = "关联业务主键,填写的是业务表的主键") |
|||
private String referId; |
|||
/** |
|||
* 存放路径,省厅前置机服务器上文件存放的相对路径 |
|||
*/ |
|||
@Excel(name = "存放路径,省厅前置机服务器上文件存放的相对路径", width = 15) |
|||
@ApiModelProperty(value = "存放路径,省厅前置机服务器上文件存放的相对路径") |
|||
private String savePath; |
|||
/** |
|||
* 文件类型:1-jpg;2-png;3-doc;4-docx;5-xls;6-xlsx;7-pdf |
|||
*/ |
|||
@Excel(name = "文件类型:1-jpg;2-png;3-doc;4-docx;5-xls;6-xlsx;7-pdf", width = 15) |
|||
@ApiModelProperty(value = "文件类型:1-jpg;2-png;3-doc;4-docx;5-xls;6-xlsx;7-pdf") |
|||
private String attachTypeCode; |
|||
/** |
|||
* 附件大小 |
|||
*/ |
|||
@Excel(name = "附件大小", width = 15) |
|||
@ApiModelProperty(value = "附件大小") |
|||
private Double attachSize; |
|||
/** |
|||
* 排序字段 |
|||
*/ |
|||
@Excel(name = "排序字段", width = 15) |
|||
@ApiModelProperty(value = "排序字段") |
|||
private Double orderIndex; |
|||
/** |
|||
* 有效标记 |
|||
*/ |
|||
@Excel(name = "有效标记", width = 15) |
|||
@ApiModelProperty(value = "有效标记") |
|||
private String actived; |
|||
/** |
|||
* 删除标记:0-未删除;1-已删除 |
|||
*/ |
|||
@Excel(name = "删除标记:0-未删除;1-已删除", width = 15) |
|||
@ApiModelProperty(value = "删除标记:0-未删除;1-已删除") |
|||
@TableLogic |
|||
private String delFlag; |
|||
/** |
|||
* 创建人 |
|||
*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String creatorName; |
|||
/** |
|||
* 创建时间 |
|||
*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/** |
|||
* 修改人 |
|||
*/ |
|||
@Excel(name = "修改人", width = 15) |
|||
@ApiModelProperty(value = "修改人") |
|||
private String updatorName; |
|||
/** |
|||
* 修改时间 |
|||
*/ |
|||
@Excel(name = "修改时间", width = 15) |
|||
@ApiModelProperty(value = "修改时间") |
|||
private Date updateTime; |
|||
} |
@ -0,0 +1,103 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 粉尘清扫打卡记录表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("tb_dust_clearrecord") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value = "tb_dust_clearrecord对象", description = "粉尘清扫打卡记录表") |
|||
public class TbDustClearrecord { |
|||
|
|||
/** |
|||
* 主键 |
|||
*/ |
|||
@Excel(name = "主键", width = 15) |
|||
@ApiModelProperty(value = "主键") |
|||
private String id; |
|||
/** |
|||
* 数据接入标识,与粉尘企业区域图清单对应:1-粉尘企业区域图清单,2-粉尘企业(个体/小型)定期清理清单,3-风管、设备皮膜内部定期清理清单,4-干式单机等常用清理清单;多个用途逗号分隔 |
|||
*/ |
|||
@Excel(name = "数据接入标识,与粉尘企业区域图清单对应:1-粉尘企业区域图清单,2-粉尘企业(个体/小型)定期清理清单,3-风管、设备皮膜内部定期清理清单,4-干式单机等常用清理清单;多个用途逗号分隔", width = 15) |
|||
@ApiModelProperty(value = "数据接入标识,与粉尘企业区域图清单对应:1-粉尘企业区域图清单,2-粉尘企业(个体/小型)定期清理清单,3-风管、设备皮膜内部定期清理清单,4-干式单机等常用清理清单;多个用途逗号分隔") |
|||
private String dataId; |
|||
/** |
|||
* 清理项目 |
|||
*/ |
|||
@Excel(name = "清理项目", width = 15) |
|||
@ApiModelProperty(value = "清理项目") |
|||
private String clearItemName; |
|||
/** |
|||
* 完成情况:0-未完成,1-已完成 |
|||
*/ |
|||
@Excel(name = "完成情况:0-未完成,1-已完成", width = 15) |
|||
@ApiModelProperty(value = "完成情况:0-未完成,1-已完成") |
|||
private String taskProcess; |
|||
/** |
|||
* 执行人 |
|||
*/ |
|||
@Excel(name = "执行人", width = 15) |
|||
@ApiModelProperty(value = "执行人") |
|||
private String taskPerson; |
|||
/** |
|||
* 执行日期 |
|||
*/ |
|||
@Excel(name = "执行日期", width = 15) |
|||
@ApiModelProperty(value = "执行日期") |
|||
private Date taskTime; |
|||
/** |
|||
* 有效标志:0-无效,1-有效 |
|||
*/ |
|||
@Excel(name = "有效标志:0-无效,1-有效", width = 15) |
|||
@ApiModelProperty(value = "有效标志:0-无效,1-有效") |
|||
private String actived; |
|||
/** |
|||
* 创建人 |
|||
*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String creatorName; |
|||
/** |
|||
* 创建时间 |
|||
*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/** |
|||
* 修改人 |
|||
*/ |
|||
@Excel(name = "修改人", width = 15) |
|||
@ApiModelProperty(value = "修改人") |
|||
private String updatorName; |
|||
/** |
|||
* 修改时间 |
|||
*/ |
|||
@Excel(name = "修改时间", width = 15) |
|||
@ApiModelProperty(value = "修改时间") |
|||
private Date updateTime; |
|||
/** |
|||
* 删除标记:0-未删除,1-已删除 |
|||
*/ |
|||
@Excel(name = "删除标记:0-未删除,1-已删除", width = 15) |
|||
@ApiModelProperty(value = "删除标记:0-未删除,1-已删除") |
|||
@TableLogic |
|||
private String delFlag; |
|||
} |
@ -0,0 +1,181 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 企业基础信息表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("tb_dust_companyinfo") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value = "tb_dust_companyinfo对象", description = "企业基础信息表") |
|||
public class TbDustCompanyinfo { |
|||
|
|||
/** |
|||
* 主键 |
|||
*/ |
|||
@Excel(name = "主键", width = 15) |
|||
@ApiModelProperty(value = "主键") |
|||
private String id; |
|||
/** |
|||
* 企业名称 |
|||
*/ |
|||
@Excel(name = "企业名称", width = 15) |
|||
@ApiModelProperty(value = "企业名称") |
|||
private String enterpriseName; |
|||
/** |
|||
* 统一社会信用代码 |
|||
*/ |
|||
@Excel(name = "统一社会信用代码", width = 15) |
|||
@ApiModelProperty(value = "统一社会信用代码") |
|||
private String uniscid; |
|||
/** |
|||
* 营业状态:1-营业;2-停业(歇业);3-关闭 |
|||
*/ |
|||
@Excel(name = "营业状态:1-营业;2-停业(歇业);3-关闭", width = 15) |
|||
@ApiModelProperty(value = "营业状态:1-营业;2-停业(歇业);3-关闭") |
|||
private String businessStatus; |
|||
/** |
|||
* 生产经营方式:1-生产(制造);2-批发经营;3-零售经营;4-储存;5-使用;6-其他 |
|||
*/ |
|||
@Excel(name = "生产经营方式:1-生产(制造);2-批发经营;3-零售经营;4-储存;5-使用;6-其他", width = 15) |
|||
@ApiModelProperty(value = "生产经营方式:1-生产(制造);2-批发经营;3-零售经营;4-储存;5-使用;6-其他") |
|||
private String productionMode; |
|||
/** |
|||
* 行政隶属关系:1-中央级;2-省级;3-地市级;4-区县级 |
|||
*/ |
|||
@Excel(name = "行政隶属关系:1-中央级;2-省级;3-地市级;4-区县级", width = 15) |
|||
@ApiModelProperty(value = "行政隶属关系:1-中央级;2-省级;3-地市级;4-区县级") |
|||
private String administrativeSubOrdination; |
|||
/** |
|||
* 国民经济类型:1-国有;2-集体;3-联营;4-私营;5-有限责任;6-股份有限公司;7-股份合作;8-港澳台;9-外商投资;10-分公司;11-其他 |
|||
*/ |
|||
@Excel(name = "国民经济类型:1-国有;2-集体;3-联营;4-私营;5-有限责任;6-股份有限公司;7-股份合作;8-港澳台;9-外商投资;10-分公司;11-其他", width = 15) |
|||
@ApiModelProperty(value = "国民经济类型:1-国有;2-集体;3-联营;4-私营;5-有限责任;6-股份有限公司;7-股份合作;8-港澳台;9-外商投资;10-分公司;11-其他") |
|||
private String registrationType; |
|||
/** |
|||
* 经营地址详细地址 |
|||
*/ |
|||
@Excel(name = "经营地址详细地址", width = 15) |
|||
@ApiModelProperty(value = "经营地址详细地址") |
|||
private String addressOperating; |
|||
/** |
|||
* 企业经营地址所属行政区域,必须到区县级(6位) |
|||
*/ |
|||
@Excel(name = "企业经营地址所属行政区域,必须到区县级(6位)", width = 15) |
|||
@ApiModelProperty(value = "企业经营地址所属行政区域,必须到区县级(6位)") |
|||
private String areaCode; |
|||
/** |
|||
* 法定代表人姓名 |
|||
*/ |
|||
@Excel(name = "法定代表人姓名", width = 15) |
|||
@ApiModelProperty(value = "法定代表人姓名") |
|||
private String legalRepresentative; |
|||
/** |
|||
* 法定代表人电话,短信发送使用 |
|||
*/ |
|||
@Excel(name = "法定代表人电话,短信发送使用", width = 15) |
|||
@ApiModelProperty(value = "法定代表人电话,短信发送使用") |
|||
private String contactNumber; |
|||
/** |
|||
* 安全生产管理负责人姓名 |
|||
*/ |
|||
@Excel(name = "安全生产管理负责人姓名", width = 15) |
|||
@ApiModelProperty(value = "安全生产管理负责人姓名") |
|||
private String safetyProductionManagementName; |
|||
/** |
|||
* 安全生产管理负责人电话,短信发送使用 |
|||
*/ |
|||
@Excel(name = "安全生产管理负责人电话,短信发送使用", width = 15) |
|||
@ApiModelProperty(value = "安全生产管理负责人电话,短信发送使用") |
|||
private String safetyProductionManagementNumber; |
|||
/** |
|||
* 主营业务 |
|||
*/ |
|||
@Excel(name = "主营业务", width = 15) |
|||
@ApiModelProperty(value = "主营业务") |
|||
private String opScope; |
|||
/** |
|||
* 是否规模以上:1-规上;2-规下 |
|||
*/ |
|||
@Excel(name = "是否规模以上:1-规上;2-规下", width = 15) |
|||
@ApiModelProperty(value = "是否规模以上:1-规上;2-规下") |
|||
private String companyScale; |
|||
/** |
|||
* 生产场所的中心位置处,按照应急管理一张图地址填写 |
|||
*/ |
|||
@Excel(name = "生产场所的中心位置处,按照应急管理一张图地址填写", width = 15) |
|||
@ApiModelProperty(value = "生产场所的中心位置处,按照应急管理一张图地址填写") |
|||
private Double longitude; |
|||
/** |
|||
* 生产场所的中心位置处,按照应急管理一张图地址填写 |
|||
*/ |
|||
@Excel(name = "生产场所的中心位置处,按照应急管理一张图地址填写", width = 15) |
|||
@ApiModelProperty(value = "生产场所的中心位置处,按照应急管理一张图地址填写") |
|||
private Double latitude; |
|||
/** |
|||
* 数据接入标识,区县级行政区划编码(6位)+4位数字流水号 |
|||
*/ |
|||
@Excel(name = "数据接入标识,区县级行政区划编码(6位)+4位数字流水号", width = 15) |
|||
@ApiModelProperty(value = "数据接入标识,区县级行政区划编码(6位)+4位数字流水号") |
|||
private String dataId; |
|||
/** |
|||
* 企业停工状态:0-停工;1-开工 |
|||
*/ |
|||
@Excel(name = "企业停工状态:0-停工;1-开工", width = 15) |
|||
@ApiModelProperty(value = "企业停工状态:0-停工;1-开工") |
|||
private String stopStatus; |
|||
/** |
|||
* 有效标记:0-无效;1-有效 |
|||
*/ |
|||
@Excel(name = "有效标记:0-无效;1-有效", width = 15) |
|||
@ApiModelProperty(value = "有效标记:0-无效;1-有效") |
|||
private String actived; |
|||
/** |
|||
* 删除标记:0-未删除;1-已删除 |
|||
*/ |
|||
@Excel(name = "删除标记:0-未删除;1-已删除", width = 15) |
|||
@ApiModelProperty(value = "删除标记:0-未删除;1-已删除") |
|||
@TableLogic |
|||
private String delFlag; |
|||
/** |
|||
* 创建人 |
|||
*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String creatorName; |
|||
/** |
|||
* 创建时间 |
|||
*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/** |
|||
* 修改人 |
|||
*/ |
|||
@Excel(name = "修改人", width = 15) |
|||
@ApiModelProperty(value = "修改人") |
|||
private String updatorName; |
|||
/** |
|||
* 修改时间 |
|||
*/ |
|||
@Excel(name = "修改时间", width = 15) |
|||
@ApiModelProperty(value = "修改时间") |
|||
private Date updateTime; |
|||
} |
@ -0,0 +1,115 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 涉尘信息表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("tb_dust_dustinfo") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value = "tb_dust_dustinfo对象", description = "涉尘信息表") |
|||
public class TbDustDustinfo { |
|||
|
|||
/** |
|||
* 主键,与TB_DUST_COMPANYINFO的主键ID关联 |
|||
*/ |
|||
@Excel(name = "主键,与TB_DUST_COMPANYINFO的主键ID关联", width = 15) |
|||
@ApiModelProperty(value = "主键,与TB_DUST_COMPANYINFO的主键ID关联") |
|||
private String id; |
|||
/** |
|||
* 企业id |
|||
*/ |
|||
@Excel(name = "企业id", width = 15) |
|||
@ApiModelProperty(value = "企业id") |
|||
private String companyinfoId; |
|||
/** |
|||
* 粉尘涉爆企业行业类型:1-金属制品加工,2-农副产品加工,3-木制品加工,4-纸制品加工,5-纺织品加工,6-橡胶和塑料制品加工,7-冶金/有色/建材行业煤粉制备,8-其他 |
|||
*/ |
|||
@Excel(name = "粉尘涉爆企业行业类型:1-金属制品加工,2-农副产品加工,3-木制品加工,4-纸制品加工,5-纺织品加工,6-橡胶和塑料制品加工,7-冶金/有色/建材行业煤粉制备,8-其他", width = 15) |
|||
@ApiModelProperty(value = "粉尘涉爆企业行业类型:1-金属制品加工,2-农副产品加工,3-木制品加工,4-纸制品加工,5-纺织品加工,6-橡胶和塑料制品加工,7-冶金/有色/建材行业煤粉制备,8-其他") |
|||
private String industryType; |
|||
/** |
|||
* 企业涉及粉尘高风险工艺:1-铝镁金属打磨抛光,2-铝镁金属喷砂抛丸,3-其他金属打磨抛光,4-其他金属喷砂抛丸,5-木材砂光,6-静电喷涂,7-粉碎研磨,8-造粒,9-无;可多选,逗号分隔 |
|||
*/ |
|||
@Excel(name = "企业涉及粉尘高风险工艺:1-铝镁金属打磨抛光,2-铝镁金属喷砂抛丸,3-其他金属打磨抛光,4-其他金属喷砂抛丸,5-木材砂光,6-静电喷涂,7-粉碎研磨,8-造粒,9-无;可多选,逗号分隔", width = 15) |
|||
@ApiModelProperty(value = "企业涉及粉尘高风险工艺:1-铝镁金属打磨抛光,2-铝镁金属喷砂抛丸,3-其他金属打磨抛光,4-其他金属喷砂抛丸,5-木材砂光,6-静电喷涂,7-粉碎研磨,8-造粒,9-无;可多选,逗号分隔") |
|||
private String dustTechnology; |
|||
/** |
|||
* 主要粉尘类型,编码见附录12-1,例如镁粉为A1 |
|||
*/ |
|||
@Excel(name = "主要粉尘类型,编码见附录12-1,例如镁粉为A1", width = 15) |
|||
@ApiModelProperty(value = "主要粉尘类型,编码见附录12-1,例如镁粉为A1") |
|||
private String dustType; |
|||
/** |
|||
* 日产尘量,单位:Kg |
|||
*/ |
|||
@Excel(name = "日产尘量,单位:Kg", width = 15) |
|||
@ApiModelProperty(value = "日产尘量,单位:Kg") |
|||
private Double dailyDustOutput; |
|||
/** |
|||
* 其他涉及粉尘信息,格式:粉尘种类,日产尘量Kg;多记录分号分隔,例如A2,100;A3,300;A5,150 |
|||
*/ |
|||
@Excel(name = "其他涉及粉尘信息,格式:粉尘种类,日产尘量Kg;多记录分号分隔,例如A2,100;A3,300;A5,150", width = 15) |
|||
@ApiModelProperty(value = "其他涉及粉尘信息,格式:粉尘种类,日产尘量Kg;多记录分号分隔,例如A2,100;A3,300;A5,150") |
|||
private String otheRdust; |
|||
/** |
|||
* 每日单班最高涉粉作业人数 |
|||
*/ |
|||
@Excel(name = "每日单班最高涉粉作业人数", width = 15) |
|||
@ApiModelProperty(value = "每日单班最高涉粉作业人数") |
|||
private Integer dustInvolvedPersonNo; |
|||
/** |
|||
* 有效标记:0-无效,1-有效 |
|||
*/ |
|||
@Excel(name = "有效标记:0-无效,1-有效", width = 15) |
|||
@ApiModelProperty(value = "有效标记:0-无效,1-有效") |
|||
private String actived; |
|||
/** |
|||
* 删除标记:0-未删除,1-已删除 |
|||
*/ |
|||
@Excel(name = "删除标记:0-未删除,1-已删除", width = 15) |
|||
@ApiModelProperty(value = "删除标记:0-未删除,1-已删除") |
|||
@TableLogic |
|||
private String delFlag; |
|||
/** |
|||
* 创建人 |
|||
*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String creatorName; |
|||
/** |
|||
* 创建时间 |
|||
*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/** |
|||
* 修改人 |
|||
*/ |
|||
@Excel(name = "修改人", width = 15) |
|||
@ApiModelProperty(value = "修改人") |
|||
private String updatorName; |
|||
/** |
|||
* 修改时间 |
|||
*/ |
|||
@Excel(name = "修改时间", width = 15) |
|||
@ApiModelProperty(value = "修改时间") |
|||
private Date updateTime; |
|||
} |
@ -0,0 +1,157 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 除尘系统信息表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("tb_dust_equipinfo") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value = "tb_dust_equipinfo对象", description = "除尘系统信息表") |
|||
public class TbDustEquipinfo { |
|||
|
|||
/** |
|||
* 主键 |
|||
*/ |
|||
@Excel(name = "主键", width = 15) |
|||
@ApiModelProperty(value = "主键") |
|||
private String id; |
|||
/** |
|||
* 设备编号,数据接入标识(10位)+3位流水编码 |
|||
*/ |
|||
@Excel(name = "设备编号,数据接入标识(10位)+3位流水编码", width = 15) |
|||
@ApiModelProperty(value = "设备编号,数据接入标识(10位)+3位流水编码") |
|||
private String equipCode; |
|||
/** |
|||
* 设备名称 |
|||
*/ |
|||
@Excel(name = "设备名称", width = 15) |
|||
@ApiModelProperty(value = "设备名称") |
|||
private String equipName; |
|||
/** |
|||
* 企业id |
|||
*/ |
|||
@Excel(name = "企业id", width = 15) |
|||
@ApiModelProperty(value = "企业id") |
|||
private String companyinfoId; |
|||
/** |
|||
* 场所编码,场所在系统中原属车间 |
|||
*/ |
|||
@Excel(name = "场所编码,场所在系统中原属车间", width = 15) |
|||
@ApiModelProperty(value = "场所编码,场所在系统中原属车间") |
|||
private String placeCode; |
|||
/** |
|||
* 设备类型:1-干式集中式除尘系统,2-湿式集中式除尘系统,3-湿式单机除系统,4-干式单机除系统,5-其它 |
|||
*/ |
|||
@Excel(name = "设备类型:1-干式集中式除尘系统,2-湿式集中式除尘系统,3-湿式单机除系统,4-干式单机除系统,5-其它", width = 15) |
|||
@ApiModelProperty(value = "设备类型:1-干式集中式除尘系统,2-湿式集中式除尘系统,3-湿式单机除系统,4-干式单机除系统,5-其它") |
|||
private String equipType; |
|||
/** |
|||
* 设备厂家 |
|||
*/ |
|||
@Excel(name = "设备厂家", width = 15) |
|||
@ApiModelProperty(value = "设备厂家") |
|||
private String equipFactory; |
|||
/** |
|||
* 安装日期 |
|||
*/ |
|||
@Excel(name = "安装日期", width = 15) |
|||
@ApiModelProperty(value = "安装日期") |
|||
private Date setDate; |
|||
/** |
|||
* 相关控制措施:1-泄爆,2-抑爆,3-隔爆,4-惰化,5-其他;下拉菜单,可多选,逗号分隔 |
|||
*/ |
|||
@Excel(name = "相关控制措施:1-泄爆,2-抑爆,3-隔爆,4-惰化,5-其他;下拉菜单,可多选,逗号分隔", width = 15) |
|||
@ApiModelProperty(value = "相关控制措施:1-泄爆,2-抑爆,3-隔爆,4-惰化,5-其他;下拉菜单,可多选,逗号分隔") |
|||
private String bombControl; |
|||
/** |
|||
* 安装区域:1-室内,2-室外 |
|||
*/ |
|||
@Excel(name = "安装区域:1-室内,2-室外", width = 15) |
|||
@ApiModelProperty(value = "安装区域:1-室内,2-室外") |
|||
private String installArea; |
|||
/** |
|||
* 除去粉尘种类,编码见附录12-1粉尘种类编码表,例如镁粉为A1 |
|||
*/ |
|||
@Excel(name = "除去粉尘种类,编码见附录12-1粉尘种类编码表,例如镁粉为A1", width = 15) |
|||
@ApiModelProperty(value = "除去粉尘种类,编码见附录12-1粉尘种类编码表,例如镁粉为A1") |
|||
private String dustType; |
|||
/** |
|||
* 除尘涉及人数,单班最高作业人数 |
|||
*/ |
|||
@Excel(name = "除尘涉及人数,单班最高作业人数", width = 15) |
|||
@ApiModelProperty(value = "除尘涉及人数,单班最高作业人数") |
|||
private Integer workersNumber; |
|||
/** |
|||
* 涉及云量工艺:1-单台金属量打磨抛光,2-单台金属量喷砂抛丸,3-其他金属打磨抛光,4-其他金属喷砂抛丸,5-木材砂光,6-静电喷涂,7-粉碎研磨,8-造粒,9-无;下拉菜单,可多选,逗号分隔 |
|||
*/ |
|||
@Excel(name = "涉及云量工艺:1-单台金属量打磨抛光,2-单台金属量喷砂抛丸,3-其他金属打磨抛光,4-其他金属喷砂抛丸,5-木材砂光,6-静电喷涂,7-粉碎研磨,8-造粒,9-无;下拉菜单,可多选,逗号分隔", width = 15) |
|||
@ApiModelProperty(value = "涉及云量工艺:1-单台金属量打磨抛光,2-单台金属量喷砂抛丸,3-其他金属打磨抛光,4-其他金属喷砂抛丸,5-木材砂光,6-静电喷涂,7-粉碎研磨,8-造粒,9-无;下拉菜单,可多选,逗号分隔") |
|||
private String dustTechnology; |
|||
/** |
|||
* 产生量单日产尘量,单位:Kg |
|||
*/ |
|||
@Excel(name = "产生量单日产尘量,单位:Kg", width = 15) |
|||
@ApiModelProperty(value = "产生量单日产尘量,单位:Kg") |
|||
private Double dailyDustOutput; |
|||
/** |
|||
* 系统状态:0-停用,1-本系统启用 |
|||
*/ |
|||
@Excel(name = "系统状态:0-停用,1-本系统启用", width = 15) |
|||
@ApiModelProperty(value = "系统状态:0-停用,1-本系统启用") |
|||
private String equipStatus; |
|||
/** |
|||
* 有效标志:0-无效,1-有效 |
|||
*/ |
|||
@Excel(name = "有效标志:0-无效,1-有效", width = 15) |
|||
@ApiModelProperty(value = "有效标志:0-无效,1-有效") |
|||
private String active; |
|||
/** |
|||
* 创建人 |
|||
*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String creatorName; |
|||
/** |
|||
* 创建时间 |
|||
*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/** |
|||
* 修改人 |
|||
*/ |
|||
@Excel(name = "修改人", width = 15) |
|||
@ApiModelProperty(value = "修改人") |
|||
private String updatorName; |
|||
/** |
|||
* 修改时间 |
|||
*/ |
|||
@Excel(name = "修改时间", width = 15) |
|||
@ApiModelProperty(value = "修改时间") |
|||
private Date updateTime; |
|||
/** |
|||
* 删除标记:0-未删除,1-已删除 |
|||
*/ |
|||
@Excel(name = "删除标记:0-未删除,1-已删除", width = 15) |
|||
@ApiModelProperty(value = "删除标记:0-未删除,1-已删除") |
|||
@TableLogic |
|||
private String delFlag; |
|||
} |
@ -0,0 +1,181 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 除尘系统监测指标信息表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("tb_dust_targetinfo") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value = "tb_dust_targetinfo对象", description = "除尘系统监测指标信息表") |
|||
public class TbDustTargetinfo { |
|||
|
|||
/** |
|||
* 主键 |
|||
*/ |
|||
@Excel(name = "主键", width = 15) |
|||
@ApiModelProperty(value = "主键") |
|||
private String id; |
|||
/** |
|||
* 指标编码,所属设备编码(13位)+3位流水编码 |
|||
*/ |
|||
@Excel(name = "指标编码,所属设备编码(13位)+3位流水编码", width = 15) |
|||
@ApiModelProperty(value = "指标编码,所属设备编码(13位)+3位流水编码") |
|||
private String targetCode; |
|||
/** |
|||
* 所属除尘系统编码,与除尘系统信息中的设备编码一致 |
|||
*/ |
|||
@Excel(name = "所属除尘系统编码,与除尘系统信息中的设备编码一致", width = 15) |
|||
@ApiModelProperty(value = "所属除尘系统编码,与除尘系统信息中的设备编码一致") |
|||
private String equipCode; |
|||
/** |
|||
* 除尘系统id |
|||
*/ |
|||
@Excel(name = "除尘系统id", width = 15) |
|||
@ApiModelProperty(value = "除尘系统id") |
|||
private String equipId; |
|||
/** |
|||
* 指标名称 |
|||
*/ |
|||
@Excel(name = "指标名称", width = 15) |
|||
@ApiModelProperty(value = "指标名称") |
|||
private String targetName; |
|||
/** |
|||
* 指标类别:01-除尘系统启停信号;02-除尘器进出风口压差;03-锁气卸灰故障信号;04-除尘器灰斗温度;05-爆炸防控措施失效信号;06-除尘器灭火装置有效性信号;07-泄爆装置失效信号;08-隔爆阀自锁反馈信号;09-过滤器清灰气源压力;10-喷淋水流量;11-水箱水位信号;12-金属粉储存场所氢气浓度信号;13-过滤水压力;15-火花熄灭装置喷淋水压/水蒸气压力;16-火花熄灭装置动作触发信号;17-火花探测系统运行信号;18-灰斗料位信号;19-输灰装置故障信号;20-火焰探测器报警信号;21-斗提机打滑、跑偏报警信号;22-火花熄灭装置喷淋管路流量信号 |
|||
*/ |
|||
@Excel(name = "指标类别:01-除尘系统启停信号;02-除尘器进出风口压差;03-锁气卸灰故障信号;04-除尘器灰斗温度;05-爆炸防控措施失效信号;06-除尘器灭火装置有效性信号;07-泄爆装置失效信号;08-隔爆阀自锁反馈信号;09-过滤器清灰气源压力;10-喷淋水流量;11-水箱水位信号;12-金属粉储存场所氢气浓度信号;13-过滤水压力;15-火花熄灭装置喷淋水压/水蒸气压力;16-火花熄灭装置动作触发信号;17-火花探测系统运行信号;18-灰斗料位信号;19-输灰装置故障信号;20-火焰探测器报警信号;21-斗提机打滑、跑偏报警信号;22-火花熄灭装置喷淋管路流量信号", width = 15) |
|||
@ApiModelProperty(value = "指标类别:01-除尘系统启停信号;02-除尘器进出风口压差;03-锁气卸灰故障信号;04-除尘器灰斗温度;05-爆炸防控措施失效信号;06-除尘器灭火装置有效性信号;07-泄爆装置失效信号;08-隔爆阀自锁反馈信号;09-过滤器清灰气源压力;10-喷淋水流量;11-水箱水位信号;12-金属粉储存场所氢气浓度信号;13-过滤水压力;15-火花熄灭装置喷淋水压/水蒸气压力;16-火花熄灭装置动作触发信号;17-火花探测系统运行信号;18-灰斗料位信号;19-输灰装置故障信号;20-火焰探测器报警信号;21-斗提机打滑、跑偏报警信号;22-火花熄灭装置喷淋管路流量信号") |
|||
private String targetType; |
|||
/** |
|||
* 指标采集点位置 |
|||
*/ |
|||
@Excel(name = "指标采集点位置", width = 15) |
|||
@ApiModelProperty(value = "指标采集点位置") |
|||
private String targetPlace; |
|||
/** |
|||
* 计量单位,模拟量必填 |
|||
*/ |
|||
@Excel(name = "计量单位,模拟量必填", width = 15) |
|||
@ApiModelProperty(value = "计量单位,模拟量必填") |
|||
private String targetUnit; |
|||
/** |
|||
* 指标阈值上限,高报阈值 |
|||
*/ |
|||
@Excel(name = "指标阈值上限,高报阈值", width = 15) |
|||
@ApiModelProperty(value = "指标阈值上限,高报阈值") |
|||
private Double thresholdUpLimit; |
|||
/** |
|||
* 指标阈值上上限,高高报阈值 |
|||
*/ |
|||
@Excel(name = "指标阈值上上限,高高报阈值", width = 15) |
|||
@ApiModelProperty(value = "指标阈值上上限,高高报阈值") |
|||
private Double thresholdUpUpLimit; |
|||
/** |
|||
* 指标阈值下限,低报阈值 |
|||
*/ |
|||
@Excel(name = "指标阈值下限,低报阈值", width = 15) |
|||
@ApiModelProperty(value = "指标阈值下限,低报阈值") |
|||
private Double thresholdDownLimit; |
|||
/** |
|||
* 指标阈值下下限,低低报阈值 |
|||
*/ |
|||
@Excel(name = "指标阈值下下限,低低报阈值", width = 15) |
|||
@ApiModelProperty(value = "指标阈值下下限,低低报阈值") |
|||
private Double thresholdDownDownLimit; |
|||
/** |
|||
* 量程上限,模拟量指标需要填写 |
|||
*/ |
|||
@Excel(name = "量程上限,模拟量指标需要填写", width = 15) |
|||
@ApiModelProperty(value = "量程上限,模拟量指标需要填写") |
|||
private Double rangeUp; |
|||
/** |
|||
* 量程下限,模拟量指标需要填写 |
|||
*/ |
|||
@Excel(name = "量程下限,模拟量指标需要填写", width = 15) |
|||
@ApiModelProperty(value = "量程下限,模拟量指标需要填写") |
|||
private Double rangeDown; |
|||
/** |
|||
* 描述 |
|||
*/ |
|||
@Excel(name = "描述", width = 15) |
|||
@ApiModelProperty(value = "描述") |
|||
private String targetDescription; |
|||
/** |
|||
* 位号 |
|||
*/ |
|||
@Excel(name = "位号", width = 15) |
|||
@ApiModelProperty(value = "位号") |
|||
private String bitNo; |
|||
/** |
|||
* 信号类型:01-模拟量;02-开关量 |
|||
*/ |
|||
@Excel(name = "信号类型:01-模拟量;02-开关量", width = 15) |
|||
@ApiModelProperty(value = "信号类型:01-模拟量;02-开关量") |
|||
private String signalType; |
|||
/** |
|||
* 开关量报警值:1或者0 |
|||
*/ |
|||
@Excel(name = "开关量报警值:1或者0", width = 15) |
|||
@ApiModelProperty(value = "开关量报警值:1或者0") |
|||
private Double alarmValue; |
|||
/** |
|||
* 指标停用状态:0-停用;1-正常使用 |
|||
*/ |
|||
@Excel(name = "指标停用状态:0-停用;1-正常使用", width = 15) |
|||
@ApiModelProperty(value = "指标停用状态:0-停用;1-正常使用") |
|||
private String targetStatus; |
|||
/** |
|||
* 有效标记:0-无效;1-有效 |
|||
*/ |
|||
@Excel(name = "有效标记:0-无效;1-有效", width = 15) |
|||
@ApiModelProperty(value = "有效标记:0-无效;1-有效") |
|||
private String actived; |
|||
/** |
|||
* 删除标记:0-未删除;1-已删除 |
|||
*/ |
|||
@Excel(name = "删除标记:0-未删除;1-已删除", width = 15) |
|||
@ApiModelProperty(value = "删除标记:0-未删除;1-已删除") |
|||
@TableLogic |
|||
private String delFlag; |
|||
/** |
|||
* 创建人 |
|||
*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String creatorName; |
|||
/** |
|||
* 创建时间 |
|||
*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/** |
|||
* 修改人 |
|||
*/ |
|||
@Excel(name = "修改人", width = 15) |
|||
@ApiModelProperty(value = "修改人") |
|||
private String updatorName; |
|||
/** |
|||
* 修改时间 |
|||
*/ |
|||
@Excel(name = "修改时间", width = 15) |
|||
@ApiModelProperty(value = "修改时间") |
|||
private Date updateTime; |
|||
} |
@ -0,0 +1,157 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 视频设备信息中间数据表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("tb_dust_videoinfo") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value = "tb_dust_videoinfo对象", description = "视频设备信息中间数据表") |
|||
public class TbDustVideoinfo { |
|||
|
|||
/** |
|||
* 视频唯一标识 |
|||
*/ |
|||
@Excel(name = "视频唯一标识", width = 15) |
|||
@ApiModelProperty(value = "视频唯一标识") |
|||
private String id; |
|||
/** |
|||
* 系统id |
|||
*/ |
|||
@Excel(name = "系统id", width = 15) |
|||
@ApiModelProperty(value = "系统id") |
|||
private String equipinfoId; |
|||
/** |
|||
* ip |
|||
*/ |
|||
@Excel(name = "ip", width = 15) |
|||
@ApiModelProperty(value = "ip") |
|||
private String ip; |
|||
/** |
|||
* 账号 |
|||
*/ |
|||
@Excel(name = "账号", width = 15) |
|||
@ApiModelProperty(value = "账号") |
|||
private String username; |
|||
/** |
|||
* 密码 |
|||
*/ |
|||
@Excel(name = "密码", width = 15) |
|||
@ApiModelProperty(value = "密码") |
|||
private String password; |
|||
/** |
|||
* 所属行政区划编码,全国唯一行政区划编码 |
|||
*/ |
|||
@Excel(name = "所属行政区划编码,全国唯一行政区划编码", width = 15) |
|||
@ApiModelProperty(value = "所属行政区划编码,全国唯一行政区划编码") |
|||
private String areaCode; |
|||
/** |
|||
* 所属企业 |
|||
*/ |
|||
@Excel(name = "所属企业", width = 15) |
|||
@ApiModelProperty(value = "所属企业") |
|||
private String companyCode; |
|||
/** |
|||
* 安装场所,场所编码 |
|||
*/ |
|||
@Excel(name = "安装场所,场所编码", width = 15) |
|||
@ApiModelProperty(value = "安装场所,场所编码") |
|||
private String placeName; |
|||
/** |
|||
* 设备名称,视频在省级视频平台中的唯一性标识 |
|||
*/ |
|||
@Excel(name = "设备名称,视频在省级视频平台中的唯一性标识", width = 15) |
|||
@ApiModelProperty(value = "设备名称,视频在省级视频平台中的唯一性标识") |
|||
private String equipName; |
|||
/** |
|||
* 设备型号 |
|||
*/ |
|||
@Excel(name = "设备型号", width = 15) |
|||
@ApiModelProperty(value = "设备型号") |
|||
private String equipType; |
|||
/** |
|||
* 设备品牌 |
|||
*/ |
|||
@Excel(name = "设备品牌", width = 15) |
|||
@ApiModelProperty(value = "设备品牌") |
|||
private String equipFactory; |
|||
/** |
|||
* 经度 |
|||
*/ |
|||
@Excel(name = "经度", width = 15) |
|||
@ApiModelProperty(value = "经度") |
|||
private Double longitude; |
|||
/** |
|||
* 纬度 |
|||
*/ |
|||
@Excel(name = "纬度", width = 15) |
|||
@ApiModelProperty(value = "纬度") |
|||
private Double latitude; |
|||
/** |
|||
* 是否在线:0-否;1-是 |
|||
*/ |
|||
@Excel(name = "是否在线:0-否;1-是", width = 15) |
|||
@ApiModelProperty(value = "是否在线:0-否;1-是") |
|||
private String online; |
|||
/** |
|||
* 是否有效:0-无效;1-有效 |
|||
*/ |
|||
@Excel(name = "是否有效:0-无效;1-有效", width = 15) |
|||
@ApiModelProperty(value = "是否有效:0-无效;1-有效") |
|||
private String valid; |
|||
/** |
|||
* 有效标记:0-无效;1-有效 |
|||
*/ |
|||
@Excel(name = "有效标记:0-无效;1-有效", width = 15) |
|||
@ApiModelProperty(value = "有效标记:0-无效;1-有效") |
|||
private String actived; |
|||
/** |
|||
* 删除标记:0-未删除;1-已删除 |
|||
*/ |
|||
@Excel(name = "删除标记:0-未删除;1-已删除", width = 15) |
|||
@ApiModelProperty(value = "删除标记:0-未删除;1-已删除") |
|||
@TableLogic |
|||
private String delFlag; |
|||
/** |
|||
* 创建人 |
|||
*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String creatorName; |
|||
/** |
|||
* 创建时间 |
|||
*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/** |
|||
* 修改人 |
|||
*/ |
|||
@Excel(name = "修改人", width = 15) |
|||
@ApiModelProperty(value = "修改人") |
|||
private String updatorName; |
|||
/** |
|||
* 修改时间 |
|||
*/ |
|||
@Excel(name = "修改时间", width = 15) |
|||
@ApiModelProperty(value = "修改时间") |
|||
private Date updateTime; |
|||
} |
@ -0,0 +1,91 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 预警信息推送记录表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("tb_dust_warning") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value="tb_dust_warning对象", description="预警信息推送记录表") |
|||
public class TbDustWarning { |
|||
|
|||
/**预警编号,主键,唯一*/ |
|||
@Excel(name = "预警编号,主键,唯一", width = 15) |
|||
@ApiModelProperty(value = "预警编号,主键,唯一") |
|||
private String id; |
|||
/**系统id*/ |
|||
@Excel(name = "系统id", width = 15) |
|||
@ApiModelProperty(value = "系统id") |
|||
private String equipinfoId; |
|||
/**预警发布单位*/ |
|||
@Excel(name = "预警发布单位", width = 15) |
|||
@ApiModelProperty(value = "预警发布单位") |
|||
private String warnUnit; |
|||
/**预警关联企业的数据接入标识*/ |
|||
@Excel(name = "预警关联企业的数据接入标识", width = 15) |
|||
@ApiModelProperty(value = "预警关联企业的数据接入标识") |
|||
private String dataId; |
|||
/**预警等级:1-红色预警;2-橙色预警;3-黄色预警*/ |
|||
@Excel(name = "预警等级:1-红色预警;2-橙色预警;3-黄色预警", width = 15) |
|||
@ApiModelProperty(value = "预警等级:1-红色预警;2-橙色预警;3-黄色预警") |
|||
private String rank; |
|||
/**预警起始时间*/ |
|||
@Excel(name = "预警起始时间", width = 15) |
|||
@ApiModelProperty(value = "预警起始时间") |
|||
private Date startTime; |
|||
/**预警状态:0-未消警;1-已消警*/ |
|||
@Excel(name = "预警状态:0-未消警;1-已消警", width = 15) |
|||
@ApiModelProperty(value = "预警状态:0-未消警;1-已消警") |
|||
private String warnStatus; |
|||
/**预警结束时间*/ |
|||
@Excel(name = "预警结束时间", width = 15) |
|||
@ApiModelProperty(value = "预警结束时间") |
|||
private Date endTime; |
|||
/**预警描述*/ |
|||
@Excel(name = "预警描述", width = 15) |
|||
@ApiModelProperty(value = "预警描述") |
|||
private String message; |
|||
/**有效标记*/ |
|||
@Excel(name = "有效标记", width = 15) |
|||
@ApiModelProperty(value = "有效标记") |
|||
private String actived; |
|||
/**删除标记:0-未删除;1-已删除*/ |
|||
@Excel(name = "删除标记:0-未删除;1-已删除", width = 15) |
|||
@ApiModelProperty(value = "删除标记:0-未删除;1-已删除") |
|||
@TableLogic |
|||
private String delFlag; |
|||
/**创建人*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String creatorName; |
|||
/**创建时间*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/**修改人*/ |
|||
@Excel(name = "修改人", width = 15) |
|||
@ApiModelProperty(value = "修改人") |
|||
private String updatorName; |
|||
/**修改时间*/ |
|||
@Excel(name = "修改时间", width = 15) |
|||
@ApiModelProperty(value = "修改时间") |
|||
private Date updateTime; |
|||
} |
@ -0,0 +1,83 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 预警消息处置反馈表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("tb_dust_warning_feedback") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value="tb_dust_warning_feedback对象", description="预警消息处置反馈表") |
|||
public class TbDustWarningFeedback { |
|||
|
|||
/**预警编号,主键,唯一*/ |
|||
@Excel(name = "预警编号,主键,唯一", width = 15) |
|||
@ApiModelProperty(value = "预警编号,主键,唯一") |
|||
private String id; |
|||
/**系统id*/ |
|||
@Excel(name = "系统id", width = 15) |
|||
@ApiModelProperty(value = "系统id") |
|||
private String equipinfoId; |
|||
/**预警关联企业的数据接入标识*/ |
|||
@Excel(name = "预警关联企业的数据接入标识", width = 15) |
|||
@ApiModelProperty(value = "预警关联企业的数据接入标识") |
|||
private String dataId; |
|||
/**预警等级:1-红色预警;2-橙色预警;3-黄色预警*/ |
|||
@Excel(name = "预警等级:1-红色预警;2-橙色预警;3-黄色预警", width = 15) |
|||
@ApiModelProperty(value = "预警等级:1-红色预警;2-橙色预警;3-黄色预警") |
|||
private String warningRank; |
|||
/**企业反馈信息*/ |
|||
@Excel(name = "企业反馈信息", width = 15) |
|||
@ApiModelProperty(value = "企业反馈信息") |
|||
private String warnFeedback; |
|||
/**反馈时间*/ |
|||
@Excel(name = "反馈时间", width = 15) |
|||
@ApiModelProperty(value = "反馈时间") |
|||
private Date realTime; |
|||
/**填报人*/ |
|||
@Excel(name = "填报人", width = 15) |
|||
@ApiModelProperty(value = "填报人") |
|||
private String fillBy; |
|||
/**有效标记*/ |
|||
@Excel(name = "有效标记", width = 15) |
|||
@ApiModelProperty(value = "有效标记") |
|||
private String actived; |
|||
/**删除标记:0-未删除;1-已删除*/ |
|||
@Excel(name = "删除标记:0-未删除;1-已删除", width = 15) |
|||
@ApiModelProperty(value = "删除标记:0-未删除;1-已删除") |
|||
@TableLogic |
|||
private String delFlag; |
|||
/**创建人*/ |
|||
@Excel(name = "创建人", width = 15) |
|||
@ApiModelProperty(value = "创建人") |
|||
private String creatorName; |
|||
/**创建时间*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/**修改人*/ |
|||
@Excel(name = "修改人", width = 15) |
|||
@ApiModelProperty(value = "修改人") |
|||
private String updatorName; |
|||
/**修改时间*/ |
|||
@Excel(name = "修改时间", width = 15) |
|||
@ApiModelProperty(value = "修改时间") |
|||
private Date updateTime; |
|||
} |
@ -1,75 +0,0 @@ |
|||
package cc.admin.modules.dust.entity; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
import lombok.experimental.Accessors; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import cc.admin.common.aspect.annotation.Dict; |
|||
|
|||
/** |
|||
* @Description: 风速颜色表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-01-09 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Data |
|||
@TableName("wind_speed_color") |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Accessors(chain = true) |
|||
@ApiModel(value="wind_speed_color对象", description="风速颜色表") |
|||
public class WindSpeedColor { |
|||
|
|||
/**主键ID*/ |
|||
@Excel(name = "主键ID", width = 15) |
|||
@ApiModelProperty(value = "主键ID") |
|||
private String id; |
|||
/**风速*/ |
|||
@Excel(name = "风速", width = 15) |
|||
@ApiModelProperty(value = "风速") |
|||
private String windSpeed; |
|||
/**颜色*/ |
|||
@Excel(name = "颜色", width = 15) |
|||
@ApiModelProperty(value = "颜色") |
|||
private String color; |
|||
/**公式*/ |
|||
@Excel(name = "公式", width = 15) |
|||
@ApiModelProperty(value = "公式") |
|||
private String formula; |
|||
/**排序*/ |
|||
@Excel(name = "排序", width = 15) |
|||
@ApiModelProperty(value = "排序") |
|||
private Integer sortOrder; |
|||
/**备注*/ |
|||
@Excel(name = "备注", width = 15) |
|||
@ApiModelProperty(value = "备注") |
|||
private String remark; |
|||
/**删除标志*/ |
|||
@Excel(name = "删除标志", width = 15) |
|||
@ApiModelProperty(value = "删除标志") |
|||
@TableLogic |
|||
private Integer delFlag; |
|||
/**创建者*/ |
|||
@Excel(name = "创建者", width = 15) |
|||
@ApiModelProperty(value = "创建者") |
|||
private String createBy; |
|||
/**创建时间*/ |
|||
@Excel(name = "创建时间", width = 15) |
|||
@ApiModelProperty(value = "创建时间") |
|||
private Date createTime; |
|||
/**更新者*/ |
|||
@Excel(name = "更新者", width = 15) |
|||
@ApiModelProperty(value = "更新者") |
|||
private String updateBy; |
|||
/**更新时间*/ |
|||
@Excel(name = "更新时间", width = 15) |
|||
@ApiModelProperty(value = "更新时间") |
|||
private Date updateTime; |
|||
} |
@ -1,14 +0,0 @@ |
|||
package cc.admin.modules.dust.mapper; |
|||
|
|||
import cc.admin.modules.dust.entity.DesignPlan; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
|
|||
/** |
|||
* @Description: 设计方案表 |
|||
* @Author: cc-admin |
|||
* @Date: 2024-12-06 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface DesignPlanMapper extends BaseMapper<DesignPlan> { |
|||
|
|||
} |
@ -1,18 +0,0 @@ |
|||
package cc.admin.modules.dust.mapper; |
|||
|
|||
import java.util.List; |
|||
|
|||
import org.apache.ibatis.annotations.Param; |
|||
import cc.admin.modules.dust.entity.DustMonitorValve; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
|
|||
/** |
|||
* @Description: 大屏阀门监控表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface DustMonitorValveMapper extends BaseMapper<DustMonitorValve> { |
|||
|
|||
List<DustMonitorValve> valveList(); |
|||
} |
@ -1,17 +0,0 @@ |
|||
package cc.admin.modules.dust.mapper; |
|||
|
|||
import java.util.List; |
|||
|
|||
import org.apache.ibatis.annotations.Param; |
|||
import cc.admin.modules.dust.entity.DustValve; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
|
|||
/** |
|||
* @Description: 阀门表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface DustValveMapper extends BaseMapper<DustValve> { |
|||
|
|||
} |
@ -1,17 +0,0 @@ |
|||
package cc.admin.modules.dust.mapper; |
|||
|
|||
import java.util.List; |
|||
|
|||
import cc.admin.modules.dust.entity.PipeDiameterThickness; |
|||
import org.apache.ibatis.annotations.Param; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
|
|||
/** |
|||
* @Description: 管径壁厚对应表 |
|||
* @Author: cc-admin |
|||
* @Date: 2024-12-06 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface PipeDiameterThicknessMapper extends BaseMapper<PipeDiameterThickness> { |
|||
|
|||
} |
@ -1,21 +0,0 @@ |
|||
package cc.admin.modules.dust.mapper; |
|||
|
|||
import java.util.List; |
|||
|
|||
import cc.admin.modules.dust.entity.Pipe; |
|||
import org.apache.ibatis.annotations.Param; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
|
|||
/** |
|||
* @Description: 管道表 |
|||
* @Author: cc-admin |
|||
* @Date: 2024-12-06 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface PipeMapper extends BaseMapper<Pipe> { |
|||
|
|||
void delByDesignPlanId(String id); |
|||
|
|||
|
|||
|
|||
} |
@ -1,21 +0,0 @@ |
|||
package cc.admin.modules.dust.mapper; |
|||
|
|||
import java.util.List; |
|||
|
|||
import cc.admin.modules.dust.entity.RecommendPlan; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
|||
import org.apache.ibatis.annotations.Param; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
|
|||
/** |
|||
* @Description: 推荐方案表 |
|||
* @Author: cc-admin |
|||
* @Date: 2024-12-06 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface RecommendPlanMapper extends BaseMapper<RecommendPlan> { |
|||
|
|||
void deleteByDesignPlanId(String designPlanId); |
|||
|
|||
} |
@ -0,0 +1,17 @@ |
|||
package cc.admin.modules.dust.mapper; |
|||
|
|||
import cc.admin.modules.dust.entity.TbDustClearrecord; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
|
|||
import java.util.List; |
|||
|
|||
|
|||
/** |
|||
* @Description: 粉尘清扫打卡记录表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface TbDustClearrecordMapper extends BaseMapper<TbDustClearrecord> { |
|||
|
|||
} |
@ -0,0 +1,17 @@ |
|||
package cc.admin.modules.dust.mapper; |
|||
|
|||
import java.util.List; |
|||
|
|||
import cc.admin.modules.dust.entity.TbDustCompanyinfo; |
|||
import org.apache.ibatis.annotations.Param; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
|
|||
/** |
|||
* @Description: 企业基础信息表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface TbDustCompanyinfoMapper extends BaseMapper<TbDustCompanyinfo> { |
|||
|
|||
} |
@ -0,0 +1,17 @@ |
|||
package cc.admin.modules.dust.mapper; |
|||
|
|||
import java.util.List; |
|||
|
|||
import cc.admin.modules.dust.entity.TbDustTargetinfo; |
|||
import org.apache.ibatis.annotations.Param; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
|
|||
/** |
|||
* @Description: 除尘系统监测指标信息表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface TbDustTargetinfoMapper extends BaseMapper<TbDustTargetinfo> { |
|||
|
|||
} |
@ -0,0 +1,17 @@ |
|||
package cc.admin.modules.dust.mapper; |
|||
|
|||
import java.util.List; |
|||
|
|||
import cc.admin.modules.dust.entity.TbDustVideoinfo; |
|||
import org.apache.ibatis.annotations.Param; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
|
|||
/** |
|||
* @Description: 视频设备信息中间数据表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface TbDustVideoinfoMapper extends BaseMapper<TbDustVideoinfo> { |
|||
|
|||
} |
@ -0,0 +1,16 @@ |
|||
package cc.admin.modules.dust.mapper; |
|||
|
|||
import java.util.List; |
|||
|
|||
import cc.admin.modules.dust.entity.TbDustWarningFeedback; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
|
|||
/** |
|||
* @Description: 预警消息处置反馈表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface TbDustWarningFeedbackMapper extends BaseMapper<TbDustWarningFeedback> { |
|||
|
|||
} |
@ -1,18 +0,0 @@ |
|||
package cc.admin.modules.dust.mapper; |
|||
|
|||
import cc.admin.modules.dust.entity.WindSpeedColor; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
|
|||
import java.util.List; |
|||
|
|||
|
|||
|
|||
/** |
|||
* @Description: 风速颜色表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-01-09 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface WindSpeedColorMapper extends BaseMapper<WindSpeedColor> { |
|||
|
|||
} |
@ -1,11 +0,0 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.DustMonitorValveMapper"> |
|||
|
|||
<select id="valveList" resultType="cc.admin.modules.dust.entity.DustMonitorValve"> |
|||
select d.*,v.system_id from dust_monitor_valve d |
|||
left join dust_valve |
|||
v on d.valve_id = v.id |
|||
where d.del_flag = 0 |
|||
</select> |
|||
</mapper> |
@ -1,5 +0,0 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.DustValveMapper"> |
|||
|
|||
</mapper> |
@ -1,5 +0,0 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.PipeDiameterThicknessMapper"> |
|||
|
|||
</mapper> |
@ -1,7 +0,0 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.PipeMapper"> |
|||
<delete id="delByDesignPlanId"> |
|||
delete from pipe where design_plan_id = #{designPlanId} |
|||
</delete> |
|||
</mapper> |
@ -1,10 +0,0 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.RecommendPlanMapper"> |
|||
|
|||
<delete id="deleteByDesignPlanId"> |
|||
delete from recommend_plan |
|||
WHERE design_plan_id = #{designPlanId} |
|||
</delete> |
|||
|
|||
</mapper> |
@ -1,5 +1,5 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.DustAlarmMapper"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.TbDustAttachmentMapper"> |
|||
|
|||
</mapper> |
@ -0,0 +1,5 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.TbDustClearrecordMapper"> |
|||
|
|||
</mapper> |
@ -0,0 +1,5 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.TbDustCompanyinfoMapper"> |
|||
|
|||
</mapper> |
@ -1,5 +1,5 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="cc.admin.modules.wind.mapper.WindSpeedColorMapper"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.TbDustDustinfoMapper"> |
|||
|
|||
</mapper> |
@ -1,5 +1,5 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.DustMonitorItemMapper"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.TbDustEquipinfoMapper"> |
|||
|
|||
</mapper> |
@ -1,5 +1,5 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.DustDataTagMapper"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.TbDustTargetinfoMapper"> |
|||
|
|||
</mapper> |
@ -1,5 +1,5 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.DesignPlanMapper"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.TbDustVideoinfoMapper"> |
|||
|
|||
</mapper> |
@ -0,0 +1,5 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.TbDustWarningFeedbackMapper"> |
|||
|
|||
</mapper> |
@ -1,5 +1,5 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.DustSystemMapper"> |
|||
<mapper namespace="cc.admin.modules.dust.mapper.TbDustWarningMapper"> |
|||
|
|||
</mapper> |
@ -1,17 +0,0 @@ |
|||
package cc.admin.modules.dust.po; |
|||
|
|||
|
|||
import cc.admin.modules.dust.entity.Pipe; |
|||
import cc.admin.poi.excel.annotation.Excel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.List; |
|||
|
|||
@Data |
|||
public class DustQuery { |
|||
/**推荐方案id*/ |
|||
private String designPlanId; |
|||
|
|||
private List<Pipe> list; |
|||
} |
@ -1,16 +0,0 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
import cc.admin.modules.dust.entity.DesignPlan; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
/** |
|||
* @Description: 设计方案表 |
|||
* @Author: cc-admin |
|||
* @Date: 2024-12-06 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface IDesignPlanService extends IService<DesignPlan> { |
|||
|
|||
void copy(DesignPlan designPlan,String name); |
|||
|
|||
} |
@ -1,14 +0,0 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
import cc.admin.modules.dust.entity.DustAlarm; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
/** |
|||
* @Description: 警报记录表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface IDustAlarmService extends IService<DustAlarm> { |
|||
|
|||
} |
@ -1,14 +0,0 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
import cc.admin.modules.dust.entity.DustDataTag; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
/** |
|||
* @Description: 数据点位表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface IDustDataTagService extends IService<DustDataTag> { |
|||
|
|||
} |
@ -1,14 +0,0 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
import cc.admin.modules.dust.entity.DustMonitorItem; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
/** |
|||
* @Description: 大屏监控项表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface IDustMonitorItemService extends IService<DustMonitorItem> { |
|||
|
|||
} |
@ -1,18 +0,0 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
import cc.admin.modules.dust.entity.DustMonitorValve; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @Description: 大屏阀门监控表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface IDustMonitorValveService extends IService<DustMonitorValve> { |
|||
|
|||
List<DustMonitorValve> valveList(); |
|||
|
|||
} |
@ -1,14 +0,0 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
import cc.admin.modules.dust.entity.DustSystem; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
/** |
|||
* @Description: 除尘系统表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface IDustSystemService extends IService<DustSystem> { |
|||
|
|||
} |
@ -1,14 +0,0 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
import cc.admin.modules.dust.entity.DustValve; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
/** |
|||
* @Description: 阀门表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface IDustValveService extends IService<DustValve> { |
|||
|
|||
} |
@ -1,17 +0,0 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
|
|||
import cc.admin.modules.dust.entity.PipeDiameterThickness; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
import java.math.BigDecimal; |
|||
|
|||
/** |
|||
* @Description: 管径壁厚对应表 |
|||
* @Author: cc-admin |
|||
* @Date: 2024-12-06 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface IPipeDiameterThicknessService extends IService<PipeDiameterThickness> { |
|||
|
|||
} |
@ -1,27 +0,0 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
import cc.admin.common.api.vo.Result; |
|||
import cc.admin.modules.dust.entity.Pipe; |
|||
import cc.admin.modules.dust.vo.DustConfigVo; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @Description: 管道表 |
|||
* @Author: cc-admin |
|||
* @Date: 2024-12-06 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface IPipeService extends IService<Pipe> { |
|||
|
|||
Result<?> importList(List<DustConfigVo> configVoList, List<String> errorList,String designPlanId); |
|||
|
|||
void delByDesignPlanId(String id); |
|||
|
|||
void savePipe(Pipe pipe); |
|||
|
|||
void updatePipe(Pipe pipe); |
|||
|
|||
void remove(String id); |
|||
} |
@ -1,20 +0,0 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
import cc.admin.modules.dust.entity.RecommendPlan; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @Description: 推荐方案表 |
|||
* @Author: cc-admin |
|||
* @Date: 2024-12-06 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface IRecommendPlanService extends IService<RecommendPlan> { |
|||
|
|||
void deleteByDesignPlanId(String designPlanId); |
|||
} |
@ -0,0 +1,15 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
|
|||
import cc.admin.modules.dust.entity.TbDustAttachment; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
/** |
|||
* @Description: 附件信息表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface ITbDustAttachmentService extends IService<TbDustAttachment> { |
|||
|
|||
} |
@ -0,0 +1,14 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
import cc.admin.modules.dust.entity.TbDustClearrecord; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
/** |
|||
* @Description: 粉尘清扫打卡记录表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface ITbDustClearrecordService extends IService<TbDustClearrecord> { |
|||
|
|||
} |
@ -0,0 +1,14 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
import cc.admin.modules.dust.entity.TbDustCompanyinfo; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
/** |
|||
* @Description: 企业基础信息表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface ITbDustCompanyinfoService extends IService<TbDustCompanyinfo> { |
|||
|
|||
} |
@ -0,0 +1,14 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
import cc.admin.modules.dust.entity.TbDustDustinfo; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
/** |
|||
* @Description: 涉尘信息表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface ITbDustDustinfoService extends IService<TbDustDustinfo> { |
|||
|
|||
} |
@ -0,0 +1,14 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
import cc.admin.modules.dust.entity.TbDustEquipinfo; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
/** |
|||
* @Description: 除尘系统信息表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface ITbDustEquipinfoService extends IService<TbDustEquipinfo> { |
|||
|
|||
} |
@ -0,0 +1,14 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
import cc.admin.modules.dust.entity.TbDustTargetinfo; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
/** |
|||
* @Description: 除尘系统监测指标信息表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface ITbDustTargetinfoService extends IService<TbDustTargetinfo> { |
|||
|
|||
} |
@ -0,0 +1,14 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
import cc.admin.modules.dust.entity.TbDustVideoinfo; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
/** |
|||
* @Description: 视频设备信息中间数据表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface ITbDustVideoinfoService extends IService<TbDustVideoinfo> { |
|||
|
|||
} |
@ -0,0 +1,14 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
import cc.admin.modules.dust.entity.TbDustWarningFeedback; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
/** |
|||
* @Description: 预警消息处置反馈表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface ITbDustWarningFeedbackService extends IService<TbDustWarningFeedback> { |
|||
|
|||
} |
@ -0,0 +1,14 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
import cc.admin.modules.dust.entity.TbDustWarning; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
/** |
|||
* @Description: 预警信息推送记录表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-04-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface ITbDustWarningService extends IService<TbDustWarning> { |
|||
|
|||
} |
@ -1,15 +0,0 @@ |
|||
package cc.admin.modules.dust.service; |
|||
|
|||
|
|||
import cc.admin.modules.dust.entity.WindSpeedColor; |
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
|
|||
/** |
|||
* @Description: 风速颜色表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-01-09 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
public interface IWindSpeedColorService extends IService<WindSpeedColor> { |
|||
|
|||
} |
@ -1,114 +0,0 @@ |
|||
package cc.admin.modules.dust.service.impl; |
|||
|
|||
|
|||
import cc.admin.modules.dust.entity.DesignPlan; |
|||
import cc.admin.modules.dust.entity.Pipe; |
|||
import cc.admin.modules.dust.mapper.DesignPlanMapper; |
|||
import cc.admin.modules.dust.service.IDesignPlanService; |
|||
import cc.admin.modules.dust.service.IPipeService; |
|||
import cn.hutool.core.util.IdUtil; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import org.apache.commons.collections.CollectionUtils; |
|||
import org.apache.commons.lang3.StringUtils; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
import org.springframework.transaction.annotation.Transactional; |
|||
|
|||
import java.util.*; |
|||
import java.util.stream.Collectors; |
|||
|
|||
/** |
|||
* @Description: 设计方案表 |
|||
* @Author: cc-admin |
|||
* @Date: 2024-12-06 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Service |
|||
public class DesignPlanServiceImpl extends ServiceImpl<DesignPlanMapper, DesignPlan> implements IDesignPlanService { |
|||
@Autowired |
|||
private IPipeService iPipeService; |
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public void copy(DesignPlan designPlan, String name) { |
|||
|
|||
QueryWrapper<Pipe> objectQueryWrapper = new QueryWrapper<>(); |
|||
objectQueryWrapper.eq("design_plan_id", designPlan.getId()); |
|||
List<Pipe> list = iPipeService.list(objectQueryWrapper); |
|||
String id = IdUtil.fastUUID(); |
|||
designPlan.setId(id); |
|||
designPlan.setName(name); |
|||
save(designPlan); |
|||
List<Pipe> pipeTree = buildPipeTree(list,id); |
|||
|
|||
if (CollectionUtils.isNotEmpty(pipeTree)) { |
|||
|
|||
// 递归更新所有管道
|
|||
updatePipeTree(pipeTree, null); // null 表示根管道没有父管道 ID
|
|||
List<Pipe> updatedList = new ArrayList<>(); |
|||
|
|||
flattenPipeTree(pipeTree, updatedList); |
|||
|
|||
iPipeService.saveBatch(updatedList); |
|||
} |
|||
|
|||
} |
|||
|
|||
private void updatePipeTree(List<Pipe> pipes, String parentId) { |
|||
for (Pipe pipe : pipes) { |
|||
// 生成新的管道 ID
|
|||
String newPipeId = IdUtil.fastUUID(); |
|||
pipe.setId(newPipeId); |
|||
|
|||
// 设置父管道的 ID
|
|||
pipe.setParentId(parentId); // 当前管道的父管道 ID
|
|||
|
|||
// 如果当前管道有子管道,递归处理子管道
|
|||
if (pipe.getChildren() != null && !pipe.getChildren().isEmpty()) { |
|||
updatePipeTree(pipe.getChildren(), newPipeId); // 递归更新子管道
|
|||
} |
|||
} |
|||
} |
|||
|
|||
private List<Pipe> buildPipeTree(List<Pipe> allPipes,String id) { |
|||
Map<String, Pipe> pipeMap = new HashMap<>(); |
|||
List<Pipe> rootPipes = new ArrayList<>(); |
|||
|
|||
// 创建一个管道 Map,用于快速查找
|
|||
for (Pipe pipe : allPipes) { |
|||
pipeMap.put(pipe.getId(), pipe); |
|||
} |
|||
|
|||
// 处理每个管道,构建父子关系
|
|||
for (Pipe pipe : allPipes) { |
|||
pipe.setCreateTime(new Date()); |
|||
pipe.setDesignPlanId(id); |
|||
if (StringUtils.isEmpty(pipe.getParentId())) { |
|||
// 如果是根管道,直接加入根管道列表
|
|||
rootPipes.add(pipe); |
|||
} else { |
|||
// 如果是子管道,将其加入父管道的 children 列表
|
|||
Pipe parentPipe = pipeMap.get(pipe.getParentId()); |
|||
if (parentPipe != null) { |
|||
if (parentPipe.getChildren() == null) { |
|||
parentPipe.setChildren(new ArrayList<>()); // 初始化 children
|
|||
} |
|||
parentPipe.getChildren().add(pipe); |
|||
} |
|||
} |
|||
} |
|||
|
|||
return rootPipes; |
|||
} |
|||
// 递归将树状结构扁平化为平铺列表
|
|||
private void flattenPipeTree(List<Pipe> pipeTree, List<Pipe> flatList) { |
|||
for (Pipe pipe : pipeTree) { |
|||
flatList.add(pipe); // 将当前管道添加到平铺列表
|
|||
if (pipe.getChildren() != null && !pipe.getChildren().isEmpty()) { |
|||
flattenPipeTree(pipe.getChildren(), flatList); // 递归扁平化子管道
|
|||
} |
|||
} |
|||
} |
|||
} |
@ -1,19 +0,0 @@ |
|||
package cc.admin.modules.dust.service.impl; |
|||
|
|||
import cc.admin.modules.dust.entity.DustAlarm; |
|||
import cc.admin.modules.dust.mapper.DustAlarmMapper; |
|||
import cc.admin.modules.dust.service.IDustAlarmService; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
|
|||
/** |
|||
* @Description: 警报记录表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Service |
|||
public class DustAlarmServiceImpl extends ServiceImpl<DustAlarmMapper, DustAlarm> implements IDustAlarmService { |
|||
|
|||
} |
@ -1,19 +0,0 @@ |
|||
package cc.admin.modules.dust.service.impl; |
|||
|
|||
import cc.admin.modules.dust.entity.DustDataTag; |
|||
import cc.admin.modules.dust.mapper.DustDataTagMapper; |
|||
import cc.admin.modules.dust.service.IDustDataTagService; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
|
|||
/** |
|||
* @Description: 数据点位表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Service |
|||
public class DustDataTagServiceImpl extends ServiceImpl<DustDataTagMapper, DustDataTag> implements IDustDataTagService { |
|||
|
|||
} |
@ -1,19 +0,0 @@ |
|||
package cc.admin.modules.dust.service.impl; |
|||
|
|||
import cc.admin.modules.dust.entity.DustMonitorItem; |
|||
import cc.admin.modules.dust.mapper.DustMonitorItemMapper; |
|||
import cc.admin.modules.dust.service.IDustMonitorItemService; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
|
|||
/** |
|||
* @Description: 大屏监控项表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Service |
|||
public class DustMonitorItemServiceImpl extends ServiceImpl<DustMonitorItemMapper, DustMonitorItem> implements IDustMonitorItemService { |
|||
|
|||
} |
@ -1,29 +0,0 @@ |
|||
package cc.admin.modules.dust.service.impl; |
|||
|
|||
import cc.admin.modules.dust.entity.DustMonitorValve; |
|||
import cc.admin.modules.dust.mapper.DustMonitorValveMapper; |
|||
import cc.admin.modules.dust.service.IDustMonitorValveService; |
|||
import org.apache.ibatis.annotations.Param; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
|
|||
import javax.annotation.Resource; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @Description: 大屏阀门监控表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Service |
|||
public class DustMonitorValveServiceImpl extends ServiceImpl<DustMonitorValveMapper, DustMonitorValve> implements IDustMonitorValveService { |
|||
@Resource |
|||
private DustMonitorValveMapper dustMonitorValveMapper; |
|||
|
|||
@Override |
|||
public List<DustMonitorValve> valveList() { |
|||
return dustMonitorValveMapper.valveList(); |
|||
} |
|||
} |
@ -1,19 +0,0 @@ |
|||
package cc.admin.modules.dust.service.impl; |
|||
|
|||
import cc.admin.modules.dust.entity.DustSystem; |
|||
import cc.admin.modules.dust.mapper.DustSystemMapper; |
|||
import cc.admin.modules.dust.service.IDustSystemService; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
|
|||
/** |
|||
* @Description: 除尘系统表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Service |
|||
public class DustSystemServiceImpl extends ServiceImpl<DustSystemMapper, DustSystem> implements IDustSystemService { |
|||
|
|||
} |
@ -1,19 +0,0 @@ |
|||
package cc.admin.modules.dust.service.impl; |
|||
|
|||
import cc.admin.modules.dust.entity.DustValve; |
|||
import cc.admin.modules.dust.mapper.DustValveMapper; |
|||
import cc.admin.modules.dust.service.IDustValveService; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
|
|||
/** |
|||
* @Description: 阀门表 |
|||
* @Author: cc-admin |
|||
* @Date: 2025-03-27 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Service |
|||
public class DustValveServiceImpl extends ServiceImpl<DustValveMapper, DustValve> implements IDustValveService { |
|||
|
|||
} |
@ -1,25 +0,0 @@ |
|||
package cc.admin.modules.dust.service.impl; |
|||
|
|||
|
|||
import cc.admin.modules.dust.entity.PipeDiameterThickness; |
|||
import cc.admin.modules.dust.mapper.PipeDiameterThicknessMapper; |
|||
import cc.admin.modules.dust.service.IPipeDiameterThicknessService; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
|
|||
import java.math.BigDecimal; |
|||
|
|||
/** |
|||
* @Description: 管径壁厚对应表 |
|||
* @Author: cc-admin |
|||
* @Date: 2024-12-06 |
|||
* @Version: V1.0.0 |
|||
*/ |
|||
@Service |
|||
public class PipeDiameterThicknessServiceImpl extends ServiceImpl<PipeDiameterThicknessMapper, PipeDiameterThickness> implements IPipeDiameterThicknessService { |
|||
|
|||
|
|||
|
|||
} |
Some files were not shown because too many files changed in this diff
Loading…
Reference in new issue