Commit be46a8ae authored by kongfm's avatar kongfm

Merge remote-tracking branch 'origin/developer' into developer

parents 0ec49a2c 2220b979
...@@ -66,4 +66,13 @@ public enum ExecuteTypeEnum { ...@@ -66,4 +66,13 @@ public enum ExecuteTypeEnum {
} }
return null; return null;
} }
public static String getNameByCode(Integer code) {
for (ExecuteTypeEnum e : ExecuteTypeEnum.values()) {
if (code.equals(e.getCode())) {
return e.getName();
}
}
return null;
}
} }
...@@ -56,6 +56,61 @@ public class PointClassify extends BasicEntity{ ...@@ -56,6 +56,61 @@ public class PointClassify extends BasicEntity{
@Column(name="inspection_spec_name") @Column(name="inspection_spec_name")
private String inspectionSpecName; private String inspectionSpecName;
/**
* 编号
*/
@Column(name="code")
private String code;
/**
* 分类名称
*/
@Column(name="category_name")
private String categoryName;
/**
* 分类id
*/
@Column(name="category_code")
private String categoryCode;
/**
* 位置
*/
@Column(name="address")
private String address;
/**
* 数据源code(1 消防装备 2 重点部位 3 自定义)
*/
@Column(name="data_source_code")
private String dataSourceCode;
/**
* 数据源名称(冗余)
*/
@Column(name="data_source_name")
private String dataSourceName;
/**
* 是否删除( 0未删除,1已删除 )
*/
@Column(name="is_delete")
private byte isDelete;
/**
* 建筑id
*/
@Column(name="building_id")
private String buildingId;
/**
* 建筑名称
*/
@Column(name="building_name")
private String buildingName;
public String getEquipmentId() { public String getEquipmentId() {
return equipmentId; return equipmentId;
} }
...@@ -115,4 +170,76 @@ public class PointClassify extends BasicEntity{ ...@@ -115,4 +170,76 @@ public class PointClassify extends BasicEntity{
public void setOriginalId(String originalId) { public void setOriginalId(String originalId) {
this.originalId = originalId; this.originalId = originalId;
} }
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getCategoryName() {
return categoryName;
}
public void setCategoryName(String categoryName) {
this.categoryName = categoryName;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getDataSourceCode() {
return dataSourceCode;
}
public void setDataSourceCode(String dataSourceCode) {
this.dataSourceCode = dataSourceCode;
}
public String getDataSourceName() {
return dataSourceName;
}
public void setDataSourceName(String dataSourceName) {
this.dataSourceName = dataSourceName;
}
public byte getIsDelete() {
return isDelete;
}
public void setIsDelete(byte isDelete) {
this.isDelete = isDelete;
}
public String getBuildingId() {
return buildingId;
}
public void setBuildingId(String buildingId) {
this.buildingId = buildingId;
}
public String getBuildingName() {
return buildingName;
}
public void setBuildingName(String buildingName) {
this.buildingName = buildingName;
}
public String getCategoryCode() {
return categoryCode;
}
public void setCategoryCode(String categoryCode) {
this.categoryCode = categoryCode;
}
} }
\ No newline at end of file
...@@ -168,7 +168,7 @@ public class AlertCalledController extends BaseController { ...@@ -168,7 +168,7 @@ public class AlertCalledController extends BaseController {
* @return * @return
*/ */
@TycloudOperation(needAuth = true, ApiLevel = UserType.AGENCY) @TycloudOperation(needAuth = true, ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{id}") @GetMapping(value = "/find/{id}")
@ApiOperation(httpMethod = "GET", value = "根据id查询", notes = "根据id查询") @ApiOperation(httpMethod = "GET", value = "根据id查询", notes = "根据id查询")
public ResponseModel<Object> selectById(@PathVariable Long id) { public ResponseModel<Object> selectById(@PathVariable Long id) {
......
...@@ -2080,7 +2080,7 @@ public class LatentDangerServiceImpl extends BaseService<LatentDangerBo, LatentD ...@@ -2080,7 +2080,7 @@ public class LatentDangerServiceImpl extends BaseService<LatentDangerBo, LatentD
throw new Exception(executeSubmitDto.getMsg()); throw new Exception(executeSubmitDto.getMsg());
} }
List<String> userIds = workflowExecuteService.getUserIdsByWorkflow(latentDanger.getInstanceId(), executeSubmitDto.getCheckLeaderId()); List<String> userIds = workflowExecuteService.getUserIdsByWorkflow(latentDanger.getInstanceId(), executeSubmitDto.getCheckLeaderId());
asyncTask.sendDangerSubmitMsg(RequestContext.cloneRequestContext(), latentDanger, userIds); asyncTask.sendDangerSubmitMsg(RequestContext.cloneRequestContext(), latentDanger, userIds, ExecuteTypeEnum.getNameByCode(executeType));
return executeSubmitDto; return executeSubmitDto;
} }
......
...@@ -27,11 +27,7 @@ import org.typroject.tyboot.core.foundation.context.RequestContext; ...@@ -27,11 +27,7 @@ import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.context.RequestContextModel; import org.typroject.tyboot.core.foundation.context.RequestContextModel;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil; import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import java.util.Date; import java.util.*;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
...@@ -167,8 +163,8 @@ public class AsyncTask { ...@@ -167,8 +163,8 @@ public class AsyncTask {
RequestContext.setProduct(requestContextModel.getProduct()); RequestContext.setProduct(requestContextModel.getProduct());
RequestContext.setAppKey(requestContextModel.getAppKey()); RequestContext.setAppKey(requestContextModel.getAppKey());
MessageModel model = new MessageModel(); MessageModel model = new MessageModel();
String body = String.format("隐患名称:%s;隐患级别:%s;治理方式:%s;推送时间:%s", String body = String.format("隐患名称:%s;隐患级别:%s;治理方式:%s;当前状态:%s;推送时间:%s",
latentDanger.getDangerName(), latentDanger.getDangerLevelName(), latentDanger.getReformTypeName(), DateUtil.date2LongStr(new Date())); latentDanger.getDangerName(), latentDanger.getDangerLevelName(), latentDanger.getReformTypeName(), latentDanger.getDangerStateName(), DateUtil.date2LongStr(new Date()));
model.setBody(body); model.setBody(body);
getMessageModel(model, latentDanger); getMessageModel(model, latentDanger);
try { try {
...@@ -188,13 +184,13 @@ public class AsyncTask { ...@@ -188,13 +184,13 @@ public class AsyncTask {
* 确认隐患发送消息 * 确认隐患发送消息
*/ */
@Async @Async
public void sendDangerSubmitMsg(RequestContextModel requestContextModel, LatentDanger latentDanger, List<String> userIds){ public void sendDangerSubmitMsg(RequestContextModel requestContextModel, LatentDanger latentDanger, List<String> userIds, String executeName){
RequestContext.setToken(requestContextModel.getToken()); RequestContext.setToken(requestContextModel.getToken());
RequestContext.setProduct(requestContextModel.getProduct()); RequestContext.setProduct(requestContextModel.getProduct());
RequestContext.setAppKey(requestContextModel.getAppKey()); RequestContext.setAppKey(requestContextModel.getAppKey());
MessageModel model = new MessageModel(); MessageModel model = new MessageModel();
String body = String.format("隐患名称:%s;隐患级别:%s;治理方式:%s;推送时间:%s", String body = String.format("隐患名称:%s;隐患级别:%s;治理方式:%s;当前状态:%s;审核结果:%s;推送时间:%s",
latentDanger.getDangerName(), latentDanger.getDangerLevelName(), latentDanger.getReformTypeName(), DateUtil.date2LongStr(new Date())); latentDanger.getDangerName(), latentDanger.getDangerLevelName(), latentDanger.getReformTypeName(), latentDanger.getDangerStateName(), executeName, DateUtil.date2LongStr(new Date()));
model.setBody(body); model.setBody(body);
model.setIsSendWeb(true); model.setIsSendWeb(true);
model.setRecivers(userIds); model.setRecivers(userIds);
...@@ -219,7 +215,9 @@ public class AsyncTask { ...@@ -219,7 +215,9 @@ public class AsyncTask {
} }
} }
if (!ValidationUtil.isEmpty(type)){ if (!ValidationUtil.isEmpty(type)){
model.getExtras().put("type", type); Map<String, String> map = new HashMap<>();
map.put("type", type);
model.setExtras(map);
} }
model.setTitle(latentDanger.getDangerName()); model.setTitle(latentDanger.getDangerName());
model.setIsSendApp(true); model.setIsSendApp(true);
......
...@@ -3,6 +3,8 @@ package com.yeejoin.amos.maintenance.business.param; ...@@ -3,6 +3,8 @@ package com.yeejoin.amos.maintenance.business.param;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import lombok.Data;
@Data
public class PushMsgParam { public class PushMsgParam {
...@@ -42,53 +44,6 @@ public class PushMsgParam { ...@@ -42,53 +44,6 @@ public class PushMsgParam {
*/ */
private String type = "3"; private String type = "3";
public String getType() { private String relationId;
return type;
}
public void setType(String type) {
this.type = type;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public List<String> getRecivers() {
return recivers;
}
public void setRecivers(List<String> recivers) {
this.recivers = recivers;
}
public Map<String, String> getExtras() {
return extras;
}
public void setExtras(Map<String, String> extras) {
this.extras = extras;
}
public String getSubject() {
return subject;
}
public void setSubject(String subject) {
this.subject = subject;
}
public String[] getEmails() {
return emails;
}
public void setEmails(String[] emails) {
this.emails = emails;
}
} }
...@@ -233,9 +233,10 @@ public class MessageServiceImpl implements IMessageService { ...@@ -233,9 +233,10 @@ public class MessageServiceImpl implements IMessageService {
extras.put("type",MsgTypeEnum.CHECK.getCode()); extras.put("type",MsgTypeEnum.CHECK.getCode());
extras.put("id",checkMsgBo.getCheckId()+""); extras.put("id",checkMsgBo.getCheckId()+"");
pushMsgParam.setExtras(extras); pushMsgParam.setExtras(extras);
pushMsgParam.setRelationId(String.valueOf(checkMsgBo.getCheckId()));
pmps.add(pushMsgParam); pmps.add(pushMsgParam);
List<Msg> msgList =createMsg(jpushUser,checkMsgBo); List<Msg> msgList =createMsg(jpushUser,checkMsgBo);
pushFeignServer.sendMessage( toke, product, appKey,pmps); pushFeignServer.sendMessage(pmps);
} }
} }
...@@ -312,10 +313,11 @@ public class MessageServiceImpl implements IMessageService { ...@@ -312,10 +313,11 @@ public class MessageServiceImpl implements IMessageService {
extras.put("type",msg.getMsgType()); extras.put("type",msg.getMsgType());
extras.put("id",msg.getRelationId()==null?"0":msg.getRelationId().toString()); extras.put("id",msg.getRelationId()==null?"0":msg.getRelationId().toString());
pushMsg.setExtras(extras); pushMsg.setExtras(extras);
pushMsg.setRelationId(msg.getRelationId()==null?"0":msg.getRelationId().toString());
pmps.add(pushMsg); pmps.add(pushMsg);
msg.setSendTime(new Date()); msg.setSendTime(new Date());
msg.setStatus(1); msg.setStatus(1);
pushFeignServer.sendMessage( toke, product, appKey,pmps); pushFeignServer.sendMessage(pmps);
iMsgDao.save(msg); iMsgDao.save(msg);
return msg; return msg;
} }
......
...@@ -2,49 +2,43 @@ package com.yeejoin.amos.maintenance.feign; ...@@ -2,49 +2,43 @@ package com.yeejoin.amos.maintenance.feign;
import java.util.List; import java.util.List;
import com.yeejoin.amos.maintenance.business.util.CommonResponse;
import com.yeejoin.amos.maintenance.business.util.CommonResponseUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.MessageModel;
import com.yeejoin.amos.maintenance.business.param.PushMsgParam; import com.yeejoin.amos.maintenance.business.param.PushMsgParam;
@Service("pushFeignServer") @Service("pushFeignServer")
public class PushFeignServer { public class PushFeignServer {
@Autowired public void sendMessage(List<PushMsgParam> pushMsgParam){
private RestTemplate restTemplate; try {
pushMsgParam.forEach(action->{
@Value("${Push.fegin.name}") sendJP(action);
private String RPushFeginName; });
private static String sendMessage = "/api/user/sendMessage"; } catch (Exception e) {
e.printStackTrace();
public String geturls(String url){
return "http://"+RPushFeginName+url;
} }
public HttpHeaders getHeader(String toke,String product,String appKey){
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
headers.set("Content-Type", "application/json");
headers.set("token", toke);
headers.set("product",product);
headers.set("appKey", appKey);
return headers;
} }
public CommonResponse sendMessage(String toke, String product, String appKey, List<PushMsgParam> pushMsgParam){
public void sendMessage(PushMsgParam pushMsgParam){
try { try {
HttpEntity httpEntity = new HttpEntity<>(pushMsgParam, getHeader( toke, product, appKey)); sendJP(pushMsgParam);
CommonResponse commonResponse1 = restTemplate.postForObject(geturls(sendMessage),httpEntity, CommonResponse.class);
return commonResponse1;
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
return CommonResponseUtil.failure("发送失败");
} }
} }
private void sendJP(PushMsgParam pushMsgParam){
MessageModel model = new MessageModel();
model.setRelationId(pushMsgParam.getRelationId());
model.setTitle(pushMsgParam.getSubject());
model.setBody(pushMsgParam.getContent());
model.setMsgType("maintenance");
model.setIsSendApp(true);
model.setIsSendWeb(true);
model.setRecivers(pushMsgParam.getRecivers());
model.setExtras(pushMsgParam.getExtras());
Systemctl.messageClient.create(model);
}
} }
...@@ -30,7 +30,7 @@ public interface InputItemMapper extends BaseMapper { ...@@ -30,7 +30,7 @@ public interface InputItemMapper extends BaseMapper {
public List<InputItemVo> getInputItemListByitemNos(@Param("itemNos") String[] itemNos); public List<InputItemVo> getInputItemListByitemNos(@Param("itemNos") String[] itemNos);
public List<PointInputItemVo> queryCustomInputItemByPointId(@Param("pointId") Long pointId, @Param("equipmentId") String equipmentName ); public List<PointInputItemVo> queryCustomInputItemByPointId(@Param("classifyId") String classifyId );
public PointInputItemVo getInputItemByEquipmentName(@Param("equipmentName") String equipmentName ); public PointInputItemVo getInputItemByEquipmentName(@Param("equipmentName") String equipmentName );
} }
...@@ -14,7 +14,7 @@ public interface IPointClassifyDao extends BaseDao<PointClassify, Long> { ...@@ -14,7 +14,7 @@ public interface IPointClassifyDao extends BaseDao<PointClassify, Long> {
@Modifying @Modifying
@Transactional @Transactional
@Query(value = "select * from p_point_classify where point_id = ?1", nativeQuery = true) @Query(value = "select * from p_point_classify where point_id = ?1 and is_delete = 0", nativeQuery = true)
List<PointClassify> getPointClassifyByPointId(long id); List<PointClassify> getPointClassifyByPointId(long id);
@Modifying @Modifying
...@@ -27,5 +27,23 @@ public interface IPointClassifyDao extends BaseDao<PointClassify, Long> { ...@@ -27,5 +27,23 @@ public interface IPointClassifyDao extends BaseDao<PointClassify, Long> {
@Query(value = "delete from p_point_classify where point_id in (?1)", nativeQuery = true) @Query(value = "delete from p_point_classify where point_id in (?1)", nativeQuery = true)
void deleteByPointId(List<Long> pointIds); void deleteByPointId(List<Long> pointIds);
/**
* 根据原始id逻辑删除
* @param id 原始id
*/
@Modifying
@Transactional
@Query(value = "UPDATE p_point_classify SET is_delete = 1 WHERE original_id = (?1)", nativeQuery = true)
void deleteByOriginalId(String id);
/**
* 根据原始id查询
* @param id 原始id
* @return List<PointClassify> 返回
*/
@Query(value = "select * from p_point_classify WHERE original_id = (?1) and is_delete =0", nativeQuery = true)
List<PointClassify> selectByOriginalId(String id);
PointClassify findByOriginalId(String originalId); PointClassify findByOriginalId(String originalId);
} }
package com.yeejoin.amos.patrol.business.dto;
import lombok.Data;
/**
* @author DELL
*/
@Data
public class PointClassifySynDto {
/**
* 原始数据id
*/
private String originalId;
/**
* 原始数据name
*/
private String name;
/**
* 编号
*/
private String code;
/**
* 分类
*/
private String categoryName;
/**
* 分类code
*/
private String categoryCode;
/**
* 位置
*/
private String address;
/**
* 建筑id
*/
private String buildingId;
/**
* 建筑名称
*/
private String buildingName;
}
...@@ -1134,32 +1134,32 @@ public class CheckServiceImpl implements ICheckService { ...@@ -1134,32 +1134,32 @@ public class CheckServiceImpl implements ICheckService {
e.put("photoData", photoList); e.put("photoData", photoList);
}); });
equip.put("equipIputLsit",inputContent); equip.put("equipIputLsit",inputContent);
LinkedHashMap<String,Object> jsonObject = equipment.getEquipDetail(Long.parseLong(equip.get("equipmentId").toString())); // LinkedHashMap<String,Object> jsonObject = equipment.getEquipDetail(Long.parseLong(equip.get("equipmentId").toString()));
LinkedHashMap<String,Object> result = (LinkedHashMap<String, Object>) jsonObject.get("result"); // LinkedHashMap<String,Object> result = (LinkedHashMap<String, Object>) jsonObject.get("result");
if(result!=null){ // if(result!=null){
if(result.get("sourceName")!=null){ // if(result.get("sourceName")!=null){
equip.put("arec",result.get("sourceName").toString()); // equip.put("arec",result.get("sourceName").toString());
}else{ // }else{
equip.put("arec",""); // equip.put("arec","");
} // }
if(result.get("categoryName")!=null){ // if(result.get("categoryName")!=null){
equip.put("equipType",result.get("categoryName").toString()); // equip.put("equipType",result.get("categoryName").toString());
}else{ // }else{
equip.put("equipType",""); // equip.put("equipType","");
} // }
if(result.get("fullName")!=null){ // if(result.get("fullName")!=null){
if(result.get("area")!=null){ // if(result.get("area")!=null){
equip.put("area",result.get("fullName").toString()+result.get("area")); // equip.put("area",result.get("fullName").toString()+result.get("area"));
}else { // }else {
equip.put("area",result.get("fullName").toString()); // equip.put("area",result.get("fullName").toString());
} // }
//
}else{ // }else{
equip.put("area",""); // equip.put("area","");
} // }
//
equip.put("place", result.get("warehouseStructureName")); // equip.put("place", result.get("warehouseStructureName"));
} // }
}); });
return equipList; return equipList;
} }
......
...@@ -781,9 +781,10 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -781,9 +781,10 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
userNames.clear(); userNames.clear();
String[] userIds1 = e.get("userId").toString().split(","); String[] userIds1 = e.get("userId").toString().split(",");
for (String userId : userIds1) { for (String userId : userIds1) {
if (!ObjectUtils.isEmpty(userModelMap.get(userId))) {
userNames.add(userModelMap.get(userId)); userNames.add(userModelMap.get(userId));
} }
userNames.remove(null); }
if (userNames.size() > 0) { if (userNames.size() > 0) {
e.put("executiveName", Joiner.on(",").join(userNames)); e.put("executiveName", Joiner.on(",").join(userNames));
} else { } else {
......
package com.yeejoin.amos.patrol.business.service.impl; package com.yeejoin.amos.patrol.business.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.google.common.base.Joiner; import com.google.common.base.Joiner;
...@@ -11,6 +12,7 @@ import com.yeejoin.amos.patrol.business.dao.mapper.InputItemMapper; ...@@ -11,6 +12,7 @@ import com.yeejoin.amos.patrol.business.dao.mapper.InputItemMapper;
import com.yeejoin.amos.patrol.business.dao.mapper.PointMapper; import com.yeejoin.amos.patrol.business.dao.mapper.PointMapper;
import com.yeejoin.amos.patrol.business.dao.mapper.RouteMapper; import com.yeejoin.amos.patrol.business.dao.mapper.RouteMapper;
import com.yeejoin.amos.patrol.business.dao.repository.*; import com.yeejoin.amos.patrol.business.dao.repository.*;
import com.yeejoin.amos.patrol.business.dto.PointClassifySynDto;
import com.yeejoin.amos.patrol.business.entity.mybatis.CheckPtListBo; import com.yeejoin.amos.patrol.business.entity.mybatis.CheckPtListBo;
import com.yeejoin.amos.patrol.business.entity.mybatis.PushTargetBo; import com.yeejoin.amos.patrol.business.entity.mybatis.PushTargetBo;
import com.yeejoin.amos.patrol.business.feign.EquipFeign; import com.yeejoin.amos.patrol.business.feign.EquipFeign;
...@@ -29,10 +31,13 @@ import com.yeejoin.amos.patrol.exception.YeeException; ...@@ -29,10 +31,13 @@ import com.yeejoin.amos.patrol.exception.YeeException;
import com.yeejoin.amos.patrol.feign.RemoteSecurityService; import com.yeejoin.amos.patrol.feign.RemoteSecurityService;
import com.yeejoin.amos.safety.common.cache.PointStatusCache; import com.yeejoin.amos.safety.common.cache.PointStatusCache;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.apache.poi.ss.formula.functions.T; import org.apache.poi.ss.formula.functions.T;
import org.assertj.core.util.Sets; import org.assertj.core.util.Sets;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.BeanWrapper;
import org.springframework.beans.BeanWrapperImpl;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.*; import org.springframework.data.domain.*;
import org.springframework.data.jpa.domain.Specification; import org.springframework.data.jpa.domain.Specification;
...@@ -46,12 +51,14 @@ import javax.persistence.criteria.CriteriaBuilder; ...@@ -46,12 +51,14 @@ import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery; import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Predicate; import javax.persistence.criteria.Predicate;
import javax.persistence.criteria.Root; import javax.persistence.criteria.Root;
import java.beans.PropertyDescriptor;
import java.math.BigInteger; import java.math.BigInteger;
import java.util.*; import java.util.*;
import java.util.stream.Collector; import java.util.stream.Collector;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@Service("pointService") @Service("pointService")
@Slf4j
public class PointServiceImpl implements IPointService { public class PointServiceImpl implements IPointService {
@Autowired @Autowired
...@@ -320,6 +327,15 @@ public class PointServiceImpl implements IPointService { ...@@ -320,6 +327,15 @@ public class PointServiceImpl implements IPointService {
newPointClassify.setCreatorId(point.getCreatorId()); newPointClassify.setCreatorId(point.getCreatorId());
newPointClassify.setPointId(pointId); newPointClassify.setPointId(pointId);
newPointClassify.setOrderNo(pointClassify.getOrderNo()); newPointClassify.setOrderNo(pointClassify.getOrderNo());
newPointClassify.setDataSourceCode(pointClassify.getDataSourceCode());
newPointClassify.setDataSourceName(pointClassify.getDataSourceName());
newPointClassify.setAddress(pointClassify.getAddress());
newPointClassify.setBuildingId(pointClassify.getBuildingId());
newPointClassify.setOriginalId(pointClassify.getOriginalId());
newPointClassify.setCategoryCode(pointClassify.getCategoryCode());
newPointClassify.setCategoryName(pointClassify.getCategoryName());
newPointClassify.setCode(pointClassify.getCode());
newPointClassify.setBuildingName(pointClassify.getBuildingName());
if(!optionalPointClassify.isPresent()) { if(!optionalPointClassify.isPresent()) {
pointResult = iPointClassifyDao.saveAndFlush(newPointClassify); pointResult = iPointClassifyDao.saveAndFlush(newPointClassify);
}else{ }else{
...@@ -1502,8 +1518,8 @@ public class PointServiceImpl implements IPointService { ...@@ -1502,8 +1518,8 @@ public class PointServiceImpl implements IPointService {
public List<Map<String, Object>> queryEquipPointInputItem(Long pointId) { public List<Map<String, Object>> queryEquipPointInputItem(Long pointId) {
List<Map<String, Object>> content = pointMapper.queryEquipPointInputItem(pointId); List<Map<String, Object>> content = pointMapper.queryEquipPointInputItem(pointId);
content.forEach(e->{ content.forEach(e->{
if(e.get("equipmentId")!=null && !StringUtils.isBlank(e.get("equipmentId").toString())){ if(e.get("id")!=null && !StringUtils.isBlank(e.get("id").toString())){
List<PointInputItemVo> inputItems = inputItemMapper.queryCustomInputItemByPointId(pointId,e.get("equipmentId").toString()); List<PointInputItemVo> inputItems = inputItemMapper.queryCustomInputItemByPointId(e.get("id").toString());
e.put("equipIputDetailData",inputItems); e.put("equipIputDetailData",inputItems);
} }
}); });
...@@ -1628,4 +1644,52 @@ public class PointServiceImpl implements IPointService { ...@@ -1628,4 +1644,52 @@ public class PointServiceImpl implements IPointService {
public LinkedHashMap<String, Object> getRegionTress() { public LinkedHashMap<String, Object> getRegionTress() {
return equipFeign.getRegionTress(); return equipFeign.getRegionTress();
} }
@Override
public void syncPointClassify(Map<String, Object> map) {
if (ObjectUtils.isEmpty(map)) {
log.info("消息内容为空!!!");
return;
}
String method = map.get("method").toString();
PointClassifySynDto pointClassifySynDto = JSON.parseObject(map.get("data").toString(), PointClassifySynDto.class);
switch (method) {
case "DELETE":
iPointClassifyDao.deleteByOriginalId(pointClassifySynDto.getOriginalId());
break;
case "UPDATE":
List<PointClassify> pointClassifyList = iPointClassifyDao.selectByOriginalId(pointClassifySynDto.getOriginalId());
if (ObjectUtils.isEmpty(pointClassifyList)) {
log.info("数据不存在!");
}
pointClassifyList.forEach(pointClassify -> {
BeanUtils.copyProperties(pointClassifySynDto, pointClassify,getNullPropertyNames(pointClassifySynDto));
iPointClassifyDao.saveAndFlush(pointClassify);
});
break;
default:
log.info("方法参数错误!!!");
break;
}
}
/**
* 获取控制字段列表
* @param source 对象
* @return 为空数组
*/
private static String[] getNullPropertyNames(Object source) {
final BeanWrapper src = new BeanWrapperImpl(source);
PropertyDescriptor[] pds = src.getPropertyDescriptors();
Set<String> emptyNames = new HashSet<String>();
for(PropertyDescriptor pd : pds) {
Object srcValue = src.getPropertyValue(pd.getName());
if (srcValue == null) {
emptyNames.add(pd.getName());
}
}
String[] result = new String[emptyNames.size()];
return emptyNames.toArray(result);
}
} }
...@@ -343,4 +343,7 @@ public interface IPointService { ...@@ -343,4 +343,7 @@ public interface IPointService {
List queryItemList4RoutePoint(Long pointId, Long equipId); List queryItemList4RoutePoint(Long pointId, Long equipId);
LinkedHashMap<String,Object> getRegionTress (); LinkedHashMap<String,Object> getRegionTress ();
void syncPointClassify(Map<String,Object> map);
} }
...@@ -65,6 +65,35 @@ public class PointInputItemNewVo{ ...@@ -65,6 +65,35 @@ public class PointInputItemNewVo{
* 序号 * 序号
*/ */
private Integer orderNo; private Integer orderNo;
/**
* 数据源名称(冗余)
*/
private String dataSourceName;
/**
* 数据源code(1 消防装备 2 重点部位 3 自定义)
*/
private String dataSourceCode;
/**
* 编号
*/
private String code;
/**
* 建筑id
*/
private String buildingId;
/**
* 建筑name
*/
private String buildingName;
/**
* 原始id
*/
private String originalId;
private List<PointInputItemVo> equipIputDetailData = new ArrayList<PointInputItemVo>(); private List<PointInputItemVo> equipIputDetailData = new ArrayList<PointInputItemVo>();
...@@ -178,4 +207,52 @@ public class PointInputItemNewVo{ ...@@ -178,4 +207,52 @@ public class PointInputItemNewVo{
public void setMaintenanceName(String maintenanceName) { public void setMaintenanceName(String maintenanceName) {
this.maintenanceName = maintenanceName; this.maintenanceName = maintenanceName;
} }
public String getDataSourceName() {
return dataSourceName;
}
public void setDataSourceName(String dataSourceName) {
this.dataSourceName = dataSourceName;
}
public String getDataSourceCode() {
return dataSourceCode;
}
public void setDataSourceCode(String dataSourceCode) {
this.dataSourceCode = dataSourceCode;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getBuildingId() {
return buildingId;
}
public void setBuildingId(String buildingId) {
this.buildingId = buildingId;
}
public String getOriginalId() {
return originalId;
}
public void setOriginalId(String originalId) {
this.originalId = originalId;
}
public String getBuildingName() {
return buildingName;
}
public void setBuildingName(String buildingName) {
this.buildingName = buildingName;
}
} }
package com.yeejoin.amos.patrol.feign; package com.yeejoin.amos.patrol.feign;
import java.util.List; import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
import com.yeejoin.amos.patrol.business.param.PushMsgParam;
import com.yeejoin.amos.patrol.business.util.CommonResponse;
import com.yeejoin.amos.patrol.business.util.CommonResponseUtil;
import com.yeejoin.amos.patrol.core.common.response.TaskInfoRespone;
import com.yeejoin.amos.feign.systemctl.Systemctl; import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.MessageModel; import com.yeejoin.amos.feign.systemctl.model.MessageModel;
import com.yeejoin.amos.patrol.business.param.PushMsgParam;
@Service("pushFeignServer") @Service("pushFeignServer")
public class PushFeignServer { public class PushFeignServer {
// @Autowired
// private RestTemplate restTemplate;
//
// @Value("${Push.fegin.name}")
// private String RPushFeginName;
// private static String sendMessage = "/api/user/sendMessage";
//
// public String geturls(String url){
// return "http://"+RPushFeginName+url;
// }
// public HttpHeaders getHeader(String toke,String product,String appKey){
// HttpHeaders headers = new HttpHeaders();
// headers.setContentType(MediaType.APPLICATION_JSON);
// headers.set("Content-Type", "application/json");
// headers.set("token", toke);
// headers.set("product",product);
// headers.set("appKey", appKey);
// return headers;
// }
public void sendMessage( String toke,String product,String appKey, List<PushMsgParam> pushMsgParam){ public void sendMessage( String toke,String product,String appKey, List<PushMsgParam> pushMsgParam){
try { try {
...@@ -50,6 +21,7 @@ public class PushFeignServer { ...@@ -50,6 +21,7 @@ public class PushFeignServer {
} }
} }
public void sendMessage( String toke,String product,String appKey, PushMsgParam pushMsgParam){ public void sendMessage( String toke,String product,String appKey, PushMsgParam pushMsgParam){
try { try {
sendJP(pushMsgParam); sendJP(pushMsgParam);
...@@ -64,6 +36,7 @@ public class PushFeignServer { ...@@ -64,6 +36,7 @@ public class PushFeignServer {
model.setTitle(pushMsgParam.getSubject()); model.setTitle(pushMsgParam.getSubject());
model.setBody(pushMsgParam.getContent()); model.setBody(pushMsgParam.getContent());
model.setMsgType("patrolSystem"); model.setMsgType("patrolSystem");
model.setIsSendApp(true);
model.setRecivers(pushMsgParam.getRecivers()); model.setRecivers(pushMsgParam.getRecivers());
model.setExtras(pushMsgParam.getExtras()); model.setExtras(pushMsgParam.getExtras());
Systemctl.messageClient.create(model); Systemctl.messageClient.create(model);
......
package com.yeejoin.amos.patrol.mqtt;
import com.alibaba.fastjson.JSON;
import com.yeejoin.amos.patrol.business.service.intfc.IPointService;
import lombok.extern.slf4j.Slf4j;
import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import org.typroject.tyboot.component.emq.EmqxListener;
import java.util.Map;
/**
* @author DELL
*/
@Component
@Slf4j
public class PatrolMqttListener extends EmqxListener {
@Value("${patrol.point.classify.topic}")
private String pointClassifyTopic;
@Autowired
private IPointService iPointService;
@Override
public void processMessage(String topic, MqttMessage message) {
if(log.isInfoEnabled()){
log.info("收到消息主题:{},消息内容:{}",topic, message.toString());
}
try {
Map<String, Object> msg = JSON.parseObject(message.toString());
if (pointClassifyTopic.equals(topic)) {
iPointService.syncPointClassify(msg);
}
log.info("巡检对象同步完成");
} catch (Exception e) {
log.info("巡检对象同步失败:{}", e.getMessage());
}
}
}
...@@ -3,6 +3,9 @@ package com.yeejoin.amos.supervision.business.param; ...@@ -3,6 +3,9 @@ package com.yeejoin.amos.supervision.business.param;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import lombok.Data;
@Data
public class PushMsgParam { public class PushMsgParam {
...@@ -42,6 +45,8 @@ public class PushMsgParam { ...@@ -42,6 +45,8 @@ public class PushMsgParam {
*/ */
private String type = "3"; private String type = "3";
private String relationId;
public String getType() { public String getType() {
return type; return type;
} }
......
...@@ -233,9 +233,10 @@ public class MessageServiceImpl implements IMessageService { ...@@ -233,9 +233,10 @@ public class MessageServiceImpl implements IMessageService {
extras.put("type",MsgTypeEnum.CHECK.getCode()); extras.put("type",MsgTypeEnum.CHECK.getCode());
extras.put("id",checkMsgBo.getCheckId()+""); extras.put("id",checkMsgBo.getCheckId()+"");
pushMsgParam.setExtras(extras); pushMsgParam.setExtras(extras);
pushMsgParam.setRelationId(checkMsgBo.getCheckId()+"");
pmps.add(pushMsgParam); pmps.add(pushMsgParam);
List<Msg> msgList =createMsg(jpushUser,checkMsgBo); List<Msg> msgList =createMsg(jpushUser,checkMsgBo);
pushFeignServer.sendMessage( toke, product, appKey,pmps); pushFeignServer.sendMessage(pmps);
} }
} }
...@@ -312,10 +313,11 @@ public class MessageServiceImpl implements IMessageService { ...@@ -312,10 +313,11 @@ public class MessageServiceImpl implements IMessageService {
extras.put("type",msg.getMsgType()); extras.put("type",msg.getMsgType());
extras.put("id",msg.getRelationId()==null?"0":msg.getRelationId().toString()); extras.put("id",msg.getRelationId()==null?"0":msg.getRelationId().toString());
pushMsg.setExtras(extras); pushMsg.setExtras(extras);
pushMsg.setRelationId(msg.getRelationId()==null?"0":msg.getRelationId().toString());
pmps.add(pushMsg); pmps.add(pushMsg);
msg.setSendTime(new Date()); msg.setSendTime(new Date());
msg.setStatus(1); msg.setStatus(1);
pushFeignServer.sendMessage( toke, product, appKey,pmps); pushFeignServer.sendMessage(pmps);
iMsgDao.save(msg); iMsgDao.save(msg);
return msg; return msg;
} }
......
...@@ -2,49 +2,43 @@ package com.yeejoin.amos.supervision.feign; ...@@ -2,49 +2,43 @@ package com.yeejoin.amos.supervision.feign;
import java.util.List; import java.util.List;
import com.yeejoin.amos.supervision.business.util.CommonResponse;
import com.yeejoin.amos.supervision.business.util.CommonResponseUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.MessageModel;
import com.yeejoin.amos.supervision.business.param.PushMsgParam; import com.yeejoin.amos.supervision.business.param.PushMsgParam;
@Service("pushFeignServer") @Service("pushFeignServer")
public class PushFeignServer { public class PushFeignServer {
@Autowired public void sendMessage(List<PushMsgParam> pushMsgParam){
private RestTemplate restTemplate; try {
pushMsgParam.forEach(action->{
@Value("${Push.fegin.name}") sendJP(action);
private String RPushFeginName; });
private static String sendMessage = "/api/user/sendMessage"; } catch (Exception e) {
e.printStackTrace();
public String geturls(String url){
return "http://"+RPushFeginName+url;
} }
public HttpHeaders getHeader(String toke,String product,String appKey){
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
headers.set("Content-Type", "application/json");
headers.set("token", toke);
headers.set("product",product);
headers.set("appKey", appKey);
return headers;
} }
public CommonResponse sendMessage(String toke, String product, String appKey, List<PushMsgParam> pushMsgParam){
public void sendMessage(PushMsgParam pushMsgParam){
try { try {
HttpEntity httpEntity = new HttpEntity<>(pushMsgParam, getHeader( toke, product, appKey)); sendJP(pushMsgParam);
CommonResponse commonResponse1 = restTemplate.postForObject(geturls(sendMessage),httpEntity, CommonResponse.class);
return commonResponse1;
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
return CommonResponseUtil.failure("发送失败");
} }
} }
private void sendJP(PushMsgParam pushMsgParam){
MessageModel model = new MessageModel();
model.setRelationId(pushMsgParam.getRelationId());
model.setTitle(pushMsgParam.getSubject());
model.setBody(pushMsgParam.getContent());
model.setMsgType("supervision");
model.setIsSendApp(true);
model.setIsSendWeb(true);
model.setRecivers(pushMsgParam.getRecivers());
model.setExtras(pushMsgParam.getExtras());
Systemctl.messageClient.create(model);
}
} }
...@@ -2022,6 +2022,54 @@ ...@@ -2022,6 +2022,54 @@
</sql> </sql>
</changeSet> </changeSet>
<changeSet author="chenhao" id="2021-11-02-2">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="cb_firefighters" columnName="fire_team_name"/>
</not>
</preConditions>
<comment>update data cb_firefighters</comment>
<sql>
ALTER TABLE cb_firefighters ADD fire_team_name varchar(100) NULL COMMENT '消防队伍名称'
</sql>
</changeSet>
<changeSet author="chenhao" id="2021-11-02-3">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="cb_key_site" columnName="belong_name"/>
</not>
</preConditions>
<comment>update data cb_key_site</comment>
<sql>
ALTER TABLE cb_key_site ADD belong_name varchar(100) NULL COMMENT '所属单位/部门名称';
</sql>
</changeSet>
<changeSet author="chenhao" id="2021-11-02-4">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="cb_org_usr" columnName="parent_name"/>
</not>
</preConditions>
<comment>update data cb_org_usr</comment>
<sql>
ALTER TABLE cb_org_usr ADD parent_name varchar(100) NULL COMMENT '归属机构/部门/人员名称';
</sql>
</changeSet>
<changeSet author="chenhao" id="2021-11-04-1">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="cb_fire_team" columnName="parent_name"/>
</not>
</preConditions>
<comment>update data cb_fire_team</comment>
<sql>
ALTER TABLE cb_fire_team ADD parent_name varchar(100) NULL COMMENT '父级队伍名称';
</sql>
</changeSet>
<changeSet author="litw" id="2021-11-03-01"> <changeSet author="litw" id="2021-11-03-01">
<preConditions onFail="MARK_RAN"> <preConditions onFail="MARK_RAN">
<not> <not>
...@@ -2046,6 +2094,5 @@ ...@@ -2046,6 +2094,5 @@
</sql> </sql>
</changeSet> </changeSet>
</databaseChangeLog> </databaseChangeLog>
package com.yeejoin.amos; package com.yeejoin.amos;
import com.yeejoin.amos.patrol.mqtt.PatrolMqttListener;
import org.eclipse.paho.client.mqttv3.MqttException;
import org.mybatis.spring.annotation.MapperScan; import org.mybatis.spring.annotation.MapperScan;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.boot.context.properties.EnableConfigurationProperties;
...@@ -20,6 +24,7 @@ import org.springframework.data.jpa.repository.config.EnableJpaAuditing; ...@@ -20,6 +24,7 @@ import org.springframework.data.jpa.repository.config.EnableJpaAuditing;
import org.springframework.scheduling.annotation.EnableAsync; import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.transaction.annotation.EnableTransactionManagement; import org.springframework.transaction.annotation.EnableTransactionManagement;
import org.springframework.web.client.RestTemplate; import org.springframework.web.client.RestTemplate;
import org.typroject.tyboot.component.emq.EmqKeeper;
import org.typroject.tyboot.core.restful.config.JsonSerializerManage; import org.typroject.tyboot.core.restful.config.JsonSerializerManage;
import org.typroject.tyboot.core.restful.exception.GlobalExceptionHandler; import org.typroject.tyboot.core.restful.exception.GlobalExceptionHandler;
...@@ -59,6 +64,15 @@ public class PatrolApplication { ...@@ -59,6 +64,15 @@ public class PatrolApplication {
return new RestTemplate(); return new RestTemplate();
} }
@Autowired
private PatrolMqttListener patrolMqttListener;
@Autowired
private EmqKeeper emqKeeper;
@Value("${patrol.topic}")
private String patrolTopic;
/** /**
* 启动amosop-server * 启动amosop-server
* *
...@@ -81,4 +95,18 @@ public class PatrolApplication { ...@@ -81,4 +95,18 @@ public class PatrolApplication {
"----------------------------------------------------------"); "----------------------------------------------------------");
} }
/**
* 初始化MQTT
* @throws MqttException
*/
@Bean
void initMqtt() {
try {
emqKeeper.getMqttClient().subscribe(patrolTopic, 1, patrolMqttListener);
} catch (MqttException e) {
e.printStackTrace();
logger.error("EMQ初始化连接失败!");
}
}
} }
\ No newline at end of file
spring.application.name = AMOS-PATROL-tb spring.application.name = AMOS-PATROL
server.servlet.context-path=/patrol server.servlet.context-path=/patrol
server.port = 8082 server.port = 8082
...@@ -44,6 +44,8 @@ Push.fegin.name=APPMESSAGEPUSHSERVICE ...@@ -44,6 +44,8 @@ Push.fegin.name=APPMESSAGEPUSHSERVICE
amos.flowWork.topic =/STATE_GRID/hazardManagement amos.flowWork.topic =/STATE_GRID/hazardManagement
amosRefresh.danger.topic =patrolDangerInsertOrUpdate amosRefresh.danger.topic =patrolDangerInsertOrUpdate
amosRefresh.patrol.topic =patrolCheckInsert amosRefresh.patrol.topic =patrolCheckInsert
patrol.point.classify.topic=patrol/point/classify
patrol.topic=patrol/#
#停止通过WEB公开所有端点 #停止通过WEB公开所有端点
management.endpoints.web.exposure.exclude=* management.endpoints.web.exposure.exclude=*
## redis失效时间 ## redis失效时间
......
...@@ -313,4 +313,121 @@ ...@@ -313,4 +313,121 @@
</sql> </sql>
</changeSet> </changeSet>
<changeSet author="xixinzhao" id="20211102-19">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="p_point_classify" columnName="code"/>
</not>
</preConditions>
<comment>p_point_classify add column code</comment>
<sql>
ALTER TABLE `p_point_classify`
ADD COLUMN `code` varchar(255) DEFAULT NULL COMMENT '编号';
</sql>
</changeSet>
<changeSet author="xixinzhao" id="20211102-20">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="p_point_classify" columnName="category_name"/>
</not>
</preConditions>
<comment>p_point_classify add column category_name</comment>
<sql>
ALTER TABLE `p_point_classify`
ADD COLUMN `category_name` varchar(255) DEFAULT NULL COMMENT '分类名称';
</sql>
</changeSet>
<changeSet author="xixinzhao" id="20211102-22">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="p_point_classify" columnName="address"/>
</not>
</preConditions>
<comment>p_point_classify add column address</comment>
<sql>
ALTER TABLE `p_point_classify`
ADD COLUMN `address` varchar(255) DEFAULT NULL COMMENT '位置';
</sql>
</changeSet>
<changeSet author="xixinzhao" id="20211102-23">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="p_point_classify" columnName="data_source_code"/>
</not>
</preConditions>
<comment>p_point_classify add column data_source_code</comment>
<sql>
ALTER TABLE `p_point_classify`
ADD COLUMN `data_source_code` int(10) DEFAULT NULL COMMENT '数据源code(1 消防装备 2 重点部位 3 自定义)';
</sql>
</changeSet>
<changeSet author="xixinzhao" id="20211102-24">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="p_point_classify" columnName="data_source_name"/>
</not>
</preConditions>
<comment>p_point_classify add column data_source_name</comment>
<sql>
ALTER TABLE `p_point_classify`
ADD COLUMN `data_source_name` varchar(255) DEFAULT NULL COMMENT '数据源名称(冗余)';
</sql>
</changeSet>
<changeSet author="xixinzhao" id="20211102-26">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="p_point_classify" columnName="building_id"/>
</not>
</preConditions>
<comment>p_point_classify add column building_id</comment>
<sql>
ALTER TABLE `p_point_classify`
ADD COLUMN `building_id` varchar(255) DEFAULT NULL COMMENT '建筑id';
</sql>
</changeSet>
<changeSet author="xixinzhao" id="20211102-27">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="p_point_classify" columnName="building_name"/>
</not>
</preConditions>
<comment>p_point_classify add column building_name</comment>
<sql>
ALTER TABLE `p_point_classify`
ADD COLUMN `building_name` varchar(255) DEFAULT NULL COMMENT '建筑名称';
</sql>
</changeSet>
<changeSet author="xixinzhao" id="20211102-28">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="p_point_classify" columnName="category_code"/>
</not>
</preConditions>
<comment>p_point_classify add column category_code</comment>
<sql>
ALTER TABLE `p_point_classify`
ADD COLUMN `category_code` varchar(255) DEFAULT NULL COMMENT '分类id';
</sql>
</changeSet>
<changeSet author="xixinzhao" id="20211102-29">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="p_point_classify" columnName="is_delete"/>
</not>
</preConditions>
<comment>p_point_classify add column is_delete</comment>
<sql>
ALTER TABLE `p_point_classify`
ADD COLUMN `is_delete` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除( 0未删除,1已删除 )';
</sql>
</changeSet>
</databaseChangeLog> </databaseChangeLog>
\ No newline at end of file
...@@ -846,6 +846,15 @@ ...@@ -846,6 +846,15 @@
classify.id as classifyId, classify.id as classifyId,
classify.name as equipmentName, classify.name as equipmentName,
classify.equipment_id as equipmentId, classify.equipment_id as equipmentId,
classify.original_id as originalId,
classify.code,
classify.category_name as categoryName,
classify.address as area,
classify.data_source_code as dataSourceCode,
classify.data_source_name as equipType,
classify.building_id as buildingId,
classify.building_name as place,
classify.category_code as categoryCode,
(SELECT create_date FROM p_check WHERE id = #{checkID}) as createDate (SELECT create_date FROM p_check WHERE id = #{checkID}) as createDate
FROM FROM
p_point_classify classify p_point_classify classify
......
...@@ -188,8 +188,9 @@ ...@@ -188,8 +188,9 @@
LEFT JOIN p_input_item pii ON pii.id = ppi.input_item_id LEFT JOIN p_input_item pii ON pii.id = ppi.input_item_id
lEFT JOIN p_route_point_item prpi ON prpi.point_input_item_id = pii.id lEFT JOIN p_route_point_item prpi ON prpi.point_input_item_id = pii.id
WHERE pii.is_delete = '0' WHERE pii.is_delete = '0'
<if test="pointId!=null and pointId !='' "> AND ppc.point_id = #{pointId}</if> <if test="classifyId!=null and classifyId !='' "> AND ppc.id = #{classifyId}</if>
<if test="equipmentId!=null and equipmentId !='' "> AND ppc.equipment_id = #{equipmentId}</if> <!-- <if test="pointId!=null and pointId !='' "> AND ppc.point_id = #{pointId}</if>-->
<!-- <if test="equipmentId!=null and equipmentId !='' "> AND ppc.equipment_id = #{equipmentId}</if>-->
</select> </select>
<select id="getInputItemListByitemNos" resultType="com.yeejoin.amos.patrol.business.vo.InputItemVo"> <select id="getInputItemListByitemNos" resultType="com.yeejoin.amos.patrol.business.vo.InputItemVo">
SELECT SELECT
......
...@@ -942,32 +942,57 @@ ...@@ -942,32 +942,57 @@
AND p.org_code = #{orgCode} AND p.org_code = #{orgCode}
AND c.is_delete = 0 AND c.is_delete = 0
</select> </select>
<!-- <select id="queryEquipPointInputItem" resultType="java.util.Map">-->
<!-- SELECT-->
<!-- distinct cast(spec.id as char) AS equipmentId,-->
<!-- we.name AS name,-->
<!-- structure.source_id AS sourceId,-->
<!-- structure.source_code AS sourceCode,-->
<!-- spec.system_id AS systemId,-->
<!-- spec.code AS code,-->
<!-- cast(ppc.id as char) AS id,-->
<!-- category.NAME AS categoryName,-->
<!-- category.CODE AS categoryCode,-->
<!-- equipment_detail.area AS address,-->
<!-- structure.NAME AS acre,-->
<!-- we.inspection_spec as inspectionName,-->
<!-- ppc.order_no as orderNo-->
<!-- FROM-->
<!-- p_point_classify ppc-->
<!-- LEFT JOIN wl_equipment_specific spec ON spec.id=ppc.equipment_id-->
<!-- LEFT JOIN wl_equipment_detail equipment_detail ON equipment_detail.id = spec.equipment_detail_id-->
<!-- LEFT JOIN wl_stock_detail detail ON detail.equipment_specific_id = spec.id-->
<!-- LEFT JOIN wl_warehouse_structure structure ON detail.warehouse_structure_id = structure.id-->
<!-- LEFT JOIN f_fire_fighting_system AS manage ON manage.id = spec.system_id-->
<!-- LEFT JOIN wl_equipment we ON we.id = equipment_detail.equipment_id-->
<!-- LEFT JOIN wl_equipment_category category ON category.id = we.category_id-->
<!-- WHERE-->
<!-- <if test = "pointId!=''" > ppc.point_id = #{pointId} </if>-->
<!-- </select>-->
<select id="queryEquipPointInputItem" resultType="java.util.Map"> <select id="queryEquipPointInputItem" resultType="java.util.Map">
SELECT SELECT
distinct cast(spec.id as char) AS equipmentId, ppc.id,
we.name AS name, ppc.point_id pointId,
structure.source_id AS sourceId, ppc.name,
structure.source_code AS sourceCode, ppc.code,
spec.system_id AS systemId, ppc.creator_id creatorId,
spec.code AS code, ppc.create_date createDate,
cast(ppc.id as char) AS id, ppc.order_no orderNo,
category.NAME AS categoryName, ppc.original_id originalId,
category.CODE AS categoryCode, ppc.equipment_id equipmentId,
equipment_detail.area AS address, ppc.inspection_spec_name inspectionSpecName,
structure.NAME AS acre, ppc.category_name categoryName,
we.inspection_spec as inspectionName, ppc.address,
ppc.order_no as orderNo ppc.data_source_code dataSourceCode,
ppc.data_source_name dataSourceName,
ppc.building_id buildingId,
ppc.building_name buildingName,
ppc.category_code categoryCode
FROM FROM
p_point_classify ppc p_point_classify ppc
LEFT JOIN wl_equipment_specific spec ON spec.id=ppc.equipment_id
LEFT JOIN wl_equipment_detail equipment_detail ON equipment_detail.id = spec.equipment_detail_id
LEFT JOIN wl_stock_detail detail ON detail.equipment_specific_id = spec.id
LEFT JOIN wl_warehouse_structure structure ON detail.warehouse_structure_id = structure.id
LEFT JOIN f_fire_fighting_system AS manage ON manage.id = spec.system_id
LEFT JOIN wl_equipment we ON we.id = equipment_detail.equipment_id
LEFT JOIN wl_equipment_category category ON category.id = we.category_id
WHERE WHERE
<if test = "pointId!=''" > ppc.point_id = #{pointId} </if> ppc.is_delete = 0
<if test = "pointId!=''" > AND ppc.point_id = #{pointId} </if>
</select> </select>
<select id="queryPointCount4Route" parameterType="long" resultType="int"> <select id="queryPointCount4Route" parameterType="long" resultType="int">
......
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