合并代码

This commit is contained in:
2022-12-08 18:58:51 +08:00
parent 0615189afe
commit 9b8af7945a
94 changed files with 4917 additions and 103 deletions

View File

@@ -0,0 +1,35 @@
package com.njcn.device.pms.api;
import com.njcn.common.pojo.constant.ServerInfo;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.device.pms.api.fallback.PwMonitorClientFallbackFactory;
import com.njcn.device.pms.pojo.dto.PwPmsMonitorDTO;
import com.njcn.device.pms.pojo.param.PwPmsMonitorParam;
import com.njcn.device.pms.pojo.po.PmsTerminal;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
/**
* @author clam
* @date 2022/10/28
*/
@FeignClient(
value = ServerInfo.DEVICE,
path = "/pms/terminal",
fallbackFactory = PwMonitorClientFallbackFactory.class)
public interface PmsTerminalClient {
/**
* @Description: 查询监测终端台账所有信息
* @Param: []
* @return: com.njcn.common.pojo.response.HttpResult<java.util.List<com.njcn.device.pms.pojo.po.PmsTerminal>>
* @Author: clam
* @Date: 2022/12/1
*/
@PostMapping("/getTerminalSelectList")
HttpResult<List<PmsTerminal>> getTerminalSelectList();
}

View File

@@ -0,0 +1,43 @@
package com.njcn.device.pms.api.fallback;
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.device.pms.api.PmsTerminalClient;
import com.njcn.device.pms.api.PwMonitorClient;
import com.njcn.device.pms.pojo.dto.PwPmsMonitorDTO;
import com.njcn.device.pms.pojo.param.PwPmsMonitorParam;
import com.njcn.device.pms.pojo.po.PmsTerminal;
import com.njcn.device.pms.utils.PmsDeviceEnumUtil;
import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* @author yzh
* @date 2022/10/28
*/
@Slf4j
@Component
public class PmsTerminalClientFallbackFactory implements FallbackFactory<PmsTerminalClient> {
@Override
public PmsTerminalClient create(Throwable throwable) {
//判断抛出异常是否为解码器抛出的业务异常
Enum<?> exceptionEnum = CommonResponseEnum.SERVICE_FALLBACK;
if (throwable.getCause() instanceof BusinessException) {
BusinessException businessException = (BusinessException) throwable.getCause();
exceptionEnum = PmsDeviceEnumUtil.getExceptionEnum(businessException.getResult());
}
Enum<?> finalExceptionEnum = exceptionEnum;
return new PmsTerminalClient() {
@Override
public HttpResult<List<PmsTerminal>> getTerminalSelectList() {
log.error("{}异常,降级处理,异常为:{}", "获取主网所有终端", throwable.toString());
throw new BusinessException(finalExceptionEnum);
}
};
}
}

View File

@@ -0,0 +1,60 @@
package com.njcn.device.pms.pojo.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Description:
* 接口文档访问地址http://serverIP:port/swagger-ui.html
* Date: 2022/12/6 11:12【需求编号】
*
* @author clam
* @version V1.0.0
*/
@Data
public class GeneratrixAndPowerStationSonDTO {
private static final long serialVersionUID = 1L;
@ApiModelProperty(name = "orgid", value = "部门id")
private String orgid;
@ApiModelProperty(name = "orgName", value = "部门Name")
private String orgName;
/**
* 母线id
*/
@ApiModelProperty(name = "busbarId", value = "母线id")
private String busbarId;
/**
* 母线名称
*/
@ApiModelProperty(name = "busbarName", value = "母线名称")
private String busbarName;
/**
* 母线电压等级
*/
@ApiModelProperty(name = "generatrixVoltageLevel", value = "母线电压等级")
private String generatrixVoltageLevel;
/**
* 变电站id
*/
@ApiModelProperty(name = "subId", value = "变电站id")
private String subId;
/**
* 变电站名称
*/
@ApiModelProperty(name = "subName", value = "变电站名称")
private String subName;
/**
* 变电站电压等级
*/
@ApiModelProperty(name = "voltageLevel", value = "变电站电压等级")
private String voltageLevel;
}

