通用台账查询接口调整

This commit is contained in:
cdf
2026-03-23 09:19:03 +08:00
parent 559620ab66
commit e8cd6da8a0
6 changed files with 204 additions and 31 deletions

View File

@@ -36,6 +36,19 @@ public interface DeviceMapper extends BaseMapper<Device> {
List<Device> getDeviceBySubId(@Param("subId") String subId,@Param("ip") String ip,@Param("port") Integer port,@Param("devId")String devId);
/**
* 获取监测点台账信息
* @param list 监测点集合
* @param comFlag 状态
* @param searchValue
* @return 结果
*/
Page<RunManageVO> getRunManageCommList(@Param("page")Page<RunTimeVO> page,
@Param("list") List<String> list,
@Param("comFlag") List<Integer> comFlag,
@Param("runFlag") List<Integer> runFlag,
@Param("searchValue") String searchValue);
/**
* 获取监测点台账信息
* @param list 监测点集合
@@ -57,7 +70,8 @@ public interface DeviceMapper extends BaseMapper<Device> {
* @param searchValue
* @return 结果
*/
List<RunTimeVO> getRunManageDevList(@Param("list") List<String> list,
Page<RunTimeVO> getRunManageDevList(@Param("page")Page<RunTimeVO> page,
@Param("list") List<String> list,
@Param("comFlag") List<Integer> comFlag,
@Param("runFlag") List<Integer> runFlag,
@Param("manufacturers") List<String> manufacturer,

View File

@@ -16,6 +16,128 @@
</select>
<select id="getRunManageCommList" resultType="com.njcn.device.pq.pojo.vo.RunManageVO">
SELECT
linedetail.Num AS id,
line.NAME AS lineName,
area.NAME AS areaName,
gd.NAME AS gdName,
sub.NAME AS bdName,
scaleId.Name as scale,
manufacturerId.name as manufacturer,
dev.name as devName,
device.IP as ip,
case linedetail.Run_Flag
when 0 then '投运'
when 1 then '检修'
when 2 then '停运'
when 3 then '调试'
when 4 then '退运'
end as runFlag,
case device.Com_Flag
when 0 then '中断'
when 1 then '正常'
end as comFlag,
loadtypeId.Name as loadType,
businesstypeId.name as businessType,
IFNULL(obj.project_name,'/') as objName,
case linedetail.PT_Type
when 0 then '星型接线'
when 1 then '三角型接线'
when 2 then '开口三角型接线'
end as ptType,
CONCAT(linedetail.PT1,'/', linedetail.PT2) as pt,
CONCAT(linedetail.CT1,'/', linedetail.CT2) as ct,
linedetail.Standard_Capacity as standardCapacity,
linedetail.Short_Capacity as shortCapacity,
linedetail.Dev_Capacity as devCapacity,
linedetail.Deal_Capacity as dealCapacity,
overlimit.Freq_Dev as freqDev,
overlimit.Voltage_Dev as voltageDev,
overlimit.Uvoltage_Dev as uvoltageDev,
overlimit.Ubalance as ubalance,
overlimit.I_Neg as iNeg,
overlimit.Flicker as flicker,
overlimit.Uaberrance as uaberrance,
overlimit.Uharm_3 as oddHarm,
overlimit.Uharm_2 as evenHarm,
overlimit.Iharm_2 as iharm2,
overlimit.Iharm_3 as iharm3,
overlimit.Iharm_4 as iharm4,
overlimit.Iharm_5 as iharm5,
overlimit.Iharm_6 as iharm6,
overlimit.Iharm_7 as iharm7,
overlimit.Iharm_8 as iharm8,
overlimit.Iharm_9 as iharm9,
overlimit.Iharm_10 as iharm10,
overlimit.Iharm_11 as iharm11,
overlimit.Iharm_12 as iharm12,
overlimit.Iharm_13 as iharm13,
overlimit.Iharm_14 as iharm14,
overlimit.Iharm_15 as iharm15,
overlimit.Iharm_16 as iharm16,
overlimit.Iharm_17 as iharm17,
overlimit.Iharm_18 as iharm18,
overlimit.Iharm_19 as iharm19,
overlimit.Iharm_20 as iharm20,
overlimit.Iharm_21 as iharm21,
overlimit.Iharm_22 as iharm22,
overlimit.Iharm_23 as iharm23,
overlimit.Iharm_24 as iharm24,
overlimit.Iharm_25 as iharm25,
overlimit.InUharm_1 as inUharm,
overlimit.InUharm_16 as inUharm16
FROM pq_line line
inner join pq_line_detail detail on line.id = detail.id
left join supervision_user_report obj on obj.id = detail.obj_id
INNER JOIN pq_line vol ON vol.Id = line.Pid
INNER JOIN pq_line dev ON dev.Id = vol.Pid
INNER JOIN pq_line sub ON sub.Id = dev.Pid
INNER JOIN pq_line gd ON gd.Id = sub.Pid
INNER JOIN pq_line areaId ON areaId.Id = gd.Pid
INNER JOIN sys_area area ON area.Id = areaId.NAME
INNER JOIN pq_overlimit overlimit ON overlimit.Id = line.Id
INNER JOIN pq_voltage voltage ON voltage.Id = vol.Id
INNER JOIN sys_dict_data scaleId ON scaleId.Id = voltage.Scale
INNER JOIN pq_device device ON device.Id = dev.Id
INNER JOIN sys_dict_data manufacturerId ON manufacturerId.Id = device.Manufacturer
INNER JOIN pq_line_detail linedetail ON linedetail.Id = line.Id
INNER JOIN sys_dict_data loadtypeId ON loadtypeId.Id = linedetail.Load_Type
INNER JOIN sys_dict_data businesstypeId ON businesstypeId.Id = linedetail.Business_Type
WHERE line.Id in
<foreach item="item" collection="list" open="(" separator="," close=")">
#{item}
</foreach>
<if test="comFlag.size()!=0">
and device.Com_Flag in
<foreach item="item2" collection="comFlag" open="(" separator="," close=")">
#{item2}
</foreach>
</if>
<if test="runFlag.size()!=0">
and linedetail.run_Flag in
<foreach item="item" collection="runFlag" open="(" separator="," close=")">
#{item}
</foreach>
</if>
<if test="searchValue != '' and searchValue != null ">
<bind name="searchValueLike" value="'%'+searchValue+'%'"/>
AND (sub.NAME LIKE #{searchValueLike}
OR dev.name LIKE #{searchValueLike}
OR line.NAME LIKE #{searchValueLike}
OR loadtypeId.Name LIKE #{searchValueLike}
OR manufacturerId.name LIKE #{searchValueLike}
OR obj.project_name LIKE #{searchValueLike}
)
</if>
ORDER BY
gdName,
bdName,
devNAME,
objName
</select>
<select id="getRunManageList" resultType="com.njcn.device.pq.pojo.vo.RunManageVO">
SELECT
linedetail.Num AS id,
@@ -137,10 +259,12 @@
<select id="getRunManageDevList" resultType="com.njcn.device.pq.pojo.vo.RunTimeVO">
SELECT
DISTINCT
dev.Id AS id,
area.NAME AS areaName,
gd.NAME AS gdName,
sub.NAME AS bdName,
obj.project_name objName,
manufacturerId.NAME AS manufacturer,
dev.NAME AS devName,
device.IP AS ip,
@@ -152,7 +276,7 @@
WHEN 0 THEN
'投运'
WHEN 1 THEN
'热备用'
'检修'
WHEN 2 THEN
'停运'
END AS runFlag,
@@ -165,8 +289,12 @@
END AS comFlag,
device.Update_Time AS updateTime
FROM
pq_line dev
INNER JOIN pq_line sub ON sub.Id = dev.Pid
pq_line line
left join pq_line_detail detail on line.id = detail.id
left join supervision_user_report obj on obj.id = detail.obj_id
inner join pq_line busBar on line.pid = busBar.id
inner join pq_line dev on busBar.pid = dev.id
INNER JOIN pq_line sub ON sub.id = dev.Pid
INNER JOIN pq_line gd ON gd.Id = sub.Pid
INNER JOIN pq_line areaId ON areaId.Id = gd.Pid
INNER JOIN sys_area area ON area.Id = areaId.NAME
@@ -197,10 +325,13 @@
</if>
<if test="searchValue != '' and searchValue != null ">
<bind name="searchValueLike" value="'%'+searchValue+'%'"/>
AND sub.NAME LIKE #{searchValueLike}
AND
(sub.NAME LIKE #{searchValueLike}
OR dev.NAME LIKE #{searchValueLike}
OR devT.Name LIKE #{searchValueLike}
OR device.IP LIKE #{searchValueLike}
OR obj.project_name LIKE #{searchValueLike}
)
</if>
ORDER BY
gdName,