Selaa lähdekoodia

我的任务查询逻辑修改;修改委托新增、审核、计划排期等对应任务逻辑

LLL 1 vuosi sitten
vanhempi
commit
c81da90c23

+ 45 - 42
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/itdmFirstPage/controller/ItdmTaskController.java

@@ -17,6 +17,7 @@ import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.common.system.vo.LoginUser;
 import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.modules.itdmFirstPage.convert.ItdmTaskConvert;
+import org.jeecg.modules.itdmFirstPage.dto.ItdmTaskQueryDTO;
 import org.jeecg.modules.itdmFirstPage.entity.ItdmTask;
 import org.jeecg.modules.itdmFirstPage.service.IItdmTaskService;
 
@@ -26,6 +27,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import lombok.extern.slf4j.Slf4j;
 
 import org.jeecg.modules.itdmFirstPage.vo.ItdmTaskListVO;
+import org.jeecg.modules.qita.GlobalVariables;
 import org.jeecg.modules.system.entity.SysUserRole;
 import org.jeecg.modules.system.service.ISysRoleService;
 import org.jeecg.modules.system.service.ISysUserRoleService;
@@ -47,7 +49,7 @@ import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.jeecg.common.aspect.annotation.AutoLog;
 
- /**
+/**
  * @Description: 任务表
  * @Author: jeecg-boot
  * @Date:   2023-06-03
@@ -68,30 +70,33 @@ public class ItdmTaskController extends JeecgController<ItdmTask, IItdmTaskServi
 	private IItdmWeituoInfoService weituoInfoService;
 
 
-	 /**
-      * 分页列表查询
-      *
-      * @param itdmTask
-      * @param pageNo
-      * @param pageSize
-      * @param req
-      * @return
-      */
+	/**
+	 * 分页列表查询
+	 *
+	 * @param itdmTask
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
 	//@AutoLog(value = "任务表-分页列表查询")
 	@ApiOperation(value="任务表-分页列表查询", notes="任务表-分页列表查询")
 	@GetMapping(value = "/list")
 	public Result<List<ItdmTaskListVO>> queryPageList(ItdmTask itdmTask,
-												 @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
-												 @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
-												 HttpServletRequest req) {
+													  @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+													  @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+													  HttpServletRequest req) {
 		long startTime = System.currentTimeMillis();
 		// 在这里执行查询操作
 
+		ItdmTaskQueryDTO dto = new ItdmTaskQueryDTO();
+		dto.setTaskStatus(itdmTask.getTaskStatus());
+
 		LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
 		String realName = loginUser.getRealname(); // 登录人姓名
 
-		if(!realName.equals("管理员")){
-			itdmTask.setTaskUser(realName);
+		if(!realName.equals(GlobalVariables.gly)){
+			dto.setTaskUser(realName);
 
 			SysUserRole userRole = new SysUserRole();
 			userRole.setUserId(loginUser.getId());
@@ -102,13 +107,11 @@ public class ItdmTaskController extends JeecgController<ItdmTask, IItdmTaskServi
 					return roleService.getById(i.getRoleId()).getRoleName();
 				}).collect(Collectors.toList());
 
-				String role = roles.get(0); // 登录人角色,一般只有一个
-				itdmTask.setTaskRole(role);
-				if(role.equals("经理") || role.equals("计划员")) itdmTask.setTaskUser(null);
+				dto.setTaskRoleList(roles);
 			}
 		}
 
-		List<ItdmTaskListVO> list = itdmTaskService.queryTaskList(itdmTask);
+		List<ItdmTaskListVO> list = itdmTaskService.queryTaskList(dto);
 
 //		QueryWrapper<ItdmTask> queryWrapper = QueryGenerator.initQueryWrapper(itdmTask, req.getParameterMap());
 //		List<ItdmTask> pageList = itdmTaskService.list(queryWrapper);
@@ -237,29 +240,29 @@ public class ItdmTaskController extends JeecgController<ItdmTask, IItdmTaskServi
 		return Result.OK(itdmTask);
 	}
 
-    /**
-    * 导出excel
-    *
-    * @param request
-    * @param itdmTask
-    */
-    //@RequiresPermissions("org.jeecg.modules:itdm_task:exportXls")
-    @RequestMapping(value = "/exportXls")
-    public ModelAndView exportXls(HttpServletRequest request, ItdmTask itdmTask) {
-        return super.exportXls(request, itdmTask, ItdmTask.class, "任务表");
-    }
+	/**
+	 * 导出excel
+	 *
+	 * @param request
+	 * @param itdmTask
+	 */
+	//@RequiresPermissions("org.jeecg.modules:itdm_task:exportXls")
+	@RequestMapping(value = "/exportXls")
+	public ModelAndView exportXls(HttpServletRequest request, ItdmTask itdmTask) {
+		return super.exportXls(request, itdmTask, ItdmTask.class, "任务表");
+	}
 