View File

@@ -0,0 +1,47 @@
package com.njcn.device.pms.pojo.param;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.util.List;
/**
* Description:
* 接口文档访问地址http://serverIP:port/swagger-ui.html
* Date: 2022/12/5 11:15【需求编号】
*
* @author clam
* @version V1.0.0
*/
@Data
@ApiModel("母线查询条件")
public class ConditionParam {
@ApiModelProperty(value = "部门id",required = true)
@NotBlank(message = "部门id不可为空")
private String deptId;
/**
* 变电站电压等级
*/
@ApiModelProperty(name = "powerStationVoltageLevel", value = "变电站电压等级")
private String powerStationVoltageLevel;
/**
* 变电站名称
*/
@ApiModelProperty(name = "powerStationId", value = "变电站id")
private String powerStationId;
/**
* 变电站名称
*/
@ApiModelProperty(name = "powerStationName", value = "变电站名称")
private String powerStationName;
}

View File

@@ -40,4 +40,10 @@ public class PmsMonitorParam {
@ApiModelProperty(name = "powerrName",value = "变电站名称")
private String powerrName;
@ApiModelProperty(name = "monitorTag", value = "监测点标签")
private String monitorTag;
@ApiModelProperty(name = "isSpecialMonitor", value = "是否专项分析监测点 0-否 1-是")
private Integer isSpecialMonitor;
}

View File

@@ -182,6 +182,11 @@ public class Monitor extends BaseEntity {
*/
private Integer status;
/**
* 是否专项分析监测点 0-否 1-是
*/
private Integer isSpecialMonitor;
}

View File

@@ -9,7 +9,9 @@ import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.device.pms.pojo.dto.GeneratrixAndPowerStationDTO;
import com.njcn.device.pms.pojo.dto.GeneratrixAndPowerStationSonDTO;
import com.njcn.device.pms.pojo.dto.PmsGeneratrixDTO;
import com.njcn.device.pms.pojo.param.ConditionParam;
import com.njcn.device.pms.pojo.param.GeneratrixParam;
import com.njcn.device.pms.pojo.param.PmsGeneratrixParam;
import com.njcn.device.pms.pojo.po.Generatrix;
@@ -84,6 +86,27 @@ public class PmsGeneratrixController extends BaseController {
}
}
/**
* @Description: 普测计划页面调用根据条件查询母线信息
* @Param: [param]
* @return: com.njcn.common.pojo.response.HttpResult<java.util.List<com.njcn.device.pms.pojo.dto.GeneratrixAndPowerStationDTO>>
* @Author: clam
* @Date: 2022/12/5
*/
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getGeneratrixByCondition")
@ApiOperation("普测计划页面调用根据条件查询母线信息")
@ApiImplicitParam(name = "param", value = "条件参数", required = true)
public HttpResult<List<GeneratrixAndPowerStationSonDTO>> getGeneratrixByCondition(@RequestBody @Validated ConditionParam param) {
String methodDescribe = getMethodDescribe("getGeneratrixByCondition");
List<GeneratrixAndPowerStationSonDTO> monitorInfo = pmsGeneratrixService.getGeneratrixByCondition(param);
if (CollectionUtil.isEmpty(monitorInfo)) {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.NO_DATA, null, methodDescribe);
} else {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, monitorInfo, methodDescribe);
}
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.ADD)
@PostMapping("/addGeneratrix")
@ApiOperation("新增母线")

View File

