Commit b7cd0a18 authored by KeYong's avatar KeYong

Merge branch 'develop_station' into developer

# Conflicts: # amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/service/impl/StockServiceImpl.java
parents eb84867f 4e6eef7d
......@@ -76,7 +76,7 @@ public class MetaHandler implements MetaObjectHandler {
}
//以下为装备中转移过来的
if (isExistField("userId", entity)) {
this.setFieldValByName("userId", Long.valueOf(agencyUserModel.getUserId()), metaObject);
this.setFieldValByName("userId", String.valueOf(agencyUserModel.getUserId()), metaObject);
}
if (isExistField("creatorId", entity)) {
this.setFieldValByName("creatorId", Long.valueOf(agencyUserModel.getUserId()), metaObject);
......
......@@ -113,6 +113,16 @@ public class CommonPageInfoParam extends CommonPageable {
private String isRemoveShield;
private String isFireAlarm;
public void setIsFireAlarm(String isFireAlarm) {
this.isFireAlarm = isFireAlarm;
}
public String getIsFireAlarm() {
return isFireAlarm;
}
public void setIsRemoveShield(String isRemoveShield) {
this.isRemoveShield = isRemoveShield;
}
......
......@@ -172,6 +172,10 @@ public class EquipmentIndexController {
queryWrapper.inSql(SignalClassify::getTypeCode,
"SELECT type_code FROM wl_signal_classify WHERE UPPER(type_code) ='" + equipmentIndex.getTypeCode().toUpperCase() +"'");
signalClassify = signalClassifyMapper.selectOne(queryWrapper);
equipmentIndex.setEmergencyLevelColor(signalClassify.getEmergencyLevelColor());
equipmentIndex.setIsAlarm(signalClassify.getIsAlarm());
equipmentIndex.setEmergencyLevel(signalClassify.getEmergencyLevel());
equipmentIndex.setEmergencyLevelDescribe(signalClassify.getEmergencyLevelDescribe());
}
QueryWrapper<EquipmentDetail> equipmentDetailQueryWrapper = new QueryWrapper<>();
equipmentDetailQueryWrapper.eq("equipment_id", equipmentIndex.getEquipmentId());
......
......@@ -9,12 +9,14 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.stream.Collectors;
/**
* 信号分类量测枚举表
......@@ -92,7 +94,18 @@ public class SignalClassifyController extends AbstractBaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "信号分类量测枚举表列表全部数据查询", notes = "信号分类量测枚举表列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<SignalClassify>> selectForList() {
return ResponseHelper.buildResponse(iSignalClassifyService.query().list());
public ResponseModel<List<SignalClassify>> selectForList(@RequestParam(required = false) String isAlarm,
@RequestParam(required = false) String isContainFire) {
if(!ValidationUtil.isEmpty(isAlarm) && "true".equals(isAlarm)) {
if(!ValidationUtil.isEmpty(isContainFire) && "false".equals(isContainFire)) {
return ResponseHelper.buildResponse(iSignalClassifyService.query().list().stream().filter(e->e.getIsAlarm() == 1 && !"FIREALARM".equals(e.getTypeCode())).collect(Collectors.toList()));
} else {
return ResponseHelper.buildResponse(iSignalClassifyService.query().list().stream().filter(e->e.getIsAlarm() == 1).collect(Collectors.toList()));
}
} else {
return ResponseHelper.buildResponse(iSignalClassifyService.query().list());
}
}
}
......@@ -102,14 +102,18 @@ public class EquipmentIndexImpl extends ServiceImpl<EquipmentIndexMapper, Equipm
if (ValidationUtil.isEmpty(equipmentIndex.getTypeCode())) {
bool.set(false);
}
int i = this.baseMapper.insert(equipmentIndex);
SignalClassify signalClassify = null;
if (bool.get()) {
LambdaQueryWrapper<SignalClassify> queryWrapper = new LambdaQueryWrapper();
queryWrapper.inSql(SignalClassify::getTypeCode,
"SELECT type_code FROM wl_signal_classify WHERE UPPER(type_code) ='" + equipmentIndex.getTypeCode().toUpperCase() +"'");
signalClassify = signalClassifyMapper.selectOne(queryWrapper);
equipmentIndex.setEmergencyLevelColor(signalClassify.getEmergencyLevelColor());
equipmentIndex.setIsAlarm(signalClassify.getIsAlarm());
equipmentIndex.setEmergencyLevel(signalClassify.getEmergencyLevel());
equipmentIndex.setEmergencyLevelDescribe(signalClassify.getEmergencyLevelDescribe());
}
int i = this.baseMapper.insert(equipmentIndex);
QueryWrapper<EquipmentDetail> equipmentDetailQueryWrapper = new QueryWrapper<>();
equipmentDetailQueryWrapper.eq("equipment_id", equipmentIndex.getEquipmentId());
List<EquipmentDetail> equipDetailList = iEquipmentDetailService.list(equipmentDetailQueryWrapper);
......
......@@ -12,10 +12,7 @@ import com.yeejoin.equipmanage.common.vo.EquipmentVo;
import com.yeejoin.equipmanage.fegin.PatrolFeign;
import com.yeejoin.equipmanage.mapper.*;
import com.yeejoin.equipmanage.remote.RemoteSecurityService;
import com.yeejoin.equipmanage.service.IEquipmentDetailService;
import com.yeejoin.equipmanage.service.IEquipmentIndexService;
import com.yeejoin.equipmanage.service.IEquipmentService;
import com.yeejoin.equipmanage.service.IUnitService;
import com.yeejoin.equipmanage.service.*;
import org.apache.commons.lang3.RandomStringUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -211,9 +208,9 @@ public class EquipmentServiceImpl extends ServiceImpl<EquipmentMapper, Equipment
Map<String, Object> columnMap = new HashMap<String, Object>();
columnMap.put("equipment_id", equipment1.getId());
List<EquipmentDetail> equipmentDetails = equipmentDetailMapper.selectByMap(columnMap);
// List<Car> cars = carMapper.selectByMap(columnMap);
List<Car> cars = carMapper.selectByMap(columnMap);
Equipment nowEquipment = this.baseMapper.selectById(equipment1.getId());
if (!(equipment1.getCategoryId()).equals(nowEquipment.getCategoryId())) {
if (!(equipment1.getCategoryId()).equals(nowEquipment.getCategoryId()) && (!equipmentDetails.isEmpty() || !cars.isEmpty())) {
throw new IllegalArgumentException("此装备已被使用,不能修改分类类型");
} else {
nameDuplicate(equipment1, true);// 名称是否重复
......
......@@ -180,6 +180,10 @@ public class EquipmentSpecificAlarmServiceImpl extends ServiceImpl<EquipmentSpec
@Override
public Page<Map<String, Object>> listPage(CommonPageInfoParam param) {
Page result = new Page<>(param.getPageNumber(), param.getPageSize());
if (AlarmTypeEnum.GZGJ.getCode().equals(param.getAlarmType())) {
param.setAlarmType("");
param.setIsFireAlarm("false");
}
Page<Map<String, Object>> resultPage = this.baseMapper.page(result, param);
if (resultPage.getTotal() > 0) {
for (Map<String, Object> x : resultPage.getRecords()) {
......
......@@ -2,6 +2,9 @@ package com.yeejoin.equipmanage.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
......@@ -145,6 +148,9 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
@Autowired
FireFightingSystemMapper fireFightingSystemMapper;
@Autowired
IEquipmentSpecificAlarmService equipmentSpecificAlarmService;
@Value("${systemctl.sync.switch}")
private Boolean syncSwitch;
......@@ -407,7 +413,7 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
@Override
public EquipmentSpecific updateEquipmentSpecific(EquipmentSpecific equipmentSpecific, ReginParams reginParams, AgencyUserModel agencyUserModel) {
SimpleDateFormat stf = new SimpleDateFormat("yyyy-MM-dd");
// @TableField(updateStrategy = FieldStrategy.IGNORED) 置空不生效 为空单独设置 by kongfm 2021-09-10
// @TableField(updateStrategy = FieldStrategy.IGNORED) 置空不生效 为空单独设置 by kongfm 2021-09-10
this.update(new LambdaUpdateWrapper<EquipmentSpecific>().set(EquipmentSpecific::getAgencyId, equipmentSpecific.getAgencyId()).set(EquipmentSpecific::getTeamId, equipmentSpecific.getTeamId()).eq(EquipmentSpecific::getId, equipmentSpecific.getId()));
if (equipmentSpecific.getStockDetail() != null && equipmentSpecific.getStockDetail().getWarehouseStructureId() != null) {
equipmentSpecific.setWarehouseStructureId(equipmentSpecific.getStockDetail().getWarehouseStructureId());
......@@ -464,8 +470,20 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
equipmentSpecific.getStockDetail().setWarehouseId(equipmentSpecific.getStock().getWarehouseId());
equipmentSpecific.getStockDetail().setQrCode(equipmentSpecific.getQrCode());
equipmentSpecific.getStockDetail().setEquipmentSpecificId(equipmentSpecific.getId());
EquipmentDetail detail = equipmentDetailService
.getOne(new QueryWrapper<EquipmentDetail>().eq("id", equipmentSpecific.getEquipmentDetailId()));
equipmentSpecific.getStockDetail().setDescription(detail.getArea());
stockDetailService.save(equipmentSpecific.getStockDetail());
// 更新alarm表没有复位的装备位置信息
LambdaQueryWrapper<EquipmentSpecificAlarm> queryWrapper = new LambdaQueryWrapper();
queryWrapper.eq(EquipmentSpecificAlarm::getEquipmentSpecificId, equipmentSpecific.getId());
queryWrapper.ne(EquipmentSpecificAlarm::getStatus, AlarmStatusEnum.HF.getCode());
List<EquipmentSpecificAlarm> alarms = equipmentSpecificAlarmService.getBaseMapper().selectList(queryWrapper);
alarms.stream().map(x -> x.setLocation(equipmentSpecific.getPosition() + " "
+ equipmentSpecific.getStockDetail().getDescription())).collect(Collectors.toList());
equipmentSpecificAlarmService.updateBatchById(alarms);
//生成入库单
StockBill stockBill = buildStockBills(equipmentSpecific, reginParams, agencyUserModel);
stockBillService.save(stockBill);
......@@ -1597,7 +1615,7 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
@Override
public List<EquipmentSpecificVo> getEquipAndCarIotcodeByIotcode(String iotCode) {
// TODO Auto-generated method stub
List<EquipmentSpecificVo> data = new ArrayList<EquipmentSpecificVo>();
List<EquipmentSpecificVo> data;
if (redisUtils.hasKey("equipAndCarIotCodes")) {
data = JSON.parseArray(redisUtils.get("equipAndCarIotCodes").toString(), EquipmentSpecificVo.class);
} else {
......@@ -1607,9 +1625,8 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
if (ObjectUtils.isEmpty(data)) {
return data;
}
List<EquipmentSpecificVo> resultdata = data.stream().filter(a -> a.getIotCode().equals(iotCode)).collect(Collectors.toList());
return resultdata;
List<EquipmentSpecificVo> resultData = data.stream().filter(a -> a.getIotCode().equals(iotCode)).collect(Collectors.toList());
return resultData;
}
@Override
......
......@@ -642,7 +642,11 @@ public class FireFightingSystemServiceImpl extends ServiceImpl<FireFightingSyste
// }
FireFightingSystemEntity entity = baseMapper.selectById(id);
if (entity.getSceneId() != null) {
FeignUtil.remoteCall(() -> Morphic.morphicSubjectClient.delete(entity.getSceneId()));
try {
FeignUtil.remoteCall(() -> Morphic.morphicSubjectClient.delete(entity.getSceneId()));
} catch (Exception e) {
throw new RuntimeException("远程调用 MORPHIC 服务的删除操作出错");
}
}
formInstanceMapper.clearSystemId(id);
// 解除装备与消防系统关系
......
package com.yeejoin.equipmanage.service.impl;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import com.yeejoin.equipmanage.common.utils.SpringUtils;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.equipmanage.common.entity.vo.EquipmentSpecificVo;
import com.yeejoin.equipmanage.common.enums.*;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.support.TransactionSynchronization;
import org.springframework.transaction.support.TransactionSynchronizationManager;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
......@@ -42,11 +44,6 @@ import com.yeejoin.equipmanage.common.entity.StockBillDetail;
import com.yeejoin.equipmanage.common.entity.StockDetail;
import com.yeejoin.equipmanage.common.entity.WarehouseStructure;
import com.yeejoin.equipmanage.common.entity.vo.EquipmentDetailDownloadVO;
import com.yeejoin.equipmanage.common.enums.BillContentEnum;
import com.yeejoin.equipmanage.common.enums.EquipStatusEnum;
import com.yeejoin.equipmanage.common.enums.JournalTypeEnum;
import com.yeejoin.equipmanage.common.enums.NoticeEnum;
import com.yeejoin.equipmanage.common.enums.StockBillTypeEnum;
import com.yeejoin.equipmanage.common.utils.ExcelUtils;
import com.yeejoin.equipmanage.common.utils.QRCodeUtil;
import com.yeejoin.equipmanage.common.utils.StringUtil;
......@@ -126,6 +123,10 @@ public class StockServiceImpl extends ServiceImpl<StockMapper, Stock> implements
@Autowired
IEquipmentSpecificSerivce equipmentSpecificSerivce;
@Autowired
private RedisUtils redisUtils;
@Override
@Transactional(rollbackFor = {Exception.class})
public StockBill in(List<StockDetail> list, String type, AgencyUserModel agencyUserModel) {
......@@ -468,7 +469,16 @@ public class StockServiceImpl extends ServiceImpl<StockMapper, Stock> implements
this.equipmentSpecificIndexSave(equipmentDetail, equipmentSpecific);
}
relationRedisUtil.delSysRedisKey(fireFightSysIdsBuffer.toString());
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronization() {
@Override
public void afterCommit() {
List<EquipmentSpecificVo> data = equipmentSpecificMapper.getEquipOrCarByIotCode(null);
if (redisUtils.hasKey("equipAndCarIotCodes")) {
redisUtils.del("equipAndCarIotCodes");
}
redisUtils.set("equipAndCarIotCodes", JSONObject.toJSONString(data));
}
});
return list;
}
@Async
......@@ -490,6 +500,10 @@ public class StockServiceImpl extends ServiceImpl<StockMapper, Stock> implements
equipmentSpecificIndex.setEquipmentSpecificName(equipmentDetail.getName());
equipmentSpecificIndex.setEquipmentIndexName(index.getPerfQuotaName());
equipmentSpecificIndex.setEquipmentIndexKey(index.getPerfQuotaDefinitionId());
equipmentSpecificIndex.setEmergencyLevelColor(index.getEmergencyLevelColor());
equipmentSpecificIndex.setIsAlarm(index.getIsAlarm());
equipmentSpecificIndex.setEmergencyLevel(index.getEmergencyLevel());
equipmentSpecificIndex.setEmergencyLevelDescribe(index.getEmergencyLevelDescribe());
return equipmentSpecificIndex;
}).collect(Collectors.toList());
if (!equipmentSpecificIndices.isEmpty()) {
......
......@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel;
import com.yeejoin.amos.knowledgebase.face.enumeration.DynamicsFunctional;
import com.yeejoin.amos.knowledgebase.face.enumeration.KnowledgeRoleName;
......@@ -47,7 +48,11 @@ import org.typroject.tyboot.core.restful.exception.instance.RequestForbidden;
import javax.servlet.http.HttpServletResponse;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.text.ParseException;
import java.time.format.DateTimeFormatter;
import java.time.temporal.TemporalAccessor;
import java.util.*;
import java.util.stream.Collectors;
import static com.yeejoin.amos.knowledgebase.face.util.DataTransformator.htmlContent2Text;
import static com.yeejoin.amos.knowledgebase.face.util.FileExporter.FileType.getInstance;
......@@ -165,6 +170,11 @@ public class DocLibraryService {
page.setTotal(total);
if (total > 0 && total > offset) {
List<Map<String, Object>> list = docContentService.getBaseMapper().queryDocBaseInfoList(paramsMap);
list.stream().map(x -> {
x.put("createTime", x.get("createTime").toString().replace("T", " "));
x.put("recDate", x.get("recDate").toString().replace("T", " "));
return x;
}).collect(Collectors.toList());
page.setRecords(list);
}
return page;
......
......@@ -672,10 +672,7 @@ SELECT
IF
( `sal`.`clean_time` IS NOT NULL, '已消除', '未消除' ) `cleanStatus`,
`sal`.`iot_code` AS `iotCode`,
date_format(
`sal`.`create_date`,
'%m-%d %H:%i:%s'
) AS `createDate`,
`sal`.`create_date` AS `createDate`,
(
SELECT
GROUP_CONCAT(id)
......@@ -6026,4 +6023,30 @@ SELECT
FROM
`v_fire_fighter` `fighter`
GROUP BY
`fighter`.`department_name`;
\ No newline at end of file
`fighter`.`department_name`;
-- 今日值班与巡查人员
DROP VIEW IF EXISTS `v_duty_check_person`;
CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`%` SQL SECURITY DEFINER VIEW `v_duty_check_person` AS
SELECT
ddd.`duty_name` AS `personName`,
au.`MOBILE` AS `userPhone`,
'值班员' AS `postName`
FROM
`d_duty_details` ddd
LEFT JOIN b_privilege_agency_user au ON au.USER_ID = ddd.user_id
WHERE
ddd.`duty_date` = curdate()
GROUP BY
ddd.`user_id` UNION ALL
SELECT
au.`REAL_NAME` AS `personName`,
au.`MOBILE` AS `userPhone`,
'巡查员' AS `postName`
FROM
`p_plan_task` ppt
LEFT JOIN b_privilege_agency_user au ON FIND_IN_SET(au.USER_ID, ppt.user_id) > 0
WHERE
DATEDIFF(begin_time,CURRENT_DATE) <= 0 AND DATEDIFF(end_time,CURRENT_DATE) >= 0
GROUP BY
au.USER_ID;
\ No newline at end of file
......@@ -209,6 +209,21 @@
AND es.equipment_detail_id = d.id
AND oc.car_id = #{id}
GROUP BY es.id
UNION ALL
SELECT
d.`name` AS equipName,
es.qr_code AS code,
es.iot_code AS iotCode,
es.code AS equipCode
FROM
wl_extinguishant_on_car weoc,
wl_equipment_detail d,
wl_equipment_specific es
WHERE
es.equipment_detail_id = d.id
AND weoc.equipment_detail_id = d.id
AND weoc.car_id = #{id}
GROUP BY es.id
</select>
<select id="getIotCodeList" resultType="String">
SELECT
......
......@@ -166,95 +166,92 @@
</select>
<select id="page" resultType="java.util.HashMap">
SELECT
d.*
FROM
(
SELECT
wlesal.id,
wlesal.org_code,
wlesal.equipment_specific_id AS fireEquipmentId,
wles.equipment_detail_id AS equipDetailId,
wles.code AS fireEquipmentCode,
wles.system_id AS systemId,
if(wles.code is null,wlesal.equipment_specific_name,concat(wlesal.equipment_specific_name,'(',wles.code,')')) as
fireEquipmentName,
concat(wlesal.equipment_specific_name,wlesal.equipment_specific_index_name) as alamContent,
if(confirm_type is null,'未处理','已处理') handleStatus,
IF (
wlesal.clean_time IS NOT NULL,
'已消除',
'未消除'
) cleanStatus,
confirm_type as handleType,
wlesal.equipment_index_id AS fireEquipmentIndexId,
wlesal.equipment_specific_index_key AS fireEquipmentSpecificIndexKey,
wlesal.equipment_specific_index_name AS fireEquipmentSpecificIndexName,
wles.warehouse_structure_id AS buildId,
we.img AS imgUrl,
CASE
wlesal.equipment_specific_index_value
WHEN 'true' THEN '是'
WHEN 'false' THEN '否'
ELSE wlesal.equipment_specific_index_value END
AS fireEquipmentPointValue,
wlesal.type AS typeCode,
(select type_name from wl_signal_classify sc where sc.type_code = wlesal.type limit 1) as type,
wlesal.create_date AS createDate,
CONCAT_WS(' ', wles.position,wled.area) AS warehouseStructureName, /*告警列表拼接详细地址*/
(select
group_concat(fet.`name`)
from f_equipment_fire_equipment as fefe
left join f_equipment as fet on fet.id = fefe.equipment_id
where fefe.fire_equipment_id = wlesal.equipment_specific_id
) as equipmentName,
wlesal.equipment_specific_name as equipmentSpecificName,
wles.position
wlesal.id,
wlesal.org_code,
wlesal.equipment_specific_id AS fireEquipmentId,
wles.equipment_detail_id AS equipDetailId,
wles.code AS fireEquipmentCode,
wles.system_id AS systemId,
if(wles.code is null,wlesal.equipment_specific_name,concat(wlesal.equipment_specific_name,'(',wles.code,')')) as
fireEquipmentName,
concat(wlesal.equipment_specific_name,wlesal.equipment_specific_index_name) as alamContent,
if(wlesal.confirm_type is null,'未处理','已处理') handleStatus,
IF (
wlesal.clean_time IS NOT NULL,
'已消除',
'未消除'
) cleanStatus,
confirm_type as handleType,
wlesal.equipment_index_id AS fireEquipmentIndexId,
wlesal.equipment_specific_index_key AS fireEquipmentSpecificIndexKey,
wlesal.equipment_specific_index_name AS fireEquipmentSpecificIndexName,
wles.warehouse_structure_id AS buildId,
we.img AS imgUrl,
CASE
wlesal.equipment_specific_index_value
WHEN 'true' THEN '是'
WHEN 'false' THEN '否'
ELSE wlesal.equipment_specific_index_value END
AS fireEquipmentPointValue,
wlesal.type AS typeCode,
(select type_name from wl_signal_classify sc where sc.type_code = wlesal.type limit 1) as type,
wlesal.create_date AS createDate,
CONCAT_WS(' ', wles.position,wled.area) AS warehouseStructureName, /*告警列表拼接详细地址*/
(select
group_concat(fet.`name`)
from f_equipment_fire_equipment as fefe
left join f_equipment as fet on fet.id = fefe.equipment_id
where fefe.fire_equipment_id = wlesal.equipment_specific_id
) as equipmentName,
wlesal.equipment_specific_name as equipmentSpecificName,
wles.position
FROM wl_equipment_specific_alarm_log wlesal
LEFT JOIN wl_equipment_specific wles ON wlesal.equipment_specific_id = wles.id
LEFT JOIN wl_equipment_detail wled ON wles.equipment_detail_id = wled.id
LEFT JOIN wl_equipment we ON wled.equipment_id = we.id
) d
<where>
<if test="param.warehouseStructureName != null and param.warehouseStructureName != ''">
d.warehouseStructureName like
CONCAT_WS(' ', wles.position,wled.area) like
concat(concat("%",#{param.warehouseStructureName}),"%")
</if>
<if test="param.equipCode != null and param.equipCode != ''">AND d.fireEquipmentCode like
<if test="param.equipCode != null and param.equipCode != ''">AND wles.code like
concat(concat("%",#{param.equipCode}),"%")
</if>
<if test="param.beginDate!=null">AND d.createDate <![CDATA[>=]]> #{param.beginDate}</if>
<if test="param.endDate!=null">AND d.createDate <![CDATA[<=]]> #{param.endDate}</if>
<if test="param.alarmType == 'BREAKDOWN'">AND d.typeCode = #{param.alarmType}</if>
<if test="param.alarmType == 'FIREALARM'">AND d.typeCode = #{param.alarmType}</if>
<if test="param.orgCode != null and param.orgCode != ''">AND d.org_code = #{param.orgCode}</if>
<if test="param.type != null and param.type != ''">AND d.typeCode = #{param.type}</if>
<if test="param.beginDate!=null">AND wlesal.create_date <![CDATA[>=]]> #{param.beginDate}</if>
<if test="param.endDate!=null">AND wlesal.create_date <![CDATA[<=]]> #{param.endDate}</if>
<if test="param.alarmType == 'BREAKDOWN'">AND wlesal.type = #{param.alarmType}</if>
<if test="param.alarmType == 'FIREALARM'">AND wlesal.type = #{param.alarmType}</if>
<if test="param.isFireAlarm == 'false'">AND wlesal.type != 'FIREALARM'</if>
<if test="param.orgCode != null and param.orgCode != ''">AND wlesal.org_code = #{param.orgCode}</if>
<if test="param.type != null and param.type != ''">AND wlesal.type = #{param.type}</if>
<if test="param.handleStatus != null and param.handleStatus != '' and param.handleStatus == 1">AND
d.handleStatus = '已处理'
wlesal.confirm_type IS NOT NULL
</if>
<if test="param.handleStatus != null and param.handleStatus != '' and param.handleStatus == 2">AND
d.handleStatus = '未处理'
wlesal.confirm_type IS NULL
</if>
<if test="param.system != null and param.system != ''">
AND find_in_set(#{param.system},d.systemId)
AND find_in_set(#{param.system},wles.system_id)
</if>
<if test="param.buildIds!=null">
AND d.buildId IN
AND wlesal.build_id IN
<foreach item="item" collection="param.buildIds" separator=","
open="(" close=")" index="">#{item}
</foreach>
</if>
<if test="param.id!=null and param.id!=''">AND d.fireEquipmentId = #{param.id}</if>
<if test="param.id!=null and param.id!=''">AND wlesal.equipment_specific_id = #{param.id}</if>
<if test="param.cleanStatus != null and param.cleanStatus != '' and param.cleanStatus == 1">AND
d.cleanStatus = '已消除'
wlesal.clean_time IS NOT NULL
</if>
<if test="param.cleanStatus != null and param.cleanStatus != '' and param.cleanStatus == 2">AND
d.cleanStatus = '未消除'
wlesal.clean_time IS NULL
</if>
<if test="param.isRemoveShield != null and param.isRemoveShield != ''">AND
d.typeCode != 'SHIELD'
wlesal.type != 'SHIELD'
</if>
</where>
ORDER BY d.createDate DESC
ORDER BY wlesal.create_date DESC
</select>
<select id="pageAlarmsInfo" resultType="Map">
SELECT
......
......@@ -1299,7 +1299,7 @@
xhsanhj,
xhsangz,
xhsanpb,
(xhsan - xhsanhj- xhsangz-xhsanpb) as xhszc,
ABS(xhsan - xhsanhj- xhsangz-xhsanpb) as xhszc,
xhsan
from
(select
......@@ -1386,7 +1386,7 @@
`wl_equipment_specific_index` si,
`wl_equipment_specific` s
where
si.equipment_index_key = 'FHS_FirePump_FeedbackModuleShield'
si.equipment_index_key = 'FHS_FirePump_RunShield'
and si.`value` = 'true'
and si.equipment_specific_id = s.id ) as xfsbpb,
(SELECT
......
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