-    /**
-      * 通过excel导入数据
-    *
-    * @param request
-    * @param response
-    * @return
-    */
-    //@RequiresPermissions("itdm_task:importExcel")
-    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
-    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
-        return super.importExcel(request, response, ItdmTask.class);
-    }
+	/**
+	 * 通过excel导入数据
+	 *
+	 * @param request
+	 * @param response
+	 * @return
+	 */
+	//@RequiresPermissions("itdm_task:importExcel")
+	@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+	public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+		return super.importExcel(request, response, ItdmTask.class);
+	}
 
 }

+ 2 - 1
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/itdmFirstPage/mapper/ItdmTaskMapper.java

@@ -2,6 +2,7 @@ package org.jeecg.modules.itdmFirstPage.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.apache.ibatis.annotations.Select;
+import org.jeecg.modules.itdmFirstPage.dto.ItdmTaskQueryDTO;
 import org.jeecg.modules.itdmFirstPage.entity.ItdmTask;
 import org.jeecg.modules.itdmFirstPage.vo.ItdmTaskListVO;
 
@@ -20,6 +21,6 @@ public interface ItdmTaskMapper extends BaseMapper<ItdmTask> {
     public void updateByWeituoId(String weituoId);
 
     /**查询对应的任务列表*/
-    public List<ItdmTaskListVO> queryTaskList(ItdmTask task);
+    public List<ItdmTaskListVO> queryTaskList(ItdmTaskQueryDTO dto);
 
 }

+ 7 - 2
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/itdmFirstPage/mapper/xml/ItdmTaskMapper.xml

@@ -2,15 +2,20 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="org.jeecg.modules.itdmFirstPage.mapper.ItdmTaskMapper">
 
-    <select id="queryTaskList" parameterType="org.jeecg.modules.itdmFirstPage.entity.ItdmTask" resultType="org.jeecg.modules.itdmFirstPage.vo.ItdmTaskListVO">
+    <select id="queryTaskList" parameterType="org.jeecg.modules.itdmFirstPage.dto.ItdmTaskQueryDTO" resultType="org.jeecg.modules.itdmFirstPage.vo.ItdmTaskListVO">
         select t.id ,t.task_content,t.task_status,t.task_role ,t.task_user,t.weituo_id,t.remark,
         w.weituo_client, w.weituo_no
         from itdm_task t
         left join itdm_weituo_info w on t.weituo_id = w.id
         <where>
             <if test="taskUser != null and taskUser != ''"> task_user = #{taskUser}</if>
-            <if test="taskRole != null and taskRole != ''"> and task_role = #{taskRole}</if>
             <if test="taskStatus != null and taskStatus != ''"> and task_status = #{taskStatus}</if>
+            <if test="taskRoleList != null and taskRoleList.size() > 0">
+                and task_role in
+                <foreach collection="taskRoleList" item="role" separator="," open="(" close=")">
+                    #{role}
+                </foreach>
+            </if>
         </where>
     </select>
 

+ 2 - 1
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/itdmFirstPage/service/IItdmTaskService.java

@@ -1,5 +1,6 @@
 package org.jeecg.modules.itdmFirstPage.service;
 
