From 177249c76aeea0b4bf8d8816d4994e3b445b45ce Mon Sep 17 00:00:00 2001 From: huanghongfa <huanghongfa123456> Date: 星期四, 02 九月 2021 10:39:34 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/zzj' into zzj --- springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/biz/impl/LcApiServiceImpl.java | 168 ++++++++++++++++++++++++++++++------------------------- 1 files changed, 91 insertions(+), 77 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 605f0d6..106753d 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,8 +1,22 @@ package com.panzhihua.serviceapi.biz.impl; -import cn.hutool.http.HttpRequest; -import cn.hutool.http.HttpResponse; -import cn.hutool.http.HttpUtil; +import java.io.File; +import java.io.FileOutputStream; +import java.io.InputStream; +import java.io.OutputStream; +import java.net.HttpURLConnection; +import java.net.URL; +import java.util.List; +import java.util.Map; +import java.util.concurrent.TimeUnit; + +import javax.annotation.Resource; + +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 com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.fasterxml.jackson.core.JsonProcessingException; @@ -14,7 +28,6 @@ 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.BcDictionaryVO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.community.ComMngPopulationVO; import com.panzhihua.common.model.vos.grid.EventDetailsVO; @@ -27,29 +40,16 @@ import com.panzhihua.common.utlis.StringUtils; import com.panzhihua.serviceapi.biz.LcApiService; import com.panzhihua.serviceapi.model.dto.*; -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; -import java.io.OutputStream; -import java.net.HttpURLConnection; -import java.net.URL; -import java.util.List; -import java.util.Map; -import java.util.concurrent.TimeUnit; +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 @@ -63,6 +63,27 @@ @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 @@ -81,15 +102,17 @@ public String saveTokenFromRemoteRequest(String name, String password) { Boolean authToken = redisTemplate.hasKey(LcApiConstants.LANG_CHAO_TOKEN); if (authToken != null) { - //如果redis存在token,直接返回redis存储的token + // 如果redis存在token,直接返回redis存储的token ValueOperations<String, String> valueOperations = redisTemplate.opsForValue(); return valueOperations.get(LcApiConstants.LANG_CHAO_TOKEN); } else { - //如果第一次请求浪潮的token请求,请求完成后,保存对于的token到数据库中。便于12小时内重复调用 - HttpRequest request = HttpUtil.createPost(LcApiConstants.GRID_GET_TOKEN_URL.replace("#username", name).replace("#password", password)); + // 如果第一次请求浪潮的token请求,请求完成后,保存对于的token到数据库中。便于12小时内重复调用 + HttpRequest request = HttpUtil.createPost( + LcApiConstants.GRID_GET_TOKEN_URL.replace("#username", name).replace("#password", password)); HttpResponse result = request.execute(); ValueOperations<String, String> valueOperations = redisTemplate.opsForValue(); - valueOperations.set(LcApiConstants.LANG_CHAO_TOKEN, result.body(), TokenConstant.EXPIRETIME, TimeUnit.MINUTES); + valueOperations.set(LcApiConstants.LANG_CHAO_TOKEN, result.body(), TokenConstant.EXPIRETIME, + TimeUnit.MINUTES); return result.toString(); } } @@ -108,7 +131,7 @@ 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) { @@ -124,7 +147,7 @@ HttpRequest request = HttpUtil.createPost(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); @@ -170,13 +193,14 @@ } @Override - public List<GridMemberPageListDTO> getGridMemberListByAreaIdOrName(String areaId,String param,Long pageNum,Long pageSize) { + public List<GridMemberPageListDTO> getGridMemberListByAreaIdOrName(String areaId, String param, Long pageNum, + Long pageSize) { HttpRequest request = HttpUtil.createGet(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)){ + if (StringUtils.isNotEmpty(param)) { request.form("param", param); } HttpResponse result = request.execute(); @@ -194,7 +218,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()); @@ -213,7 +237,7 @@ 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)); @@ -246,8 +270,10 @@ } @Override - public String getFlowPersonVisitRecordPage(LcKeyPersonVisitRecordQueryDTO personVisitRecordQueryDTO, Long loginUserId) { - HttpResponse result = getHttpResponse(personVisitRecordQueryDTO, loginUserId, LcApiConstants.VISIT_RECORD_FLOW_PERSON_PAGE_URL, "flowPeopleId"); + public String getFlowPersonVisitRecordPage(LcKeyPersonVisitRecordQueryDTO personVisitRecordQueryDTO, + Long loginUserId) { + HttpResponse result = getHttpResponse(personVisitRecordQueryDTO, loginUserId, + LcApiConstants.VISIT_RECORD_FLOW_PERSON_PAGE_URL, "flowPeopleId"); return result.body(); } @@ -257,7 +283,7 @@ request.auth(getAuthToken()); ObjectMapper mapper = new ObjectMapper(); try { - //对象转map + // 对象转map Map m = mapper.readValue(mapper.writeValueAsString(lcFlowPersonVisitRecordDTO), Map.class); request.form(m); } catch (JsonProcessingException e) { @@ -274,7 +300,7 @@ request.auth(getAuthToken()); ObjectMapper mapper = new ObjectMapper(); try { - //对象转map + // 对象转map Map m = mapper.readValue(mapper.writeValueAsString(lcKeyPersonVisitRecordDTO), Map.class); request.form(m); } catch (JsonProcessingException e) { @@ -295,8 +321,10 @@ } @Override - public String getKeyPersonVisitRecordPage(LcKeyPersonVisitRecordQueryDTO personVisitRecordQueryDTO, Long loginUserId) { - HttpResponse result = getHttpResponse(personVisitRecordQueryDTO, loginUserId, LcApiConstants.VISIT_RECORD_KEY_PERSON_PAGE_URL, "keyPersonId"); + public String getKeyPersonVisitRecordPage(LcKeyPersonVisitRecordQueryDTO personVisitRecordQueryDTO, + Long loginUserId) { + HttpResponse result = getHttpResponse(personVisitRecordQueryDTO, loginUserId, + LcApiConstants.VISIT_RECORD_KEY_PERSON_PAGE_URL, "keyPersonId"); return result.body(); } @@ -305,27 +333,32 @@ List<LcEventVisitingTasksListDTO> unUploadTaskList = gridService.getUnUploadVisitingTask(); unUploadTaskList.forEach(lcEventVisitingTasksListDTO -> { String lcGrid = gridService.getLcGridIdByLocal(lcEventVisitingTasksListDTO.getGridId()); - String lcGridUserId = gridService.getLcUserIdByLocalUserId(lcEventVisitingTasksListDTO.getGridMember().toString()); + String lcGridUserId = + gridService.getLcUserIdByLocalUserId(lcEventVisitingTasksListDTO.getGridMember().toString()); R populationDetail = communityService.detailPopulation(lcEventVisitingTasksListDTO.getVisiterId()); - ComMngPopulationVO comMngPopulationVO = (ComMngPopulationVO) populationDetail.getData(); - BcDictionaryItemVO diction = communityService.getByCode(DictionItemConstants.LC_CULTURE_LEVEL, comMngPopulationVO.getCultureLevel().toString()); - ComMngPopulationDTO comMngPopulationDTO = CopyUtil.copyProperties(comMngPopulationVO, ComMngPopulationDTO.class); + 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(); + 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); + 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); + LcReturnObject lcReturnObject = requestLcFlowPersonVisitRecord(lcEventVisitingTasksListDTO, lcGrid, + lcGridUserId, comMngPopulationDTO, gridData.getGridName(), data); if (LcRequestEnum.SUCCESS.getCode().equals(lcReturnObject.getCode())) { uploadVisitRecord(lcEventVisitingTasksListDTO); gridService.updateLcUploadFlagVisitingTask(lcEventVisitingTasksListDTO.getId()); @@ -345,7 +378,8 @@ log.info("结束上传走访任务附件文件"); } - private void uploadVisitRecordFile(LcEventVisitingTasksListDTO lcEventVisitingTasksListDTO, List<EventResourceVO> picsList, String type) { + private void uploadVisitRecordFile(LcEventVisitingTasksListDTO lcEventVisitingTasksListDTO, + List<EventResourceVO> picsList, String type) { picsList.forEach(eventResourceVO -> { EventFile eventFile = new EventFile(); eventFile.setDataId(lcEventVisitingTasksListDTO.getId().toString()); @@ -357,16 +391,16 @@ }); } - @Override - public LcReturnObject requestLcFlowPersonVisitRecord(LcEventVisitingTasksListDTO lcEventVisitingTasksListDTO, String lcGrid, String lcGridUserId, Object populationDetail, String gridName, String[] data) { - //如果是流动人口走访 + 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); + JSONObject population = (JSONObject)JSONObject.toJSON(populationDetail); lcFlowPersonVisitRecordDTO.setComMngPopulation(population.toJSONString()); lcFlowPersonVisitRecordDTO.setGridId(lcGrid); lcFlowPersonVisitRecordDTO.setGridName(gridName); @@ -398,7 +432,8 @@ } @Override - public LcReturnObject requestLcKeyPersonVisitRecord(LcEventVisitingTasksListDTO lcEventVisitingTasksListDTO, String lcGrid, String lcGridUserId, Object populationDetail, String gridName, String[] data) { + 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); @@ -417,7 +452,8 @@ keyPersonVisitRecordDTO.setAbnormalSituation(null); keyPersonVisitRecordDTO.setAbnormalDes(lcEventVisitingTasksListDTO.getTableContentJson()); keyPersonVisitRecordDTO.setRemark(lcEventVisitingTasksListDTO.getEventDes()); - keyPersonVisitRecordDTO.setType(LcVisitRecordKeyPersonLabelEnum.getCnDescByName(lcEventVisitingTasksListDTO.getVisiterType())); + keyPersonVisitRecordDTO + .setType(LcVisitRecordKeyPersonLabelEnum.getCnDescByName(lcEventVisitingTasksListDTO.getVisiterType())); log.info("requestLcKeyPersonVisitRecord事件请求数据:{}", JSONObject.toJSONString(keyPersonVisitRecordDTO)); String remoteData = uploadKeyPersonVisitRecord(keyPersonVisitRecordDTO); LcReturnObject lcReturnObject = JSONObject.parseObject(remoteData, LcReturnObject.class); @@ -425,8 +461,8 @@ return lcReturnObject; } - - private HttpResponse getHttpResponse(LcKeyPersonVisitRecordQueryDTO personVisitRecordQueryDTO, Long loginUserId, String requestUrl, String flowPeopleId) { + private HttpResponse getHttpResponse(LcKeyPersonVisitRecordQueryDTO personVisitRecordQueryDTO, Long loginUserId, + String requestUrl, String flowPeopleId) { HttpRequest request = HttpUtil.createPost(requestUrl); request.auth(getAuthToken()); request.form("userId", loginUserId); @@ -447,27 +483,5 @@ eventFile.setFileName(eventResourceVO.getResourceName()); submitEventOrVisitRecordRelationFile(eventFile); }); - } - - /** - * 工具方法 - * 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; } } -- Gitblit v1.7.1