代码提交

This commit is contained in:
huangzj
2023-09-21 15:58:38 +08:00
parent a53561c07f
commit b86cb8ddd8
24 changed files with 336 additions and 27 deletions

View File

@@ -23,7 +23,10 @@ import java.time.LocalDateTime;
@NoArgsConstructor
public class CsEquipmentProcessDTO {
private String id;
/**
* 设备名称
*/
private String devName;
/**
* 网络设备ID
*/
@@ -33,7 +36,7 @@ public class CsEquipmentProcessDTO {
* 操作人员
*/
private String operator;
private String operatorName;
/**
* 起始时间
*/

View File

@@ -1,5 +1,6 @@
package com.njcn.csdevice.pojo.vo;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
@@ -24,6 +25,7 @@ public class CsEventSendMsgVO {
* 用户id
*/
private String userId;
private String userName;
/**
* 事件id
@@ -34,6 +36,7 @@ public class CsEventSendMsgVO {
* 推送事件时用户的devCode
*/
private String devCode;
private String deviceId;
private String devName;
@@ -53,6 +56,23 @@ public class CsEventSendMsgVO {
* 备注
*/
private String remark;
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime startTime;
/**
* 事件类型
*/
private String tag;
private String showName;
/**
* 事件类型(0:暂态事件1:稳态事件 2:设备事
* 件)
*/
private Integer type;
}

View File

@@ -1,5 +1,6 @@
package com.njcn.csdevice.controller.equipment;
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;
@@ -7,8 +8,10 @@ import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.csdevice.pojo.dto.CsEquipmentProcessDTO;
import com.njcn.csdevice.pojo.po.CsEquipmentProcessPO;
import com.njcn.csdevice.pojo.vo.CsEventSendMsgVO;
import com.njcn.csdevice.service.CsEquipmentProcessPOService;
import com.njcn.web.controller.BaseController;
import com.njcn.web.pojo.param.BaseParam;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
@@ -54,13 +57,23 @@ public class CsEquipmentProcessController extends BaseController {
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/query")
@ApiOperation("新增记录")
@ApiImplicitParam(name = "csEquipmentProcessDTO", value = "逻辑子设备标识", required = true)
@ApiOperation("查询记录")
@ApiImplicitParam(name = "csEquipmentProcessDTO", value = "查询参数", required = true)
public HttpResult<List<CsEquipmentProcessDTO>> queryList(@RequestBody @Validated CsEquipmentProcessDTO csEquipmentProcessDTO){
String methodDescribe = getMethodDescribe("query");
String methodDescribe = getMethodDescribe("queryList");
List<CsEquipmentProcessDTO> result = csEquipmentProcessPOService.queryqueryList(csEquipmentProcessDTO);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/queryPage")
@ApiOperation("分页查询记录")
@ApiImplicitParam(name = "baseParam", value = "查询参数", required = true)
public HttpResult<Page<CsEquipmentProcessDTO>> queryPage(@RequestBody BaseParam baseParam){
String methodDescribe = getMethodDescribe("queryPage");
Page<CsEquipmentProcessDTO> list = csEquipmentProcessPOService.queryPage(baseParam);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
}
}

View File

@@ -2,6 +2,7 @@ package com.njcn.csdevice.controller.equipment;
import com.baomidou.mybatisplus.core.metadata.IPage;
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;
@@ -57,9 +58,9 @@ public class CsEventSendMsgController extends BaseController {
@PostMapping("/queryLog")
@ApiOperation("查询推送日志")
@ApiImplicitParam(name = "baseParam", value = "查询日志参数", required = true)
public HttpResult<IPage<CsEventSendMsgVO>> queryLog(@RequestBody BaseParam baseParam){
public HttpResult<Page<CsEventSendMsgVO>> queryLog(@RequestBody BaseParam baseParam){
String methodDescribe = getMethodDescribe("queryLog");
IPage<CsEventSendMsgVO> list = csEventSendMsgService.queryPage(baseParam);
Page<CsEventSendMsgVO> list = csEventSendMsgService.queryPage(baseParam);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
}

View File

@@ -1,7 +1,11 @@
package com.njcn.csdevice.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.csdevice.pojo.dto.CsEquipmentProcessDTO;
import com.njcn.csdevice.pojo.po.CsEquipmentProcessPO;
import com.njcn.web.pojo.param.BaseParam;
import org.apache.ibatis.annotations.Param;
/**
*
@@ -12,4 +16,5 @@ import com.njcn.csdevice.pojo.po.CsEquipmentProcessPO;
* @version V1.0.0
*/
public interface CsEquipmentProcessPOMapper extends BaseMapper<CsEquipmentProcessPO> {
Page<CsEquipmentProcessDTO> selectPages(Page<CsEquipmentProcessDTO> returnpage, @Param("baseParam") BaseParam baseParam);
}

View File

@@ -34,9 +34,9 @@
<if test="csDevModelQueryParm.devName != null and csDevModelQueryParm.devName != ''">
AND a.dev_type_name LIKE concat('%',#{csDevModelQueryParm.devName},'%')
</if>
<if test="csDevModelQueryParm.devType != null and csDevModelQueryParm.devType != ''">
AND a.dev_type = #{csDevModelQueryParm.devType}
</if>
<!-- <if test="csDevModelQueryParm.devType != null and csDevModelQueryParm.devType != ''">-->
<!-- AND a.dev_type = #{csDevModelQueryParm.devType}-->
<!-- </if>-->
<if test="csDevModelQueryParm.name != null and csDevModelQueryParm.name != ''">
AND a.name = #{csDevModelQueryParm.name}
</if>

View File

@@ -16,4 +16,19 @@
<!--@mbg.generated-->
id, dev_id, `operator`, start_time, end_time, `status`, `process`
</sql>
<select id="selectPages" resultType="com.njcn.csdevice.pojo.dto.CsEquipmentProcessDTO">
select a.*,b.name devName from cs_equipment_process a left join cs_equipment_delivery b on a.dev_id =b.ndid
where 1=1
<if test="baseParam!=null and baseParam.searchValue != null and baseParam.searchValue !=''">
AND b.name like concat(concat("%",#{baseParam.searchValue}),"%")
</if>
<if test="baseParam!=null and baseParam.searchEndTime != null and baseParam.searchEndTime !=''">
AND DATE(a.start_time) &lt;= DATE(#{baseParam.searchEndTime})
</if>
<if test="baseParam!=null and baseParam.searchBeginTime != null and baseParam.searchBeginTime !=''">
AND DATE(a.start_time) &gt;= DATE(#{baseParam.searchBeginTime})
</if>
order by a.start_time desc
</select>
</mapper>

View File

@@ -3,6 +3,14 @@
<mapper namespace="com.njcn.csdevice.mapper.CsEventSendMsgMapper">
<select id="selectPages" resultType="com.njcn.csdevice.pojo.vo.CsEventSendMsgVO">
select * from cs_event_send_msg a LEFT JOIN cs_event b on a.event_id =b.id
select a.*,b.*,c.name devName from cs_event_send_msg a LEFT JOIN cs_event b on a.event_id =b.id left JOIN cs_ledger c on b.device_id =c.id
where 1=1
<if test="baseParam!=null and baseParam.searchEndTime != null and baseParam.searchEndTime !=''">
AND DATE(a.send_time) &lt;= DATE(#{baseParam.searchEndTime})
</if>
<if test="baseParam!=null and baseParam.searchBeginTime != null and baseParam.searchBeginTime !=''">
AND DATE(a.send_time) &gt;= DATE(#{baseParam.searchBeginTime})
</if>
order by send_time desc
</select>
</mapper>

View File

@@ -1,8 +1,10 @@
package com.njcn.csdevice.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.csdevice.pojo.dto.CsEquipmentProcessDTO;
import com.njcn.csdevice.pojo.po.CsEquipmentProcessPO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.web.pojo.param.BaseParam;
import java.util.List;
@@ -18,4 +20,6 @@ public interface CsEquipmentProcessPOService extends IService<CsEquipmentProcess
List<CsEquipmentProcessDTO> queryqueryList(CsEquipmentProcessDTO csEquipmentProcessDTO);
Page<CsEquipmentProcessDTO> queryPage(BaseParam baseParam);
}

View File

@@ -1,6 +1,7 @@
package com.njcn.csdevice.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.csdevice.pojo.po.CsEventSendMsg;
import com.njcn.csdevice.pojo.vo.CsEventSendMsgVO;
@@ -16,5 +17,5 @@ import com.njcn.web.pojo.param.BaseParam;
*/
public interface ICsEventSendMsgService extends IService<CsEventSendMsg> {
IPage<CsEventSendMsgVO> queryPage(BaseParam baseParam);
Page<CsEventSendMsgVO> queryPage(BaseParam baseParam);
}

View File

@@ -2,15 +2,25 @@ package com.njcn.csdevice.service.impl;
import com.alibaba.cloud.commons.lang.StringUtils;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.csdevice.pojo.dto.CsEquipmentProcessDTO;
import com.njcn.csdevice.pojo.vo.CsEventSendMsgVO;
import com.njcn.system.pojo.po.EleEpdPqd;
import com.njcn.user.api.UserFeignClient;
import com.njcn.user.pojo.po.User;
import com.njcn.web.pojo.param.BaseParam;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.csdevice.mapper.CsEquipmentProcessPOMapper;
import com.njcn.csdevice.pojo.po.CsEquipmentProcessPO;
import com.njcn.csdevice.service.CsEquipmentProcessPOService;
import org.springframework.util.CollectionUtils;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
@@ -22,7 +32,9 @@ import java.util.stream.Collectors;
* @version V1.0.0
*/
@Service
@RequiredArgsConstructor
public class CsEquipmentProcessPOServiceImpl extends ServiceImpl<CsEquipmentProcessPOMapper, CsEquipmentProcessPO> implements CsEquipmentProcessPOService{
private final UserFeignClient userFeignClient;
@Override
public List<CsEquipmentProcessDTO> queryqueryList(CsEquipmentProcessDTO csEquipmentProcessDTO) {
@@ -36,4 +48,24 @@ public class CsEquipmentProcessPOServiceImpl extends ServiceImpl<CsEquipmentProc
}).collect(Collectors.toList());
return collect;
}
@Override
public Page<CsEquipmentProcessDTO> queryPage(BaseParam baseParam) {
Page<CsEquipmentProcessDTO> returnpage = new Page<> (baseParam.getPageNum ( ), baseParam.getPageSize ( ));
Page<CsEquipmentProcessDTO> result = this.getBaseMapper().selectPages(returnpage,baseParam);
List<String> collect1 = result.getRecords().stream().map(CsEquipmentProcessDTO::getOperator).distinct().collect(Collectors.toList());
Map<String, String> collect2;
if(!CollectionUtils.isEmpty(collect1)){
List<User> userTem = userFeignClient.getUserByIdList(collect1).getData();
collect2 = userTem.stream().collect(Collectors.toMap(User::getId, User::getName, (e1, e2) -> e1 + "," + e2));
} else {
collect2 = new HashMap<>();
}
result.getRecords().forEach(temp->{
temp.setOperatorName(collect2.get(temp.getOperator()));
});
return result;
}
}

View File

@@ -8,8 +8,20 @@ import com.njcn.csdevice.pojo.po.CsEventSendMsg;
import com.njcn.csdevice.pojo.po.CsLogsPO;
import com.njcn.csdevice.pojo.vo.CsEventSendMsgVO;
import com.njcn.csdevice.service.ICsEventSendMsgService;
import com.njcn.cssystem.pojo.po.CsFeedbackChatPO;
import com.njcn.system.api.EpdFeignClient;
import com.njcn.system.pojo.po.EleEpdPqd;
import com.njcn.user.api.UserFeignClient;
import com.njcn.user.pojo.po.User;
import com.njcn.web.pojo.param.BaseParam;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* <p>
@@ -20,13 +32,32 @@ import org.springframework.stereotype.Service;
* @since 2023-09-18
*/
@Service
@RequiredArgsConstructor
public class CsEventSendMsgServiceImpl extends ServiceImpl<CsEventSendMsgMapper, CsEventSendMsg> implements ICsEventSendMsgService {
private final EpdFeignClient epdFeignClient;
private final UserFeignClient userFeignClient;
@Override
public IPage<CsEventSendMsgVO> queryPage(BaseParam baseParam) {
public Page<CsEventSendMsgVO> queryPage(BaseParam baseParam) {
Page<CsEventSendMsgVO> returnpage = new Page<> (baseParam.getPageNum ( ), baseParam.getPageSize ( ));
Page<CsEventSendMsgVO> result = this.getBaseMapper().selectPages(returnpage,baseParam);
List<String> collect1 = result.getRecords().stream().map(CsEventSendMsgVO::getUserId).distinct().collect(Collectors.toList());
Map<String, String> collect2;
if(!CollectionUtils.isEmpty(collect1)){
List<User> userTem = userFeignClient.getUserByIdList(collect1).getData();
collect2 = userTem.stream().collect(Collectors.toMap(User::getId, User::getName, (e1, e2) -> e1 + "," + e2));
} else {
collect2 = new HashMap<>();
}
result.getRecords().forEach(temp->{
EleEpdPqd data = epdFeignClient.findByName(temp.getTag()).getData();
temp.setShowName(data.getShowName());
temp.setUserName(collect2.get(temp.getUserId()));
});
return result;
}
}

View File

@@ -4,6 +4,8 @@ import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.csdevice.enums.AlgorithmResponseEnum;
import com.njcn.csdevice.enums.LineBaseEnum;
import com.njcn.csdevice.mapper.AppProjectMapper;
import com.njcn.csdevice.mapper.AppTopologyDiagramMapper;
@@ -12,17 +14,17 @@ 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;
import com.njcn.csdevice.pojo.po.AppTopologyDiagramPO;
import com.njcn.csdevice.pojo.po.CsEngineeringPO;
import com.njcn.csdevice.pojo.po.CsLedger;
import com.njcn.csdevice.pojo.po.*;
import com.njcn.csdevice.pojo.vo.CsLedgerVO;
import com.njcn.csdevice.service.CsLinePOService;
import com.njcn.csdevice.service.ICsEngineeringUserService;
import com.njcn.csdevice.service.ICsLedgerService;
import com.njcn.csdevice.service.RoleEngineerDevService;
import com.njcn.oss.utils.FileStorageUtil;
import com.njcn.redis.utils.RedisUtil;
import com.njcn.system.api.AreaFeignClient;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.pojo.po.Area;
import lombok.AllArgsConstructor;
import org.springframework.beans.BeanUtils;
@@ -49,7 +51,8 @@ public class CsLedgerServiceImpl extends ServiceImpl<CsLedgerMapper, CsLedger> i
private final AppTopologyDiagramMapper appTopologyDiagramMapper;
private final AppProjectMapper appProjectMapper;
private final CsEngineeringMapper csEngineeringMapper;
private final CsLinePOService csLinePOService;
private final DicDataFeignClient dicDataFeignClient;
private final FileStorageUtil fileStorageUtil;
private final RoleEngineerDevService roleEngineerDevService;
@@ -73,6 +76,8 @@ public class CsLedgerServiceImpl extends ServiceImpl<CsLedgerMapper, CsLedger> i
public List<CsLedgerVO> getLineTree() {
List<CsLedgerVO> engineeringList = new ArrayList<>();
List<CsLedgerVO> allList = this.baseMapper.getAll();
String areaId = dicDataFeignClient.getDicDataByCode(DicDataEnum.OUTPUT_SIDE.getCode()).getData().getId();
/*获取用户工程,设备信息过滤*/
List<String> roleengineer = roleEngineerDevService.getRoleengineer();
List<String> device = roleEngineerDevService.getDevice();
@@ -89,7 +94,15 @@ public class CsLedgerServiceImpl extends ServiceImpl<CsLedgerMapper, CsLedger> i
List<CsLedgerVO> deviceList = allList.stream().filter(item -> device.contains(item.getId())).sorted(Comparator.comparing(CsLedgerVO::getSort)).collect(Collectors.toList());
List<CsLedgerVO> lineList = allList.stream().filter(item -> item.getLevel().equals(LineBaseEnum.LINE_LEVEL.getCode())).sorted(Comparator.comparing(CsLedgerVO::getSort)).collect(Collectors.toList());
deviceList.forEach(dev -> dev.setChildren(getChildren(dev, lineList)));
// List<String> collect = lineList.stream().map(CsLedgerVO::getId).collect(Collectors.toList());
// List<CsLinePO> csLinePOS = csLinePOService.listByIds(collect);
// List<CsLinePO> collect1 = csLinePOS.stream().filter(temp -> Objects.equals(temp.getPosition(), areaId)).collect(Collectors.toList());
// List<String> collect2 = collect1.stream().map(CsLinePO::getLineId).collect(Collectors.toList());
// lineList = lineList.stream().filter(temp -> collect2.contains(temp.getId())).collect(Collectors.toList());
List<CsLedgerVO> finalLineList = lineList;
deviceList.forEach(dev -> dev.setChildren(getChildren(dev, finalLineList)));
projectList.forEach(pro -> pro.setChildren(getChildren(pro, deviceList)));
engineeringList.forEach(eng -> eng.setChildren(getChildren(eng, projectList)));
return engineeringList;

View File

@@ -0,0 +1,45 @@
package com.njcn.csharmonic.param;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.util.List;
/**
*
* Description:
* Date: 2023/9/4 15:15【需求编号】
*
* @author clam
* @version V1.0.0
*/
@Data
@NoArgsConstructor
public class CsEventUserQueryPage extends CsEventUserQueryParam{
@NotNull(message="当前页不能为空!")
@Min(value = 1, message = "当前页不能为0")
@ApiModelProperty(value = "当前页",name = "pageNum",dataType ="Integer",required = true)
private Integer pageNum;
/**显示条数*/
@NotNull(message="显示条数不能为空!")
@ApiModelProperty(value = "显示条数",name = "pageSize",dataType ="Integer",required = true)
private Integer pageSize;
@ApiModelProperty(value = "工程id")
private String engineeringid;
@ApiModelProperty(value = "项目id")
private String projectId;
/**
* 装置id
*/
private String deviceId;
}

View File

@@ -2,6 +2,7 @@ package com.njcn.csharmonic.param;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
@@ -43,5 +44,11 @@ public class CsEventUserQueryParam {
private String status;
private String level;
@ApiModelProperty(value="起始时间")
// @NotNull(message="起始时间不能为空!")
private String startTime;
@ApiModelProperty(value="结束时间")
// @NotNull(message="结束时间不能为空!")
private String endTime;
}

View File

@@ -64,6 +64,7 @@ public class EventDetailVO {
* 事件类型
*/
private String tag;
private String showName;
/**
* 暂态事件波形文件路

View File

@@ -1,10 +1,12 @@
package com.njcn.csharmonic.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.csharmonic.param.CsEventUserQueryPage;
import com.njcn.csharmonic.param.CsEventUserQueryParam;
import com.njcn.csharmonic.pojo.vo.EventDetailVO;
import com.njcn.csharmonic.service.CsEventUserPOService;
@@ -47,7 +49,7 @@ public class EventUserController extends BaseController {
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/queryEventList")
@ApiOperation("当天事件未读消息")
@ApiOperation("当天事件消息")
@ApiImplicitParam(name = "csEventUserQueryParam", value = "暂降事件查询参数", required = true)
public HttpResult<List<EventDetailVO>> queryEventList(@RequestBody CsEventUserQueryParam csEventUserQueryParam) {
String methodDescribe = getMethodDescribe("queryEventList");
@@ -55,6 +57,16 @@ public class EventUserController extends BaseController {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/queryEventpage")
@ApiOperation("当天事件消息")
@ApiImplicitParam(name = "csEventUserQueryPage", value = "暂降事件查询参数", required = true)
public HttpResult<Page<EventDetailVO>> queryEventpage(@RequestBody CsEventUserQueryPage csEventUserQueryPage) {
String methodDescribe = getMethodDescribe("queryEventpage");
Page<EventDetailVO> list = csEventUserPOService.queryEventpage(csEventUserQueryPage);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/updateStatus")
@ApiOperation("已读事件")

View File

@@ -31,7 +31,14 @@
<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())
from cs_event_user a inner join cs_event b on a.event_id=b.id where 1=1
<if test="csEventUserQueryParam!=null and csEventUserQueryParam.endTime != null and csEventUserQueryParam.endTime !=''">
AND DATE(b.start_time) &lt;= DATE(#{csEventUserQueryParam.endTime})
</if>
<if test="csEventUserQueryParam!=null and csEventUserQueryParam.startTime != null and csEventUserQueryParam.startTime !=''">
AND DATE(b.start_time) &gt;= DATE(#{csEventUserQueryParam.startTime})
</if>
<if test="csEventUserQueryParam!=null and csEventUserQueryParam.target != null and csEventUserQueryParam.target.size()>0">
and b.tag in
@@ -49,6 +56,10 @@
<if test="csEventUserQueryParam!=null and csEventUserQueryParam.status != null and csEventUserQueryParam.status !=''">
AND a.status =#{ csEventUserQueryParam.status}
</if>
<if test="csEventUserQueryParam!=null and csEventUserQueryParam.userId != null and csEventUserQueryParam.userId !=''">
and a.user_id=#{ csEventUserQueryParam.userId}
</if>
order by create_time desc
</select>
</mapper>

View File

@@ -1,5 +1,7 @@
package com.njcn.csharmonic.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.csharmonic.param.CsEventUserQueryPage;
import com.njcn.csharmonic.param.CsEventUserQueryParam;
import com.njcn.csharmonic.pojo.po.CsEventUserPO;
import com.baomidou.mybatisplus.extension.service.IService;
@@ -23,4 +25,6 @@ public interface CsEventUserPOService extends IService<CsEventUserPO>{
List<EventDetailVO> queryUserEventList(CsEventUserQueryParam csEventUserQueryParam);
void updateStatus(CsEventUserQueryParam csEventUserQueryParam);
Page<EventDetailVO> queryEventpage(CsEventUserQueryPage csEventUserQueryPage);
}

View File

@@ -2,12 +2,19 @@ package com.njcn.csharmonic.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.csdevice.api.CsLedgerFeignClient;
import com.njcn.csdevice.pojo.dto.DevDetailDTO;
import com.njcn.csdevice.pojo.po.AppTopologyDiagramPO;
import com.njcn.csdevice.pojo.vo.AppTopologyDiagramVO;
import com.njcn.csharmonic.param.CsEventUserQueryPage;
import com.njcn.csharmonic.param.CsEventUserQueryParam;
import com.njcn.csharmonic.pojo.vo.EventDetailVO;
import com.njcn.influx.pojo.dto.EventDataSetDTO;
import com.njcn.influx.service.EvtDataService;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.api.EleEvtFeignClient;
import com.njcn.system.api.EpdFeignClient;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import com.njcn.system.pojo.po.EleEpdPqd;
@@ -29,6 +36,7 @@ import com.njcn.csharmonic.pojo.po.CsEventUserPO;
import com.njcn.csharmonic.mapper.CsEventUserPOMapper;
import com.njcn.csharmonic.service.CsEventUserPOService;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
/**
*
@@ -44,6 +52,9 @@ public class CsEventUserPOServiceImpl extends ServiceImpl<CsEventUserPOMapper, C
private final DicDataFeignClient dicDataFeignClient;
private final CsLedgerFeignClient csLedgerFeignClient;
private final EvtDataService evtDataService;
private final EpdFeignClient epdFeignClient;
private final EleEvtFeignClient eleEvtFeignClient;
@Override
public Integer queryEventCount(CsEventUserQueryParam csEventUserQueryParam) {
@@ -64,6 +75,9 @@ public class CsEventUserPOServiceImpl extends ServiceImpl<CsEventUserPOMapper, C
if( Objects.equals(role, AppRoleEnum.APP_VIP_USER.getCode())){
csEventUserQueryParam.setLevel("3");
}
if( Objects.equals(role, AppRoleEnum.OPERATION_MANAGER.getCode())||Objects.equals(role, AppRoleEnum.ROOT.getCode())){
csEventUserQueryParam.setUserId(null);
}
if(CollectionUtil.isEmpty(csEventUserQueryParam.getTarget())&&Objects.equals(csEventUserQueryParam.getType(),"0")){
/*获取所有暂态事件类型*/
List<DictData> data = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.APP_EVENT.getCode()).getData();
@@ -79,8 +93,38 @@ public class CsEventUserPOServiceImpl extends ServiceImpl<CsEventUserPOMapper, C
temp.setProjectName(devDetail.getProjectName());
temp.setEngineeringid(devDetail.getEngineeringid());
temp.setEngineeringName(devDetail.getEngineeringName());
EleEpdPqd data = epdFeignClient.findByName(temp.getTag()).getData();
temp.setShowName(data.getShowName());
});
if(Objects.equals(csEventUserQueryParam.getType(),"0")){
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();
temp.setShowName(data.getShowName());
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());
if (evtData == null) {
eventDataSetDTO.setValue("3.1415926");
}else {
eventDataSetDTO.setValue(Optional.ofNullable(evtData.getValue()).orElse("3.1415926"));
}
eventDataSetDTOS.add(eventDataSetDTO);
}
temp.setDataSet(eventDataSetDTOS);
});
}
return list;
}
@@ -95,4 +139,24 @@ public class CsEventUserPOServiceImpl extends ServiceImpl<CsEventUserPOMapper, C
eq(CsEventUserPO::getUserId,csEventUserQueryParam.getUserId()).
set(CsEventUserPO::getStatus,1).update();
}
@Override
public Page<EventDetailVO> queryEventpage(CsEventUserQueryPage csEventUserQueryPage) {
Page<EventDetailVO> returnpage = new Page<> (csEventUserQueryPage.getPageNum ( ), csEventUserQueryPage.getPageSize ( ));
List<EventDetailVO> list = this.queryUserEventList(csEventUserQueryPage);
if(!StringUtils.isEmpty(csEventUserQueryPage.getEngineeringid())){
list =list.stream().filter(temp->Objects.equals(temp.getEngineeringid(),csEventUserQueryPage.getEngineeringid())).collect(Collectors.toList());
}
if(!StringUtils.isEmpty(csEventUserQueryPage.getProjectId())){
list =list.stream().filter(temp->Objects.equals(temp.getProjectId(),csEventUserQueryPage.getProjectId())).collect(Collectors.toList());
}
if(!StringUtils.isEmpty(csEventUserQueryPage.getDeviceId())){
list =list.stream().filter(temp->Objects.equals(temp.getDeviceId(),csEventUserQueryPage.getDeviceId())).collect(Collectors.toList());
}
returnpage.setRecords (list);
returnpage.setTotal(list.size());
return returnpage;
}
}

View File

@@ -236,15 +236,19 @@ public class StableDataServiceImpl implements StableDataService {
throw new BusinessException(AlgorithmResponseEnum.LINE_DATA_ERROR);
}
List<String> collect = csLinePOList.stream().map(CsLinePO::getLineId).collect(Collectors.toList());
String areaId = dicDataFeignClient.getDicDataByCode(DicDataEnum.OUTPUT_SIDE.getCode()).getData().getId();
Optional.ofNullable(csLinePOList).orElseThrow(()-> new BusinessException(AlgorithmResponseEnum.LINE_DATA_ERROR));
collect = csLinePOList.stream().filter(temp->Objects.equals(areaId,temp.getPosition())).map(CsLinePO::getLineId).collect(Collectors.toList());
List<EleEpdPqd> data = csStatisticalSetFeignClient.queryStatisticalSelect(commonStatisticalQueryParam.getStatisticalId()).getData();
// EleEpdPqd data = epdFeignClient.selectById(commonStatisticalQueryParam.getStatisticalId()).getData();
// Optional.ofNullable(data).orElseThrow(()-> new BusinessException(AlgorithmResponseEnum.ELEEPDPQD_DATA_ERROR));
if(CollectionUtil.isNotEmpty(data)){
List<String> finalCollect = collect;
data.forEach(epdPqd->{
String frequency = Optional.ofNullable(commonStatisticalQueryParam.getFrequency()).orElse("");
List<StatisticalDataDTO> deviceRtData = commonService.getDeviceRtDataByTime(collect, epdPqd.getClassId(), epdPqd.getName()+frequency, epdPqd.getPhase(), commonStatisticalQueryParam.getValueType(),commonStatisticalQueryParam.getStartTime(),commonStatisticalQueryParam.getEndTime());
List<StatisticalDataDTO> deviceRtData = commonService.getDeviceRtDataByTime(finalCollect, epdPqd.getClassId(), epdPqd.getName()+frequency, epdPqd.getPhase(), commonStatisticalQueryParam.getValueType(),commonStatisticalQueryParam.getStartTime(),commonStatisticalQueryParam.getEndTime());
List<ThdDataVO> collect1 = deviceRtData.stream().map(temp -> {
@@ -281,6 +285,9 @@ public class StableDataServiceImpl implements StableDataService {
throw new BusinessException(AlgorithmResponseEnum.LINE_DATA_ERROR);
}
List<String> collect = csLinePOList.stream().map(CsLinePO::getLineId).collect(Collectors.toList());
String areaId = dicDataFeignClient.getDicDataByCode(DicDataEnum.OUTPUT_SIDE.getCode()).getData().getId();
Optional.ofNullable(csLinePOList).orElseThrow(()-> new BusinessException(AlgorithmResponseEnum.LINE_DATA_ERROR));
collect = csLinePOList.stream().filter(temp->Objects.equals(areaId,temp.getPosition())).map(CsLinePO::getLineId).collect(Collectors.toList());
List<EleEpdPqd> data = csStatisticalSetFeignClient.queryStatisticalSelect(commonStatisticalQueryParam.getStatisticalId()).getData();
@@ -289,8 +296,9 @@ public class StableDataServiceImpl implements StableDataService {
String frequency = Optional.ofNullable(commonStatisticalQueryParam.getFrequency()).orElse("");
if(CollectionUtil.isNotEmpty(data)){
List<String> finalCollect = collect;
data.forEach(epdPqd->{
List<StatisticalDataDTO> deviceRtData = commonService.getDeviceRtDataByTime(collect, epdPqd.getClassId(), epdPqd.getName()+frequency, epdPqd.getPhase(), commonStatisticalQueryParam.getValueType(),commonStatisticalQueryParam.getStartTime(),commonStatisticalQueryParam.getEndTime());
List<StatisticalDataDTO> deviceRtData = commonService.getDeviceRtDataByTime(finalCollect, epdPqd.getClassId(), epdPqd.getName()+frequency, epdPqd.getPhase(), commonStatisticalQueryParam.getValueType(),commonStatisticalQueryParam.getStartTime(),commonStatisticalQueryParam.getEndTime());
List<ThdDataVO> collect1 = deviceRtData.stream().map(temp -> {

View File

@@ -28,6 +28,13 @@ public class CsFeedbackQueryParm {
@NotNull(message="显示条数不能为空!")
@ApiModelProperty(value = "显示条数",name = "pageSize",dataType ="Integer",required = true)
private Integer pageSize;
@ApiModelProperty("搜索值")
private String searchValue;
@ApiModelProperty("开始时间")
private String searchBeginTime;
@ApiModelProperty("结束时间")
private String searchEndTime;
// /**
// * 用户id
// */

View File

@@ -57,8 +57,8 @@ public class CsFeedbackVO {
private String status;
@ApiModelProperty(value = "未读消息条数")
private int chatCount;
// @ApiModelProperty(value = "未读消息条数")
// private int chatCount;
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")

View File

@@ -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.csdevice.pojo.po.CsLogsPO;
import com.njcn.cssystem.mapper.CsFeedbackChatMapper;
import com.njcn.cssystem.mapper.CsFeedbackMapper;
import com.njcn.cssystem.pojo.param.CsFeedbackAddParm;
@@ -91,6 +92,9 @@ public class CsFeedbackServiceImpl extends ServiceImpl<CsFeedbackMapper, CsFeedb
queryWrapper.
eq (StringUtils.isNotBlank (csFeedbackQueryParm.getType ()),"type",csFeedbackQueryParm.getType ()).
in("engineering_id",data).
ge(StringUtils.isNotBlank(csFeedbackQueryParm.getSearchBeginTime()), "create_time",csFeedbackQueryParm.getSearchBeginTime()).
le(StringUtils.isNotBlank(csFeedbackQueryParm.getSearchEndTime()),"create_time",csFeedbackQueryParm.getSearchEndTime()).
like(StringUtils.isNotBlank(csFeedbackQueryParm.getSearchValue()),"title",csFeedbackQueryParm.getSearchValue()).
eq(StringUtils.isNotBlank (csFeedbackQueryParm.getStatus ()),"status",csFeedbackQueryParm.getStatus ()).orderByDesc("create_time");
Page<CsFeedbackPO> csFeedbackPOPage = this.getBaseMapper ( ).selectPage (page, queryWrapper);
QueryWrapper<CsFeedbackChatPO> csFeedbackChatPOQueryWrapper = new QueryWrapper<> ();