+import org.jeecg.modules.itdmFirstPage.dto.ItdmTaskQueryDTO;
 import org.jeecg.modules.itdmFirstPage.entity.ItdmTask;
 import com.baomidou.mybatisplus.extension.service.IService;
 import org.jeecg.modules.itdmFirstPage.vo.ItdmTaskListVO;
@@ -21,6 +22,6 @@ public interface IItdmTaskService extends IService<ItdmTask> {
     public boolean insertTaskAfterJudge(ItdmTask task);
 
     /**查询对应的任务列表*/
-    public List<ItdmTaskListVO> queryTaskList(ItdmTask task);
+    public List<ItdmTaskListVO> queryTaskList(ItdmTaskQueryDTO dto);
 
 }

+ 3 - 2
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/itdmFirstPage/service/impl/ItdmTaskServiceImpl.java

@@ -2,6 +2,7 @@ package org.jeecg.modules.itdmFirstPage.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
+import org.jeecg.modules.itdmFirstPage.dto.ItdmTaskQueryDTO;
 import org.jeecg.modules.itdmFirstPage.entity.ItdmTask;
 import org.jeecg.modules.itdmFirstPage.mapper.ItdmTaskMapper;
 import org.jeecg.modules.itdmFirstPage.service.IItdmTaskService;
@@ -48,8 +49,8 @@ public class ItdmTaskServiceImpl extends ServiceImpl<ItdmTaskMapper, ItdmTask> i
     }
 
     /**查询对应的任务列表*/
-    public List<ItdmTaskListVO> queryTaskList(ItdmTask task){
-        return taskMapper.queryTaskList(task);
+    public List<ItdmTaskListVO> queryTaskList(ItdmTaskQueryDTO dto){
+        return taskMapper.queryTaskList(dto);
     }
 
 }

+ 17 - 0
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/itdmGongDan/service/impl/ItdmJCXMSHJHServiceImpl.java

@@ -2,6 +2,8 @@ package org.jeecg.modules.itdmGongDan.service.impl;
 
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import org.apache.shiro.SecurityUtils;
+import org.jeecg.common.system.vo.LoginUser;
 import org.jeecg.modules.itdmDevice.mapper.ItdmDeviceMapper;
 import org.jeecg.modules.itdmFirstPage.entity.ItdmTask;
 import org.jeecg.modules.itdmFirstPage.mapper.ItdmTaskMapper;
@@ -20,6 +22,7 @@ import org.jeecg.modules.itdmGongDan.vo.ItdmJCXMAndSYJHVO;
 import org.jeecg.modules.itdmGongDan.vo.ItdmJHYQueryListVO;
 import org.jeecg.modules.itdmGongDan.vo.ItdmXMJLQueryListVO;
 import org.jeecg.modules.itdmGongDan.vo.ShijiDate;
