From 61ebd8830e1316a6cd26bde4eb59356c6448a9a8 Mon Sep 17 00:00:00 2001 From: huangzj <826100833@qq.com> Date: Wed, 6 Sep 2023 14:21:47 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9A=82=E9=99=8D=E4=BA=8B=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../csdevice/api/CsLedgerFeignClient.java | 5 ++ .../CsLedgerFeignClientFallbackFactory.java | 7 ++ .../njcn/csdevice/pojo/dto/DevDetailDTO.java | 34 ++++++++ .../controller/ledger/CsLedgerController.java | 11 +++ .../csdevice/service/ICsLedgerService.java | 3 + .../service/impl/CsLedgerServiceImpl.java | 17 ++++ .../param/CsEventUserQueryParam.java | 44 ++++++++++ .../njcn/csharmonic/pojo/po/CsEventPO.java | 5 +- .../csharmonic/pojo/vo/EventDetailVO.java | 84 +++++++++++++++++++ .../controller/EventController.java | 16 ++++ .../controller/EventUserController.java | 44 ++++++++++ .../mapper/CsEventUserPOMapper.java | 8 ++ .../mapper/mapping/CsEventUserPOMapper.xml | 35 +++++++- .../service/{impl => }/CsEventPOService.java | 2 +- .../service/CsEventUserPOService.java | 24 ++++++ .../service/CsEventUserPOServiceImpl.java | 21 ----- .../njcn/csharmonic/service/EventService.java | 5 ++ .../{ => impl}/CsEventPOServiceImpl.java | 6 +- .../service/impl/CsEventUserPOService.java | 16 ---- .../impl/CsEventUserPOServiceImpl.java | 52 ++++++++++++ .../service/impl/EventServiceImpl.java | 46 +++++++++- .../njcn/cssystem/pojo/po/CsFeedbackPO.java | 2 +- .../feedback/FeedBackChatController.java | 2 +- .../impl/CsFeedbackChatServiceImpl.java | 34 ++++++-- .../service/impl/CsFeedbackServiceImpl.java | 19 +++-- 25 files changed, 478 insertions(+), 64 deletions(-) create mode 100644 cs-device/cs-device-api/src/main/java/com/njcn/csdevice/pojo/dto/DevDetailDTO.java create mode 100644 cs-harmonic/cs-harmonic-api/src/main/java/com/njcn/csharmonic/param/CsEventUserQueryParam.java create mode 100644 cs-harmonic/cs-harmonic-api/src/main/java/com/njcn/csharmonic/pojo/vo/EventDetailVO.java create mode 100644 cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/controller/EventUserController.java rename cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/{impl => }/CsEventPOService.java (87%) create mode 100644 cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/CsEventUserPOService.java delete mode 100644 cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/CsEventUserPOServiceImpl.java rename cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/{ => impl}/CsEventPOServiceImpl.java (74%) delete mode 100644 cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/CsEventUserPOService.java create mode 100644 cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/CsEventUserPOServiceImpl.java diff --git a/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/api/CsLedgerFeignClient.java b/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/api/CsLedgerFeignClient.java index f259a6d..a41d350 100644 --- a/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/api/CsLedgerFeignClient.java +++ b/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/api/CsLedgerFeignClient.java @@ -3,9 +3,12 @@ package com.njcn.csdevice.api; import com.njcn.common.pojo.constant.ServerInfo; import com.njcn.common.pojo.response.HttpResult; import com.njcn.csdevice.api.fallback.CsLedgerFeignClientFallbackFactory; +import com.njcn.csdevice.pojo.dto.DevDetailDTO; import com.njcn.csdevice.pojo.dto.LineParamDTO; import com.njcn.csdevice.pojo.param.CsLedgerParam; import com.njcn.csdevice.pojo.po.CsLedger; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiOperation; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.PostMapping; @@ -29,5 +32,7 @@ public interface CsLedgerFeignClient { @PostMapping("/queryLine") HttpResult> queryLine(@RequestBody @Validated LineParamDTO lineParamdto); + @PostMapping("/queryDevDetail") + HttpResult queryDevDetail(@RequestParam("devId") String devId); } diff --git a/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/api/fallback/CsLedgerFeignClientFallbackFactory.java b/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/api/fallback/CsLedgerFeignClientFallbackFactory.java index 4c26bdc..06d6fcc 100644 --- a/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/api/fallback/CsLedgerFeignClientFallbackFactory.java +++ b/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/api/fallback/CsLedgerFeignClientFallbackFactory.java @@ -4,6 +4,7 @@ import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.exception.BusinessException; import com.njcn.common.pojo.response.HttpResult; import com.njcn.csdevice.api.CsLedgerFeignClient; +import com.njcn.csdevice.pojo.dto.DevDetailDTO; import com.njcn.csdevice.pojo.dto.LineParamDTO; import com.njcn.csdevice.pojo.param.CsLedgerParam; import com.njcn.csdevice.pojo.po.CsLedger; @@ -48,6 +49,12 @@ public class CsLedgerFeignClientFallbackFactory implements FallbackFactory queryDevDetail(String devId) { + log.error("{}异常,降级处理,异常为:{}","查询设备详情",cause.toString()); + throw new BusinessException(finalExceptionEnum); + } }; } } diff --git a/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/pojo/dto/DevDetailDTO.java b/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/pojo/dto/DevDetailDTO.java new file mode 100644 index 0000000..414c32f --- /dev/null +++ b/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/pojo/dto/DevDetailDTO.java @@ -0,0 +1,34 @@ +package com.njcn.csdevice.pojo.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Description: + * Date: 2023/9/6 13:59【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Data +public class DevDetailDTO { + @ApiModelProperty(value = "工程id") + private String engineeringid; + + /** + * 工程名称 + */ + @ApiModelProperty(value = "工程名称") + private String engineeringName; + @ApiModelProperty(value = "项目id") + private String projectId; + + @ApiModelProperty(value = "项目名称") + private String projectName; + + @ApiModelProperty(value = "设备id") + private String equipmentId; + + @ApiModelProperty(value = "设备名称") + private String equipmentName; +} diff --git a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/controller/ledger/CsLedgerController.java b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/controller/ledger/CsLedgerController.java index 3d6e45d..eb8594d 100644 --- a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/controller/ledger/CsLedgerController.java +++ b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/controller/ledger/CsLedgerController.java @@ -6,6 +6,7 @@ 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.csdevice.pojo.dto.DevDetailDTO; import com.njcn.csdevice.pojo.dto.LineParamDTO; import com.njcn.csdevice.pojo.param.CsLedgerParam; import com.njcn.csdevice.pojo.po.CsLedger; @@ -125,5 +126,15 @@ public class CsLedgerController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe); } + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @PostMapping("/queryDevDetail") + @ApiOperation("根据设备号查询工程,项目,设备") + @ApiImplicitParam(name = "devId", value = "查询条件", required = true) + public HttpResult queryDevDetail(@RequestParam @Validated String devId){ + String methodDescribe = getMethodDescribe("queryDevDetail"); + DevDetailDTO details = csLedgerService.queryDevDetail(devId); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, details, methodDescribe); + } + } diff --git a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/ICsLedgerService.java b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/ICsLedgerService.java index 7aa86cc..99a5d63 100644 --- a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/ICsLedgerService.java +++ b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/ICsLedgerService.java @@ -1,6 +1,7 @@ package com.njcn.csdevice.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.njcn.csdevice.pojo.dto.DevDetailDTO; import com.njcn.csdevice.pojo.dto.LineParamDTO; import com.njcn.csdevice.pojo.param.CsLedgerParam; import com.njcn.csdevice.pojo.po.CsLedger; @@ -71,4 +72,6 @@ public interface ICsLedgerService extends IService { List getProjectTree(); List queryLine(LineParamDTO lineParamdto); + + DevDetailDTO queryDevDetail(String devId); } diff --git a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/CsLedgerServiceImpl.java b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/CsLedgerServiceImpl.java index 022251c..4daf738 100644 --- a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/CsLedgerServiceImpl.java +++ b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/CsLedgerServiceImpl.java @@ -9,6 +9,7 @@ import com.njcn.csdevice.mapper.AppProjectMapper; import com.njcn.csdevice.mapper.AppTopologyDiagramMapper; import com.njcn.csdevice.mapper.CsEngineeringMapper; import com.njcn.csdevice.mapper.CsLedgerMapper; +import com.njcn.csdevice.pojo.dto.DevDetailDTO; import com.njcn.csdevice.pojo.dto.LineParamDTO; import com.njcn.csdevice.pojo.param.CsLedgerParam; import com.njcn.csdevice.pojo.po.AppProjectPO; @@ -213,6 +214,22 @@ public class CsLedgerServiceImpl extends ServiceImpl i return lineIds; } + @Override + public DevDetailDTO queryDevDetail(String devId) { + DevDetailDTO device = new DevDetailDTO(); + CsLedger dev = this.findDataById(devId); + device.setEquipmentName(dev.getId()); + device.setEquipmentId(devId); + CsLedger project = this.findDataById(dev.getPid()); + device.setProjectId(project.getId()); + device.setProjectName(project.getName()); + CsLedger engineer = this.findDataById(project.getPid()); + device.setEngineeringid(engineer.getId()); + device.setEngineeringName(engineer.getName()); + + return device; + } + /** * 获取子节点 */ diff --git a/cs-harmonic/cs-harmonic-api/src/main/java/com/njcn/csharmonic/param/CsEventUserQueryParam.java b/cs-harmonic/cs-harmonic-api/src/main/java/com/njcn/csharmonic/param/CsEventUserQueryParam.java new file mode 100644 index 0000000..ac1d097 --- /dev/null +++ b/cs-harmonic/cs-harmonic-api/src/main/java/com/njcn/csharmonic/param/CsEventUserQueryParam.java @@ -0,0 +1,44 @@ +package com.njcn.csharmonic.param; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +/** + * + * Description: + * Date: 2023/9/4 15:15【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Data +@NoArgsConstructor +public class CsEventUserQueryParam { + + + + /** + * 用户id + */ + private String userId; + + + /** + * 事件id + */ + private String eventId; + /** + * 事件类型 + */ + private List target; + + /** + * 状态(0:未读取 1:已读取) + */ + private String status; + +} \ No newline at end of file diff --git a/cs-harmonic/cs-harmonic-api/src/main/java/com/njcn/csharmonic/pojo/po/CsEventPO.java b/cs-harmonic/cs-harmonic-api/src/main/java/com/njcn/csharmonic/pojo/po/CsEventPO.java index 704d0c6..e9125ac 100644 --- a/cs-harmonic/cs-harmonic-api/src/main/java/com/njcn/csharmonic/pojo/po/CsEventPO.java +++ b/cs-harmonic/cs-harmonic-api/src/main/java/com/njcn/csharmonic/pojo/po/CsEventPO.java @@ -52,13 +52,14 @@ public class CsEventPO { private String tag; /** - * 关联事件波形表id + * 暂态事件波形文件路 */ @TableField(value = "wave_path") private String wavePath; /** - * 关联事件波形表id + * 事件类型(0:暂态事件1:稳态事件 2:设备事 + * 件) */ @TableField(value = "type") private Integer type; diff --git a/cs-harmonic/cs-harmonic-api/src/main/java/com/njcn/csharmonic/pojo/vo/EventDetailVO.java b/cs-harmonic/cs-harmonic-api/src/main/java/com/njcn/csharmonic/pojo/vo/EventDetailVO.java new file mode 100644 index 0000000..07eacaf --- /dev/null +++ b/cs-harmonic/cs-harmonic-api/src/main/java/com/njcn/csharmonic/pojo/vo/EventDetailVO.java @@ -0,0 +1,84 @@ +package com.njcn.csharmonic.pojo.vo; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.njcn.influx.pojo.dto.EventDataSetDTO; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.time.LocalDateTime; +import java.util.List; + +/** + * Description: + * Date: 2023/9/5 8:54【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Data +public class EventDetailVO { + + private String id; + + /** + * 监测点id + */ + private String lineId; + + + @ApiModelProperty(value = "工程id") + private String engineeringid; + + /** + * 工程名称 + */ + @ApiModelProperty(value = "工程名称") + private String engineeringName; + @ApiModelProperty(value = "项目id") + private String projectId; + + @ApiModelProperty(value = "项目名称") + private String projectName; + /** + * 装置id + */ + private String deviceId; + + + @ApiModelProperty(value = "设备名称") + private String equipmentName; + + /** + * 事件时间 + */ + private LocalDateTime startTime; + + /** + * 事件类型 + */ + private String tag; + + /** + * 暂态事件波形文件路 + */ + private String wavePath; + + /** + * 事件类型(0:暂态事件1:稳态事件 2:设备事 + * 件) + */ + private Integer type; + + private String userId; + + + + /** + * 状态(0:未读取 1:已读取) + */ + private Integer status; + + private List dataSet; +} diff --git a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/controller/EventController.java b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/controller/EventController.java index 6efc9eb..142e53e 100644 --- a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/controller/EventController.java +++ b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/controller/EventController.java @@ -5,6 +5,8 @@ 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.csharmonic.param.CsEventUserQueryParam; +import com.njcn.csharmonic.pojo.vo.EventDetailVO; import com.njcn.csharmonic.service.EventService; import com.njcn.influx.pojo.dto.EventQueryDTO; import com.njcn.influx.pojo.po.cs.EntData; @@ -36,10 +38,24 @@ public class EventController extends BaseController { @PostMapping("/queryEvent") @ApiOperation("暂降事件查询") @ApiImplicitParam(name = "eventQueryDTO", value = "暂降事件查询参数", required = true) + @Deprecated public HttpResult> queryEvent(@RequestBody EventQueryDTO eventQueryDTO) { String methodDescribe = getMethodDescribe("queryEvent"); List list = eventService.queryEvent(eventQueryDTO); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe); } + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @PostMapping("/queryEventList") + @ApiOperation("暂降事件列表查询") + @ApiImplicitParam(name = "csEventUserQueryParam", value = "暂降事件查询参数", required = true) + public HttpResult> queryEventList(@RequestBody CsEventUserQueryParam csEventUserQueryParam) { + String methodDescribe = getMethodDescribe("queryEventList"); + List list = eventService.queryEventList(csEventUserQueryParam); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe); + } + + + + } diff --git a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/controller/EventUserController.java b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/controller/EventUserController.java new file mode 100644 index 0000000..655bb8f --- /dev/null +++ b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/controller/EventUserController.java @@ -0,0 +1,44 @@ +package com.njcn.csharmonic.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.csharmonic.param.CsEventUserQueryParam; +import com.njcn.csharmonic.service.CsEventUserPOService; +import com.njcn.web.controller.BaseController; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; +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; + +/** + * Description: + * Date: 2023/9/4 16:18【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Slf4j +@RestController +@RequestMapping("/eventUser") +@Api(tags = "暂降事件") +@AllArgsConstructor +public class EventUserController extends BaseController { + private final CsEventUserPOService csEventUserPOService; + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @PostMapping("/queryEvent") + @ApiOperation("当天暂降事件未读消息") + @ApiImplicitParam(name = "csEventUserQueryParam", value = "暂降事件查询参数", required = true) + public HttpResult queryEvent(@RequestBody CsEventUserQueryParam csEventUserQueryParam) { + String methodDescribe = getMethodDescribe("queryEvent"); + Integer count = csEventUserPOService.queryEventCount(csEventUserQueryParam); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, count, methodDescribe); + } +} diff --git a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/mapper/CsEventUserPOMapper.java b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/mapper/CsEventUserPOMapper.java index cff6bcb..c85348b 100644 --- a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/mapper/CsEventUserPOMapper.java +++ b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/mapper/CsEventUserPOMapper.java @@ -1,7 +1,12 @@ package com.njcn.csharmonic.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.njcn.csharmonic.param.CsEventUserQueryParam; import com.njcn.csharmonic.pojo.po.CsEventUserPO; +import com.njcn.csharmonic.pojo.vo.EventDetailVO; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * @@ -12,4 +17,7 @@ import com.njcn.csharmonic.pojo.po.CsEventUserPO; * @version V1.0.0 */ public interface CsEventUserPOMapper extends BaseMapper { + Integer queryEventCount(@Param("csEventUserQueryParam") CsEventUserQueryParam csEventUserQueryParam); + + List queryUserEventList(@Param("csEventUserQueryParam") CsEventUserQueryParam csEventUserQueryParam); } \ No newline at end of file diff --git a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/mapper/mapping/CsEventUserPOMapper.xml b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/mapper/mapping/CsEventUserPOMapper.xml index 427b236..3eaaeb3 100644 --- a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/mapper/mapping/CsEventUserPOMapper.xml +++ b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/mapper/mapping/CsEventUserPOMapper.xml @@ -4,7 +4,6 @@ - @@ -13,4 +12,38 @@ device_id, user_id, event_id, `status` + + + + \ No newline at end of file diff --git a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/CsEventPOService.java b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/CsEventPOService.java similarity index 87% rename from cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/CsEventPOService.java rename to cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/CsEventPOService.java index f3562bc..2cd08b5 100644 --- a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/CsEventPOService.java +++ b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/CsEventPOService.java @@ -1,4 +1,4 @@ -package com.njcn.csharmonic.service.impl; +package com.njcn.csharmonic.service; import com.njcn.csharmonic.pojo.po.CsEventPO; import com.baomidou.mybatisplus.extension.service.IService; diff --git a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/CsEventUserPOService.java b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/CsEventUserPOService.java new file mode 100644 index 0000000..4eb2d33 --- /dev/null +++ b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/CsEventUserPOService.java @@ -0,0 +1,24 @@ +package com.njcn.csharmonic.service; + +import com.njcn.csharmonic.param.CsEventUserQueryParam; +import com.njcn.csharmonic.pojo.po.CsEventUserPO; +import com.baomidou.mybatisplus.extension.service.IService; +import com.njcn.csharmonic.pojo.vo.EventDetailVO; + +import java.util.List; + +/** + * + * Description: + * Date: 2023/9/4 15:15【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface CsEventUserPOService extends IService{ + + + Integer queryEventCount(CsEventUserQueryParam csEventUserQueryParam); + + List queryUserEventList(CsEventUserQueryParam csEventUserQueryParam); + } diff --git a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/CsEventUserPOServiceImpl.java b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/CsEventUserPOServiceImpl.java deleted file mode 100644 index 57f2ea4..0000000 --- a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/CsEventUserPOServiceImpl.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.njcn.csharmonic.service; - -import org.springframework.stereotype.Service; -import javax.annotation.Resource; -import java.util.List; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.njcn.csharmonic.pojo.po.CsEventUserPO; -import com.njcn.csharmonic.mapper.CsEventUserPOMapper; -import com.njcn.csharmonic.service.impl.CsEventUserPOService; -/** - * - * Description: - * Date: 2023/9/4 15:15【需求编号】 - * - * @author clam - * @version V1.0.0 - */ -@Service -public class CsEventUserPOServiceImpl extends ServiceImpl implements CsEventUserPOService{ - -} diff --git a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/EventService.java b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/EventService.java index 7f6d9e4..ba4a090 100644 --- a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/EventService.java +++ b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/EventService.java @@ -1,5 +1,7 @@ package com.njcn.csharmonic.service; +import com.njcn.csharmonic.param.CsEventUserQueryParam; +import com.njcn.csharmonic.pojo.vo.EventDetailVO; import com.njcn.influx.pojo.dto.EventQueryDTO; import com.njcn.influx.pojo.dto.StatisticalDataDTO; import com.njcn.influx.pojo.po.cs.EntData; @@ -16,4 +18,7 @@ import java.util.List; public interface EventService { List queryEvent(EventQueryDTO eventQueryDTO); + + + List queryEventList(CsEventUserQueryParam csEventUserQueryParam); } diff --git a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/CsEventPOServiceImpl.java b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/CsEventPOServiceImpl.java similarity index 74% rename from cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/CsEventPOServiceImpl.java rename to cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/CsEventPOServiceImpl.java index fa2d755..6980e11 100644 --- a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/CsEventPOServiceImpl.java +++ b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/CsEventPOServiceImpl.java @@ -1,12 +1,10 @@ -package com.njcn.csharmonic.service; +package com.njcn.csharmonic.service.impl; import org.springframework.stereotype.Service; -import javax.annotation.Resource; -import java.util.List; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.njcn.csharmonic.mapper.CsEventPOMapper; import com.njcn.csharmonic.pojo.po.CsEventPO; -import com.njcn.csharmonic.service.impl.CsEventPOService; +import com.njcn.csharmonic.service.CsEventPOService; /** * * Description: diff --git a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/CsEventUserPOService.java b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/CsEventUserPOService.java deleted file mode 100644 index 306fe43..0000000 --- a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/CsEventUserPOService.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.njcn.csharmonic.service.impl; - -import com.njcn.csharmonic.pojo.po.CsEventUserPO; -import com.baomidou.mybatisplus.extension.service.IService; - /** - * - * Description: - * Date: 2023/9/4 15:15【需求编号】 - * - * @author clam - * @version V1.0.0 - */ -public interface CsEventUserPOService extends IService{ - - -} diff --git a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/CsEventUserPOServiceImpl.java b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/CsEventUserPOServiceImpl.java new file mode 100644 index 0000000..cd8caa6 --- /dev/null +++ b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/CsEventUserPOServiceImpl.java @@ -0,0 +1,52 @@ +package com.njcn.csharmonic.service.impl; + +import cn.hutool.core.collection.CollectionUtil; +import com.njcn.csharmonic.param.CsEventUserQueryParam; +import com.njcn.csharmonic.pojo.vo.EventDetailVO; +import com.njcn.system.api.DicDataFeignClient; +import com.njcn.system.enums.DicDataTypeEnum; +import com.njcn.system.pojo.po.DictData; +import com.njcn.web.utils.RequestUtil; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.stream.Collectors; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.njcn.csharmonic.pojo.po.CsEventUserPO; +import com.njcn.csharmonic.mapper.CsEventUserPOMapper; +import com.njcn.csharmonic.service.CsEventUserPOService; +/** + * + * Description: + * Date: 2023/9/4 15:15【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Service +@RequiredArgsConstructor +public class CsEventUserPOServiceImpl extends ServiceImpl implements CsEventUserPOService{ + + private final DicDataFeignClient dicDataFeignClient; + @Override + public Integer queryEventCount(CsEventUserQueryParam csEventUserQueryParam) { + csEventUserQueryParam.setUserId(RequestUtil.getUserIndex()); + Integer integer = this.getBaseMapper().queryEventCount(csEventUserQueryParam); + return integer; + } + + @Override + public List queryUserEventList(CsEventUserQueryParam csEventUserQueryParam) { + csEventUserQueryParam.setUserId(RequestUtil.getUserIndex()); + if(CollectionUtil.isEmpty(csEventUserQueryParam.getTarget())){ + /*获取所有暂态事件类型*/ + List data = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.APP_EVENT.getCode()).getData(); + List collect = data.stream().map(DictData::getCode).collect(Collectors.toList()); + csEventUserQueryParam.setTarget(collect); + } + List list = this.getBaseMapper().queryUserEventList(csEventUserQueryParam); + return list; + } +} diff --git a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/EventServiceImpl.java b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/EventServiceImpl.java index fa44b1f..97056da 100644 --- a/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/EventServiceImpl.java +++ b/cs-harmonic/cs-harmonic-boot/src/main/java/com/njcn/csharmonic/service/impl/EventServiceImpl.java @@ -2,18 +2,30 @@ package com.njcn.csharmonic.service.impl; import cn.hutool.core.collection.CollectionUtil; import com.njcn.common.pojo.exception.BusinessException; +import com.njcn.common.utils.NjcnBeanUtil; +import com.njcn.csdevice.api.CsLedgerFeignClient; import com.njcn.csdevice.api.CsLineFeignClient; import com.njcn.csdevice.enums.AlgorithmResponseEnum; +import com.njcn.csdevice.pojo.dto.DevDetailDTO; +import com.njcn.csdevice.pojo.po.CsLedger; import com.njcn.csdevice.pojo.po.CsLinePO; +import com.njcn.csharmonic.param.CsEventUserQueryParam; +import com.njcn.csharmonic.pojo.vo.EventDetailVO; +import com.njcn.csharmonic.service.CsEventUserPOService; import com.njcn.csharmonic.service.EventService; +import com.njcn.influx.pojo.dto.EventDataSetDTO; import com.njcn.influx.pojo.dto.EventQueryDTO; import com.njcn.influx.pojo.po.cs.EntData; import com.njcn.influx.service.EvtDataService; +import com.njcn.system.api.EleEvtFeignClient; import com.njcn.system.api.EpdFeignClient; import com.njcn.system.pojo.po.EleEpdPqd; +import com.njcn.system.pojo.po.EleEvtParm; import lombok.RequiredArgsConstructor; +import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; @@ -29,8 +41,11 @@ import java.util.stream.Collectors; public class EventServiceImpl implements EventService { private final EvtDataService evtDataService; private final CsLineFeignClient csLineFeignClient; - private final EpdFeignClient epdFeignClient; + private final CsLedgerFeignClient csLedgerFeignClient; + private final EpdFeignClient epdFeignClient; + private final CsEventUserPOService csEventUserPOService; + private final EleEvtFeignClient eleEvtFeignClient; @Override public List queryEvent(EventQueryDTO eventQueryDTO) { @@ -49,4 +64,33 @@ public class EventServiceImpl implements EventService { List eventData = evtDataService.getEventData(eventQueryDTO); return eventData; } + + @Override + public List queryEventList(CsEventUserQueryParam csEventUserQueryParam) { + + List list = csEventUserPOService.queryUserEventList(csEventUserQueryParam); + list.forEach(temp->{ + DevDetailDTO devDetail = csLedgerFeignClient.queryDevDetail(temp.getDeviceId()).getData(); + temp.setEquipmentName(devDetail.getEquipmentName()); + temp.setProjectId(devDetail.getProjectId()); + temp.setProjectName(devDetail.getProjectName()); + temp.setEngineeringid(devDetail.getEngineeringid()); + temp.setEngineeringName(devDetail.getEngineeringName()); + EleEpdPqd data = epdFeignClient.findByName(temp.getTag()).getData(); + List data1 = eleEvtFeignClient.queryByPid(data.getId()).getData(); + List eventDataSetDTOS = new ArrayList<>(); + for (EleEvtParm eleEvtParm : data1) { + EventDataSetDTO eventDataSetDTO = new EventDataSetDTO(); + BeanUtils.copyProperties(eleEvtParm,eventDataSetDTO); + EventDataSetDTO evtData = evtDataService.getEventDataSet("evt_data", temp.getId(), eleEvtParm.getName()); + eventDataSetDTO.setValue(evtData.getValue()); + eventDataSetDTOS.add(eventDataSetDTO); + } + temp.setDataSet(eventDataSetDTOS); + }); + + return list; + } + + } diff --git a/cs-system/cs-system-api/src/main/java/com/njcn/cssystem/pojo/po/CsFeedbackPO.java b/cs-system/cs-system-api/src/main/java/com/njcn/cssystem/pojo/po/CsFeedbackPO.java index 9db5618..44420aa 100644 --- a/cs-system/cs-system-api/src/main/java/com/njcn/cssystem/pojo/po/CsFeedbackPO.java +++ b/cs-system/cs-system-api/src/main/java/com/njcn/cssystem/pojo/po/CsFeedbackPO.java @@ -56,7 +56,7 @@ public class CsFeedbackPO extends BaseEntity { private String engineeringId; /** - * 问题状态(字典数据) + * 问题状态(字典数据)0已处理,1待处理,2,处理中 */ @TableField(value = "status") private String status; diff --git a/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/controller/feedback/FeedBackChatController.java b/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/controller/feedback/FeedBackChatController.java index e7e62b2..362a3f7 100644 --- a/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/controller/feedback/FeedBackChatController.java +++ b/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/controller/feedback/FeedBackChatController.java @@ -53,7 +53,7 @@ public class FeedBackChatController extends BaseController { } @OperateInfo(info = LogEnum.BUSINESS_COMMON) @PostMapping("/updateChatStatus") - @ApiOperation("更新反馈聊天状态") + @ApiOperation("非反馈人员点击发送处理中消息") @ApiImplicitParam(name = "CsFeedbackChatCheckParm", value = "新增反馈聊天参数", required = true) public HttpResult updateChatStatus(@RequestBody@Validated CsFeedbackChatCheckParm CsFeedbackChatCheckParm){ String methodDescribe = getMethodDescribe("updateChatStatus"); diff --git a/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/service/impl/CsFeedbackChatServiceImpl.java b/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/service/impl/CsFeedbackChatServiceImpl.java index c1d61ca..b22ec11 100644 --- a/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/service/impl/CsFeedbackChatServiceImpl.java +++ b/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/service/impl/CsFeedbackChatServiceImpl.java @@ -3,15 +3,21 @@ package com.njcn.cssystem.service.impl; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.njcn.cssystem.mapper.CsFeedbackChatMapper; +import com.njcn.cssystem.pojo.param.CsFeedbackAuditParm; import com.njcn.cssystem.pojo.param.CsFeedbackChatAddParm; import com.njcn.cssystem.pojo.param.CsFeedbackChatCheckParm; import com.njcn.cssystem.pojo.po.CsFeedbackChatPO; +import com.njcn.cssystem.pojo.po.CsFeedbackPO; import com.njcn.cssystem.service.CsFeedbackChatService; +import com.njcn.cssystem.service.CsFeedbackService; import com.njcn.web.utils.RequestUtil; +import lombok.RequiredArgsConstructor; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + /** * * Description: @@ -22,8 +28,11 @@ import org.springframework.transaction.annotation.Transactional; * @version V1.0.0 */ @Service +@RequiredArgsConstructor public class CsFeedbackChatServiceImpl extends ServiceImpl implements CsFeedbackChatService { + + private final CsFeedbackService csFeedbackService; @Override @Transactional(rollbackFor = {Exception.class}) public Boolean AddFeedbackChat(CsFeedbackChatAddParm csFeedbackAddParm) { @@ -40,14 +49,25 @@ public class CsFeedbackChatServiceImpl extends ServiceImpl updateWrapper = new UpdateWrapper<> (); + String userIndex = RequestUtil.getUserIndex(); + CsFeedbackPO one = csFeedbackService.lambdaQuery().eq(CsFeedbackPO::getId, csFeedbackChatCheckParm.getId()).one(); + /*如何非创建人添加一条聊天记录“反馈已收到,处理中”*/ + if ((!Objects.equals(one.getCreateBy(),userIndex))&&Objects.equals(one.getStatus(),"1")) { + CsFeedbackChatPO csFeedbackChatPO = new CsFeedbackChatPO (); + csFeedbackChatPO.setUserId(RequestUtil.getUserIndex()); + csFeedbackChatPO.setId(csFeedbackChatCheckParm.getId()); + csFeedbackChatPO.setChatContent("反馈已收到,处理中"); + csFeedbackChatPO.setChatStatus ("0"); + csFeedbackChatPO.setStatus ("1"); + this.save (csFeedbackChatPO); + CsFeedbackAuditParm csFeedbackAuditParm = new CsFeedbackAuditParm(); + csFeedbackAuditParm.setId(csFeedbackChatCheckParm.getId()); + csFeedbackAuditParm.setStatus("2"); + csFeedbackService.auditFeedBack(csFeedbackAuditParm); - updateWrapper.clear (); - updateWrapper.eq ("id",csFeedbackChatCheckParm.getId ()). - ne ("user_id",RequestUtil.getUserIndex()). - set ("chat_status","1"). - eq ("status", "1"); - boolean update = this.update (updateWrapper); - return update; + } + + return true; } } diff --git a/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/service/impl/CsFeedbackServiceImpl.java b/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/service/impl/CsFeedbackServiceImpl.java index e390080..5425af6 100644 --- a/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/service/impl/CsFeedbackServiceImpl.java +++ b/cs-system/cs-system-boot/src/main/java/com/njcn/cssystem/service/impl/CsFeedbackServiceImpl.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.njcn.csdevice.api.RoleEngineerDevFeignClient; +import com.njcn.cssystem.mapper.CsFeedbackChatMapper; import com.njcn.cssystem.mapper.CsFeedbackMapper; import com.njcn.cssystem.pojo.param.CsFeedbackAddParm; import com.njcn.cssystem.pojo.param.CsFeedbackAuditParm; @@ -47,7 +48,7 @@ public class CsFeedbackServiceImpl extends ServiceImpl collect = csFeedbackPOPage.getRecords ( ).stream ( ).map (temp -> { CsFeedbackVO csFeedbackVO = new CsFeedbackVO ( ); BeanUtils.copyProperties (temp, csFeedbackVO); - csFeedbackChatPOQueryWrapper.clear (); - csFeedbackChatPOQueryWrapper.eq ("id",temp.getId ()). - ne ("user_id",temp.getUserId ()). - eq ("chat_status","0"). - eq ("status", "1"); - int count = csFeedbackChatService.count (csFeedbackChatPOQueryWrapper ); - csFeedbackVO.setChatCount (count); +// csFeedbackChatPOQueryWrapper.clear (); +// csFeedbackChatPOQueryWrapper.eq ("id",temp.getId ()). +// ne ("user_id",temp.getUserId ()). +// eq ("chat_status","0"). +// eq ("status", "1"); +// int count = csFeedbackChatService.count (csFeedbackChatPOQueryWrapper ); +// csFeedbackVO.setChatCount (count); return csFeedbackVO; }).collect (Collectors.toList ( )); returnpage.setRecords (collect); @@ -123,7 +124,7 @@ public class CsFeedbackServiceImpl extends ServiceImpl csFeedbackChatPOQueryWrapper = new QueryWrapper(); csFeedbackChatPOQueryWrapper.eq ("id", id).eq ("status", "1").orderByDesc ("create_time"); - List list1 = csFeedbackChatService.list (csFeedbackChatPOQueryWrapper); + List list1 = csFeedbackChatMapper.selectList (csFeedbackChatPOQueryWrapper); List collect1 = list1.stream().map(CsFeedbackChatPO::getUserId).distinct().collect(Collectors.toList()); Map collect2;