Merge branch 'dev' into limingyu-20240416-一公司动火作业地图

liujun-2024-05-23-接口漏洞修复
limingyu 2024-04-22 09:24:42 +08:00
commit 30a268e07c
21 changed files with 469 additions and 27 deletions

View File

@ -67,7 +67,7 @@
<dependency> <dependency>
<groupId>javax.servlet</groupId> <groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId> <artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version> <version>4.0.1</version>
<scope>provided</scope> <scope>provided</scope>
</dependency> </dependency>

View File

@ -0,0 +1,84 @@
package com.zcloud.controller.dw;
import com.alibaba.fastjson.JSONObject;
import com.zcloud.controller.base.BaseController;
import com.zcloud.entity.PageData;
import com.zcloud.entity.Page;
import com.zcloud.service.dw.DwService;
import com.zcloud.service.dw.dto.*;
import com.zcloud.util.Jurisdiction;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
@RestController
@RequestMapping(value = "/dingWei")
public class DwController extends BaseController {
@Resource
private DwService dwService;
@RequestMapping(value = "getTrace")
public Object getTrace() throws Exception {
PageData pd = this.getPageData();
TraceGet traceGet = JSONObject.parseObject(JSONObject.toJSONString(pd), TraceGet.class);
return dwService.getTrace(traceGet);
}
@RequestMapping(value = "getMapList")
public Object getMapList(Page page) throws Exception {
PageData pd = this.getPageData();
MapGet mapGet = JSONObject.parseObject(JSONObject.toJSONString(pd), MapGet.class);
if (mapGet.getPage() == null){
mapGet.setPage(new com.zcloud.service.dw.dto.Page());
}
mapGet.setCorpId(Jurisdiction.getCORPINFO_ID());
mapGet.getPage().setCurrent(String.valueOf(page.getCurrentPage()));
mapGet.getPage().setSize(String.valueOf(page.getShowCount()));
return dwService.getMapList(mapGet);
}
@RequestMapping(value = "saveOrUpdateMap")
public Object saveOrUpdateMap() throws Exception {
PageData pd = this.getPageData();
MapInfo mapGet = JSONObject.parseObject(pd.getString("data"), MapInfo.class);
return dwService.saveOrUpdateMap(mapGet);
}
@RequestMapping(value = "deleteMap")
public Object deleteMap() throws Exception {
PageData pd = this.getPageData();
DeleteDto deleteDto = new DeleteDto();
deleteDto.setId(pd.getString("id"));
deleteDto.setOperatorId(Jurisdiction.getUSER_ID());
deleteDto.setOperatorName(Jurisdiction.getName());
return dwService.deleteMap(deleteDto);
}
@RequestMapping(value = "getAlarmList")
public Object getAlarmList(Page page) throws Exception {
PageData pd = this.getPageData();
AlarmGet mapGet = JSONObject.parseObject(JSONObject.toJSONString(pd), AlarmGet.class);
if (mapGet.getPage() == null){
mapGet.setPage(new com.zcloud.service.dw.dto.Page());
}
mapGet.getPage().setCurrent(String.valueOf(page.getUrlCurrentPage()));
mapGet.getPage().setSize(String.valueOf(page.getShowCount()));
return dwService.getAlarmList(mapGet);
}
@RequestMapping(value = "manageAlarm")
public Object manageAlarm() throws Exception {
PageData pd = this.getPageData();
AlarmManageDto mapGet = JSONObject.parseObject(JSONObject.toJSONString(pd), AlarmManageDto.class);
mapGet.setAlarmId(pd.getString("DW_ALARM_ID"));
return dwService.manageAlarm(mapGet);
}
@RequestMapping(value = "getDictionary")
public Object getDictionary() throws Exception {
return dwService.getDictionary();
}
}

View File