@@ -2,7 +2,9 @@ package com.njcn.device.pms.mapper.majornetwork;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.device.pms.pojo.dto.GeneratrixAndPowerStationDTO;
import com.njcn.device.pms.pojo.dto.GeneratrixAndPowerStationSonDTO;
import com.njcn.device.pms.pojo.dto.PmsGeneratrixDTO;
import com.njcn.device.pms.pojo.param.ConditionParam;
import com.njcn.device.pms.pojo.param.PmsGeneratrixParam;
import com.njcn.device.pms.pojo.po.Generatrix;
import org.apache.ibatis.annotations.Mapper;
@@ -34,4 +36,12 @@ public interface PmsGeneratrixMapper extends BaseMapper<Generatrix> {
* @date 2022/11/3
*/
List<GeneratrixAndPowerStationDTO> getGeneratrixAndPowerStationInfo(@Param("param") PmsGeneratrixParam param);
/**
* @Description: 普测计划页面调用根据条件查询母线信息
* @Param: [data, param]
* @return: java.util.List<com.njcn.device.pms.pojo.dto.GeneratrixAndPowerStationDTO>
* @Author: clam
* @Date: 2022/12/5
*/
List<GeneratrixAndPowerStationSonDTO> getGeneratrixByCondition(@Param("orgList")List<String> data, @Param("param")ConditionParam param);
}

View File

@@ -37,7 +37,38 @@
</select>
<!--获取母线与电站关联信息-->
<select id="getGeneratrixAndPowerStationInfo"
<select id="getGeneratrixByCondition"
resultType="com.njcn.device.pms.pojo.dto.GeneratrixAndPowerStationSonDTO">
SELECT
pss.Org_Id AS orgid,
pss.Org_Name AS orgName,
pg.Generatrix_Id AS busbarId,
pg.Generatrix_Name AS busbarName,
pg.Scale AS generatrixVoltageLevel,
pss.Power_Id AS subId,
pss.Power_Name AS subName,
pss.Voltage_Level AS voltageLevel
FROM
pms_generatrix AS pg
LEFT JOIN pms_statation_stat AS pss ON pg.Statation_Id = pss.Power_Id
WHERE
pg.`Status` = 1
AND pss.`Status` = 1
<if test="param.powerStationId != null and param.powerStationId !=''">
AND pss.Power_Id = #{param.powerStationId}
</if>
<if test="param.powerStationVoltageLevel != null and param.powerStationVoltageLevel !='' ">
AND pss.Voltage_Level = #{param.powerStationVoltageLevel}
</if>
AND pss.org_id IN
<foreach collection="orgList" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
</select>
<select id="getGeneratrixAndPowerStationInfo"
resultType="com.njcn.device.pms.pojo.dto.GeneratrixAndPowerStationDTO">
SELECT
pg.Generatrix_Id AS generatrixId,

View File

@@ -3,7 +3,9 @@ package com.njcn.device.pms.service.majornetwork;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.device.pms.pojo.dto.GeneratrixAndPowerStationDTO;
import com.njcn.device.pms.pojo.dto.GeneratrixAndPowerStationSonDTO;
import com.njcn.device.pms.pojo.dto.PmsGeneratrixDTO;
import com.njcn.device.pms.pojo.param.ConditionParam;
import com.njcn.device.pms.pojo.param.GeneratrixParam;
import com.njcn.device.pms.pojo.param.PmsGeneratrixParam;
import com.njcn.device.pms.pojo.po.Generatrix;
@@ -94,4 +96,12 @@ public interface IPmsGeneratrixService extends IService<Generatrix> {
* @date 2022/11/3
*/
List<GeneratrixAndPowerStationDTO> getGeneratrixAndPowerStationInfo(PmsGeneratrixParam param);
/**
* @Description: 普测计划页面调用根据条件查询母线信息
* @Param: [param]
* @return: java.util.List<com.njcn.device.pms.pojo.dto.GeneratrixAndPowerStationDTO>
* @Author: clam
* @Date: 2022/12/5
*/
List<GeneratrixAndPowerStationSonDTO> getGeneratrixByCondition(ConditionParam param);
}

View File

