pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/daoPr/PrAssemblyPlanMapper.java
@@ -1,5 +1,6 @@ package com.dy.pmsGlobal.daoPr; import cn.hutool.json.JSONObject; import com.dy.pmsGlobal.pojoPr.PrAssemblyPlan; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -39,7 +40,7 @@ PrAssemblyPlan selectByDeviceNo(@Param("proCode") String proCode,@Param("batchNumber") String batchNumber); Long countByPlanIdAndNodeId(@Param("planId") Long planId,@Param("nodeId") Long nodeId); List<Map<String,Object>> selectByPlanName(@Param("planName") String planName); List<JSONObject> selectByPlanName(@Param("planName") String planName); List<PrAssemblyPlan> selectAssyPlanList(PrAssemblyPlan params); pms-parent/pms-global/src/main/resources/mapper/PrAssemblyPlanMapper.xml
@@ -414,18 +414,7 @@ where ap.id = #{planId} and pn.id= #{nodeId} </select> <resultMap id="jsonResultMap" type="java.util.HashMap"> <id column="planId" property="planId"/> <result column="planName" property="planName"/> <result column="status" property="status"/> <collection property="nodes" javaType="java.util.HashMap"> <result column="content" property="content"/> <result column="nodeId" property="nodeId"/> </collection> </resultMap> <select id="selectByPlanName" resultMap="jsonResultMap"> <select id="selectByPlanName" resultType="cn.hutool.json.JSONObject"> select ap.id planId,ap.name planName,ap.`status`,pn.id nodeId,pn.content from pr_assembly_plan ap left join pr_production_node pn on ap.process_id = pn.process_id where status != -1 pms-parent/pms-web-platform/src/main/java/com/dy/pmsPlatform/station/StationCtrl.java
@@ -1,5 +1,6 @@ package com.dy.pmsPlatform.station; import cn.hutool.json.JSONArray; import com.alibaba.excel.converters.Converter; import com.alibaba.fastjson2.JSON; import com.dy.common.aop.SsoPowerAop; @@ -117,6 +118,18 @@ return BaseResponseUtils.buildSuccess(list); } /** * 查询所有工站 * @return */ @GetMapping(path="all") @SsoPowerAop(power = "10300006") @Log("查询所有工站") public BaseResponse<JSONArray> all(){ JSONArray array = sv.selectAllIdAndName() ; return BaseResponseUtils.buildSuccess(array); } @PostMapping(path="disabled") @SsoPowerAop(power = "10300007") @Log("禁用或启用工站") pms-parent/pms-web-platform/src/main/java/com/dy/pmsPlatform/station/StationSv.java
@@ -1,5 +1,7 @@ package com.dy.pmsPlatform.station; import cn.hutool.json.JSONArray; import cn.hutool.json.JSONObject; import com.alibaba.excel.util.StringUtils; import com.dy.common.webUtil.QueryResultVo; import com.dy.pmsGlobal.daoPlt.PltProductionLineMapper; @@ -149,5 +151,14 @@ public List<PltStation> selectAll() { return dao.selectAll(); } public JSONArray selectAllIdAndName() { List<PltStation> list = dao.selectAll(); JSONArray child = new JSONArray(); list.forEach(item->{ child.add(new JSONObject().set("id", item.getId()).set("name", item.getName())); }); return child; } } pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/schedule/ScheduleCtrl.java
@@ -1,5 +1,6 @@ package com.dy.pmsProduct.schedule; import cn.hutool.json.JSONObject; import com.alibaba.excel.EasyExcel; import com.dy.common.aop.SsoPowerAop; import com.dy.common.webUtil.BaseResponse; @@ -20,7 +21,6 @@ import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.List; import java.util.Map; /** * 排班 @@ -74,9 +74,9 @@ @PostMapping(path="selectPlan") @SsoPowerAop(power = "-1") @Log("查询任务计划列表") public BaseResponse<List<Map<String,Object>>> selectPlan(@RequestBody QueryVo vo){ List<Map<String,Object>> list = sv.selectPlan(vo) ; return BaseResponseUtils.buildSuccess(list); public BaseResponse<List<JSONObject>> selectPlan(@RequestBody QueryVo vo){ List<JSONObject> array = sv.selectPlan(vo) ; return BaseResponseUtils.buildSuccess(array); } /** * 根据ID查询 pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/schedule/ScheduleSv.java
@@ -1,7 +1,8 @@ package com.dy.pmsProduct.schedule; import cn.hutool.json.JSONArray; import cn.hutool.json.JSONObject; import com.dy.common.webUtil.QueryResultVo; import com.dy.pmsGlobal.daoBa.BaPrivilegeMapper; import com.dy.pmsGlobal.daoBa.BaUserMapper; import com.dy.pmsGlobal.daoPlt.PltStationMapper; import com.dy.pmsGlobal.daoPr.PrAssemblyPlanMapper; @@ -20,6 +21,8 @@ import java.util.List; import java.util.Map; import java.util.Optional; import java.util.concurrent.ConcurrentHashMap; import java.util.stream.Collectors; @Slf4j @Service @@ -61,7 +64,6 @@ saveRel(schedule); return count; } @Transactional public int update(PrSchedule schedule) { scheduleRelDao.deleteByScheduleId(schedule.id); @@ -121,9 +123,28 @@ return rsVo; } public List<Map<String, Object>> selectPlan(QueryVo vo) { List<Map<String, Object>> list = assemblyPlanDao.selectByPlanName(vo.planName); return list; public List<JSONObject> selectPlan(QueryVo vo) { List<JSONObject> list = assemblyPlanDao.selectByPlanName(vo.planName); Map<Long, JSONObject> map = new ConcurrentHashMap<>(); // 使用并发安全的Map for(JSONObject item:list){ Long planId = (Long) item.getObj("planId"); JSONObject innerObject = new JSONObject() .set("nodeId", item.getObj("nodeId")) .set("content", item.getObj("content")); if(map.containsKey(planId)){ JSONArray array = (JSONArray)map.get(planId).get("nodes"); array.add(innerObject); }else{ JSONArray array = new JSONArray(); array.add(innerObject); JSONObject outObject= new JSONObject() .set("planId", planId) .set("planName", item.getObj("planName")) .set("nodes", array); map.put(planId,outObject); } } return map.values().stream().collect(Collectors.toList()); } public List<PrSchedule> selectAll(QueryVo queryVo) {