+import org.jeecg.modules.qita.GlobalVariables;
 import org.jeecg.modules.weituo.mapper.ItdmWeituoInfoMapper;
 import org.jeecg.modules.weituo.mapper.ItdmWeituoYangpinMapper;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -248,6 +251,10 @@ public class ItdmJCXMSHJHServiceImpl implements IItdmJCXMSHJHService {
      */
     public String JHYAddAndUpdate(@RequestBody ItdmJHYAddOrUpdateDTO dto){
         String msg = "提交成功!";
+
+        LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+        String realName = loginUser.getRealname(); // 登录人姓名
+
         ItdmTestPlan itdmTestPlan = ItdmJHYAddOrUpdateDTO.toItdmTestPlan(dto);
         if(dto.getTestPlanId()==null){ //新增试验计划
             itdmTestPlan.setStatus(0);//试验计划初始状态为未确认0
@@ -280,16 +287,26 @@ public class ItdmJCXMSHJHServiceImpl implements IItdmJCXMSHJHService {
             itdmTask.setTaskStatus(0);//待办
             taskService.insertTaskAfterJudge(itdmTask);
 
+
             //修改计划员计划排期task状态为1进行中
             Map<String, Object> columnMap = new HashMap<>();
             columnMap.put("task_role","计划员");
             columnMap.put("weituo_id",dto.getWeituoId());
+            columnMap.put("task_user",realName);
             List<ItdmTask> taskList = taskMapper.selectByMap(columnMap);
             if(!taskList.isEmpty()) {
                 ItdmTask itdmTask1 = taskList.get(0);
                 itdmTask1.setTaskStatus(1);
                 taskMapper.updateById(itdmTask1);
             }
+
+            //删除该委托其他计划员计划排期task
+            Map<String, Object> deleteMap = new HashMap<>();
+            deleteMap.put("task_role", GlobalVariables.jhy);//”计划员“
+            columnMap.put("weituo_id", dto.getWeituoId());
+            deleteMap.put("task_status",0);
+            taskService.removeByMap(deleteMap);
+
         }else if(dto.getStatus() == 0){//状态为“未确定”,可以修改试验计划
 
             QueryWrapper<ItdmTestPlan> planWrapper = new QueryWrapper<>();

+ 45 - 23
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/weituo/controller/ItdmWeituoInfoController.java

@@ -8,28 +8,25 @@ import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang.StringUtils;
+import org.apache.shiro.SecurityUtils;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.common.system.query.QueryGenerator;
-import org.jeecg.modules.ItdmWtkehu.entity.ItdmWtkehu;
+import org.jeecg.common.system.vo.LoginUser;
 import org.jeecg.modules.itdmFirstPage.entity.ItdmTask;
 import org.jeecg.modules.itdmFirstPage.service.IItdmTaskService;
 import org.jeecg.modules.itdmGongDan.service.IItdmJCXMSHJHService;
-import org.jeecg.modules.itdmGongDan.vo.ItdmJHYQueryListVO;
-import org.jeecg.modules.weituo.convert.WeituoConvert;
-import org.jeecg.modules.weituo.convert.WeituoJieXiangConvert;
+import org.jeecg.modules.qita.GlobalVariables;
+import org.jeecg.modules.system.mapper.SysUserMapper;
 import org.jeecg.modules.weituo.dto.WeituoInsertCommand;
 import org.jeecg.modules.weituo.dto.WeituoUpdateCommand;
 import org.jeecg.modules.weituo.entity.ItdmWeituoInfo;
-import org.jeecg.modules.weituo.entity.ItdmWeituoJieXaing;
 import org.jeecg.modules.weituo.entity.ItdmWeituoJieXaingVo;
 import org.jeecg.modules.weituo.entity.ItdmWeituoYangpin;
 import org.jeecg.modules.weituo.mapper.ItdmWeituoYangpinMapper;
 import org.jeecg.modules.weituo.service.IItdmWeituoInfoService;
 import org.jeecg.modules.weituo.vo.ItdmWeituoInfoInfoVO;
-import org.jeecg.modules.weituochaxun.service.IItdmWeituochaxunService;
-import org.jeecg.modules.weituochaxun.vo.ItdmWeituoAllVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.servlet.ModelAndView;
@@ -60,6 +57,9 @@ public class ItdmWeituoInfoController extends JeecgController<ItdmWeituoInfo, II
 
     @Autowired
     private IItdmJCXMSHJHService itdmJCXMSHJHService;
+    @Autowired
+    @SuppressWarnings("all")
+    private SysUserMapper sysUserMapper;
 
 
     /**
@@ -261,8 +261,8 @@ public class ItdmWeituoInfoController extends JeecgController<ItdmWeituoInfo, II
     /**
      * 审核通过或拒绝
      */
-    @AutoLog(value = "添加或编辑委托信息")
-    @ApiOperation(value = "添加或编辑委托信息", notes = "添加或编辑委托信息")
+    @AutoLog(value = "审核通过或拒绝")
+    @ApiOperation(value = "审核通过或拒绝", notes = "审核通过或拒绝")
     @RequestMapping("/saveOrUpdateWeituo")
     public Result<String> saveOrUpdateWeituo(@RequestBody ItdmWeituoInfo weituoInfo) {
         try {
@@ -282,10 +282,8 @@ public class ItdmWeituoInfoController extends JeecgController<ItdmWeituoInfo, II
                 oldWeituo.setShenheTime((new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())));
 
                 // 需要根据业务逻辑进行判断
-                if ("审核通过".equals(oldWeituo.getShenheStatus())) {
+                if ("1".equals(oldWeituo.getShenheStatus())) {
                     oldWeituo.setUpdateTime(new Date());
-
-
                 }
 
                 itdmWeituoInfoService.updateById(oldWeituo); // 调用 service 的更新方法
@@ -312,27 +310,51 @@ public class ItdmWeituoInfoController extends JeecgController<ItdmWeituoInfo, II
 
                     }
 
+                    //新增所有计划员计划排期的task
+                    List<String> userNameList = sysUserMapper.getUserNameByRoleName(GlobalVariables.jhy);//计划员
+                    for (String userName : userNameList){
+                        ItdmTask itdmTask = new ItdmTask();
+                        itdmTask.setTaskRole(GlobalVariables.jhy);//计划员
+                        itdmTask.setTaskStatus(0);//待办
+                        itdmTask.setWeituoId(weituoInfo.getId());
+                        itdmTask.setTaskContent("计划排期");
+                        itdmTask.setTaskUser(userName);
+                        taskService.save(itdmTask);
+                    }
+
+                    LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+                    String realName = loginUser.getRealname(); // 登录人姓名
 
-                    //新增一条该委托单计划员的task
-                    ItdmTask itdmTask = new ItdmTask();
-                    itdmTask.setTaskRole("计划员");
-//				 	 itdmTask.setTaskUser();
-                    itdmTask.setTaskStatus(0);//待办
-                    itdmTask.setWeituoId(weituoInfo.getId());
-                    itdmTask.setTaskContent("计划排期");
-                    taskService.save(itdmTask);
-                    //修改该委托单经理的task,状态改为1进行中
+                    //修改该委托单该经理的task,状态改为1进行中
                     Map<String, Object> columnMap = new HashMap<>();
-                    columnMap.put("task_role", "经理");
+                    columnMap.put("task_role", GlobalVariables.jl);//”经理“
                     columnMap.put("weituo_id", weituoInfo.getId());
+                    columnMap.put("task_user", realName);
                     List<ItdmTask> taskList = taskService.listByMap(columnMap);
                     if (taskList != null) {
                         ItdmTask itdmTask1 = taskList.get(0);
                         itdmTask1.setTaskStatus(1);
                         taskService.updateById(itdmTask1);
                     }
-                }
 
+                    //删除该委托单其他经理状态为待办的task
+                    Map<String, Object> deleteMap = new HashMap<>();
+                    deleteMap.put("task_role",GlobalVariables.jl);//”经理“
+                    columnMap.put("weituo_id", weituoInfo.getId());
+                    deleteMap.put("task_status",0);
+                    taskService.removeByMap(deleteMap);
+
+
+
+                }else if (weituoInfo.getShenheStatus().equals("2")) { //审核拒绝
+                    //删掉所有该委托id对应的“审核”的任务
+                    Map<String, Object> deleteMap = new HashMap<>();
+                    deleteMap.put("weituo_id", weituoInfo.getId());
+                    deleteMap.put("task_role",GlobalVariables.jl);//”经理“
+                    deleteMap.put("task_status",0);
+                    taskService.removeByMap(deleteMap);
+
+                }
             }
 
             return Result.OK("操作成功!");

+ 2 - 0
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/weituo/service/impl/ItdmWeituoInfoServiceImpl.java

@@ -143,6 +143,7 @@ public class ItdmWeituoInfoServiceImpl extends ServiceImpl<ItdmWeituoInfoMapper,
 
     }
 
+    /**编辑——提交*/
     @Transactional
     @Override
     public void updateWeituo(WeituoUpdateCommand command) {
@@ -294,6 +295,7 @@ public class ItdmWeituoInfoServiceImpl extends ServiceImpl<ItdmWeituoInfoMapper,
         return baseMapper.getWeituoList(page, itdmWeituoInfo);
     }
 
+    /**暂存*/
     @Override
     public void stagingWeituo(WeituoUpdateCommand command) {
         ItdmWeituoInfo itdmWeituoInfo = WeituoConvert.INSTANCE.convert(command);