暂降事件
This commit is contained in:
@@ -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<List<CsLedger>> queryLine(@RequestBody @Validated LineParamDTO lineParamdto);
|
||||
|
||||
@PostMapping("/queryDevDetail")
|
||||
|
||||
HttpResult<DevDetailDTO> queryDevDetail(@RequestParam("devId") String devId);
|
||||
}
|
||||
|
||||
@@ -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<CsLed
|
||||
log.error("{}异常,降级处理,异常为:{}","查询监测点",cause.toString());
|
||||
throw new BusinessException(finalExceptionEnum);
|
||||
}
|
||||
|
||||
@Override
|
||||
public HttpResult<DevDetailDTO> queryDevDetail(String devId) {
|
||||
log.error("{}异常,降级处理,异常为:{}","查询设备详情",cause.toString());
|
||||
throw new BusinessException(finalExceptionEnum);
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
@@ -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<DevDetailDTO> queryDevDetail(@RequestParam @Validated String devId){
|
||||
String methodDescribe = getMethodDescribe("queryDevDetail");
|
||||
DevDetailDTO details = csLedgerService.queryDevDetail(devId);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, details, methodDescribe);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -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<CsLedger> {
|
||||
List<CsLedgerVO> getProjectTree();
|
||||
|
||||
List<CsLedger> queryLine(LineParamDTO lineParamdto);
|
||||
|
||||
DevDetailDTO queryDevDetail(String devId);
|
||||
}
|
||||
|
||||
@@ -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<CsLedgerMapper, CsLedger> 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;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取子节点
|
||||
*/
|
||||
|
||||
@@ -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<String> target;
|
||||
|
||||
/**
|
||||
* 状态(0:未读取 1:已读取)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
}
|
||||
@@ -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;
|
||||
|
||||
@@ -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<EventDataSetDTO> dataSet;
|
||||
}
|
||||
@@ -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<List<EntData>> queryEvent(@RequestBody EventQueryDTO eventQueryDTO) {
|
||||
String methodDescribe = getMethodDescribe("queryEvent");
|
||||
List<EntData> 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<List<EventDetailVO>> queryEventList(@RequestBody CsEventUserQueryParam csEventUserQueryParam) {
|
||||
String methodDescribe = getMethodDescribe("queryEventList");
|
||||
List<EventDetailVO> list = eventService.queryEventList(csEventUserQueryParam);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -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<Integer> queryEvent(@RequestBody CsEventUserQueryParam csEventUserQueryParam) {
|
||||
String methodDescribe = getMethodDescribe("queryEvent");
|
||||
Integer count = csEventUserPOService.queryEventCount(csEventUserQueryParam);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, count, methodDescribe);
|
||||
}
|
||||
}
|
||||
@@ -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<CsEventUserPO> {
|
||||
Integer queryEventCount(@Param("csEventUserQueryParam") CsEventUserQueryParam csEventUserQueryParam);
|
||||
|
||||
List<EventDetailVO> queryUserEventList(@Param("csEventUserQueryParam") CsEventUserQueryParam csEventUserQueryParam);
|
||||
}
|
||||
@@ -4,7 +4,6 @@
|
||||
<resultMap id="BaseResultMap" type="com.njcn.csharmonic.pojo.po.CsEventUserPO">
|
||||
<!--@mbg.generated-->
|
||||
<!--@Table cs_event_user-->
|
||||
<result column="device_id" jdbcType="VARCHAR" property="deviceId" />
|
||||
<result column="user_id" jdbcType="VARCHAR" property="userId" />
|
||||
<result column="event_id" jdbcType="VARCHAR" property="eventId" />
|
||||
<result column="status" jdbcType="INTEGER" property="status" />
|
||||
@@ -13,4 +12,38 @@
|
||||
<!--@mbg.generated-->
|
||||
device_id, user_id, event_id, `status`
|
||||
</sql>
|
||||
|
||||
<select id="queryEventCount" resultType="java.lang.Integer">
|
||||
select count(DISTINCT(event_id)) from cs_event_user a where 1=1
|
||||
<!-- <if test="csEventUserQueryParam!=null and csEventUserQueryParam.enginnerId != null and csEventUserQueryParam.enginnerId !=''">-->
|
||||
<!-- AND a.enginner_id =#{ csEventUserQueryParam.enginnerId}-->
|
||||
<!-- </if>-->
|
||||
<!-- <if test="csEventUserQueryParam!=null and csEventUserQueryParam.deviceId != null and csEventUserQueryParam.deviceId !=''">-->
|
||||
<!-- AND a.device_id =#{ csEventUserQueryParam.deviceId}-->
|
||||
<!-- </if>-->
|
||||
AND a.`status`= 0
|
||||
and a.user_id=#{ csEventUserQueryParam.userId}
|
||||
and a.event_id in(select id FROM cs_event b where DATE(b.start_time) =DATE(NOW())
|
||||
)
|
||||
|
||||
</select>
|
||||
|
||||
<select id="queryUserEventList" resultType="com.njcn.csharmonic.pojo.vo.EventDetailVO">
|
||||
select a.event_id id,a.user_id userId,a.status status,b.device_id deviceId,b.line_id lineId,
|
||||
b.start_time startTime,b.tag tag ,b.wave_path wavePath, b.type type
|
||||
from cs_event_user a inner join cs_event b on a.event_id=b.id where 1=1 and DATE(b.start_time) =DATE(NOW()) and b.tag in
|
||||
<foreach collection="csEventUserQueryParam.target" index="index" item="item" open="(" separator="," close=")">
|
||||
#{item}
|
||||
</foreach>
|
||||
<!-- <if test="csEventUserQueryParam!=null and csEventUserQueryParam.enginnerId != null and csEventUserQueryParam.enginnerId !=''">-->
|
||||
<!-- AND a.enginner_id =#{ csEventUserQueryParam.enginnerId}-->
|
||||
<!-- </if>-->
|
||||
<!-- <if test="csEventUserQueryParam!=null and csEventUserQueryParam.deviceId != null and csEventUserQueryParam.deviceId !=''">-->
|
||||
<!-- AND a.device_id =#{ csEventUserQueryParam.deviceId}-->
|
||||
<!-- </if>-->
|
||||
<if test="csEventUserQueryParam!=null and csEventUserQueryParam.status != null and csEventUserQueryParam.status !=''">
|
||||
AND a.status =#{ csEventUserQueryParam.status}
|
||||
</if>
|
||||
and a.user_id=#{ csEventUserQueryParam.userId}
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -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;
|
||||
@@ -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<CsEventUserPO>{
|
||||
|
||||
|
||||
Integer queryEventCount(CsEventUserQueryParam csEventUserQueryParam);
|
||||
|
||||
List<EventDetailVO> queryUserEventList(CsEventUserQueryParam csEventUserQueryParam);
|
||||
}
|
||||
@@ -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<CsEventUserPOMapper, CsEventUserPO> implements CsEventUserPOService{
|
||||
|
||||
}
|
||||
@@ -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<EntData> queryEvent(EventQueryDTO eventQueryDTO);
|
||||
|
||||
|
||||
List<EventDetailVO> queryEventList(CsEventUserQueryParam csEventUserQueryParam);
|
||||
}
|
||||
|
||||
@@ -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:
|
||||
@@ -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<CsEventUserPO>{
|
||||
|
||||
|
||||
}
|
||||
@@ -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<CsEventUserPOMapper, CsEventUserPO> 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<EventDetailVO> queryUserEventList(CsEventUserQueryParam csEventUserQueryParam) {
|
||||
csEventUserQueryParam.setUserId(RequestUtil.getUserIndex());
|
||||
if(CollectionUtil.isEmpty(csEventUserQueryParam.getTarget())){
|
||||
/*获取所有暂态事件类型*/
|
||||
List<DictData> data = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.APP_EVENT.getCode()).getData();
|
||||
List<String> collect = data.stream().map(DictData::getCode).collect(Collectors.toList());
|
||||
csEventUserQueryParam.setTarget(collect);
|
||||
}
|
||||
List<EventDetailVO> list = this.getBaseMapper().queryUserEventList(csEventUserQueryParam);
|
||||
return list;
|
||||
}
|
||||
}
|
||||
@@ -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<EntData> queryEvent(EventQueryDTO eventQueryDTO) {
|
||||
@@ -49,4 +64,33 @@ public class EventServiceImpl implements EventService {
|
||||
List<EntData> eventData = evtDataService.getEventData(eventQueryDTO);
|
||||
return eventData;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<EventDetailVO> queryEventList(CsEventUserQueryParam csEventUserQueryParam) {
|
||||
|
||||
List<EventDetailVO> 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<EleEvtParm> data1 = eleEvtFeignClient.queryByPid(data.getId()).getData();
|
||||
List<EventDataSetDTO> 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;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -56,7 +56,7 @@ public class CsFeedbackPO extends BaseEntity {
|
||||
private String engineeringId;
|
||||
|
||||
/**
|
||||
* 问题状态(字典数据)
|
||||
* 问题状态(字典数据)0已处理,1待处理,2,处理中
|
||||
*/
|
||||
@TableField(value = "status")
|
||||
private String status;
|
||||
|
||||
@@ -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<Boolean> updateChatStatus(@RequestBody@Validated CsFeedbackChatCheckParm CsFeedbackChatCheckParm){
|
||||
String methodDescribe = getMethodDescribe("updateChatStatus");
|
||||
|
||||
@@ -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<CsFeedbackChatMapper, CsFeedbackChatPO> 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<CsFeedbackChatMapper,
|
||||
@Transactional(rollbackFor = {Exception.class})
|
||||
public Boolean updateChatStatus(CsFeedbackChatCheckParm csFeedbackChatCheckParm) {
|
||||
UpdateWrapper<CsFeedbackChatPO> 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;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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<CsFeedbackMapper, CsFeedb
|
||||
|
||||
private final FileStorageUtil fileStorageUtil;
|
||||
private final CsFilePathService csFilePathService;
|
||||
private final CsFeedbackChatService csFeedbackChatService;
|
||||
private final CsFeedbackChatMapper csFeedbackChatMapper;
|
||||
private final UserFeignClient userFeignClient;
|
||||
private final RoleEngineerDevFeignClient roleEngineerDevFeignClient;
|
||||
@Override
|
||||
@@ -96,13 +97,13 @@ public class CsFeedbackServiceImpl extends ServiceImpl<CsFeedbackMapper, CsFeedb
|
||||
List<CsFeedbackVO> 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<CsFeedbackMapper, CsFeedb
|
||||
csFeedbackDetailVO.setImageUrls (collect);
|
||||
QueryWrapper<CsFeedbackChatPO> csFeedbackChatPOQueryWrapper = new QueryWrapper();
|
||||
csFeedbackChatPOQueryWrapper.eq ("id", id).eq ("status", "1").orderByDesc ("create_time");
|
||||
List<CsFeedbackChatPO> list1 = csFeedbackChatService.list (csFeedbackChatPOQueryWrapper);
|
||||
List<CsFeedbackChatPO> list1 = csFeedbackChatMapper.selectList (csFeedbackChatPOQueryWrapper);
|
||||
|
||||
List<String> collect1 = list1.stream().map(CsFeedbackChatPO::getUserId).distinct().collect(Collectors.toList());
|
||||
Map<String, String> collect2;
|
||||
|
||||
Reference in New Issue
Block a user