|
@@ -1,13 +1,13 @@
|
|
|
package org.jeecg.modules.itdmGongDan.service.impl;
|
|
|
|
|
|
|
|
|
-import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import org.jeecg.modules.itdmDevice.mapper.ItdmDeviceMapper;
|
|
|
-
|
|
|
import org.jeecg.modules.itdmFirstPage.entity.ItdmTask;
|
|
|
import org.jeecg.modules.itdmFirstPage.mapper.ItdmTaskMapper;
|
|
|
import org.jeecg.modules.itdmFirstPage.service.IItdmTaskService;
|
|
|
+import org.jeecg.modules.itdmGongDan.dto.ItdmJHYAddOrUpdateDTO;
|
|
|
+import org.jeecg.modules.itdmGongDan.dto.ItdmXMJLAddOrUpdateDTO;
|
|
|
import org.jeecg.modules.itdmGongDan.entity.ItdmGongdanDetail;
|
|
|
import org.jeecg.modules.itdmGongDan.entity.ItdmGongdanMaster;
|
|
|
import org.jeecg.modules.itdmGongDan.entity.ItdmTestPlan;
|
|
@@ -106,32 +106,32 @@ public class ItdmJCXMSHJHServiceImpl implements IItdmJCXMSHJHService {
|
|
|
/**
|
|
|
* 项目经理新增或修改试工单master
|
|
|
*/
|
|
|
- public String XMJLAddOrUpdate(ItdmXMJLQueryListVO vo){
|
|
|
+ public String XMJLAddOrUpdate(ItdmXMJLAddOrUpdateDTO dto){
|
|
|
String msg = "操作成功!";
|
|
|
|
|
|
- String[] arr = vo.getChuanganqiArray();
|
|
|
+ String[] arr = dto.getChuanganqiArray();
|
|
|
String chuanganqi = "";
|
|
|
for (int i = 0; i < arr.length; i++) {
|
|
|
if(i==0) chuanganqi = arr[i];
|
|
|
else chuanganqi = chuanganqi + ","+ arr[i];
|
|
|
}
|
|
|
- vo.setChuanganqi(chuanganqi);
|
|
|
+ dto.setChuanganqi(chuanganqi);
|
|
|
|
|
|
- if(vo.getParent()!=null){ //二级,先根据id查询工单master,判断有无该对象存在,无的话为新增,有的话修改
|
|
|
- ItdmGongdanMaster gongdanMaster = itdmGongdanMasterMapper.selectById(vo.getId());
|
|
|
+ if(dto.getParent()!=null){ //二级,先根据id查询工单master,判断有无该对象存在,无的话为新增,有的话修改
|
|
|
+ ItdmGongdanMaster gongdanMaster = itdmGongdanMasterMapper.selectById(dto.getId());
|
|
|
|
|
|
if(gongdanMaster==null){//是新增的数据
|
|
|
- ItdmGongdanMaster itdmGongdanMaster = ItdmXMJLQueryListVO.toItdmGongdanMaster(vo);
|
|
|
+ ItdmGongdanMaster itdmGongdanMaster = ItdmXMJLAddOrUpdateDTO.toItdmGongdanMaster(dto);
|
|
|
itdmGongdanMasterMapper.insert(itdmGongdanMaster);//新增一条工单master
|
|
|
System.out.println("======================================项目经理新增master" + itdmGongdanMaster.getId());
|
|
|
|
|
|
//修改工单master对应的试验计划,将状态改为已确认
|
|
|
- ItdmTestPlan itdmTestPlan = itdmTestPlanMapper.selectById(vo.getParent());
|
|
|
+ ItdmTestPlan itdmTestPlan = itdmTestPlanMapper.selectById(dto.getParent());
|
|
|
itdmTestPlan.setStatus(1);
|
|
|
itdmTestPlanMapper.updateById(itdmTestPlan);
|
|
|
|
|
|
- Date startDate = vo.getJihuaStartDate();
|
|
|
- int lastDay = vo.getLastTime();
|
|
|
+ Date startDate = dto.getJihuaStartDate();
|
|
|
+ int lastDay = dto.getLastTime();
|
|
|
for (int i=1;i<=lastDay;i++){
|
|
|
Date workDate = new Date(startDate.getTime() + (i-1)*1000*3600*24);
|
|
|
ItdmGongdanDetail detail = new ItdmGongdanDetail();
|
|
@@ -139,36 +139,21 @@ public class ItdmJCXMSHJHServiceImpl implements IItdmJCXMSHJHService {
|
|
|
detail.setWorkDate(workDate);
|
|
|
detail.setStartTime("00:00");
|
|
|
detail.setEndTime("23:59");
|
|
|
- detail.setChuanganqi(vo.getChuanganqi());
|
|
|
+ detail.setChuanganqi(dto.getChuanganqi());
|
|
|
itdmGongdanDetailMapper.insert(detail);//新增对应日期的工单detail
|
|
|
}
|
|
|
|
|
|
-// //先判断有无该操作员的试验实施的task
|
|
|
-// ItdmTask i = new ItdmTask();
|
|
|
-// i.setTaskRole("试验实施");
|
|
|
-// i.setTaskUser(vo.getWorker());
|
|
|
-// QueryWrapper<ItdmTask> queryWrapper = new QueryWrapper<>(i);
|
|
|
-// List<ItdmTask> tList= taskMapper.selectList(queryWrapper);
|
|
|
-// if(tList == null || tList.isEmpty() || tList.get(0)==null){ //原来没有,新增一条操作员试验实施的task
|
|
|
-// ItdmTask itdmTask = new ItdmTask();
|
|
|
-// itdmTask.setTaskRole("操作员");
|
|
|
-// itdmTask.setTaskUser(vo.getWorker());//操作员
|
|
|
-// itdmTask.setTaskStatus(0);//待办
|
|
|
-// itdmTask.setWeituoId(vo.getWeituoId());
|
|
|
-// itdmTask.setTaskContent("试验实施");
|
|
|
-// taskMapper.insert(itdmTask);
|
|
|
-// }
|
|
|
//修改项目经理拆解工单task状态为1进行中——需要先判断
|
|
|
Map<String, Object> testPlanMap = new HashMap<>();
|
|
|
- testPlanMap.put("weituo_id",vo.getWeituoId());
|
|
|
- testPlanMap.put("pm",vo.getPm());
|
|
|
+ testPlanMap.put("weituo_id",dto.getWeituoId());
|
|
|
+ testPlanMap.put("pm",dto.getPm());
|
|
|
testPlanMap.put("status",0); //未确认
|
|
|
List<ItdmTestPlan> testPlanList = itdmTestPlanMapper.selectByMap(testPlanMap);
|
|
|
if(testPlanList == null || testPlanList.isEmpty() || testPlanList.get(0)==null){ //都已确认
|
|
|
Map<String, Object> columnMap = new HashMap<>();
|
|
|
columnMap.put("task_role","项目经理");
|
|
|
- columnMap.put("weituo_id",vo.getWeituoId());
|
|
|
- columnMap.put("task_user",vo.getPm());
|
|
|
+ columnMap.put("weituo_id",dto.getWeituoId());
|
|
|
+ columnMap.put("task_user",dto.getPm());
|
|
|
List<ItdmTask> taskList = taskMapper.selectByMap(columnMap);
|
|
|
if(taskList != null && !taskList.isEmpty() && taskList.get(0)!=null) {
|
|
|
ItdmTask itdmTask1 = taskList.get(0);
|
|
@@ -176,97 +161,51 @@ public class ItdmJCXMSHJHServiceImpl implements IItdmJCXMSHJHService {
|
|
|
taskMapper.updateById(itdmTask1);
|
|
|
}
|
|
|
}
|
|
|
- }else {//非空,则修改——先判断能否修改
|
|
|
- if(vo.getShijiStartDate()==null){//此时可以修改
|
|
|
-
|
|
|
-// ItdmGongdanMaster master = itdmGongdanMasterMapper.selectById(vo.getId());
|
|
|
-// String workerBefore = master.getWorker(); //原来的操作员
|
|
|
-// String workerNow = vo.getWorker(); //现在的操作员
|
|
|
+ }else {//非空,是用于修改的数据——先判断能否修改
|
|
|
+ if(dto.getShijiStartDate()==null){//此时可以修改
|
|
|
|
|
|
//先修改工单master
|
|
|
- ItdmGongdanMaster itdmGongdanMaster = ItdmXMJLQueryListVO.toItdmGongdanMaster(vo);
|
|
|
- itdmGongdanMaster.setId(vo.getId());
|
|
|
+ ItdmGongdanMaster itdmGongdanMaster = ItdmXMJLAddOrUpdateDTO.toItdmGongdanMaster(dto);
|
|
|
+ itdmGongdanMaster.setId(dto.getId());
|
|
|
itdmGongdanMasterMapper.updateById(itdmGongdanMaster);
|
|
|
- System.out.println("======================================项目经理修改master" + vo.getId());
|
|
|
+ System.out.println("======================================项目经理修改master" + dto.getId());
|
|
|
|
|
|
//修改工单master对应的试验计划,将状态改为已确认
|
|
|
- ItdmTestPlan itdmTestPlan = itdmTestPlanMapper.selectById(vo.getParent());
|
|
|
+ ItdmTestPlan itdmTestPlan = itdmTestPlanMapper.selectById(dto.getParent());
|
|
|
itdmTestPlan.setStatus(1);
|
|
|
itdmTestPlanMapper.updateById(itdmTestPlan);
|
|
|
|
|
|
//然后删原来的工单detail
|
|
|
ItdmGongdanDetail itdmGongdanDetail = new ItdmGongdanDetail();
|
|
|
- itdmGongdanDetail.setWoId(vo.getId());
|
|
|
+ itdmGongdanDetail.setWoId(dto.getId());
|
|
|
QueryWrapper<ItdmGongdanDetail> wrapper = new QueryWrapper<>(itdmGongdanDetail);
|
|
|
itdmGongdanDetailMapper.delete(wrapper);
|
|
|
|
|
|
//再拆成工单detail,再插入新的工单detail
|
|
|
- Date startDate = vo.getJihuaStartDate();
|
|
|
- int lastDay = vo.getLastTime();
|
|
|
+ Date startDate = dto.getJihuaStartDate();
|
|
|
+ int lastDay = dto.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(vo.getId());
|
|
|
+ detail.setWoId(dto.getId());
|
|
|
detail.setWorkDate(workDate);
|
|
|
detail.setStartTime("00:00");
|
|
|
detail.setEndTime("23:59");
|
|
|
- detail.setChuanganqi(vo.getChuanganqi());
|
|
|
+ detail.setChuanganqi(dto.getChuanganqi());
|
|
|
itdmGongdanDetailMapper.insert(detail);//新增对应日期的工单detail
|
|
|
}
|
|
|
|
|
|
-// if(!workerBefore.equals(workerNow)){ //操作员改了
|
|
|
-// //查该委托单id、原操作员对应的工单master列表,若为空删除委托地、原操作员对应的task
|
|
|
-// int m = 0;
|
|
|
-// QueryWrapper<ItdmTestPlan> planWrapper1 = new QueryWrapper<>();
|
|
|
-// planWrapper1.eq("weituo_id",vo.getWeituoId());
|
|
|
-// planWrapper1.eq("pm",vo.getPm());
|
|
|
-// List<ItdmTestPlan> testPlanList = itdmTestPlanMapper.selectList(planWrapper1);
|
|
|
-// if(testPlanList == null || testPlanList.isEmpty() || testPlanList.get(0)==null){
|
|
|
-// for (ItdmTestPlan p:testPlanList){
|
|
|
-// QueryWrapper<ItdmGongdanMaster> planWrapper2 = new QueryWrapper<>();
|
|
|
-// planWrapper2.eq("jihua_shiyan_id",p.getId());
|
|
|
-// planWrapper2.eq("worker",workerBefore);
|
|
|
-// List<ItdmGongdanMaster> masterList = itdmGongdanMasterMapper.selectList(planWrapper2);
|
|
|
-// if(masterList != null && !masterList.isEmpty() && masterList.get(0)!=null) m++;
|
|
|
-// }
|
|
|
-//
|
|
|
-// if(m==0){
|
|
|
-// QueryWrapper<ItdmTask> taskWrapper = new QueryWrapper<>();
|
|
|
-// taskWrapper.eq("weituo_id",vo.getWeituoId());
|
|
|
-// taskWrapper.eq("taskRole","操作员");
|
|
|
-// taskWrapper.eq("task_user",workerBefore);
|
|
|
-// taskMapper.delete(taskWrapper);
|
|
|
-// }
|
|
|
-// }
|
|
|
-// //查该委托单id、新操作员对应的task列表,若为空则新增新操作员的task
|
|
|
-// ItdmTask iTask = new ItdmTask();
|
|
|
-// iTask.setTaskRole("操作员");
|
|
|
-// iTask.setTaskUser(workerNow);
|
|
|
-// iTask.setWeituoId(vo.getWeituoId());
|
|
|
-// QueryWrapper<ItdmTask> queryWrapper = new QueryWrapper<>(iTask);
|
|
|
-// List<ItdmTask> tList= taskMapper.selectList(queryWrapper);
|
|
|
-// if(tList == null || tList.isEmpty() || tList.get(0)==null){ //没有的话新增该委托id、新操作员的task
|
|
|
-// ItdmTask nItdmTask = new ItdmTask();
|
|
|
-// nItdmTask.setTaskUser(workerNow);
|
|
|
-// nItdmTask.setWeituoId(vo.getWeituoId());
|
|
|
-// nItdmTask.setTaskRole("操作员");
|
|
|
-// nItdmTask.setTaskContent("试验实施");
|
|
|
-// nItdmTask.setTaskStatus(0);
|
|
|
-// taskMapper.insert(nItdmTask);
|
|
|
-// }
|
|
|
-// }
|
|
|
-
|
|
|
//修改项目经理拆解工单task状态为1进行中——需要先判断
|
|
|
Map<String, Object> testPlanMap = new HashMap<>();
|
|
|
- testPlanMap.put("weituo_id",vo.getWeituoId());
|
|
|
- testPlanMap.put("pm",vo.getPm());
|
|
|
+ testPlanMap.put("weituo_id",dto.getWeituoId());
|
|
|
+ testPlanMap.put("pm",dto.getPm());
|
|
|
testPlanMap.put("status",0);//未确认状态
|
|
|
List<ItdmTestPlan> testPlanList = itdmTestPlanMapper.selectByMap(testPlanMap);
|
|
|
if(testPlanList == null || testPlanList.isEmpty() || testPlanList.get(0)==null){ //都已确认
|
|
|
Map<String, Object> map = new HashMap<>();
|
|
|
map.put("task_role","项目经理");
|
|
|
- map.put("weituo_id",vo.getWeituoId());
|
|
|
- map.put("task_user",vo.getPm());
|
|
|
+ map.put("weituo_id",dto.getWeituoId());
|
|
|
+ map.put("task_user",dto.getPm());
|
|
|
List<ItdmTask> tList = taskMapper.selectByMap(map);
|
|
|
if(tList != null && !tList.isEmpty() && tList.get(0)!=null){
|
|
|
ItdmTask itdmTask1 = tList.get(0);
|
|
@@ -305,16 +244,16 @@ public class ItdmJCXMSHJHServiceImpl implements IItdmJCXMSHJHService {
|
|
|
/**
|
|
|
* 计划员新增或修改试验计划
|
|
|
*/
|
|
|
- public String JHYAddAndUpdate(@RequestBody List<ItdmJHYQueryListVO> list){
|
|
|
+ public String JHYAddAndUpdate(@RequestBody List<ItdmJHYAddOrUpdateDTO> list){
|
|
|
String msg = "提交成功!";
|
|
|
- for(ItdmJHYQueryListVO vo:list){
|
|
|
- ItdmTestPlan itdmTestPlan = ItdmJHYQueryListVO.toItdmTestPlan(vo);
|
|
|
+ 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 = ItdmJHYQueryListVO.toItdmGongdanMaster(vo);
|
|
|
+ ItdmGongdanMaster master = ItdmJHYAddOrUpdateDTO.toItdmGongdanMaster(vo);
|
|
|
itdmGongdanMasterMapper.insert(master);
|
|
|
System.out.println("======================================计划员新增试验计划新增master" + master.getId());
|
|
|
//再拆成工单detail,再插入新的工单detail
|
|
@@ -410,7 +349,7 @@ public class ItdmJCXMSHJHServiceImpl implements IItdmJCXMSHJHService {
|
|
|
}
|
|
|
|
|
|
//新增一条一样的工单master
|
|
|
- ItdmGongdanMaster master = ItdmJHYQueryListVO.toItdmGongdanMaster(vo);
|
|
|
+ ItdmGongdanMaster master = ItdmJHYAddOrUpdateDTO.toItdmGongdanMaster(vo);
|
|
|
itdmGongdanMasterMapper.insert(master);
|
|
|
System.out.println("======================================计划员修改试验计划新增master" + master.getId());
|
|
|
//再拆成工单detail,再插入新的工单detail
|