@ -1,9 +1,16 @@
package com.zcloud.controller.map; package com.zcloud.controller.map;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;
import com.zcloud.controller.base.BaseController; import com.zcloud.controller.base.BaseController;
import com.zcloud.entity.Page; import com.zcloud.entity.Page;
import com.zcloud.entity.PageData; import com.zcloud.entity.PageData;
import com.zcloud.service.bus.CorpInfoService; import com.zcloud.service.bus.CorpInfoService;
import com.zcloud.service.dw.DwService;
import com.zcloud.service.dw.dto.AlarmGet;
import com.zcloud.service.dw.dto.MapGet;
import com.zcloud.service.dw.dto.MapInfo;
import com.zcloud.service.dw.dto.TraceGet;
import com.zcloud.service.keyProjects.VideoManagerService; import com.zcloud.service.keyProjects.VideoManagerService;
import com.zcloud.service.map.*; import com.zcloud.service.map.*;
import com.zcloud.service.map.util.ReturnMap; import com.zcloud.service.map.util.ReturnMap;
@ -24,6 +31,7 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.client.RestTemplate; import org.springframework.web.client.RestTemplate;
import javax.annotation.Resource;
import java.util.*; import java.util.*;
/** /**
@ -73,6 +81,8 @@ public class MapController extends BaseController {
@Autowired @Autowired
private WeatherUtil weatherUtil; private WeatherUtil weatherUtil;
@Resource
private DwService dwService;
@ResponseBody @ResponseBody
@RequestMapping("/getCorpInfo") @RequestMapping("/getCorpInfo")
@ -864,11 +874,74 @@ public class MapController extends BaseController {
public Object getPersonByCardNo() throws Exception { public Object getPersonByCardNo() throws Exception {
Map<String, Object> map = new HashMap<String, Object>(); Map<String, Object> map = new HashMap<String, Object>();
PageData pd = this.getPageData(); PageData pd = this.getPageData();
// TODO 判断是否是公司人员定位
if (pd.get("corpId") != null && "035958e685cf4850bc40151c5e0617a6".equals(pd.getString("corpId"))) {
MapGet mapGet = new MapGet();
mapGet.setId(pd.getString("CARDNO"));
Object message = dwService.getMapInfo(mapGet);
map = JSONObject.parseObject(JSONObject.toJSONString(message), new TypeReference<Map<String, Object>>() {
});
if (map.get("code") == null || 200 != Integer.parseInt(map.get("code").toString())) {
return map;
} else {
MapInfo info = JSONObject.parseObject(JSONObject.toJSONString(map.get("info")), MapInfo.class);
PageData condition = new PageData();
condition.put("USER_ID", info.getRequired().getUserId());
PageData userInfo = usersService.findById(condition);
HashMap<String, String> otherInfo = new HashMap<>();
otherInfo.put("postName", userInfo.getString("postName"));
otherInfo.put("personType", userInfo.getString("PERSON_TYPE"));
map.put("otherInfo", otherInfo);
return map;
}
} else {
PageData value = usersService.getPersonByCardNo(pd); PageData value = usersService.getPersonByCardNo(pd);
map.put("result", "success"); map.put("result", "success");
map.put("pd", value); map.put("pd", value);
return map; return map;
} }
}
@RequestMapping(value = "/getPersonTrace")
@ResponseBody
public Object getPersonTrace() throws Exception {
Map<String, Object> map = new HashMap<String, Object>();
PageData pd = this.getPageData();
// TODO 判断是否是公司人员定位
if (true){
TraceGet mapInfo = new TraceGet();
mapInfo.setId(pd.getString("id"));
return dwService.getTrace(mapInfo);
}else {
PageData value = usersService.getPersonByCardNo(pd);
map.put("result", "success");
map.put("pd", value);
return map;
}
}
@RequestMapping(value = "/getAlarmList")
@ResponseBody
public Object getAlarmList() throws Exception {
Map<String, Object> map = new HashMap<String, Object>();
PageData pd = this.getPageData();
// TODO 判断是否是公司人员定位
if (pd.get("corpId") != null && "035958e685cf4850bc40151c5e0617a6".equals(pd.getString("corpId"))) {
AlarmGet alarmGet = new AlarmGet();
alarmGet.setPage(new com.zcloud.service.dw.dto.Page());
alarmGet.getPage().setCurrent("1");
alarmGet.getPage().setSize("20");
alarmGet.setCorpId(pd.getString("corpId"));
return dwService.getAlarmList(alarmGet);
}else {
PageData value = usersService.getPersonByCardNo(pd);
map.put("result", "success");
map.put("pd", value);
return map;
}
}
/** /**
* (使 * (使

View File

@ -0,0 +1,16 @@
package com.zcloud.service.dw;
import com.zcloud.service.dw.dto.*;
public interface DwService {
Object getMapInfo(MapGet param) throws Exception;
Object getMapList(MapGet param) throws Exception;
Object saveOrUpdateMap(MapInfo param) throws Exception;
Object getTrace(TraceGet param) throws Exception;
Object getAlarmList(AlarmGet param) throws Exception;
Object manageAlarm(AlarmManageDto param) throws Exception;
Object getDictionary() throws Exception;
Object deleteMap(DeleteDto deleteDto);
}

View File

@ -0,0 +1,14 @@
package com.zcloud.service.dw.dto;
import lombok.Data;
@Data
public class AlarmGet {
private String startTime;
private String endTime;
private String status;
private String corpId;
private Page page;
}

View File

@ -0,0 +1,12 @@
package com.zcloud.service.dw.dto;
import lombok.Data;
@Data
public class AlarmManageDto {
private String status;
private String alarmId;
private String opinion;
private String operator;
private String operatorName;
}

View File

@ -0,0 +1,14 @@
package com.zcloud.service.dw.dto;
import lombok.Data;
import java.util.List;
@Data
public class DeleteDto {
private String id;
private List<String> ids;
private String operatorId;
private String operatorName;
}

View File

@ -0,0 +1,18 @@
package com.zcloud.service.dw.dto;
import lombok.Data;
@Data
public class MapGet {
private String departmentId;
private String userId;
private String userName;
private String corpId;
private String userCardId;
private String userPhone;
private String deviceId;
private String deviceName;
private String type;
private String id;
private Page page;
}

View File

@ -0,0 +1,14 @@
package com.zcloud.service.dw.dto;
import lombok.Data;
@Data
public class MapInfo {
private MapRequired required;
//其他系统备注
private String idRemark;
//备注
private String remark;
private String dwUserMapId;
}

View File

@ -0,0 +1,40 @@
package com.zcloud.service.dw.dto;
import lombok.Data;
@Data
public class MapRequired {
//映射类型0-人员1-设备)
private String type;
private String typeName;
//人员id
private String userId;
//人员姓名
private String userName;
//身份证号
private String userCardId;
//手机号
private String userPhone;
//设备id
private String deviceId;
//设备名称
private String deviceName;
//部门id
private String departmentId;
//部门名称
private String departmentName;
//企业id名称
private String corpId;
//企业名称
private String corpName;
//其他系统id
private String id;
//数据创建人id
private String creatorId;
//数据创建人名称
private String creatorName;
//数据更新时间
private String operatorId;
//数据更新人id
private String operatorName;
}

View File

@ -0,0 +1,10 @@
package com.zcloud.service.dw.dto;
import lombok.Data;
@Data
public class Page {
private String page;
private String size;
private String current;
}

View File

@ -0,0 +1,11 @@
package com.zcloud.service.dw.dto;
import lombok.Data;
@Data
public class TraceGet {
private String user_id;
private String id;
private String startTime;
private String endTime;
}

View File

@ -0,0 +1,70 @@
package com.zcloud.service.dw.impl;
import com.zcloud.entity.PageData;
import com.zcloud.service.bus.CorpInfoService;
import com.zcloud.service.dw.DwService;
import com.zcloud.service.dw.dto.*;
import com.zcloud.util.HttpUtil;
import com.zcloud.util.Jurisdiction;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Service
public class DwServiceImpl implements DwService {
@Value("${dw.url}")
private String url;
@Resource
private CorpInfoService corpInfoService;
@Override
public Object getMapInfo(MapGet param) throws Exception {
return HttpUtil.post(url + "dw/getMapInfo", param);
}
@Override
public Object getMapList(MapGet param) throws Exception {
return HttpUtil.post(url + "dw/getMapList", param);
}
@Override
public Object saveOrUpdateMap(MapInfo param) throws Exception {
param.getRequired().setCreatorId(Jurisdiction.getUSER_ID());
param.getRequired().setCreatorName(Jurisdiction.getName());
param.getRequired().setOperatorId(Jurisdiction.getUSER_ID());
param.getRequired().setOperatorName(Jurisdiction.getName());
param.getRequired().setCorpId(Jurisdiction.getCORPINFO_ID());
PageData condition = new PageData();
condition.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
param.getRequired().setCorpName(corpInfoService.findById(condition).getString("CORP_NAME"));
return HttpUtil.post(url + "dw/saveOrUpdateMap", param);
}
@Override
public Object getTrace(TraceGet param) throws Exception {
return HttpUtil.post(url + "dw/getTrace", param);
}
@Override
public Object getAlarmList(AlarmGet param) throws Exception {
return HttpUtil.post(url + "dw/getAlarmList", param);
}
@Override
public Object manageAlarm(AlarmManageDto param) throws Exception {
return HttpUtil.post(url + "dw/manageAlarm", param);
}
@Override
public Object getDictionary() throws Exception {
return HttpUtil.post(url + "dw/getDictionary", "");
}
@Override
public Object deleteMap(DeleteDto deleteDto) {
return HttpUtil.post(url + "dw/deleteMap", deleteDto);
}
}

View File

@ -234,12 +234,10 @@ public class MeteorologicalinfoServiceImpl implements MeteorologicalinfoService
pd.put("OUTSOURCED_ID",pd.getString("CORPINFO_ID")); pd.put("OUTSOURCED_ID",pd.getString("CORPINFO_ID"));
List<PageData> getListByCorpinfoId = meteorologicalMapper.listAll(pd); List<PageData> getListByCorpinfoId = meteorologicalMapper.listAll(pd);
if(getListByCorpinfoId.size() > 0){ if(getListByCorpinfoId.size() > 0){
String codes = ""; List<String> codes = new ArrayList<String>();
for (PageData met : getListByCorpinfoId){ for (PageData met : getListByCorpinfoId){
codes += "'" + met.getString("CODE")+"',"; codes.add(met.getString("CODE"));
} }
System.out.println();
codes = codes.substring(0,codes.length()-1);
pd.put("codes",codes); pd.put("codes",codes);
return meteorologicalinfoMapper.listbymeteorologicalByCodes(pd); return meteorologicalinfoMapper.listbymeteorologicalByCodes(pd);
} }

View File

@ -0,0 +1,55 @@
package com.zcloud.util;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;
import org.apache.poi.ss.formula.functions.T;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.client.RestTemplate;
import java.util.HashMap;
import java.util.Map;
public class HttpUtil<K,V> {
private static final Logger LOGGER = LoggerFactory.getLogger(HttpUtil.class);
/**
*
*/
private static final int SUCCESS_CODE = 200;
public HashMap<K,V> doPost(String url, HashMap<String, String> info) {
RestTemplate restTemplate = new RestTemplate();
String result = restTemplate.postForEntity(url, info, String.class).getBody();
return JSONObject.parseObject(result, new TypeReference<HashMap<K, V>>() {});
}
public HashMap<K,V> doPost(String url, Object info) {
RestTemplate restTemplate = new RestTemplate();
String result = restTemplate.postForEntity(url, info, String.class).getBody();
return JSONObject.parseObject(result, new TypeReference<HashMap<K, V>>() {});
}
public T doPost(String url, Object info, Class<T> responseType) {
RestTemplate restTemplate = new RestTemplate();
String result = restTemplate.postForEntity(url, info, String.class).getBody();
return JSONObject.parseObject(result, responseType);
}
public static <T> T post(String url, Object info, Class<T> responseType) {
RestTemplate restTemplate = new RestTemplate();
return restTemplate.postForEntity(url, info, responseType).getBody();
}
public static Object post(String url, Object info) {
RestTemplate restTemplate = new RestTemplate();
String result = restTemplate.postForEntity(url, info, String.class).getBody();
return JSONObject.parseObject(result, Map.class);
}
public static Object post(String url) {
RestTemplate restTemplate = new RestTemplate();
String result = restTemplate.getForObject(url, String.class);
return JSONObject.parseObject(result, Map.class);
}
}

