diff --git a/pqs-common/common-influxdb/src/test/java/DataTest.java b/pqs-common/common-influxdb/src/test/java/DataTest.java index be643311a..f8e731d8f 100644 --- a/pqs-common/common-influxdb/src/test/java/DataTest.java +++ b/pqs-common/common-influxdb/src/test/java/DataTest.java @@ -353,4 +353,27 @@ public class DataTest { influxDBUtil.batchInsert("test", "", ConsistencyLevel.ALL, TimeUnit.MILLISECONDS, records); } + public static void batchInsertPqsCommunicate(InfluxDbUtils influxDBUtil) { + Map tags = new HashMap<>(); + tags.put("line_id", "025fa0e4c91f72ad7f1c1bd29026f20a"); + + + Map fields = new HashMap<>(); + fields.put("description", "在线"); + fields.put("type", 1); + + influxDBUtil.insert("pqs_communicate", tags, fields, System.currentTimeMillis()-170000000, TimeUnit.MILLISECONDS); + + Map tags1 = new HashMap<>(); + tags1.put("line_id", "025fa0e4c91f72ad7f1c1bd29026f20a"); + + + Map fields1 = new HashMap<>(); + fields1.put("description", "掉线"); + fields1.put("type", 0); + + influxDBUtil.insert("pqs_communicate", tags1, fields1, System.currentTimeMillis()-70000000, TimeUnit.MILLISECONDS); + } + + } diff --git a/pqs-system/system-api/src/main/java/com/njcn/system/enums/TemplateTreeEnum.java b/pqs-system/system-api/src/main/java/com/njcn/system/enums/TemplateTreeEnum.java index 8c55b4be2..b9f5e1533 100644 --- a/pqs-system/system-api/src/main/java/com/njcn/system/enums/TemplateTreeEnum.java +++ b/pqs-system/system-api/src/main/java/com/njcn/system/enums/TemplateTreeEnum.java @@ -15,9 +15,9 @@ public enum TemplateTreeEnum { REPORT_LEVEL(0, "报告基础项"), LINE_LEVEL(1, "监测点"), DETAIL_LEVEL(2, "监测点详情"), - TRANS_LEVEL(3, "暂降事件列表表格"), - TRANS_D_LEVEL(4, "暂降密度图形"), - TRANS_R_LEVEL(5, "暂降原因表格"); + TRANS_LEVEL(2, "暂降事件列表表格"), + TRANS_D_LEVEL(2, "暂降密度图形"), + TRANS_R_LEVEL(2, "暂降原因表格"); private final Integer code; private final String message; diff --git a/pqs-system/system-api/src/main/java/com/njcn/system/pojo/param/EventDictParam.java b/pqs-system/system-api/src/main/java/com/njcn/system/pojo/param/EventDictParam.java new file mode 100644 index 000000000..8346a13f6 --- /dev/null +++ b/pqs-system/system-api/src/main/java/com/njcn/system/pojo/param/EventDictParam.java @@ -0,0 +1,61 @@ +package com.njcn.system.pojo.param; + +import com.njcn.common.pojo.constant.PatternRegex; +import com.njcn.web.constant.ValidMessage; +import com.njcn.web.pojo.param.BaseParam; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.Pattern; + +@Data +public class EventDictParam { + + /** + * 父级id + */ + @ApiModelProperty(value = "父级id") + private String pid; + + /** + * 字典表字段名称 + */ + @ApiModelProperty(value = "字典表字段名称") + private String name; + + /** + * 字典表字段描述 + */ + @ApiModelProperty(value = "字典表字段描述") + private String describe; + + + /** + * 更新操作实体 + */ + @Data + @EqualsAndHashCode(callSuper = true) + public static class DictUpdateParam extends EventDictParam { + + @ApiModelProperty("id") + @NotBlank(message = ValidMessage.ID_NOT_BLANK) + @Pattern(regexp = PatternRegex.SYSTEM_ID, message = ValidMessage.ID_FORMAT_ERROR) + private String id; + } + + /** + * 分页查询实体 + */ + @Data + @EqualsAndHashCode(callSuper = true) + public static class DictQueryParam extends BaseParam { + @ApiModelProperty("pid") + @NotBlank(message = ValidMessage.ID_NOT_BLANK) + @Pattern(regexp = PatternRegex.SYSTEM_ID, message = ValidMessage.ID_FORMAT_ERROR) + private String pid; + + + } +} diff --git a/pqs-system/system-api/src/main/java/com/njcn/system/pojo/param/EventTemplateParam.java b/pqs-system/system-api/src/main/java/com/njcn/system/pojo/param/EventTemplateParam.java index 50de45966..26b37df4e 100644 --- a/pqs-system/system-api/src/main/java/com/njcn/system/pojo/param/EventTemplateParam.java +++ b/pqs-system/system-api/src/main/java/com/njcn/system/pojo/param/EventTemplateParam.java @@ -49,7 +49,7 @@ public class EventTemplateParam { } /** - * 分页查询实体 + * 查询数据 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/pqs-system/system-api/src/main/java/com/njcn/system/pojo/po/ReportDict.java b/pqs-system/system-api/src/main/java/com/njcn/system/pojo/po/ReportDict.java new file mode 100644 index 000000000..2e4ceff13 --- /dev/null +++ b/pqs-system/system-api/src/main/java/com/njcn/system/pojo/po/ReportDict.java @@ -0,0 +1,35 @@ +package com.njcn.system.pojo.po; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.njcn.db.bo.BaseEntity; +import lombok.Data; + +/** + * + * @author hany + * @createTime 2022/09/27 + */ +@Data +@TableName("report_dict") +public class ReportDict extends BaseEntity { + + private static final long serialVersionUID = 1L; + + private String id; + + private String name; + + private Integer type; + + private String describe; + + private String pid; + + private String pids; + + private Integer state; + + private Integer level; + + private Integer sort; +} diff --git a/pqs-system/system-api/src/main/java/com/njcn/system/pojo/vo/EventTemplateTree.java b/pqs-system/system-api/src/main/java/com/njcn/system/pojo/vo/EventTemplateTree.java index 8cc485216..9a9dcb961 100644 --- a/pqs-system/system-api/src/main/java/com/njcn/system/pojo/vo/EventTemplateTree.java +++ b/pqs-system/system-api/src/main/java/com/njcn/system/pojo/vo/EventTemplateTree.java @@ -17,16 +17,18 @@ import java.util.List; @Data public class EventTemplateTree implements Serializable { private String id; - @ApiModelProperty(name = "name",value = "名称") - private String name; @ApiModelProperty(name = "parentId",value = "父id") private String pid; @ApiModelProperty(name = "level",value = "等级") private Integer level; - @ApiModelProperty(name = "state",value = "数据状态") - private Integer state; + @ApiModelProperty(name = "name",value = "名称") + private String name; + @ApiModelProperty(name = "describe",value = "描述") + private String describe; @ApiModelProperty(name = "sort",value = "排序") private Integer sort; + @ApiModelProperty(name = "state",value = "数据状态") + private Integer state; @ApiModelProperty(name = "children",value = "子节点") private List children = new ArrayList<>(); diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/controller/EventDictController.java b/pqs-system/system-boot/src/main/java/com/njcn/system/controller/EventDictController.java new file mode 100644 index 000000000..5e127e178 --- /dev/null +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/controller/EventDictController.java @@ -0,0 +1,126 @@ +package com.njcn.system.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.njcn.common.pojo.annotation.OperateInfo; +import com.njcn.common.pojo.enums.common.LogEnum; +import com.njcn.common.pojo.enums.response.CommonResponseEnum; +import com.njcn.common.pojo.response.HttpResult; +import com.njcn.common.utils.HttpResultUtil; +import com.njcn.common.utils.LogUtil; +import com.njcn.system.pojo.param.EventDictParam; +import com.njcn.system.pojo.po.ReportDict; +import com.njcn.system.service.IEventDictService; +import com.njcn.web.controller.BaseController; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.Objects; + +/** + * @author hany + * @createTime 2022/09/27 + */ +@Slf4j +@RestController +@RequestMapping("/reportDict") +@RequiredArgsConstructor +@Api(tags = "字典数据管理") +public class EventDictController extends BaseController { + + private final IEventDictService iEventDictService; + + /** + * 新增字典 + * @param eventDictParam + * @return + */ + @PostMapping("/addDict") + @OperateInfo(info = LogEnum.SYSTEM_COMMON) + @ApiOperation("新增字典表") + @ApiImplicitParam(name = "eventDictParam", value = "字典表数据", required = true) + public HttpResult addDict(@RequestBody EventDictParam eventDictParam){ + String methodDescribe = getMethodDescribe("addDict"); + LogUtil.njcnDebug(log, "{},字典表数据数据为:{}", methodDescribe, eventDictParam); + boolean res = iEventDictService.addDict(eventDictParam); + if(res){ + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS,null,methodDescribe); + } else{ + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null,methodDescribe); + } + } + + /** + * 修改字典 + * @param dictUpdateParam + * @return + */ + @PostMapping("/updateDict") + @OperateInfo(info = LogEnum.SYSTEM_COMMON) + @ApiOperation("更新字典表") + @ApiImplicitParam(name = "dictUpadateParam", value = "更新字典表实体", required = true) + public HttpResult updateDict(@RequestBody EventDictParam.DictUpdateParam dictUpdateParam){ + String methodDescribe = getMethodDescribe("updateDict"); + LogUtil.njcnDebug(log, "{},字典表数据数据为:{}", methodDescribe, dictUpdateParam); + boolean res = iEventDictService.updateDict(dictUpdateParam); + if(res){ + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS,null,methodDescribe); + } else{ + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null,methodDescribe); + } + } + + /** + * 删除字典 + * @param id + * @return + */ + @PostMapping("/deleteDict") + @OperateInfo(info = LogEnum.SYSTEM_COMMON) + @ApiOperation("删除字典表") + @ApiImplicitParam(name = "id", value = "字典表索引", required = true) + public HttpResult delDict(@RequestBody String id){ + String methodDescribe = getMethodDescribe("deleteDict"); + iEventDictService.delete(id); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS,null,methodDescribe); + } + + /** + * 查询字典列表 + * @param dictQueryParam + * @return + */ + @PostMapping("/getList") + @OperateInfo(info = LogEnum.SYSTEM_COMMON) + @ApiOperation("查询字典列表") + @ApiImplicitParam(name = "dictQueryParam", value = "查询字典列表实体", required = true) + public HttpResult> getList(@RequestBody EventDictParam.DictQueryParam dictQueryParam){ + String methodDescribe = getMethodDescribe("getList"); + Page res = iEventDictService.getList(dictQueryParam); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, res, methodDescribe); + } + + /** + * 查询字典 + * @param id + * @return + */ + @PostMapping("/getDictById") + @OperateInfo(info = LogEnum.SYSTEM_COMMON) + @ApiOperation("查询字典") + public HttpResult getDictById(String id){ + String methodDescribe = getMethodDescribe("getDictById"); + ReportDict res = iEventDictService.getDictById(id); + if (Objects.nonNull(res)){ + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, res, methodDescribe); + }else { + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL,null, methodDescribe); + } + } +} diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/controller/EventTemplateController.java b/pqs-system/system-boot/src/main/java/com/njcn/system/controller/EventTemplateController.java index 94ece0c20..5885271c9 100644 --- a/pqs-system/system-boot/src/main/java/com/njcn/system/controller/EventTemplateController.java +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/controller/EventTemplateController.java @@ -1,15 +1,13 @@ package com.njcn.system.controller; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.njcn.common.pojo.annotation.OperateInfo; +import com.njcn.common.pojo.constant.OperateType; import com.njcn.common.pojo.enums.common.LogEnum; import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.response.HttpResult; import com.njcn.common.utils.HttpResultUtil; -import com.njcn.common.utils.LogUtil; import com.njcn.system.pojo.param.EventTemplateParam; import com.njcn.system.pojo.po.EventTemplate; -import com.njcn.system.pojo.vo.EventTemplateTree; import com.njcn.system.service.IEventTemplateService; import com.njcn.web.controller.BaseController; import io.swagger.annotations.Api; @@ -17,10 +15,12 @@ import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.ibatis.jdbc.Null; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; +import java.util.Objects; /** * pqs @@ -38,38 +38,43 @@ public class EventTemplateController extends BaseController{ private final IEventTemplateService iEventTemplateService; - /** - * 获取字典树 - * @author hany - * @date 2022/09/09 - */ - @ApiOperation("获取字典树") - @OperateInfo(info = LogEnum.BUSINESS_MEDIUM) - @GetMapping("/getEventTemplateTree") - public HttpResult> getEventTemplateTree(){ - String methodDescribe = getMethodDescribe("getEventTemplateTree"); - List tree = iEventTemplateService.getEventTemplateTree(); - return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, tree, methodDescribe); - } /** - * 分页查询字典类型数据 + * 查询所有模板 * @author hany * @date 2022/09/09 */ @OperateInfo(info = LogEnum.SYSTEM_COMMON) @GetMapping("/getList") - @ApiOperation("查询字典数据") - @ApiImplicitParam(name = "queryParam", value = "查询参数", required = true) - public HttpResult> getList(@RequestBody @Validated EventTemplateParam.EventTemplateQueryParam queryParam) { + @ApiOperation("查询模板数据") + public HttpResult> getList() { String methodDescribe = getMethodDescribe("getList"); - LogUtil.njcnDebug(log, "{},查询数据为:{}", methodDescribe, queryParam); - Page result = iEventTemplateService.getList(queryParam); + List result = iEventTemplateService.getList(); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); } /** - * 新增 + * 根据id查询模板 + * @author hany + * @date 2022/09/26 + */ + @OperateInfo(info = LogEnum.SYSTEM_COMMON) + @GetMapping("/getTemplateById") + @ApiOperation("查询模板数据") + @ApiImplicitParam(name = "id",value = "模板id",required = true) + public HttpResult getTemplateById(@RequestParam("id") String id){ + String methodDescribe = getMethodDescribe("getTemplateById"); + EventTemplate eventTemplate = iEventTemplateService.getTemplateById(id); + if (Objects.nonNull(eventTemplate)){ + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, eventTemplate, methodDescribe); + } + else { + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe); + } + } + + /** + * 新增模板 * @author hany * @date 2022/09/09 */ @@ -77,7 +82,7 @@ public class EventTemplateController extends BaseController{ @OperateInfo(info = LogEnum.SYSTEM_COMMON) @ApiOperation("新增模板") @ApiImplicitParam(name = "eventTemplateParam", value = "模板数据", required = true) - public HttpResult add(@RequestBody @Validated EventTemplateParam eventTemplateParam){ + public HttpResult add(@RequestBody @Validated EventTemplateParam eventTemplateParam){ String methodDescribe = getMethodDescribe("add"); boolean result = iEventTemplateService.add(eventTemplateParam); if (result) { @@ -88,12 +93,12 @@ public class EventTemplateController extends BaseController{ } /** - * 修改 + * 修改模板 * @author hany * @date 2022/09/08 */ @PostMapping("/update") - @OperateInfo(info = LogEnum.SYSTEM_COMMON) + @OperateInfo(info = LogEnum.SYSTEM_COMMON,operateType = OperateType.UPDATE) @ApiOperation("修改模板") @ApiImplicitParam(name = "eventUpdateParam", value = "模板实体", required = true) public HttpResult update(@RequestBody @Validated EventTemplateParam.EventTemplateUpdateParam eventUpdateParam){ @@ -107,7 +112,8 @@ public class EventTemplateController extends BaseController{ } /** - * 删除 + * 删除模板 + * @param ids 暂态报表模板id * @author hany * @date 2022/09/08 */ @@ -120,7 +126,8 @@ public class EventTemplateController extends BaseController{ boolean result = iEventTemplateService.delete(ids); if(result){ return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe); + }else { + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null, methodDescribe); } - return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null, methodDescribe); } } diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/controller/EventTreeController.java b/pqs-system/system-boot/src/main/java/com/njcn/system/controller/EventTreeController.java new file mode 100644 index 000000000..2bfd7a7a4 --- /dev/null +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/controller/EventTreeController.java @@ -0,0 +1,43 @@ +package com.njcn.system.controller; + +import com.njcn.common.pojo.annotation.OperateInfo; +import com.njcn.common.pojo.enums.common.LogEnum; +import com.njcn.common.pojo.enums.response.CommonResponseEnum; +import com.njcn.common.pojo.response.HttpResult; +import com.njcn.common.utils.HttpResultUtil; +import com.njcn.system.pojo.vo.EventTemplateTree; +import com.njcn.system.service.IEventTreeService; +import com.njcn.web.controller.BaseController; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@Slf4j +@Api(tags = "字典树管理") +@RestController +@AllArgsConstructor +@RequestMapping("/EventTree") +public class EventTreeController extends BaseController { + + private final IEventTreeService iEventTreeService; + + /** + * 获取字典树 + * @author hany + * @date 2022/09/09 + */ + @ApiOperation("获取字典树") + @OperateInfo(info = LogEnum.BUSINESS_MEDIUM) + @GetMapping("/getEventTree") + public HttpResult> getEventTemplateTree(){ + String methodDescribe = getMethodDescribe("getEventTree"); + List tree = iEventTreeService.getEventTree(); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, tree, methodDescribe); + } +} diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/mapper/EventDictMapper.java b/pqs-system/system-boot/src/main/java/com/njcn/system/mapper/EventDictMapper.java new file mode 100644 index 000000000..269bf4ad0 --- /dev/null +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/mapper/EventDictMapper.java @@ -0,0 +1,7 @@ +package com.njcn.system.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.njcn.system.pojo.po.ReportDict; + +public interface EventDictMapper extends BaseMapper { +} diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/mapper/EventTemplateMapper.java b/pqs-system/system-boot/src/main/java/com/njcn/system/mapper/EventTemplateMapper.java index 4af31a78a..4b6982131 100644 --- a/pqs-system/system-boot/src/main/java/com/njcn/system/mapper/EventTemplateMapper.java +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/mapper/EventTemplateMapper.java @@ -1,11 +1,8 @@ package com.njcn.system.mapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.njcn.system.pojo.po.EventTemplate; import com.njcn.system.pojo.vo.EventTemplateTree; -import org.apache.ibatis.annotations.Param; import java.util.List; @@ -17,17 +14,9 @@ public interface EventTemplateMapper extends BaseMapper { /** * 返回所有树节点(全部report_template_dict表数据) - * * @author hany * @date 2022/09/21 */ List getAllList(); - /** - * 分页查询字典数据 - * @param page 分页数据 - * @param queryWrapper 查询条件 - * @return 字典数据 - */ - Page page(@Param("page")Page page, @Param("ew") QueryWrapper queryWrapper); } diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/mapper/mapping/EventTemplateMapper.xml b/pqs-system/system-boot/src/main/java/com/njcn/system/mapper/mapping/EventTemplateMapper.xml index 24eef7fa7..14eb4d72a 100644 --- a/pqs-system/system-boot/src/main/java/com/njcn/system/mapper/mapping/EventTemplateMapper.xml +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/mapper/mapping/EventTemplateMapper.xml @@ -13,8 +13,8 @@ diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/service/IEventDictService.java b/pqs-system/system-boot/src/main/java/com/njcn/system/service/IEventDictService.java new file mode 100644 index 000000000..47642da7a --- /dev/null +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/service/IEventDictService.java @@ -0,0 +1,46 @@ +package com.njcn.system.service; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.njcn.system.pojo.param.EventDictParam; +import com.njcn.system.pojo.po.ReportDict; + +/** + * @author hany + * @createTime 2022/09/27 + */ +public interface IEventDictService { + /** + * 新增字典 + * @param eventDictParam + * @return + */ + boolean addDict(EventDictParam eventDictParam); + + /** + * 修改字典 + * @param dictUpdateParam + * @return + */ + boolean updateDict(EventDictParam.DictUpdateParam dictUpdateParam); + + /** + * 删除字典 + * @param id + * @return + */ + boolean delete(String id); + + /** + * 查询字典列表 + * @param dictQueryParam + * @return + */ + Page getList(EventDictParam.DictQueryParam dictQueryParam); + + /** + * 查询字典 + * @param id + * @return + */ + ReportDict getDictById(String id); +} diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/service/IEventTemplateService.java b/pqs-system/system-boot/src/main/java/com/njcn/system/service/IEventTemplateService.java index a097d9b76..41a921f7d 100644 --- a/pqs-system/system-boot/src/main/java/com/njcn/system/service/IEventTemplateService.java +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/service/IEventTemplateService.java @@ -1,9 +1,7 @@ package com.njcn.system.service; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.njcn.system.pojo.param.EventTemplateParam; import com.njcn.system.pojo.po.EventTemplate; -import com.njcn.system.pojo.vo.EventTemplateTree; import java.util.List; @@ -15,30 +13,31 @@ import java.util.List; public interface IEventTemplateService { /** - * 获取字典树 - */ - List getEventTemplateTree(); - - /** - * 根据前台传递参数,分页查询字典数据 - * @param queryParam 查询参数 + * 查询模板 * @return 字典列表 */ - Page getList(EventTemplateParam.EventTemplateQueryParam queryParam); + List getList(); /** - * 新增 + * 根据id查询模板 + * @return + */ + EventTemplate getTemplateById(String id); + + /** + * 新增模板 + * * @param EventTemplateParam 模板实体 */ boolean add(EventTemplateParam eventTemplateParam); /** - * 修改 + * 修改模板 * @param eventDataUpdateParam */ boolean update(EventTemplateParam.EventTemplateUpdateParam eventDataUpdateParam); /** - * 删除 + * 删除模板 * @param ids 模板ids */ boolean delete(List ids); diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/service/IEventTreeService.java b/pqs-system/system-boot/src/main/java/com/njcn/system/service/IEventTreeService.java new file mode 100644 index 000000000..65c59fc3b --- /dev/null +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/service/IEventTreeService.java @@ -0,0 +1,15 @@ +package com.njcn.system.service; + +import com.njcn.system.pojo.vo.EventTemplateTree; +import java.util.List; + +public interface IEventTreeService { + + /** + * 获取字典树 + * + * @author hany + * @date 2022/09/26 + */ + List getEventTree(); +} diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/service/impl/EventDictServiceImpl.java b/pqs-system/system-boot/src/main/java/com/njcn/system/service/impl/EventDictServiceImpl.java new file mode 100644 index 000000000..09d9d4575 --- /dev/null +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/service/impl/EventDictServiceImpl.java @@ -0,0 +1,138 @@ +package com.njcn.system.service.impl; + +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.njcn.common.pojo.enums.common.DataStateEnum; +import com.njcn.common.pojo.exception.BusinessException; +import com.njcn.db.constant.DbConstant; +import com.njcn.system.enums.EventResponseEnum; +import com.njcn.system.mapper.EventDictMapper; +import com.njcn.system.pojo.param.EventDictParam; +import com.njcn.system.pojo.po.ReportDict; +import com.njcn.system.service.IEventDictService; +import com.njcn.web.factory.PageFactory; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author hany + * @createTime 2022/09/27 + */ +@Service +public class EventDictServiceImpl extends ServiceImpl implements IEventDictService { + + + /** + * 新增字典数据 + * @param eventDictParam + * @return + */ + @Override + public boolean addDict (EventDictParam eventDictParam){ + checkName(eventDictParam,true); + ReportDict rptDict = new ReportDict(); + BeanUtils.copyProperties(eventDictParam,rptDict); + rptDict.setState(DataStateEnum.ENABLE.getCode()); + return this.save(rptDict); + } + + /** + * 修改字典数据 + * @param dictUpdateParam + * @return + */ + @Override + public boolean updateDict (EventDictParam.DictUpdateParam dictUpdateParam){ + checkName(dictUpdateParam,false); + ReportDict rptDict = new ReportDict(); + BeanUtils.copyProperties(dictUpdateParam,rptDict); + return this.updateById(rptDict); + } + + /** + * 删除字典数据 + * @param id + * @return + */ + @Override + public boolean delete (String id){ + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(ReportDict::getPid,id).eq(ReportDict::getState,DataStateEnum.ENABLE.getCode()); + int res = this.count(lambdaQueryWrapper); + if(res>0){ + throw new BusinessException(EventResponseEnum.CHILDREN_EXIT); + } + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.lambda().eq(ReportDict::getState,DataStateEnum.ENABLE.getCode()).set(ReportDict::getState,DataStateEnum.DELETED.getCode()).eq(ReportDict::getId,id); + return this.update(updateWrapper); + } + + /** + * 查询字典列表 + * @param dictQueryParam + * @return + */ + @Override + public Page getList(EventDictParam.DictQueryParam dictQueryParam){ + QueryWrapper queryWrapper = new QueryWrapper<>(); + if (Objects.nonNull(dictQueryParam)) { + //查询参数不为空,进行条件填充 + if (StrUtil.isNotBlank(dictQueryParam.getSearchValue())) { + //字典类型表,提供名称、编码模糊查询 + queryWrapper + .and(param -> param.like("report_dict.name",dictQueryParam.getSearchValue()) + .or().like("report_dict.describe",dictQueryParam.getSearchValue())); + } + //排序 + if (ObjectUtil.isAllNotEmpty(dictQueryParam.getSortBy(), dictQueryParam.getOrderBy())) { + queryWrapper.orderBy(true, dictQueryParam.getOrderBy().equals(DbConstant.ASC), StrUtil.toUnderlineCase(dictQueryParam.getSortBy())); + }else{ + queryWrapper.eq("report_dict.pid",dictQueryParam.getPid()); + //没有排序参数,默认根据sort字段排序,没有排序字段的,根据updateTime更新时间排序 + queryWrapper.orderBy(true, true, "report_dict.update_time"); + } + } + queryWrapper.eq("report_dict.state", DataStateEnum.ENABLE.getCode()); + return this.baseMapper.selectPage(new Page<>(PageFactory.getPageNum(dictQueryParam),PageFactory.getPageSize(dictQueryParam)),queryWrapper); + } + + /** + * 查询字典 + * @param id + * @return + */ + @Override + public ReportDict getDictById(String id){ + return this.getById(id); + } + + /** + * 名称重复校验 + * @author hany + * @date 2022/09/27 + */ + private void checkName(EventDictParam eventDictParam,boolean flag){ + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(ReportDict::getName,eventDictParam.getName()) + .eq(ReportDict::getState, DataStateEnum.ENABLE.getCode()); + //修改 + if(!flag){ + if(eventDictParam instanceof EventDictParam.DictUpdateParam ){ + lambdaQueryWrapper.ne(ReportDict::getId,((EventDictParam.DictUpdateParam)eventDictParam).getId()); + } + } + int res = this.count(lambdaQueryWrapper); + //大于等于1个则表示重复 + if (res >= 1) { + throw new BusinessException(EventResponseEnum.DIC_NAME_REPEAT); + } + + } +} diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/service/impl/EventTemplateServiceImpl.java b/pqs-system/system-boot/src/main/java/com/njcn/system/service/impl/EventTemplateServiceImpl.java index 4aed05df5..667637edd 100644 --- a/pqs-system/system-boot/src/main/java/com/njcn/system/service/impl/EventTemplateServiceImpl.java +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/service/impl/EventTemplateServiceImpl.java @@ -1,31 +1,23 @@ package com.njcn.system.service.impl; import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.njcn.common.pojo.enums.common.DataStateEnum; import com.njcn.common.pojo.exception.BusinessException; -import com.njcn.db.constant.DbConstant; import com.njcn.system.enums.EventResponseEnum; -import com.njcn.system.enums.TemplateTreeEnum; import com.njcn.system.mapper.EventTemplateMapper; import com.njcn.system.pojo.param.EventTemplateParam; import com.njcn.system.pojo.po.EventTemplate; -import com.njcn.system.pojo.vo.EventTemplateTree; import com.njcn.system.service.IEventTemplateService; -import com.njcn.web.factory.PageFactory; import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.Comparator; import java.util.List; -import java.util.stream.Collectors; /** * @author: hany @@ -34,83 +26,28 @@ import java.util.stream.Collectors; */ @Service @AllArgsConstructor +@Slf4j public class EventTemplateServiceImpl extends ServiceImpl implements IEventTemplateService { - private final EventTemplateMapper eventTemplateMapper; - /** - * 获取字典树 - * @author hany - * @date 2022/09/09 - */ - @Override - public List getEventTemplateTree() { - List dictTree = new ArrayList<>(); - List allList = eventTemplateMapper.getAllList(); - List reportList = allList.stream().filter(item -> item.getLevel().equals(TemplateTreeEnum.REPORT_LEVEL.getCode())).sorted(Comparator.comparing(EventTemplateTree::getSort)).collect(Collectors.toList()); - List lineList = allList.stream().filter(item -> item.getLevel().equals(TemplateTreeEnum.LINE_LEVEL.getCode())).sorted(Comparator.comparing(EventTemplateTree::getSort)).collect(Collectors.toList()); - List detailList = allList.stream().filter(item -> item.getLevel().equals(TemplateTreeEnum.DETAIL_LEVEL.getCode())).sorted(Comparator.comparing(EventTemplateTree::getSort)).collect(Collectors.toList()); - List eventList = allList.stream().filter(item -> item.getLevel().equals(TemplateTreeEnum.TRANS_LEVEL.getCode())).sorted(Comparator.comparing(EventTemplateTree::getSort)).collect(Collectors.toList()); - List densityList = allList.stream().filter(item -> item.getLevel().equals(TemplateTreeEnum.TRANS_D_LEVEL.getCode())).sorted(Comparator.comparing(EventTemplateTree::getSort)).collect(Collectors.toList()); - List reasonList = allList.stream().filter(item -> item.getLevel().equals(TemplateTreeEnum.TRANS_R_LEVEL.getCode())).sorted(Comparator.comparing(EventTemplateTree::getSort)).collect(Collectors.toList()); - - lineList.forEach(line -> line.setChildren(getChildren(line, detailList))); - lineList.forEach(line -> line.setChildren(getChildren(line, eventList))); - lineList.forEach(line -> line.setChildren(getChildren(line, densityList))); - lineList.forEach(line -> line.setChildren(getChildren(line, reasonList))); - reportList.forEach(report -> report.setChildren(getChildren(report, lineList))); - - if (CollectionUtil.isNotEmpty(allList)) { - EventTemplateTree eventTemplateTree = new EventTemplateTree(); - eventTemplateTree.setId("9999999"); - eventTemplateTree.setLevel(0); - eventTemplateTree.setName("新增模板"); - if (CollectionUtil.isNotEmpty(reportList)) { - eventTemplateTree.setChildren(reportList); - } - dictTree.add(eventTemplateTree); - } - return dictTree; - } - - /** - * 获取全部子节点 - * - * @author hany - * @date 2022/09/21 - */ - public List getChildren(EventTemplateTree item, List all) { - return all.stream().filter(allItem -> allItem.getPid().equals(item.getId())).collect(Collectors.toList()); - } - - /** - * 分页查询字典类型数据 + * 查询所有模板 * @author hany * @date 2022/09/13 * @return */ @Override - public Page getList(EventTemplateParam.EventTemplateQueryParam queryParam) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - if (ObjectUtil.isNotNull(queryParam)) { - //查询参数不为空,进行条件填充 - if (StrUtil.isNotBlank(queryParam.getSearchValue())) { - //字典类型表,仅提供名称和编码模糊查询 - queryWrapper - .and(param -> param.like("report_template.name",queryParam.getSearchValue()) - .or().like("report_template.code",queryParam.getSearchValue())); - } - //排序 - if (ObjectUtil.isAllNotEmpty(queryParam.getSortBy(), queryParam.getOrderBy())) { - queryWrapper.orderBy(true, queryParam.getOrderBy().equals(DbConstant.ASC), StrUtil.toUnderlineCase(queryParam.getSortBy())); - } else { - //没有排序参数,默认根据sort字段排序,没有排序字段的,根据updateTime更新时间排序 - queryWrapper.orderBy(true, true, "report_template.update_time"); - } - } - queryWrapper.ne("report_template.state", DataStateEnum.DELETED.getCode()); - //初始化分页数据 - return this.baseMapper.page(new Page<>(PageFactory.getPageNum(queryParam), PageFactory.getPageSize(queryParam)), queryWrapper); + public List getList() { + return this.list(); + } + + /** + * 根据id查询模板数据 + * @author hany + * @date 2022/09/26 + */ + @Override + public EventTemplate getTemplateById(String id) { + return this.getById(id); } /** @@ -121,10 +58,10 @@ public class EventTemplateServiceImpl extends ServiceImpl lambdaQueryWrapper = new LambdaQueryWrapper<>(); lambdaQueryWrapper.eq(EventTemplate::getName,eventTemplateParam.getName()) - .eq(EventTemplate::getState, DataStateEnum.ENABLE.getCode()); + .eq(EventTemplate::getType,eventTemplateParam.getType()); //修改 if(!flag){ if(eventTemplateParam instanceof EventTemplateParam.EventTemplateUpdateParam ){ lambdaQueryWrapper.ne(EventTemplate::getId,((EventTemplateParam.EventTemplateUpdateParam)eventTemplateParam).getId()); } } - int res = this.count(lambdaQueryWrapper); + int result = this.count(lambdaQueryWrapper); //大于等于1个则表示重复 - if (res >= 1) { + if (result >= 1) { throw new BusinessException(EventResponseEnum.DIC_NAME_REPEAT); } diff --git a/pqs-system/system-boot/src/main/java/com/njcn/system/service/impl/EventTreeServiceImpl.java b/pqs-system/system-boot/src/main/java/com/njcn/system/service/impl/EventTreeServiceImpl.java new file mode 100644 index 000000000..9c6dcbc80 --- /dev/null +++ b/pqs-system/system-boot/src/main/java/com/njcn/system/service/impl/EventTreeServiceImpl.java @@ -0,0 +1,67 @@ +package com.njcn.system.service.impl; + +import cn.hutool.core.collection.CollectionUtil; +import com.njcn.system.enums.TemplateTreeEnum; +import com.njcn.system.mapper.EventTemplateMapper; +import com.njcn.system.pojo.vo.EventTemplateTree; +import com.njcn.system.service.IEventTreeService; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.Comparator; +import java.util.List; +import java.util.stream.Collectors; + +@Service +@AllArgsConstructor +public class EventTreeServiceImpl implements IEventTreeService { + + private final EventTemplateMapper eventTemplateMapper; + + /** + * 获取字典树 + * @author hany + * @date 2022/09/09 + */ + @Override + public List getEventTree() { + List dictTree = new ArrayList<>(); + List allList = eventTemplateMapper.getAllList(); + List reportList = allList.stream().filter(item -> item.getLevel().equals(TemplateTreeEnum.REPORT_LEVEL.getCode())).sorted(Comparator.comparing(EventTemplateTree::getSort)).collect(Collectors.toList()); + List lineList = allList.stream().filter(item -> item.getLevel().equals(TemplateTreeEnum.LINE_LEVEL.getCode())).sorted(Comparator.comparing(EventTemplateTree::getSort)).collect(Collectors.toList()); + List detailList = allList.stream().filter(item -> item.getLevel().equals(TemplateTreeEnum.DETAIL_LEVEL.getCode())).sorted(Comparator.comparing(EventTemplateTree::getSort)).collect(Collectors.toList()); + List eventList = allList.stream().filter(item -> item.getLevel().equals(TemplateTreeEnum.TRANS_LEVEL.getCode())).sorted(Comparator.comparing(EventTemplateTree::getSort)).collect(Collectors.toList()); + List densityList = allList.stream().filter(item -> item.getLevel().equals(TemplateTreeEnum.TRANS_D_LEVEL.getCode())).sorted(Comparator.comparing(EventTemplateTree::getSort)).collect(Collectors.toList()); + List reasonList = allList.stream().filter(item -> item.getLevel().equals(TemplateTreeEnum.TRANS_R_LEVEL.getCode())).sorted(Comparator.comparing(EventTemplateTree::getSort)).collect(Collectors.toList()); + + lineList.forEach(line -> line.setChildren(getChildren(line, detailList))); + lineList.forEach(line -> line.setChildren(getChildren(line, eventList))); + lineList.forEach(line -> line.setChildren(getChildren(line, densityList))); + lineList.forEach(line -> line.setChildren(getChildren(line, reasonList))); + reportList.forEach(report -> report.setChildren(getChildren(report, lineList))); + + if (CollectionUtil.isNotEmpty(allList)) { + EventTemplateTree eventTemplateTree = new EventTemplateTree(); + eventTemplateTree.setId("9999999"); + eventTemplateTree.setLevel(0); + eventTemplateTree.setName("新增模板"); + if (CollectionUtil.isNotEmpty(reportList)) { + eventTemplateTree.setChildren(reportList); + } + dictTree.add(eventTemplateTree); + } + return dictTree; + } + + /** + * 获取全部子节点 + * + * @author hany + * @date 2022/09/21 + */ + public List getChildren(EventTemplateTree item, List all) { + return all.stream().filter(allItem -> allItem.getPid().equals(item.getId())).collect(Collectors.toList()); + } + +} diff --git a/pqs.iws b/pqs.iws index 41ccf3007..4ff2127de 100644 --- a/pqs.iws +++ b/pqs.iws @@ -1,54 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -