|
@@ -244,141 +244,8 @@ public class ItdmJCXMSHJHServiceImpl implements IItdmJCXMSHJHService {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 计划员新增或修改试验计划
|
|
|
- * 231130——改设备为多选
|
|
|
+ * 计划员新增或修改试验计划——231130——改设备为多选
|
|
|
*/
|
|
|
- public String JHYAddAndUpdate(@RequestBody List<ItdmJHYAddOrUpdateDTO> list){
|
|
|
- String msg = "提交成功!";
|
|
|
- for(ItdmJHYAddOrUpdateDTO vo:list){
|
|
|
- ItdmTestPlan itdmTestPlan = ItdmJHYAddOrUpdateDTO.toItdmTestPlan(vo);
|
|
|
- if(vo.getTestPlanId()==null){ //新增试验计划
|
|
|
- itdmTestPlan.setStatus(0);//试验计划初始状态为未确认0
|
|
|
- itdmTestPlanMapper.insert(itdmTestPlan);
|
|
|
- vo.setTestPlanId(itdmTestPlan.getId());
|
|
|
- //同时新增一条一样的工单master
|
|
|
- ItdmGongdanMaster master = ItdmJHYAddOrUpdateDTO.toItdmGongdanMaster(vo);
|
|
|
- itdmGongdanMasterMapper.insert(master);
|
|
|
- System.out.println("======================================计划员新增试验计划新增master" + master.getId());
|
|
|
- //再拆成工单detail,再插入新的工单detail
|
|
|
- Date startDate = vo.getJihuaStartDate();
|
|
|
- int lastDay = vo.getLastTime();
|
|
|
- for (int i=1;i<=lastDay;i++){
|
|
|
- Date workDate = new Date(startDate.getTime() + (i-1)*1000*3600*24);
|
|
|
- ItdmGongdanDetail detail = new ItdmGongdanDetail();
|
|
|
- detail.setWoId(master.getId());
|
|
|
- detail.setWorkDate(workDate);
|
|
|
- detail.setStartTime("00:00");
|
|
|
- detail.setEndTime("23:59");
|
|
|
- detail.setChuanganqi(vo.getChuanganqi());
|
|
|
- detail.setJihuaDeviceId(master.getShebeiId());
|
|
|
- itdmGongdanDetailMapper.insert(detail);
|
|
|
- }
|
|
|
- //新增该pm的项目经理拆解工单的task
|
|
|
- ItdmTask itdmTask = new ItdmTask();
|
|
|
- itdmTask.setTaskRole("项目经理");
|
|
|
- itdmTask.setTaskUser(vo.getPm());
|
|
|
- itdmTask.setWeituoId(vo.getWeituoId());
|
|
|
- itdmTask.setTaskContent("拆解工单");
|
|
|
- itdmTask.setTaskStatus(0);//待办
|
|
|
- taskService.insertTaskAfterJudge(itdmTask);
|
|
|
-
|
|
|
- //修改计划员计划排期task状态为1进行中
|
|
|
- Map<String, Object> columnMap = new HashMap<>();
|
|
|
- columnMap.put("task_role","计划员");
|
|
|
- columnMap.put("weituo_id",vo.getWeituoId());
|
|
|
- List<ItdmTask> taskList = taskMapper.selectByMap(columnMap);
|
|
|
- if(!taskList.isEmpty()) {
|
|
|
- ItdmTask itdmTask1 = taskList.get(0);
|
|
|
- itdmTask1.setTaskStatus(1);
|
|
|
- taskMapper.updateById(itdmTask1);
|
|
|
- }
|
|
|
- }else if(vo.getStatus() == 0){//状态为“未确定”,可以修改试验计划
|
|
|
-
|
|
|
- QueryWrapper<ItdmTestPlan> planWrapper = new QueryWrapper<>();
|
|
|
- planWrapper.eq("id",vo.getTestPlanId());
|
|
|
- ItdmTestPlan plan = itdmTestPlanMapper.selectOne(planWrapper);//原计划试验对象
|
|
|
-
|
|
|
- itdmTestPlan.setId(vo.getTestPlanId());
|
|
|
- itdmTestPlanMapper.updateById(itdmTestPlan);//修改试验计划
|
|
|
-
|
|
|
- //先判断有没有改项目经理
|
|
|
- String pmplan = plan.getPm(); //原来的
|
|
|
- String pmVO = vo.getPm(); // 此次的
|
|
|
- if(pmplan==null){ //原来的为空,此次不为空
|
|
|
- //查原来该委托id,项目经理,新pm的task
|
|
|
- ItdmTask nItdmTask = new ItdmTask();
|
|
|
- nItdmTask.setTaskUser(pmVO);
|
|
|
- nItdmTask.setWeituoId(vo.getWeituoId());
|
|
|
- nItdmTask.setTaskRole("项目经理");
|
|
|
- nItdmTask.setTaskContent("拆解工单");
|
|
|
- nItdmTask.setTaskStatus(0);
|
|
|
- taskService.insertTaskAfterJudge(nItdmTask);
|
|
|
- }else if(pmplan!=null && !pmplan.equals(pmVO)){ //改了:
|
|
|
- QueryWrapper<ItdmTestPlan> planWrapper1 = new QueryWrapper<>();
|
|
|
- planWrapper1.eq("weituo_id",vo.getWeituoId());
|
|
|
- planWrapper1.eq("pm",pmplan); //原来的
|
|
|
- List<ItdmTestPlan> testPlanList = itdmTestPlanMapper.selectList(planWrapper1);
|
|
|
- if(testPlanList.isEmpty()){
|
|
|
- //该委托id、原pm对应试验计划列表若为空删除原pm、项目经理、委托id对应的task
|
|
|
- QueryWrapper<ItdmTask> taskWrapper = new QueryWrapper<>();
|
|
|
- taskWrapper.eq("weituo_id",vo.getWeituoId());
|
|
|
- taskWrapper.eq("task_role","项目经理");
|
|
|
- taskWrapper.eq("task_user",plan.getPm());
|
|
|
- taskMapper.delete(taskWrapper);
|
|
|
- }
|
|
|
-
|
|
|
- //查原来该委托id,项目经理,新pm的task
|
|
|
- ItdmTask nItdmTask = new ItdmTask();
|
|
|
- nItdmTask.setTaskUser(vo.getPm());
|
|
|
- nItdmTask.setWeituoId(vo.getWeituoId());
|
|
|
- nItdmTask.setTaskRole("项目经理");
|
|
|
- nItdmTask.setTaskContent("拆解工单");
|
|
|
- nItdmTask.setTaskStatus(0);
|
|
|
- taskService.insertTaskAfterJudge(nItdmTask);
|
|
|
- }
|
|
|
-
|
|
|
- //查原来的工单master
|
|
|
- Map<String, Object> masterMap = new HashMap<>();
|
|
|
- masterMap.put("jihua_shiyan_id",itdmTestPlan.getId());
|
|
|
- List<ItdmGongdanMaster> masterList = itdmGongdanMasterMapper.selectByMap(masterMap);
|
|
|
- //删原来的工单master
|
|
|
- itdmGongdanMasterMapper.deleteByMap(masterMap);
|
|
|
- //删掉原来的工单detail
|
|
|
- if(masterList != null && !masterList.isEmpty() && masterList.get(0)!=null){
|
|
|
- for (ItdmGongdanMaster m: masterList){
|
|
|
- Map<String, Object> detailMap = new HashMap<>();
|
|
|
- detailMap.put("wo_id",m.getId());
|
|
|
- itdmGongdanDetailMapper.deleteByMap(detailMap);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- //新增一条一样的工单master
|
|
|
- ItdmGongdanMaster master = ItdmJHYAddOrUpdateDTO.toItdmGongdanMaster(vo);
|
|
|
- itdmGongdanMasterMapper.insert(master);
|
|
|
- System.out.println("======================================计划员修改试验计划新增master" + master.getId());
|
|
|
- //再拆成工单detail,再插入新的工单detail
|
|
|
- Date startDate = vo.getJihuaStartDate();
|
|
|
- int lastDay = vo.getLastTime();
|
|
|
- for (int i=1;i<=lastDay;i++){
|
|
|
- Date workDate = new Date(startDate.getTime() + (i-1)*1000*3600*24);
|
|
|
- ItdmGongdanDetail detail = new ItdmGongdanDetail();
|
|
|
- detail.setWoId(master.getId());
|
|
|
- detail.setWorkDate(workDate);
|
|
|
- detail.setStartTime("00:00");
|
|
|
- detail.setEndTime("23:59");
|
|
|
- detail.setChuanganqi(vo.getChuanganqi());
|
|
|
- detail.setJihuaDeviceId(master.getShebeiId());
|
|
|
- itdmGongdanDetailMapper.insert(detail);
|
|
|
- }
|
|
|
- }else if(vo.getStatus() != 0){
|
|
|
- if(msg.equals("提交成功!")) msg="检测项目"+ vo.getTestItems();
|
|
|
- else msg=msg+ "和"+ vo.getTestItems();
|
|
|
- }
|
|
|
- }
|
|
|
- if(msg.equals("提交成功!")) return msg;
|
|
|
- else return msg+"状态已确定或完成,无法修改!";
|
|
|
- }
|
|
|
-
|
|
|
public String JHYAddAndUpdate(@RequestBody ItdmJHYAddOrUpdateDTO dto){
|
|
|
String msg = "提交成功!";
|
|
|
ItdmTestPlan itdmTestPlan = ItdmJHYAddOrUpdateDTO.toItdmTestPlan(dto);
|
|
@@ -535,20 +402,6 @@ public class ItdmJCXMSHJHServiceImpl implements IItdmJCXMSHJHService {
|
|
|
|
|
|
}
|
|
|
|
|
|
-// /**
|
|
|
-// * 计划员查询列表(测试)
|
|
|
-// */
|
|
|
-// public List<ItdmJHYQueryListVO> getAll(String weituoNo){
|
|
|
-// String weituoId = itdmWeituoInfoMapper.selectByWeituoNo(weituoNo);
|
|
|
-// List<ItdmJCXMAndSYJHVO> list = itdmJCXMSHJHMapper.getAll(weituoId);
|
|
|
-// List<ItdmJHYQueryListVO> list1 = list.stream().map(i->
|
|
|
-// ItdmJHYQueryListVO.toItdmJHYQueryListVO(i,itdmWeituoInfoMapper.selectById(i.getWeituoId()).getWeituoNo(),
|
|
|
-// itdmWeituoYangpinMapper.selectById(i.getYangpinId()).getSampleName(),
|
|
|
-// itdmDeviceMapper.selectById(i.getShebeiId()).getDeviceName())
|
|
|
-// ).collect(Collectors.toList());
|
|
|
-// return list1;
|
|
|
-// }
|
|
|
-
|
|
|
/**
|
|
|
* 项目经理查询列表——一级列表——通过登录用户查询
|
|
|
*/
|