View File

@ -57,7 +57,7 @@ public class RecordHalfMonthScheduled {
} }
} }
@Scheduled(cron ="0 0 1 1,16 1-12 ?") //每月1号、16号 01:00 // @Scheduled(cron ="0 0 1 1,16 1-12 ?") //每月1号、16号 01:00
// @Scheduled(cron ="*/20 * * * * ?")//测试 // @Scheduled(cron ="*/20 * * * * ?")//测试
public void equipmentNotChecked(){ public void equipmentNotChecked(){
System.out.println("============每半月定时增加超期未检查消防设备记录=========="); System.out.println("============每半月定时增加超期未检查消防设备记录==========");
@ -91,7 +91,6 @@ public class RecordHalfMonthScheduled {
pageData.put("CORPINFO_ID", corpinfoId); pageData.put("CORPINFO_ID", corpinfoId);
pageData.put("PERIODSTART", finalStartTime); pageData.put("PERIODSTART", finalStartTime);
pageData.put("PERIODEND", finalEndTime); pageData.put("PERIODEND", finalEndTime);
pageData.put("PHONE_REPEAT", "1");
//'添加人''添加时间''修改人''修改时间' //'添加人''添加时间''修改人''修改时间'
pageData.put("CREATOR", "adminTask"); pageData.put("CREATOR", "adminTask");
pageData.put("CREATTIME", DateUtil.date2Str(new Date())); pageData.put("CREATTIME", DateUtil.date2Str(new Date()));

View File

@ -57,6 +57,7 @@ spring.main.banner-mode=off
preventionxgf.api.url=http://192.168.192.201:8993/qa-prevention-xgf/ preventionxgf.api.url=http://192.168.192.201:8993/qa-prevention-xgf/
qa-regulatory-gwj.api.url=http://192.168.192.201:8092/qa-regulatory-gwj/ qa-regulatory-gwj.api.url=http://192.168.192.201:8092/qa-regulatory-gwj/
dw.url=http://192.168.192.201:8888/qa-dingWei-gwj/
#????? #?????
smb.host=192.168.192.201 smb.host=192.168.192.201

View File

@ -2,11 +2,11 @@ spring.application.name=qa-prevention-gwj
server.port=8091 server.port=8091
#?? #??
spring.profiles.active=me #spring.profiles.active=local
#<23><><EFBFBD><EFBFBD>31ʱʹ<CAB1><CAB9> #<23><><EFBFBD><EFBFBD>31ʱʹ<CAB1><CAB9>
#spring.profiles.active=dev #spring.profiles.active=dev
#?? #??
#spring.profiles.active=master spring.profiles.active=master

View File

@ -133,6 +133,9 @@
<if test="pd.DEPARTMENT_ID != null and pd.DEPARTMENT_ID != ''"><!-- 关键词检索 --> <if test="pd.DEPARTMENT_ID != null and pd.DEPARTMENT_ID != ''"><!-- 关键词检索 -->
and dept.DEPARTMENT_ID = #{pd.DEPARTMENT_ID} and dept.DEPARTMENT_ID = #{pd.DEPARTMENT_ID}
</if> </if>
<if test="pd.ADDSTART != null and pd.ADDSTART != '' and pd.ADDEND != null and pd.ADDEND != ''"><!-- 日期范围检索 -->
and DATE(f.CREATTIME) between DATE(#{pd.ADDSTART}) and DATE(#{pd.ADDEND})
</if>
and dept.`NAME` is not null and dept.`NAME` is not null
GROUP BY GROUP BY
f.PROMISE_ID f.PROMISE_ID

View File

@ -219,6 +219,10 @@
<if test="pd.USER_ID != null and pd.USER_ID != ''"><!-- 关键词检索 --> <if test="pd.USER_ID != null and pd.USER_ID != ''"><!-- 关键词检索 -->
and f.USER_ID = #{pd.USER_ID} and f.USER_ID = #{pd.USER_ID}
</if> </if>
<if test="pd.STARTTIME != null and pd.STARTTIME != '' and pd.ENDTIME != null and pd.ENDTIME != ''"><!-- 日期范围检索 -->
and DATE(f.SIGNTIME) between DATE(#{pd.STARTTIME}) and DATE(#{pd.ENDTIME})
</if>
AND f.ISPROMISE_PEOPLE = '0' AND f.ISPROMISE_PEOPLE = '0'
ORDER BY f.SIGNTIME desc ORDER BY f.SIGNTIME desc
</select> </select>
@ -241,6 +245,9 @@
<if test="pd.KEYWORDS != null and pd.KEYWORDS != ''"><!-- 关键词检索 --> <if test="pd.KEYWORDS != null and pd.KEYWORDS != ''"><!-- 关键词检索 -->
and f.PROMISE_NAME LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}),'%') and f.PROMISE_NAME LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}),'%')
</if> </if>
<if test="pd.STARTTIME != null and pd.STARTTIME != '' and pd.ENDTIME != null and pd.ENDTIME != ''"><!-- 日期范围检索 -->
and DATE(f.SIGNTIME) between DATE(#{pd.STARTTIME}) and DATE(#{pd.ENDTIME})
</if>
AND f.ISPROMISE_PEOPLE = '0' AND f.ISPROMISE_PEOPLE = '0'
ORDER BY f.SIGNTIME desc ORDER BY f.SIGNTIME desc
</select> </select>

View File

@ -525,9 +525,12 @@
FROM FROM
bus_meteorologicalinfo f bus_meteorologicalinfo f
WHERE 1=1 WHERE 1=1
and f.code in ( #{codes}) and f.code in
<foreach item="item" index="index" collection="codes" open="(" separator="," close=")">
#{item}
</foreach>
ORDER BY ORDER BY
f.OPERATTIME DESC f.OPERATTIME DESC
LIMIT 1 ; LIMIT 1
</select> </select>
</mapper> </mapper>