@@ -104,8 +104,11 @@ public class MonitorServiceImpl extends ServiceImpl<MonitorMapper, Monitor> impl
.in(CollUtil.isNotEmpty(pmsMonitorParam.getVoltageLevels()), Monitor::getVoltageLevel, pmsMonitorParam.getVoltageLevels())
.in(CollUtil.isNotEmpty(pmsMonitorParam.getPowerrIds()),Monitor::getPowerrId,pmsMonitorParam.getPowerrIds())
.like(StringUtils.isNotBlank(pmsMonitorParam.getPowerrName()), Monitor::getPowerrName, pmsMonitorParam.getPowerrName())
.eq(Objects.nonNull(pmsMonitorParam.getIsSpecialMonitor()), Monitor::getIsSpecialMonitor, pmsMonitorParam.getIsSpecialMonitor())
.eq(StringUtils.isNotBlank(pmsMonitorParam.getMonitorType()), Monitor::getMonitorType, pmsMonitorParam.getMonitorType())
.eq(StringUtils.isNotBlank(pmsMonitorParam.getMonitorState()), Monitor::getMonitorState, pmsMonitorParam.getMonitorState());
.eq(StringUtils.isNotBlank(pmsMonitorParam.getMonitorState()), Monitor::getMonitorState, pmsMonitorParam.getMonitorState())
.eq(StringUtils.isNotBlank(pmsMonitorParam.getMonitorTag()), Monitor::getMonitorTag, pmsMonitorParam.getMonitorTag());
List<Monitor> list = this.list(lambdaQueryWrapper);
List<PmsMonitorDTO> dtoList = list.stream().map(item -> {
PmsMonitorDTO dto = new PmsMonitorDTO();

View File

@@ -11,7 +11,9 @@ import com.njcn.device.pms.enums.PmsDeviceResponseEnum;
import com.njcn.device.pms.mapper.majornetwork.PmsGeneratrixMapper;
import com.njcn.device.pms.mapper.majornetwork.StatationStatMapper;
import com.njcn.device.pms.pojo.dto.GeneratrixAndPowerStationDTO;
import com.njcn.device.pms.pojo.dto.GeneratrixAndPowerStationSonDTO;
import com.njcn.device.pms.pojo.dto.PmsGeneratrixDTO;
import com.njcn.device.pms.pojo.param.ConditionParam;
import com.njcn.device.pms.pojo.param.GeneratrixParam;
import com.njcn.device.pms.pojo.param.GeneratrixWireParam;
import com.njcn.device.pms.pojo.param.PmsGeneratrixParam;
@@ -20,6 +22,7 @@ import com.njcn.device.pms.pojo.po.GeneratrixWire;
import com.njcn.device.pms.pojo.po.StatationStat;
import com.njcn.device.pms.service.majornetwork.IPmsGeneratrixService;
import com.njcn.user.api.DeptFeignClient;
import com.njcn.web.factory.PageFactory;
import com.njcn.web.pojo.param.BaseParam;
import lombok.RequiredArgsConstructor;
@@ -43,6 +46,8 @@ public class PmsGeneratrixServiceImpl extends ServiceImpl<PmsGeneratrixMapper, G
private final StatationStatMapper statationStatMapper;
private final DeptFeignClient deptFeignClient;
/**
* 获取母线信息
*
@@ -124,6 +129,22 @@ public class PmsGeneratrixServiceImpl extends ServiceImpl<PmsGeneratrixMapper, G
return pmsGeneratrixMapper.getGeneratrixAndPowerStationInfo(param);
}
/**
* @param param
* @Description: 普测计划页面调用根据条件查询母线信息
* @Param: [param]
* @return: java.util.List<com.njcn.device.pms.pojo.dto.GeneratrixAndPowerStationDTO>
* @Author: clam
* @Date: 2022/12/5
*/
@Override
public List<GeneratrixAndPowerStationSonDTO> getGeneratrixByCondition(ConditionParam param) {
List<String> data = deptFeignClient.getDepSonSelfCodetByDeptId (param.getDeptId ( )).getData ( );
return pmsGeneratrixMapper.getGeneratrixByCondition(data,param);
}
private void checkName(GeneratrixParam generatrixParam, Boolean updateFlag){