From 2c183f0f9d534e37dd69809f0eedc19fabea82e8 Mon Sep 17 00:00:00 2001 From: 刘小明 <liuxm_a@163.com> Date: 星期三, 28 八月 2024 11:16:03 +0800 Subject: [PATCH] 添加查询所有工站接口; 修改查询任务计划列表接口 --- pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/schedule/ScheduleSv.java | 56 +++++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 49 insertions(+), 7 deletions(-) diff --git a/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/schedule/ScheduleSv.java b/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/schedule/ScheduleSv.java index a7c5ec4..5080bd1 100644 --- a/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/schedule/ScheduleSv.java +++ b/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/schedule/ScheduleSv.java @@ -1,10 +1,14 @@ 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.BaUserMapper; import com.dy.pmsGlobal.daoPlt.PltStationMapper; import com.dy.pmsGlobal.daoPr.PrAssemblyPlanMapper; import com.dy.pmsGlobal.daoPr.PrScheduleMapper; import com.dy.pmsGlobal.daoPr.PrScheduleRelMapper; +import com.dy.pmsGlobal.pojoBa.BaUser; import com.dy.pmsGlobal.pojoPlt.PltStation; import com.dy.pmsGlobal.pojoPr.PrSchedule; import com.dy.pmsGlobal.pojoPr.PrScheduleRel; @@ -17,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 @@ -25,22 +31,33 @@ private PrScheduleRelMapper scheduleRelDao; private PrAssemblyPlanMapper assemblyPlanDao; private PltStationMapper stationDao; + private BaUserMapper baUserDao; + @Autowired public void setStationDao(PltStationMapper stationDao) { this.stationDao = stationDao; } + @Autowired public void setScheduleRelDao(PrScheduleRelMapper scheduleRelDao) { this.scheduleRelDao = scheduleRelDao; } + @Autowired public void setAssemblyPlanDao(PrAssemblyPlanMapper assemblyPlanDao) { this.assemblyPlanDao = assemblyPlanDao; } + @Autowired public void setScheduleDao(PrScheduleMapper scheduleDao) { this.scheduleDao = scheduleDao; } + + @Autowired + private void setBaUserMapper(BaUserMapper baUserDao) { + this.baUserDao = baUserDao; + } + @Transactional public int save(PrSchedule schedule) { int count = scheduleDao.insertSelective(schedule); @@ -53,11 +70,13 @@ saveRel(schedule); return scheduleDao.updateByPrimaryKeySelective(schedule); } + private void saveRel(PrSchedule schedule) { - schedule.relList.forEach(rel ->validateRelData(rel, schedule)); + schedule.relList.forEach(rel -> validateRelData(rel, schedule)); schedule.relList.forEach(rel -> scheduleRelDao.insertSelective(rel)); } - private void validateRelData(PrScheduleRel rel,PrSchedule schedule) { + + private void validateRelData(PrScheduleRel rel, PrSchedule schedule) { validatePlan(rel); validateStation(rel); rel.scheduleId = schedule.id; @@ -87,11 +106,16 @@ return scheduleDao.selectByPrimaryKey(id); } + public List<BaUser> selectById() { + List<BaUser> userList = baUserDao.getUserList(); + return userList; + } + public QueryResultVo<List<PrSchedule>> selectSome(QueryVo vo) { Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(vo); //鏌ヨ绗﹀悎鏉′欢鐨勮褰曟�绘暟 Long itemTotal = scheduleDao.selectSomeCount(params); - QueryResultVo<List<PrSchedule>> rsVo = new QueryResultVo<>(vo.pageSize, vo.pageCurr) ; + QueryResultVo<List<PrSchedule>> rsVo = new QueryResultVo<>(vo.pageSize, vo.pageCurr); //璁$畻鍒嗛〉绛変俊鎭� rsVo.calculateAndSet(itemTotal, params); //鏌ヨ绗﹀悎鏉′欢鐨勮褰� @@ -99,10 +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<>(); // 浣跨敤骞跺彂瀹夊叏鐨凪ap + 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) { -- Gitblit v1.8.0