From 0d514ca5405b42b3d31e2e68d7a1e9e834cae706 Mon Sep 17 00:00:00 2001 From: wangwh <2397901735@qq.com> Date: Fri, 25 Oct 2024 09:24:34 +0800 Subject: [PATCH] fix:调试待办工单 --- dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/service/GridToDoService.java | 152 +++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 130 insertions(+), 22 deletions(-) diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/service/GridToDoService.java b/dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/service/GridToDoService.java index 64af9c7..b44ac1e 100644 --- a/dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/service/GridToDoService.java +++ b/dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/service/GridToDoService.java @@ -1,18 +1,24 @@ package cn.huge.module.grid.service; import cn.huge.base.common.bo.R; -import cn.huge.base.common.utils.HttpClientUtils; +import cn.huge.base.common.utils.*; +import cn.huge.module.grid.dao.mapper.GridCaseTaskMapper; +import cn.huge.module.grid.domain.po.GridCaseTask; +import cn.huge.module.sys.vo.*; import cn.huge.module.grid.domain.vo.*; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.serializer.SerializerFeature; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections.CollectionUtils; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; +import java.util.*; +import java.util.stream.Collectors; @Slf4j @Service @@ -23,23 +29,35 @@ private String userName; @Value("${grid.password}") private String passWord; + private String testUrl = "http://183.2.142.21:9007"; + @Autowired + private GridCaseTaskService gridCaseTaskService; + @Autowired + private GridUserService gridUserService; + @Autowired + private GridCaseTaskMapper gridCaseTaskMapper; public R<GridToDoVo> createToDo(GridToDoVo gridToDoVo) { HeadVo headVo = initHeadVo(); GridToDoRequestVo requestVo = new GridToDoRequestVo(); requestVo.setHeadVo(headVo); requestVo.setBodyVo(gridToDoVo); - log.info("xsd:{}", JSON.toJSONString(requestVo)); + log.info("xsd:{}", JSON.toJSONString(requestVo, SerializerFeature.WriteNullStringAsEmpty)); log.info("xsd:{}", gridUrl + "/sysUserTodo/save"); String s = null; try { - s = HttpClientUtils.httpPostRaw(gridUrl + "/sysUserTodo/save", JSON.toJSONString(requestVo), new HashMap<>(), "utf-8"); + s = HttpClientUtils.httpPostRaw(gridUrl + "/sysUserTodo/save", JSON.toJSONString(requestVo, SerializerFeature.WriteNullStringAsEmpty), new HashMap<>(), "utf-8"); } catch (Exception e) { log.info("xsderror:{}", e); throw new RuntimeException(e); } log.info("xsd:{}", s); GridToDoVo gridToDoDto = JSONObject.parseObject(s).getObject("data", GridToDoVo.class); + if (ObjectUtils.isNotEmpty(gridToDoDto)) { + GridCaseTask gridCaseTask = new GridCaseTask(); + BeanUtils.copyProperties(gridToDoDto, gridCaseTask); + gridCaseTaskService.save(gridCaseTask); + } return R.ok(gridToDoDto); } @@ -48,11 +66,18 @@ GridToDoBatchRequestVo requestVo = new GridToDoBatchRequestVo(); requestVo.setHeadVo(headVo); requestVo.setBodyVo(gridToDoVo); - log.info("xsd:{}", JSON.toJSONString(requestVo)); - log.info("xsd:{}", gridUrl + "/sysUserTodo/saveBatch"); + log.info("xsd:{}", JSON.toJSONString(gridToDoVo, SerializerFeature.WriteNullStringAsEmpty)); + log.info("xsd:{}", gridUrl + "/api/thrid/grid/todo/batch-create-todo" + JSON.toJSONString(gridToDoVo, SerializerFeature.WriteNullStringAsEmpty)); String s = null; try { - s = HttpClientUtils.httpPostRaw(gridUrl + "/sysUserTodo/saveBatch", JSON.toJSONString(requestVo), new HashMap<>(), "utf-8"); + if (SpringContextUtil.checkDev()) { + Map<String, String> header = new HashMap<>(); + String authorizationValue = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJIVUdFSU5GTyIsImV4cCI6MTcyOTcyOTI1MCwiaWF0IjoxNzI5Njg2MDUwLCJ1c2VySWQiOiJkNjY2ZTUzZGMwMjU0NjNkYTllZTkwOTUyNjk5MTljNCYyMl8wMDAyNC0zIn0.pPZsj-PpKD0m9SynBlL4KTiLVMx_r1rdDDX5wpEGwuY"; + header.put("Authorization", authorizationValue); + s = HttpClientUtils.httpPostRaw(testUrl + "/api/thrid/grid/todo/batch-create-todo", JSON.toJSONString(gridToDoVo, SerializerFeature.WriteNullStringAsEmpty), header, "utf-8"); + } else { + s = HttpClientUtils.httpPostRaw(gridUrl + "/sysUserTodo/saveBatch", JSON.toJSONString(requestVo, SerializerFeature.WriteNullStringAsEmpty), new HashMap<>(), "utf-8"); + } } catch (Exception e) { log.info("xsderror:{}", e); throw new RuntimeException(e); @@ -69,17 +94,16 @@ } - public R<GridToDoVo> updateToDo(GridToDoVo gridToDoVo) { HeadVo headVo = initHeadVo(); GridToDoRequestVo requestVo = new GridToDoRequestVo(); requestVo.setHeadVo(headVo); requestVo.setBodyVo(gridToDoVo); String s = null; - log.info("xsd:{}", JSON.toJSONString(requestVo)); + log.info("xsd:{}", JSON.toJSONString(requestVo, SerializerFeature.WriteNullStringAsEmpty)); log.info("xsd:{}", gridUrl + "/sysUserTodo/update"); try { - s = HttpClientUtils.httpPostRaw(gridUrl + "/sysUserTodo/update", JSON.toJSONString(requestVo), new HashMap<>(), "utf-8"); + s = HttpClientUtils.httpPostRaw(gridUrl + "/sysUserTodo/update", JSON.toJSONString(requestVo, SerializerFeature.WriteNullStringAsEmpty), new HashMap<>(), "utf-8"); } catch (Exception e) { log.info("xsderror:{}", e); throw new RuntimeException(e); @@ -100,10 +124,15 @@ requestVo.setHeadVo(headVo); requestVo.setBodyVo(gridToDoVos); String s = null; - log.info("xsd:{}", JSON.toJSONString(requestVo)); + log.info("xsd:{}", JSON.toJSONString(requestVo, SerializerFeature.WriteNullStringAsEmpty)); log.info("xsd:{}", gridUrl + "/sysUserTodo/updateBatch"); try { - s = HttpClientUtils.httpPostRaw(gridUrl + "/sysUserTodo/updateBatch", JSON.toJSONString(requestVo), new HashMap<>(), "utf-8"); + if (SpringContextUtil.checkDev()) { + log.info("xsdurl:{}", testUrl + "/api/thrid/grid/todo/batch-update-todo"); + s = HttpClientUtils.httpPostRaw(testUrl + "/api/thrid/grid/todo/batch-update-todo", JSON.toJSONString(gridToDoVos, SerializerFeature.WriteNullStringAsEmpty), new HashMap<>(), "utf-8"); + } else { + s = HttpClientUtils.httpPostRaw(gridUrl + "/sysUserTodo/updateBatch", JSON.toJSONString(requestVo, SerializerFeature.WriteNullStringAsEmpty), new HashMap<>(), "utf-8"); + } } catch (Exception e) { log.info("xsderror:{}", e); throw new RuntimeException(e); @@ -125,10 +154,17 @@ requestVo.setHeadVo(headVo); requestVo.setBodyVo(gridIdsVo); log.info("xsd:{}", requestVo); - log.info("xsd:{}", gridUrl + "/sysUserTodo/batchDel"); + log.info("xsd:{}", testUrl + "/sysUserTodo/batchDel" + JSON.toJSONString(gridIdsVo, SerializerFeature.WriteNullStringAsEmpty)); String s = null; try { - s = HttpClientUtils.httpPostRaw(gridUrl + "/sysUserTodo/batchDel", JSON.toJSONString(requestVo), new HashMap<>(), "utf-8"); + if (SpringContextUtil.checkDev()) { + Map<String, String> header = new HashMap<>(); + String authorizationValue = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJIVUdFSU5GTyIsImV4cCI6MTcyOTcyOTI1MCwiaWF0IjoxNzI5Njg2MDUwLCJ1c2VySWQiOiJkNjY2ZTUzZGMwMjU0NjNkYTllZTkwOTUyNjk5MTljNCYyMl8wMDAyNC0zIn0.pPZsj-PpKD0m9SynBlL4KTiLVMx_r1rdDDX5wpEGwuY"; + header.put("Authorization", authorizationValue); + s = HttpClientUtils.httpPostRaw(testUrl + "/api/thrid/grid/todo/delete-todo", JSON.toJSONString(gridIdsVo, SerializerFeature.WriteNullStringAsEmpty), header, "utf-8"); + } else { + s = HttpClientUtils.httpPostRaw(gridUrl + "/sysUserTodo/batchDel", JSON.toJSONString(requestVo, SerializerFeature.WriteNullStringAsEmpty), new HashMap<>(), "utf-8"); + } } catch (Exception e) { log.info("xsderror:{}", e); throw new RuntimeException(e); @@ -159,11 +195,17 @@ gridGetToDoVo.setSize(10); requestVo.setHeadVo(headVo); requestVo.setBodyVo(gridGetToDoVo); - log.info("xsd:{}", JSON.toJSONString(requestVo)); - log.info("xsd:{}", gridUrl + "/sysUserTodo/page"); + log.info("xsd:{}", testUrl + "/api/thrid/grid/todo/get-todo" + JSON.toJSONString(gridGetToDoVo, SerializerFeature.WriteNullStringAsEmpty)); String s = null; try { - s = HttpClientUtils.httpPostRaw(gridUrl + "/sysUserTodo/page", JSON.toJSONString(requestVo), new HashMap<>(), "utf-8"); + if (SpringContextUtil.checkDev()) { + Map<String, String> header = new HashMap<>(); + String authorizationValue = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJIVUdFSU5GTyIsImV4cCI6MTcyOTcyOTI1MCwiaWF0IjoxNzI5Njg2MDUwLCJ1c2VySWQiOiJkNjY2ZTUzZGMwMjU0NjNkYTllZTkwOTUyNjk5MTljNCYyMl8wMDAyNC0zIn0.pPZsj-PpKD0m9SynBlL4KTiLVMx_r1rdDDX5wpEGwuY"; + header.put("Authorization", authorizationValue); + s = HttpClientUtils.httpPostRaw(testUrl + "/api/thrid/grid/todo/get-todo", JSON.toJSONString(gridGetToDoVo, SerializerFeature.WriteNullStringAsEmpty), header, "utf-8"); + } else { + s = HttpClientUtils.httpPostRaw(gridUrl + "/sysUserTodo/page", JSON.toJSONString(gridGetToDoVo, SerializerFeature.WriteNullStringAsEmpty), new HashMap<>(), "utf-8"); + } } catch (Exception e) { log.info("xsderror:{}", e); throw new RuntimeException(e); @@ -171,13 +213,79 @@ log.info("xsd:{}", s); JSONObject object = JSONObject.parseObject(s); if (object.getInteger("code") != null && object.getInteger("code") == 0) { - JSONObject data = object.getJSONObject("data"); - JSONArray records = data.getJSONArray("records"); - List<GridToDoVo> gridToDoVos = records.toJavaList(GridToDoVo.class); + JSONArray data = JSONObject.parseObject(s).getJSONArray("data"); + List<GridToDoVo> gridToDoVos = data.toJavaList(GridToDoVo.class); return R.ok(gridToDoVos); } else { return R.fail("获取失败"); } } + + public R<List<GridToDoVo>> updateTaskToDo(GridToDoVo gridToDoVo, String previousTaskId) { + //修改网格系统工单 + List<GridToDoVo> gridToDoVoList = new ArrayList<>(); + List<GridCaseTask> gridCaseTaskList = gridCaseTaskService.listGridCaseTask(gridToDoVo.getCaseId(), previousTaskId); + for (GridCaseTask gridCaseTask : gridCaseTaskList) { + gridToDoVo.setId(gridCaseTask.getId()); + gridToDoVo.setMobile(gridCaseTask.getMobile()); + gridToDoVoList.add(gridToDoVo); + } + R<List<GridToDoVo>> resultData = this.batchUpdateToDo(gridToDoVoList); + //修改保存的待办工单 + List<GridToDoVo> GridToDoVoResult = resultData.getData(); + List<GridCaseTask> gridCaseTaskListNew = new ArrayList<>(); + for (GridToDoVo gridToDoVoResult : GridToDoVoResult) { + GridCaseTask gridCaseTask = new GridCaseTask(); + BeanUtils.copyProperties(gridToDoVoResult, gridCaseTask); + gridCaseTask.setCaseId(gridToDoVo.getCaseId()); + gridCaseTask.setCaseTaskId(gridToDoVo.getObjId()); + gridCaseTaskListNew.add(gridCaseTask); + } + gridCaseTaskService.updateBatchById(gridCaseTaskListNew); + return resultData; + } + + public R<List<GridToDoVo>> createTaskToDo(GridToDoBacthVo gridToDoBacthVo, String unitId) { + //查询网格组织编号 + String gridUnitId = gridCaseTaskMapper.getGridUnitIdByUnitId(unitId); + if(org.apache.commons.lang3.StringUtils.isNotBlank(gridUnitId)){ + //查询组织下用户 + GridOrgUsersVo gridOrgUsersVo = new GridOrgUsersVo(); + gridOrgUsersVo.setCurrOrgId(gridUnitId); + List<GridUserVo> gridUserVoList = gridUserService.getUserListByOrg(gridOrgUsersVo).getData(); + if(CollectionUtils.isNotEmpty(gridUserVoList)){ + //创建待办工单 + List<String> userIdList = gridUserVoList.stream().map(GridUserVo::getId).collect(Collectors.toList()); + gridToDoBacthVo.setUserIdList(userIdList); + R<List<GridToDoVo>> resultData = this.batchCreateToDo(gridToDoBacthVo); + //保存待办工单 + List<GridToDoVo> GridToDoVoResult = resultData.getData(); + if(CollectionUtils.isNotEmpty(GridToDoVoResult)) { + List<GridCaseTask> gridCaseTaskListNew = new ArrayList<>(); + for (GridToDoVo gridToDoVoResult : GridToDoVoResult) { + GridCaseTask gridCaseTask = new GridCaseTask(); + BeanUtils.copyProperties(gridToDoVoResult, gridCaseTask); + gridCaseTask.setCaseId(gridToDoBacthVo.getCaseId()); + gridCaseTask.setCaseTaskId(gridToDoBacthVo.getObjId()); + gridCaseTaskListNew.add(gridCaseTask); + } + BeanUtils.copyProperties(GridToDoVoResult, gridCaseTaskListNew); + gridCaseTaskService.saveBatch(gridCaseTaskListNew); + } + return resultData; + } + } + return R.ok(); + } + + public R<String> deleteTaskToDo(GridTaskVo gridTaskVo) { + List<GridCaseTask> gridCaseTaskList = gridCaseTaskService.listGridCaseTask(gridTaskVo.getCaseId(), gridTaskVo.getCaseTaskId()); + List<String> idList = gridCaseTaskList.stream().map(GridCaseTask::getId).collect(Collectors.toList()); + GridIdsVo gridIdsVo = new GridIdsVo(); + gridIdsVo.setIds(idList); + R<String> result = this.deleteToDo(gridIdsVo); + gridCaseTaskService.removeByIds(idList); + return result; + } } -- Gitblit v1.8.0