From 48a703dec596b5d2c1b04b0b4f7ed0f28c1ca898 Mon Sep 17 00:00:00 2001
From: lidongdong <1459917685@qq.com>
Date: 星期一, 13 十一月 2023 18:00:50 +0800
Subject: [PATCH] 新增社区共建评论模块2
---
springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/biz/impl/LcApiServiceImpl.java | 412 +++++++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 331 insertions(+), 81 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/biz/impl/LcApiServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/biz/impl/LcApiServiceImpl.java
index a8917dd..26ac215 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/biz/impl/LcApiServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/biz/impl/LcApiServiceImpl.java
@@ -1,33 +1,5 @@
package com.panzhihua.serviceapi.biz.impl;
-import cn.hutool.http.HttpRequest;
-import cn.hutool.http.HttpResponse;
-import cn.hutool.http.HttpUtil;
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.panzhihua.common.api.LangchaoApiConstants;
-import com.panzhihua.common.api.LcReturnObject;
-import com.panzhihua.common.constants.TokenConstant;
-import com.panzhihua.common.enums.LocalEventToLangChaoEventTypeEnum;
-import com.panzhihua.common.model.dtos.api.EventFile;
-import com.panzhihua.common.model.dtos.api.EventInfo;
-import com.panzhihua.common.model.vos.R;
-import com.panzhihua.common.model.vos.grid.EventDetailsVO;
-import com.panzhihua.common.model.vos.grid.EventGridDataDetailsVO;
-import com.panzhihua.common.model.vos.grid.EventResourceVO;
-import com.panzhihua.common.service.grid.GridService;
-import com.panzhihua.common.utlis.DateUtils;
-import com.panzhihua.serviceapi.biz.LcApiService;
-import com.panzhihua.serviceapi.model.dto.LcGridData;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.redis.core.StringRedisTemplate;
-import org.springframework.data.redis.core.ValueOperations;
-import org.springframework.stereotype.Service;
-
-import javax.annotation.Resource;
import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;
@@ -38,22 +10,84 @@
import java.util.Map;
import java.util.concurrent.TimeUnit;
+import javax.annotation.Resource;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.data.redis.core.StringRedisTemplate;
+import org.springframework.data.redis.core.ValueOperations;
+import org.springframework.stereotype.Service;
+
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.panzhihua.common.api.*;
+import com.panzhihua.common.constants.TokenConstant;
+import com.panzhihua.common.enums.LocalEventToLangChaoEventTypeEnum;
+import com.panzhihua.common.model.dtos.api.EventFile;
+import com.panzhihua.common.model.dtos.api.EventInfo;
+import com.panzhihua.common.model.dtos.grid.LcEventVisitingTasksListDTO;
+import com.panzhihua.common.model.vos.BcDictionaryItemVO;
+import com.panzhihua.common.model.vos.R;
+import com.panzhihua.common.model.vos.community.ComMngPopulationVO;
+import com.panzhihua.common.model.vos.grid.EventDetailsVO;
+import com.panzhihua.common.model.vos.grid.EventGridDataDetailsVO;
+import com.panzhihua.common.model.vos.grid.EventResourceVO;
+import com.panzhihua.common.service.community.CommunityService;
+import com.panzhihua.common.service.grid.GridService;
+import com.panzhihua.common.utlis.CopyUtil;
+import com.panzhihua.common.utlis.DateUtils;
+import com.panzhihua.common.utlis.StringUtils;
+import com.panzhihua.serviceapi.biz.LcApiService;
+import com.panzhihua.serviceapi.model.dto.*;
+
+import cn.hutool.http.HttpRequest;
+import cn.hutool.http.HttpResponse;
+import cn.hutool.http.HttpUtil;
+import lombok.extern.slf4j.Slf4j;
+
/**
- * program 攀枝花智慧社区项目
- * description 第三方浪潮市平台对接接口管理API
+ * program 攀枝花智慧社区项目 description 第三方浪潮市平台对接接口管理API
*
- * @author manailin
- * Date 2021-01-22 15:30
+ * @author manailin Date 2021-01-22 15:30
**/
@Slf4j
@Service
public class LcApiServiceImpl implements LcApiService {
+
+ @Value("${langchao.url}")
+ private String host;
@Resource
private GridService gridService;
@Autowired
private StringRedisTemplate redisTemplate;
+
+ @Resource
+ private CommunityService communityService;
+
+ /**
+ * 工具方法 inputStream 转 File
+ */
+ private static File inputStreamToFile(InputStream ins, String name) throws Exception {
+ File file = new File(System.getProperty("java.io.tmpdir") + File.separator + name);
+ log.info(System.getProperty("java.io.tmpdir") + File.separator + name);
+ if (file.exists()) {
+ return file;
+ }
+ OutputStream os = new FileOutputStream(file);
+ int bytesRead;
+ int len = 8192;
+ byte[] buffer = new byte[len];
+ while ((bytesRead = ins.read(buffer, 0, len)) != -1) {
+ os.write(buffer, 0, bytesRead);
+ }
+ os.close();
+ ins.close();
+ return file;
+ }
/**
* 从redis获取token
@@ -62,31 +96,35 @@
*/
private String getAuthToken() {
ValueOperations<String, String> valueOperations = redisTemplate.opsForValue();
- if (valueOperations.get(LangchaoApiConstants.LANG_CHAO_TOKEN) == null) {
- saveTokenFromRemoteRequest("18080799023", "123456");
+ if (valueOperations.get(LcApiConstants.LANG_CHAO_TOKEN) == null) {
+ saveTokenFromRemoteRequest(LcApiConstants.LC_UPLOAD_NAME, LcApiConstants.LC_UPLOAD_PASSWORD);
}
- return valueOperations.get(LangchaoApiConstants.LANG_CHAO_TOKEN);
+ return valueOperations.get(LcApiConstants.LANG_CHAO_TOKEN);
}
@Override
public String saveTokenFromRemoteRequest(String name, String password) {
- if (redisTemplate.hasKey(LangchaoApiConstants.LANG_CHAO_TOKEN)) {
- //如果redis存在token,直接返回redis存储的token
+ Boolean authToken = redisTemplate.hasKey(LcApiConstants.LANG_CHAO_TOKEN);
+ if (authToken != null) {
+ // 如果redis存在token,直接返回redis存储的token
ValueOperations<String, String> valueOperations = redisTemplate.opsForValue();
- return valueOperations.get(LangchaoApiConstants.LANG_CHAO_TOKEN);
+ return valueOperations.get(LcApiConstants.LANG_CHAO_TOKEN);
} else {
- //如果第一次请求浪潮的token请求,请求完成后,保存对于的token到数据库中。便于12小时内重复调用
- HttpRequest request = HttpUtil.createPost(LangchaoApiConstants.GRID_GET_TOKEN_URL.replace("#username", name).replace("#password", password));
+ // 如果第一次请求浪潮的token请求,请求完成后,保存对于的token到数据库中。便于12小时内重复调用
+ HttpRequest request = HttpUtil.createPost(
+ host +
+ LcApiConstants.GRID_GET_TOKEN_URL.replace("#username", name).replace("#password", password));
HttpResponse result = request.execute();
ValueOperations<String, String> valueOperations = redisTemplate.opsForValue();
- valueOperations.set(LangchaoApiConstants.LANG_CHAO_TOKEN, result.body(), TokenConstant.EXPIRETIME, TimeUnit.MINUTES);
+ valueOperations.set(LcApiConstants.LANG_CHAO_TOKEN, result.body(), TokenConstant.EXPIRETIME,
+ TimeUnit.MINUTES);
return result.toString();
}
}
@Override
public String getAllEventTypeList() {
- HttpRequest request = HttpUtil.createPost(LangchaoApiConstants.GRID_EVENT_CATEGORY_URL);
+ HttpRequest request = HttpUtil.createPost(host + LcApiConstants.GRID_EVENT_CATEGORY_URL);
request.auth(getAuthToken());
HttpResponse result = request.execute();
return result.body();
@@ -94,27 +132,27 @@
@Override
public String submitEventRegister(EventInfo eventInfo) {
- HttpRequest request = HttpUtil.createPost(LangchaoApiConstants.GRID_REGIST_EVENT_URL);
+ HttpRequest request = HttpUtil.createPost(host + LcApiConstants.GRID_REGIST_EVENT_URL);
request.auth(getAuthToken());
ObjectMapper mapper = new ObjectMapper();
try {
- //对象转map
+ // 对象转map
Map m = mapper.readValue(mapper.writeValueAsString(eventInfo), Map.class);
request.form(m);
} catch (JsonProcessingException e) {
log.info("方法submitEventRegister发生错误:{}", e.getMessage());
}
HttpResponse result = request.execute();
- log.info("submit上传浪潮事件信息:{}", result.body());
+ log.info("submitEventRegister上传浪潮事件信息:{}", result.body());
return result.body();
}
@Override
- public R submitEventRelationFile(EventFile eventFile) {
- HttpRequest request = HttpUtil.createPost(LangchaoApiConstants.GRID_EVENT_FILE_UPLOAD_URL);
+ public R submitEventOrVisitRecordRelationFile(EventFile eventFile) {
+ HttpRequest request = HttpUtil.createPost(host + LcApiConstants.GRID_EVENT_FILE_UPLOAD_URL);
request.auth(getAuthToken());
try {
- HttpURLConnection httpUrl = (HttpURLConnection) new URL(eventFile.getFiles()).openConnection();
+ HttpURLConnection httpUrl = (HttpURLConnection)new URL(eventFile.getFiles()).openConnection();
httpUrl.connect();
File file = inputStreamToFile(httpUrl.getInputStream(), eventFile.getFileName());
request.form("files", file);
@@ -126,14 +164,14 @@
file.delete();
return R.ok(result.body());
} catch (Exception e) {
- log.info("方法submitEventRelationFile发生错误:{}", e.getMessage());
+ log.info("方法submitEventOrVisitRecordRelationFile发生错误:{}", e.getMessage());
}
return R.fail();
}
@Override
public String getEventInfoById(String eventId) {
- HttpRequest request = HttpUtil.createPost(LangchaoApiConstants.GRID_APP_EVENT_INFO_DETAIL_URL);
+ HttpRequest request = HttpUtil.createPost(host + LcApiConstants.GRID_APP_EVENT_INFO_DETAIL_URL);
request.auth(getAuthToken());
request.form("eventId", eventId);
HttpResponse result = request.execute();
@@ -141,8 +179,20 @@
}
@Override
- public List<LcGridData> getGridListByAreaId(String areaId) {
- HttpRequest request = HttpUtil.createPost(LangchaoApiConstants.GRID_GET_EVENT_INFO_AREA_ID_URL);
+ public List<LcGridData> getGridTreeByAreaId(String areaId) {
+ HttpRequest request = HttpUtil.createPost(host + LcApiConstants.GRID_GET_EVENT_INFO_AREA_ID_URL);
+ request.auth(getAuthToken());
+ request.form("areaId", areaId);
+ request.form("level", 4);
+ HttpResponse result = request.execute();
+ return JSONArray.parseArray(result.body(), LcGridData.class);
+ }
+
+ @Override
+ public List<LcGridData> getGridDataListByAreaId(String areaId) {
+ log.info("浪潮请求url");
+ log.info(host + LcApiConstants.GRID_GET_GRID_DATA_AREA_ID_URL);
+ HttpRequest request = HttpUtil.createPost(host + LcApiConstants.GRID_GET_GRID_DATA_AREA_ID_URL);
request.auth(getAuthToken());
request.form("areaId", areaId);
HttpResponse result = request.execute();
@@ -150,12 +200,19 @@
}
@Override
- public String getGridMemberListByAreaIdOrName(String areaId) {
- HttpRequest request = HttpUtil.createPost(LangchaoApiConstants.GRID_GET_GETALL_SEARCH_PAGE_URL);
+ public List<GridMemberPageListDTO> getGridMemberListByAreaIdOrName(String areaId, String param, Long pageNum,
+ Long pageSize) {
+ HttpRequest request = HttpUtil.createGet(host + LcApiConstants.GRID_GET_GETALL_SEARCH_PAGE_URL);
request.auth(getAuthToken());
request.form("areaId", areaId);
+ request.form("limit", pageSize);
+ request.form("page", pageNum);
+ if (StringUtils.isNotEmpty(param)) {
+ request.form("param", param);
+ }
HttpResponse result = request.execute();
- return result.body();
+ LcReturnObject returenData = JSONObject.parseObject(result.body(), LcReturnObject.class);
+ return JSONArray.parseArray(returenData.getData(), GridMemberPageListDTO.class);
}
@Override
@@ -168,7 +225,7 @@
String lcGridUserId = gridService.getLcUserIdByLocalUserId(eventInfoVo.getGridMemberId().toString());
eventInfo.setGridId(lcGrid);
R grid = gridService.eventGridDataDetails(eventInfoVo.getGridId());
- EventGridDataDetailsVO gridData = (EventGridDataDetailsVO) grid.getData();
+ EventGridDataDetailsVO gridData = (EventGridDataDetailsVO)grid.getData();
eventInfo.setGridName(gridData.getGridName());
eventInfo.setCaseTypeCode(LocalEventToLangChaoEventTypeEnum.getCodeByName(eventInfoVo.getEventType()));
String caseTypeName = LocalEventToLangChaoEventTypeEnum.getEventNameByCode(eventInfoVo.getEventType());
@@ -187,10 +244,10 @@
eventInfo.setHandleType("REPORT");
eventInfo.setHandleDescription(eventInfoVo.getProcessDesc());
eventInfo.setDataId(eventInfoVo.getId().toString());
- //获取系统网格员映射的浪潮网格员对于的用户ID
+ // 获取系统网格员映射的浪潮网格员对于的用户ID
eventInfo.setUserId(lcGridUserId);
eventInfo.setHandleTime(DateUtils.getCurrentDateTimeStamp().toString());
- eventInfo.setCaseName(gridData.getGridName().concat(caseTypeName).concat(eventInfoVo.getEventTitle()));
+ eventInfo.setCaseName(gridData.getGridName().concat(caseTypeName));
log.info("事件请求数据:{}", JSONObject.toJSONString(eventInfo));
String remoteData = submitEventRegister(eventInfo);
LcReturnObject lcReturnObject = JSONObject.parseObject(remoteData, LcReturnObject.class);
@@ -210,6 +267,221 @@
});
}
+ @Override
+ public String getFlowPersonVisitRecordDetailById(String recordId) {
+ HttpRequest request = HttpUtil.createPost(host + LcApiConstants.VISIT_RECORD_FLOW_PERSON_DETAIL_URL);
+ request.auth(getAuthToken());
+ request.form("id", recordId);
+ HttpResponse result = request.execute();
+ return result.body();
+ }
+
+ @Override
+ public String getFlowPersonVisitRecordPage(LcKeyPersonVisitRecordQueryDTO personVisitRecordQueryDTO,
+ Long loginUserId) {
+ HttpResponse result = getHttpResponse(personVisitRecordQueryDTO, loginUserId,
+ host +
+ LcApiConstants.VISIT_RECORD_FLOW_PERSON_PAGE_URL, "flowPeopleId");
+ return result.body();
+ }
+
+ @Override
+ public String uploadFlowPersonVisitRecord(LcFlowPersonVisitRecordDTO lcFlowPersonVisitRecordDTO) {
+ HttpRequest request = HttpUtil.createPost(host + LcApiConstants.VISIT_RECORD_FLOW_PERSON_SAVE_URL);
+ request.auth(getAuthToken());
+ ObjectMapper mapper = new ObjectMapper();
+ try {
+ // 对象转map
+ Map m = mapper.readValue(mapper.writeValueAsString(lcFlowPersonVisitRecordDTO), Map.class);
+ request.form(m);
+ } catch (JsonProcessingException e) {
+ log.info("方法uploadFlowPersonVisitRecord发生错误:{}", e.getMessage());
+ }
+ HttpResponse result = request.execute();
+ log.info("uploadFlowPersonVisitRecord上传浪潮事件信息:{}", result.body());
+ return result.body();
+ }
+
+ @Override
+ public String uploadKeyPersonVisitRecord(LcKeyPersonVisitRecordDTO lcKeyPersonVisitRecordDTO) {
+ HttpRequest request = HttpUtil.createPost(host + LcApiConstants.VISIT_RECORD_KEY_PERSON_SAVE_REMOTE_URL);
+ request.auth(getAuthToken());
+ ObjectMapper mapper = new ObjectMapper();
+ try {
+ // 对象转map
+ Map m = mapper.readValue(mapper.writeValueAsString(lcKeyPersonVisitRecordDTO), Map.class);
+ request.form(m);
+ } catch (JsonProcessingException e) {
+ log.info("方法uploadKeyPersonVisitRecord发生错误:{}", e.getMessage());
+ }
+ HttpResponse result = request.execute();
+ log.info("uploadKeyPersonVisitRecord上传浪潮事件信息:{}", result.body());
+ return result.body();
+ }
+
+ @Override
+ public String getKeyPersonVisitRecordDetailById(String recordId) {
+ HttpRequest request = HttpUtil.createPost(host + LcApiConstants.VISIT_RECORD_KEY_PERSON_DETAIL_URL);
+ request.auth(getAuthToken());
+ request.form("id", recordId);
+ HttpResponse result = request.execute();
+ return result.body();
+ }
+
+ @Override
+ public String getKeyPersonVisitRecordPage(LcKeyPersonVisitRecordQueryDTO personVisitRecordQueryDTO,
+ Long loginUserId) {
+ HttpResponse result = getHttpResponse(personVisitRecordQueryDTO, loginUserId,
+ host +
+ LcApiConstants.VISIT_RECORD_KEY_PERSON_PAGE_URL, "keyPersonId");
+ return result.body();
+ }
+
+ @Override
+ public void automationUploadVisitRecord() {
+ List<LcEventVisitingTasksListDTO> unUploadTaskList = gridService.getUnUploadVisitingTask();
+ unUploadTaskList.forEach(lcEventVisitingTasksListDTO -> {
+ String lcGrid = gridService.getLcGridIdByLocal(lcEventVisitingTasksListDTO.getGridId());
+ String lcGridUserId =
+ gridService.getLcUserIdByLocalUserId(lcEventVisitingTasksListDTO.getGridMember().toString());
+ R populationDetail = communityService.detailPopulation(lcEventVisitingTasksListDTO.getVisiterId(), null);
+ ComMngPopulationVO comMngPopulationVO = (ComMngPopulationVO)populationDetail.getData();
+ BcDictionaryItemVO diction = communityService.getByCode(DictionItemConstants.LC_CULTURE_LEVEL,
+ comMngPopulationVO.getCultureLevel().toString());
+ ComMngPopulationDTO comMngPopulationDTO =
+ CopyUtil.copyProperties(comMngPopulationVO, ComMngPopulationDTO.class);
+ if (diction != null) {
+ comMngPopulationDTO.setCultureLevel(diction.getDictItemName());
+ }
+ R grid = gridService.eventGridDataDetails(lcEventVisitingTasksListDTO.getGridId());
+ EventGridDataDetailsVO gridData = (EventGridDataDetailsVO)grid.getData();
+ String[] data = lcEventVisitingTasksListDTO.getHappentLatLng().split(",");
+ if (lcEventVisitingTasksListDTO.getVisiterType() != null) {
+ log.info("上传数据导重点人口走访记录表");
+ LcReturnObject lcReturnObject = requestLcKeyPersonVisitRecord(lcEventVisitingTasksListDTO, lcGrid,
+ lcGridUserId, comMngPopulationDTO, gridData.getGridName(), data);
+ if (LcRequestEnum.SUCCESS.getCode().equals(lcReturnObject.getCode())) {
+ uploadVisitRecord(lcEventVisitingTasksListDTO);
+ gridService.updateLcUploadFlagVisitingTask(lcEventVisitingTasksListDTO.getId());
+ }
+ } else {
+ log.info("上传数据导流动人口走访记录表");
+ LcReturnObject lcReturnObject = requestLcFlowPersonVisitRecord(lcEventVisitingTasksListDTO, lcGrid,
+ lcGridUserId, comMngPopulationDTO, gridData.getGridName(), data);
+ if (LcRequestEnum.SUCCESS.getCode().equals(lcReturnObject.getCode())) {
+ uploadVisitRecord(lcEventVisitingTasksListDTO);
+ gridService.updateLcUploadFlagVisitingTask(lcEventVisitingTasksListDTO.getId());
+ }
+ }
+ });
+ }
+
+ private void uploadVisitRecord(LcEventVisitingTasksListDTO lcEventVisitingTasksListDTO) {
+ log.info("开始上传走访任务附件文件");
+ List<EventResourceVO> picsList = lcEventVisitingTasksListDTO.getPics();
+ uploadVisitRecordFile(lcEventVisitingTasksListDTO, picsList, "IMAGE");
+ List<EventResourceVO> audiosList = lcEventVisitingTasksListDTO.getAudios();
+ uploadVisitRecordFile(lcEventVisitingTasksListDTO, audiosList, "AUDIO");
+ List<EventResourceVO> videoList = lcEventVisitingTasksListDTO.getVideos();
+ uploadVisitRecordFile(lcEventVisitingTasksListDTO, videoList, "VIDEO");
+ log.info("结束上传走访任务附件文件");
+ }
+
+ private void uploadVisitRecordFile(LcEventVisitingTasksListDTO lcEventVisitingTasksListDTO,
+ List<EventResourceVO> picsList, String type) {
+ picsList.forEach(eventResourceVO -> {
+ EventFile eventFile = new EventFile();
+ eventFile.setDataId(lcEventVisitingTasksListDTO.getId().toString());
+ eventFile.setFiles(eventResourceVO.getUrl());
+ eventFile.setType(type);
+ eventFile.setModule("key_person");
+ eventFile.setFileName(eventResourceVO.getResourceName());
+ submitEventOrVisitRecordRelationFile(eventFile);
+ });
+ }
+
+ @Override
+ public LcReturnObject requestLcFlowPersonVisitRecord(LcEventVisitingTasksListDTO lcEventVisitingTasksListDTO,
+ String lcGrid, String lcGridUserId, Object populationDetail, String gridName, String[] data) {
+ // 如果是流动人口走访
+ LcFlowPersonVisitRecordDTO lcFlowPersonVisitRecordDTO = new LcFlowPersonVisitRecordDTO();
+ lcFlowPersonVisitRecordDTO.setId(lcEventVisitingTasksListDTO.getId().toString());
+ lcFlowPersonVisitRecordDTO.setUserId(lcGridUserId);
+ lcFlowPersonVisitRecordDTO.setGridPersonName(lcEventVisitingTasksListDTO.getGridMemberName());
+ lcFlowPersonVisitRecordDTO.setGridPersonPhone(lcEventVisitingTasksListDTO.getGridMenberTele());
+ JSONObject population = (JSONObject)JSONObject.toJSON(populationDetail);
+ lcFlowPersonVisitRecordDTO.setComMngPopulation(population.toJSONString());
+ lcFlowPersonVisitRecordDTO.setGridId(lcGrid);
+ lcFlowPersonVisitRecordDTO.setGridName(gridName);
+ lcFlowPersonVisitRecordDTO.setWorkWithPoliceMan("0");
+ lcFlowPersonVisitRecordDTO.setPoliceManName(null);
+ lcFlowPersonVisitRecordDTO.setPoliceManPhone(null);
+ lcFlowPersonVisitRecordDTO.setPoliceManWorkContent(null);
+ lcFlowPersonVisitRecordDTO.setVisitTime(lcEventVisitingTasksListDTO.getHappenTime().getTime());
+ lcFlowPersonVisitRecordDTO.setVisitAddress(lcEventVisitingTasksListDTO.getHappentAddress());
+ lcFlowPersonVisitRecordDTO.setLongitude(Double.valueOf(data[0]));
+ lcFlowPersonVisitRecordDTO.setLatitude(Double.valueOf(data[1]));
+ lcFlowPersonVisitRecordDTO.setHouseType(null);
+ lcFlowPersonVisitRecordDTO.setHouseAddress(lcEventVisitingTasksListDTO.getHappentAddress());
+ lcFlowPersonVisitRecordDTO.setIsReportInfo(null);
+ lcFlowPersonVisitRecordDTO.setHaveCertificate("0");
+ lcFlowPersonVisitRecordDTO.setCertificateType("身份证");
+ lcFlowPersonVisitRecordDTO.setCertificateNumber(population.getString("cardNo"));
+ lcFlowPersonVisitRecordDTO.setCertificateDeadTime("0");
+ lcFlowPersonVisitRecordDTO.setIsPropaganda("1");
+ lcFlowPersonVisitRecordDTO.setIsCheckReview("1");
+ lcFlowPersonVisitRecordDTO.setIsAbnormal(lcEventVisitingTasksListDTO.getException().toString());
+ lcFlowPersonVisitRecordDTO.setAbnormalSituation(lcEventVisitingTasksListDTO.getTableContentJson());
+ lcFlowPersonVisitRecordDTO.setRemark(lcEventVisitingTasksListDTO.getEventDes());
+ log.info("requestLcFlowPersonVisitRecord事件请求数据:{}", JSONObject.toJSONString(lcFlowPersonVisitRecordDTO));
+ String flowPersonData = uploadFlowPersonVisitRecord(lcFlowPersonVisitRecordDTO);
+ LcReturnObject lcReturnObject = JSONObject.parseObject(flowPersonData, LcReturnObject.class);
+ log.info("requestLcFlowPersonVisitRecord提交浪潮服务器,接口返回结果为:{}", lcReturnObject);
+ return lcReturnObject;
+ }
+
+ @Override
+ public LcReturnObject requestLcKeyPersonVisitRecord(LcEventVisitingTasksListDTO lcEventVisitingTasksListDTO,
+ String lcGrid, String lcGridUserId, Object populationDetail, String gridName, String[] data) {
+ LcKeyPersonVisitRecordDTO keyPersonVisitRecordDTO = new LcKeyPersonVisitRecordDTO();
+ keyPersonVisitRecordDTO.setId(lcEventVisitingTasksListDTO.getId().toString());
+ keyPersonVisitRecordDTO.setUserId(lcGridUserId);
+ keyPersonVisitRecordDTO.setGridPersonName(lcEventVisitingTasksListDTO.getGridMemberName());
+ keyPersonVisitRecordDTO.setGridPersonPhone(lcEventVisitingTasksListDTO.getGridMenberTele());
+ keyPersonVisitRecordDTO.setComMngPopulation(JSONObject.toJSONString(populationDetail));
+ keyPersonVisitRecordDTO.setGridId(lcGrid);
+ keyPersonVisitRecordDTO.setGridName(gridName);
+ keyPersonVisitRecordDTO.setVisitTime(lcEventVisitingTasksListDTO.getHappenTime().getTime());
+ keyPersonVisitRecordDTO.setVisitAddress(lcEventVisitingTasksListDTO.getHappentAddress());
+ keyPersonVisitRecordDTO.setLongitude(Double.valueOf(data[0]));
+ keyPersonVisitRecordDTO.setLatitude(Double.valueOf(data[1]));
+ keyPersonVisitRecordDTO.setFamilyMemberContact(lcEventVisitingTasksListDTO.getFamilyPhone());
+ keyPersonVisitRecordDTO.setHowLive(lcEventVisitingTasksListDTO.getFamilySource());
+ keyPersonVisitRecordDTO.setIsAbnormal(lcEventVisitingTasksListDTO.getException().toString());
+ keyPersonVisitRecordDTO.setAbnormalSituation(null);
+ keyPersonVisitRecordDTO.setAbnormalDes(lcEventVisitingTasksListDTO.getTableContentJson());
+ keyPersonVisitRecordDTO.setRemark(lcEventVisitingTasksListDTO.getEventDes());
+ keyPersonVisitRecordDTO
+ .setType(LcVisitRecordKeyPersonLabelEnum.getCnDescByName(lcEventVisitingTasksListDTO.getVisiterType()));
+ log.info("requestLcKeyPersonVisitRecord事件请求数据:{}", JSONObject.toJSONString(keyPersonVisitRecordDTO));
+ String remoteData = uploadKeyPersonVisitRecord(keyPersonVisitRecordDTO);
+ LcReturnObject lcReturnObject = JSONObject.parseObject(remoteData, LcReturnObject.class);
+ log.info("requestLcKeyPersonVisitRecord提交浪潮服务器,接口返回结果为:{}", remoteData);
+ return lcReturnObject;
+ }
+
+ private HttpResponse getHttpResponse(LcKeyPersonVisitRecordQueryDTO personVisitRecordQueryDTO, Long loginUserId,
+ String requestUrl, String flowPeopleId) {
+ HttpRequest request = HttpUtil.createPost(requestUrl);
+ request.auth(getAuthToken());
+ request.form("userId", loginUserId);
+ request.form("gridId", personVisitRecordQueryDTO.getGridId());
+ request.form("limit", personVisitRecordQueryDTO.getLimit());
+ request.form("startNumber", personVisitRecordQueryDTO.getStartNumber());
+ request.form(flowPeopleId, personVisitRecordQueryDTO.getPersonId());
+ return request.execute();
+ }
+
private void uploadLcApiEventFile(EventDetailsVO eventInfoVo, List<EventResourceVO> picsList, String type) {
picsList.forEach(eventResourceVO -> {
EventFile eventFile = new EventFile();
@@ -218,29 +490,7 @@
eventFile.setType(type);
eventFile.setModule("event");
eventFile.setFileName(eventResourceVO.getResourceName());
- submitEventRelationFile(eventFile);
+ submitEventOrVisitRecordRelationFile(eventFile);
});
- }
-
- /**
- * 工具方法
- * inputStream 转 File
- */
- public static File inputStreamToFile(InputStream ins, String name) throws Exception {
- File file = new File(System.getProperty("java.io.tmpdir") + File.separator + name);
- log.info(System.getProperty("java.io.tmpdir") + File.separator + name);
- if (file.exists()) {
- return file;
- }
- OutputStream os = new FileOutputStream(file);
- int bytesRead;
- int len = 8192;
- byte[] buffer = new byte[len];
- while ((bytesRead = ins.read(buffer, 0, len)) != -1) {
- os.write(buffer, 0, bytesRead);
- }
- os.close();
- ins.close();
- return file;
}
}
--
Gitblit v1.7.1