Commit b9d33c89 authored by KeYong's avatar KeYong

更新系统、水源赋码

parent 1a031108
......@@ -141,4 +141,7 @@ public class FireFightingSystemEntity {
@ApiModelProperty(value = "主要设计人员")
private String leadDesigner;
@ApiModelProperty(value = "系统状态")
private String systemStatus;
}
......@@ -264,7 +264,15 @@ public interface EquipmentSpecificMapper extends BaseMapper<EquipmentSpecific> {
EquipmentSpecific getEquipSpecificEntityByCode(@Param("code") String code);
void updateEquipSpecificStatus(String status,String id);
Integer updateEquipSpecificStatus(String status,String id);
String getEquipStatusList(@Param("id") String id);
List<Long> countEquipStatusListByEquipId(@Param("id") Long id);
String getSpecificStatusByEquipmentCode(@Param("equipCode") String equipCode);
void updateWaterResourceStatus(@Param("id") Long id, @Param("status") String status);
String updateEquipSpecificStatusByCheckInput(String id);
......
......@@ -678,4 +678,6 @@ public interface FireFightingSystemMapper extends BaseMapper<FireFightingSystemE
List<Map<String, Object>> selectPressureDetails(@Param("bizOrgCode") String bizOrgCode);
Map<String, Object> selectEquipmentSpecificById(@Param("id") String id);
void updateStatusById(@Param("id") String id, @Param("status") String status);
}
......@@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.google.common.base.Joiner;
import com.google.common.collect.Lists;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
......@@ -2113,7 +2114,30 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
@Override
public void updateEquipSpecificStatus(String status, String id){
equipmentSpecificMapper.updateEquipSpecificStatus(status,id);
Integer num = equipmentSpecificMapper.updateEquipSpecificStatus(status, id);
if (0 < num) {
EquipmentSpecific equipmentSpecific = equipmentSpecificMapper.selectById(id);
if (StringUtil.isNotEmpty(equipmentSpecific.getSystemId())) {
List<String> ids = new ArrayList<>();
ids = Arrays.asList(equipmentSpecific.getSystemId().split(","));
ids.forEach(x -> {
// 系统赋码
String equipStatus = equipmentSpecificMapper.getEquipStatusList(x);
fireFightingSystemMapper.updateStatusById(x, equipStatus);
});
}
// 水源赋码
QueryWrapper<Equipment> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("code", equipmentSpecific.getEquipmentCode());
Equipment equipment = equipmentService.getOne(queryWrapper);
List<Long> ids = equipmentSpecificMapper.countEquipStatusListByEquipId(equipment.getId());
if (0 < ids.size()) {
String equipStatus = equipmentSpecificMapper.getSpecificStatusByEquipmentCode(equipment.getCode());
equipmentSpecificMapper.updateWaterResourceStatus(equipment.getId(), equipStatus);
}
}
}
@Override
......
......@@ -975,6 +975,17 @@
</sql>
</changeSet>
<changeSet author="ky" id="20230808">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="f_fire_fighting_system" columnName="system_status"/>
</not>
</preConditions>
<comment>f_fire_fighting_system新增属性字段 system_status</comment>
<sql>
ALTER TABLE `f_fire_fighting_system` ADD COLUMN `system_status` varchar(20) NULL DEFAULT 0 COMMENT '消防系统状态,默认0表示正常(绿色),1为故障类(黄色),2为火警类(红色)';
ALTER TABLE `cb_water_resource` ADD COLUMN `water_status` varchar(20) NULL DEFAULT 0 COMMENT '水源状态,默认0表示正常(绿色),1为故障类(黄色),2为火警类(红色)';
</sql>
</changeSet>
</databaseChangeLog>
\ No newline at end of file
......@@ -2337,10 +2337,46 @@
FROM
`f_equipment` a
</select>
<update id="updateEquipSpecificStatus">
update wl_equipment_specific set equip_status = #{status} where id = #{id}
</update>
<update id="updateWaterResourceStatus">
update cb_water_resource set water_status = #{status} where equip_id = #{id}
</update>
<select id="getEquipStatusList" resultType="java.lang.String">
SELECT
wles.equip_status AS equipStatus
FROM
`wl_equipment_specific` `wles`
LEFT JOIN f_fire_fighting_system fs ON FIND_IN_SET(fs.id, wles.system_id)
WHERE
fs.id = #{id}
ORDER BY wles.equip_status DESC
limit 1
</select>
<select id="getSpecificStatusByEquipmentCode" resultType="java.lang.String">
SELECT
wles.equip_status AS equipStatus
FROM
`wl_equipment_specific` `wles`
WHERE
wles.equipment_code = #{equipCode}
ORDER BY wles.equip_status DESC
limit 1
</select>
<select id="countEquipStatusListByEquipId" resultType="java.lang.Long">
SELECT
cwr.sequence_nbr AS id
FROM
cb_water_resource cwr
where
cwr.equip_id = #{id}
</select>
<select id="updateEquipSpecificStatusByCheckInput" resultType="java.lang.String">
SELECT
......
......@@ -5887,4 +5887,9 @@
ORDER BY
dat.updateDate DESC
</select>
<update id="updateStatusById">
update f_fire_fighting_system set system_status = #{status} where id = #{id}
</update>
</mapper>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment