From 556159fb962fcdec9c882b3e85931c546707c0a6 Mon Sep 17 00:00:00 2001 From: guo Date: Tue, 7 Nov 2023 11:30:22 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E8=BF=9B=E5=BA=A6=E7=94=98?= =?UTF-8?q?=E7=89=B9=E5=9B=BEbug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../TaskProgressAlarmController.java | 16 +-- .../controller/TaskProgressController.java | 4 +- .../TaskProgressMaterialRelController.java | 1 + .../TaskProgressMaterialTypeController.java | 3 +- .../taskprogress/entity/TaskProgress.java | 8 +- .../mapper/TaskProgressMapper.java | 4 +- .../TaskProgressMaterialTypeMapper.java | 6 + .../mapper/xml/TaskProgressMapper.xml | 86 ++++++++++- .../xml/TaskProgressMaterialRelPlanMapper.xml | 1 + .../xml/TaskProgressMaterialTypeMapper.xml | 5 + .../ITaskProgressMaterialTypeService.java | 5 + .../impl/TaskProgressContentServiceImpl.java | 9 +- .../TaskProgressMaterialRelServiceImpl.java | 133 +++++++++++------- .../TaskProgressMaterialTypeServiceImpl.java | 8 ++ .../service/impl/TaskProgressServiceImpl.java | 100 +++++++------ 15 files changed, 271 insertions(+), 118 deletions(-) diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/controller/TaskProgressAlarmController.java b/src/main/java/com/zhgd/xmgl/modules/taskprogress/controller/TaskProgressAlarmController.java index 645c8634e..69df81bcb 100644 --- a/src/main/java/com/zhgd/xmgl/modules/taskprogress/controller/TaskProgressAlarmController.java +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/controller/TaskProgressAlarmController.java @@ -9,6 +9,7 @@ import com.zhgd.jeecg.common.system.query.QueryGenerator; import com.zhgd.jeecg.common.util.oConvertUtils; import com.zhgd.xmgl.modules.taskprogress.entity.TaskProgressAlarm; import com.zhgd.xmgl.modules.taskprogress.service.ITaskProgressAlarmService; +import com.zhgd.xmgl.util.PageUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; @@ -49,10 +50,6 @@ public class TaskProgressAlarmController { /** * 分页列表查询 * - * @param taskProgressAlarm - * @param pageNo - * @param pageSize - * @param req * @return */ @ApiOperation(value = "分页列表查询任务进度甘特图-报警信息信息", notes = "分页列表查询任务进度甘特图-报警信息信息", httpMethod = "GET") @@ -63,14 +60,11 @@ public class TaskProgressAlarmController { @ApiImplicitParam(name = "createDate_end", value = "报警时间结束", paramType = "query", dataType = "String"), }) @GetMapping(value = "/page") - public Result> queryPageList(TaskProgressAlarm taskProgressAlarm, - @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, - @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, - HttpServletRequest req) { - Result> result = new Result>(); - QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(taskProgressAlarm, req.getParameterMap()); + public Result> queryPageList(@ApiIgnore @RequestParam HashMap paramMap) { + Result> result = new Result<>(); + QueryWrapper queryWrapper = QueryGenerator.initPageQueryWrapper(TaskProgressAlarm.class, paramMap); queryWrapper.lambda().orderByDesc(TaskProgressAlarm::getCreateDate); - Page page = new Page(pageNo, pageSize); + Page page = PageUtil.getPage(paramMap); IPage pageList = taskProgressAlarmService.page(page, queryWrapper); result.setSuccess(true); result.setResult(pageList); diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/controller/TaskProgressController.java b/src/main/java/com/zhgd/xmgl/modules/taskprogress/controller/TaskProgressController.java index be2b3deb6..87e2aee9d 100644 --- a/src/main/java/com/zhgd/xmgl/modules/taskprogress/controller/TaskProgressController.java +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/controller/TaskProgressController.java @@ -86,7 +86,7 @@ public class TaskProgressController { @ApiImplicitParam(name = "projectSn", value = "项目sn", dataType = "String", required = true, paramType = "body"), @ApiImplicitParam(name = "taskName", value = "任务名称", dataType = "String", paramType = "body"), @ApiImplicitParam(name = "projectSn", value = "项目sn", dataType = "String", paramType = "body"), - @ApiImplicitParam(name = "status", value = "状态,0未开始 ,1进行中,2已完成,3已逾期 默认未开始", dataType = "String", paramType = "body"), + @ApiImplicitParam(name = "status", value = "状态,0未开始 ,1进行中,2已完成 默认未开始", dataType = "String", paramType = "body"), @ApiImplicitParam(name = "actualFinishDate_begin", value = "实际完成日期开始", dataType = "String", paramType = "body"), @ApiImplicitParam(name = "actualFinishDate_end", value = "实际完成日期结束", dataType = "String", paramType = "body"), }) @@ -100,7 +100,6 @@ public class TaskProgressController { * * @return 所有进度甘特图 */ - @PostMapping(value = "/getParentChildPage") @ApiImplicitParams({ @ApiImplicitParam(name = "projectSn", value = "项目sn", dataType = "String", required = true, paramType = "body"), @ApiImplicitParam(name = "taskName", value = "任务名称", dataType = "String", paramType = "body"), @@ -112,6 +111,7 @@ public class TaskProgressController { @ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "body", required = true, dataType = "Integer"), }) @ApiOperation(value = "所有进度甘特图, 以父子节点形式呈现") + @PostMapping(value = "/getParentChildPage") public Result> getParentChildPage(@ApiIgnore @RequestBody HashMap paramMap) { return Result.success(taskProgressService.getParentChildPage(paramMap)); } diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/controller/TaskProgressMaterialRelController.java b/src/main/java/com/zhgd/xmgl/modules/taskprogress/controller/TaskProgressMaterialRelController.java index fb6e3f1d5..a1429ec82 100644 --- a/src/main/java/com/zhgd/xmgl/modules/taskprogress/controller/TaskProgressMaterialRelController.java +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/controller/TaskProgressMaterialRelController.java @@ -67,6 +67,7 @@ public class TaskProgressMaterialRelController { @ApiOperation(value = "树形列表查询任务进度甘特图-计划材料工程列表", notes = "树形列表查询任务进度甘特图-计划材料工程列表", httpMethod = "GET") @ApiImplicitParams({ @ApiImplicitParam(name = "projectSn", value = "项目sn", paramType = "query", required = true, dataType = "String"), + @ApiImplicitParam(name = "taskName", value = "任务名称", paramType = "query", required = false, dataType = "String"), }) @GetMapping(value = "/tree/list") public Result> queryTreeList(@ApiIgnore @RequestParam HashMap paramMap) { diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/controller/TaskProgressMaterialTypeController.java b/src/main/java/com/zhgd/xmgl/modules/taskprogress/controller/TaskProgressMaterialTypeController.java index 6abd4fc23..c31c6cb2e 100644 --- a/src/main/java/com/zhgd/xmgl/modules/taskprogress/controller/TaskProgressMaterialTypeController.java +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/controller/TaskProgressMaterialTypeController.java @@ -7,6 +7,7 @@ import com.zhgd.jeecg.common.api.vo.Result; import com.zhgd.jeecg.common.system.query.QueryGenerator; import com.zhgd.xmgl.modules.taskprogress.entity.TaskProgressMaterialType; import com.zhgd.xmgl.modules.taskprogress.service.ITaskProgressMaterialTypeService; +import com.zhgd.xmgl.util.RefUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; @@ -72,7 +73,7 @@ public class TaskProgressMaterialTypeController { public Result> queryList(TaskProgressMaterialType taskProgressMaterialType, HttpServletRequest req) { QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(taskProgressMaterialType, req.getParameterMap()); - return Result.success(taskProgressMaterialTypeService.list(queryWrapper)); + return Result.success(taskProgressMaterialTypeService.queryList(queryWrapper)); } /** diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/entity/TaskProgress.java b/src/main/java/com/zhgd/xmgl/modules/taskprogress/entity/TaskProgress.java index 0282129d0..230e474ea 100644 --- a/src/main/java/com/zhgd/xmgl/modules/taskprogress/entity/TaskProgress.java +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/entity/TaskProgress.java @@ -108,10 +108,10 @@ public class TaskProgress implements Serializable { @ApiModelProperty(value = "更新时间") private java.util.Date updateDate; /** - * 状态,0未开始 ,1进行中,2已完成,3已逾期 默认未开始 + * 状态,0未开始 ,1进行中,2已完成 默认未开始 */ @Excel(name = "执行状态", width = 15, replace = {"未开始_0", "进行中_1", "已完成_2", "已逾期_3"}) - @ApiModelProperty(value = "状态,0未开始 ,1进行中,2已完成,3已逾期 默认未开始") + @ApiModelProperty(value = "状态,0未开始 ,1进行中,2已完成 默认未开始") private java.lang.Integer status; /** @@ -171,4 +171,8 @@ public class TaskProgress implements Serializable { @TableField(exist = false) @ApiModelProperty(value = "任务进度甘特图-材料类型数量-计划用量") private List relPlanList; + @TableField(exist = false) + @ApiModelProperty(value = "甘特图状态,0未开始 ,1进行中,2已完成 ,3已逾期") + private java.lang.Integer mppStatus; + } diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/TaskProgressMapper.java b/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/TaskProgressMapper.java index 6e05333e1..cf77ed244 100644 --- a/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/TaskProgressMapper.java +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/TaskProgressMapper.java @@ -26,5 +26,7 @@ public interface TaskProgressMapper extends BaseMapper { IPage queryList(@Param("p") HashMap paramMap, Page page); - void insertBatch(Collection progressTaskList); + void updateByTaskName(TaskProgress taskProgress); + + void updateByPrimaryId(TaskProgress taskProgress); } diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/TaskProgressMaterialTypeMapper.java b/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/TaskProgressMaterialTypeMapper.java index 08aab120c..703ece78a 100644 --- a/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/TaskProgressMaterialTypeMapper.java +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/TaskProgressMaterialTypeMapper.java @@ -1,8 +1,13 @@ package com.zhgd.xmgl.modules.taskprogress.mapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Constants; import org.apache.ibatis.annotations.Mapper; import com.zhgd.xmgl.modules.taskprogress.entity.TaskProgressMaterialType; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * @Description: 任务进度甘特图-材料类型 @@ -13,4 +18,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; @Mapper public interface TaskProgressMaterialTypeMapper extends BaseMapper { + List queryList(@Param(Constants.WRAPPER) QueryWrapper queryWrapper); } diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/xml/TaskProgressMapper.xml b/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/xml/TaskProgressMapper.xml index 5e123245f..441cbb7a5 100644 --- a/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/xml/TaskProgressMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/xml/TaskProgressMapper.xml @@ -12,7 +12,7 @@ from task_progress tp left join system_user su on su.user_id = tp.duty_user_id where tp.project_sn = #{p.projectSn} - + and tp.status = #{p.status} @@ -25,4 +25,88 @@ AND tp.actual_finish_date <= CONCAT(DATE_FORMAT(#{p.actualFinishDate_end}, '%Y-%m-%d'), ' 23:59:59') + + + update task_progress + + + id = #{id}, + + + project_sn = #{projectSn,jdbcType=VARCHAR}, + + + task_name = #{taskName,jdbcType=VARCHAR}, + + + duration = #{duration,jdbcType=DOUBLE}, + + + progress_ratio = #{progressRatio,jdbcType=DOUBLE}, + + + start_date = #{startDate,jdbcType=DATE}, + + + actual_start_date = #{actualStartDate,jdbcType=DATE}, + + + finish_date = #{finishDate,jdbcType=DATE}, + + + actual_finish_date = #{actualFinishDate,jdbcType=DATE}, + + + create_date = #{createDate,jdbcType=TIMESTAMP}, + + + update_date = #{updateDate,jdbcType=TIMESTAMP}, + + + `status` = #{status,jdbcType=INTEGER}, + + + parent_id = #{parentId,jdbcType=BIGINT}, + + + duty_user_id = #{dutyUserId,jdbcType=BIGINT}, + + + predecessor_ids = #{predecessorIds,jdbcType=VARCHAR}, + + + remark = #{remark,jdbcType=VARCHAR}, + + + create_user_id = #{createUserId,jdbcType=BIGINT}, + + + end_warning = #{endWarning,jdbcType=INTEGER}, + + + begin_warning = #{beginWarning,jdbcType=INTEGER}, + + + where project_sn = #{projectSn} + and task_name = #{taskName} + + + update task_progress + + project_sn = #{projectSn,jdbcType=VARCHAR}, + task_name = #{taskName,jdbcType=VARCHAR}, + progress_ratio = #{progressRatio,jdbcType=DOUBLE}, + start_date = #{startDate,jdbcType=DATE}, + actual_start_date = #{actualStartDate,jdbcType=DATE}, + finish_date = #{finishDate,jdbcType=DATE}, + actual_finish_date = #{actualFinishDate,jdbcType=DATE}, + parent_id = #{parentId,jdbcType=BIGINT}, + duty_user_id = #{dutyUserId,jdbcType=BIGINT}, + remark = #{remark,jdbcType=VARCHAR}, + begin_warning = #{beginWarning}, + end_warning = #{endWarning}, + status = #{status}, + + where id = #{id} + diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/xml/TaskProgressMaterialRelPlanMapper.xml b/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/xml/TaskProgressMaterialRelPlanMapper.xml index 3219e7c9d..d68dcbf58 100644 --- a/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/xml/TaskProgressMaterialRelPlanMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/xml/TaskProgressMaterialRelPlanMapper.xml @@ -7,6 +7,7 @@ left join task_progress_material_rel_plan p on t.id = p.task_progress_material_type_id and p.task_progress_id = #{taskProgressId} where t.project_sn = #{projectSn} + order by t.type ,t.id + select * from task_progress_material_type + ${ew.customSqlSegment} + order by type ,id + diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/ITaskProgressMaterialTypeService.java b/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/ITaskProgressMaterialTypeService.java index bc9e31b0a..ff2a8c5f7 100644 --- a/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/ITaskProgressMaterialTypeService.java +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/ITaskProgressMaterialTypeService.java @@ -1,8 +1,11 @@ package com.zhgd.xmgl.modules.taskprogress.service; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.zhgd.xmgl.modules.taskprogress.entity.TaskProgressMaterialType; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** * @Description: 任务进度甘特图-材料类型 * @author: pds @@ -14,4 +17,6 @@ public interface ITaskProgressMaterialTypeService extends IService queryList(QueryWrapper queryWrapper); } diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/impl/TaskProgressContentServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/impl/TaskProgressContentServiceImpl.java index 75ce3f513..33d4a6e44 100644 --- a/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/impl/TaskProgressContentServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/impl/TaskProgressContentServiceImpl.java @@ -20,7 +20,6 @@ import org.springframework.stereotype.Service; import javax.servlet.http.HttpServletRequest; import java.util.List; import java.util.Map; -import java.util.Objects; import java.util.stream.Collectors; /** @@ -39,10 +38,14 @@ public class TaskProgressContentServiceImpl extends ServiceImpl queryNewestDetailList(HashMap paramMap) { @@ -70,57 +75,80 @@ public class TaskProgressMaterialRelServiceImpl extends ServiceImpl queryTreeList(HashMap paramMap) { String projectSn = MapUtils.getString(paramMap, "projectSn"); - List progressTaskList = taskProgressMapper.selectList(Wrappers.lambdaQuery(TaskProgress.class).eq(TaskProgress::getProjectSn, projectSn)); + String taskName = MapUtils.getString(paramMap, "taskName"); + List progressTaskList = taskProgressMapper.selectList(Wrappers.lambdaQuery(TaskProgress.class) + .eq(TaskProgress::getProjectSn, projectSn) + .like(StringUtils.isNotBlank(taskName), TaskProgress::getTaskName, taskName) + ); List ids = progressTaskList.stream().map(TaskProgress::getId).collect(Collectors.toList()); if (CollUtil.isNotEmpty(ids)) { - paramMap.put("list", ids); - List types = taskProgressMaterialTypeMapper.selectList(new LambdaQueryWrapper() - .eq(TaskProgressMaterialType::getProjectSn, projectSn)); - - //设置relActualList - List taskProgresses = taskProgressMaterialRelMapper.queryNewestActualList(paramMap); - Map> taskProgressIdMap = taskProgresses.stream().collect(Collectors.groupingBy(TaskProgressMaterialRel::getTaskProgressId)); - List plans = taskProgressMaterialRelPlanMapper.queryNewestPlanList(paramMap); - Map> planMap = plans.stream().collect(Collectors.groupingBy(TaskProgressMaterialRelPlan::getTaskProgressId)); - for (TaskProgress taskProgress : progressTaskList) { - //对relActualList补全 - List relActualList = taskProgressIdMap.get(taskProgress.getId()); - relActualList = CollUtil.isEmpty(relActualList) ? new ArrayList<>() : relActualList; - Map m = relActualList.stream().collect(Collectors.toMap(TaskProgressMaterialRel::getTaskProgressMaterialTypeId, Function.identity())); - List rl = new ArrayList<>(); - for (TaskProgressMaterialType type : types) { - TaskProgressMaterialRel r = m.get(type.getId()); - if (r == null) { - r = new TaskProgressMaterialRel(); - r.setActualUsage(0D); - r.setName(type.getName()); - } - rl.add(r); - } - //设置relActualList - taskProgress.setRelActualList(rl); - - - //设置relPlanList - List planList = new ArrayList<>(); - List pl = planMap.get(taskProgress.getId()); - pl = CollUtil.isEmpty(pl) ? new ArrayList<>() : pl; - Map pM = pl.stream().collect(Collectors.toMap(TaskProgressMaterialRelPlan::getTaskProgressMaterialTypeId, Function.identity())); - for (TaskProgressMaterialType type : types) { - TaskProgressMaterialRelPlan r = pM.get(type.getId()); - if (r == null) { - r = new TaskProgressMaterialRelPlan(); - r.setPlanUsage(0D); - r.setName(type.getName()); - } - planList.add(r); - } - //设置relPlanList - taskProgress.setRelPlanList(planList); - } + setRelActualAndPlanList(paramMap, projectSn, progressTaskList, ids); + } + List rtList; + if (StringUtils.isBlank(taskName)) { + Map> parentIdTaskListMap = progressTaskList.stream().collect(Collectors.groupingBy(TaskProgress::getParentId)); + rtList = taskProgressService.getChild(parentIdTaskListMap, 0L); + } else { + rtList = progressTaskList; + } + return rtList; + } + + /** + * 设置实际和计划数量 + * + * @param paramMap + * @param projectSn + * @param progressTaskList + * @param ids + */ + private void setRelActualAndPlanList(HashMap paramMap, String projectSn, List progressTaskList, List ids) { + paramMap.put("list", ids); + QueryWrapper typeQueryWrapper = new QueryWrapper<>(); + typeQueryWrapper.eq(RefUtil.fieldNameUlc(TaskProgressMaterialType::getProjectSn), projectSn); + List types = taskProgressMaterialTypeService.queryList(typeQueryWrapper); + + //设置relActualList + List taskProgresses = taskProgressMaterialRelMapper.queryNewestActualList(paramMap); + Map> taskProgressIdMap = taskProgresses.stream().collect(Collectors.groupingBy(TaskProgressMaterialRel::getTaskProgressId)); + List plans = taskProgressMaterialRelPlanMapper.queryNewestPlanList(paramMap); + Map> planMap = plans.stream().collect(Collectors.groupingBy(TaskProgressMaterialRelPlan::getTaskProgressId)); + for (TaskProgress taskProgress : progressTaskList) { + //对relActualList补全 + List relActualList = taskProgressIdMap.get(taskProgress.getId()); + relActualList = CollUtil.isEmpty(relActualList) ? new ArrayList<>() : relActualList; + Map m = relActualList.stream().collect(Collectors.toMap(TaskProgressMaterialRel::getTaskProgressMaterialTypeId, Function.identity())); + List rl = new ArrayList<>(); + for (TaskProgressMaterialType type : types) { + TaskProgressMaterialRel r = m.get(type.getId()); + if (r == null) { + r = new TaskProgressMaterialRel(); + r.setActualUsage(null); + r.setName(type.getName()); + } + rl.add(r); + } + //设置relActualList + taskProgress.setRelActualList(rl); + + + //设置relPlanList + List planList = new ArrayList<>(); + List pl = planMap.get(taskProgress.getId()); + pl = CollUtil.isEmpty(pl) ? new ArrayList<>() : pl; + Map pM = pl.stream().collect(Collectors.toMap(TaskProgressMaterialRelPlan::getTaskProgressMaterialTypeId, Function.identity())); + for (TaskProgressMaterialType type : types) { + TaskProgressMaterialRelPlan r = pM.get(type.getId()); + if (r == null) { + r = new TaskProgressMaterialRelPlan(); + r.setPlanUsage(null); + r.setName(type.getName()); + } + planList.add(r); + } + //设置relPlanList + taskProgress.setRelPlanList(planList); } - Map> parentIdTaskListMap = progressTaskList.stream().collect(Collectors.groupingBy(TaskProgress::getParentId)); - return taskProgressService.getChild(parentIdTaskListMap, 0L); } @Override @@ -139,8 +167,9 @@ public class TaskProgressMaterialRelServiceImpl extends ServiceImpl taskProgressMaterialRels = taskProgressMaterialTypeMapper.selectList(new LambdaQueryWrapper() - .eq(TaskProgressMaterialType::getProjectSn, projectSn)); + QueryWrapper typeQueryWrapper = new QueryWrapper<>(); + typeQueryWrapper.eq(RefUtil.fieldNameUlc(TaskProgressMaterialType::getProjectSn), projectSn); + List taskProgressMaterialRels = taskProgressMaterialTypeService.queryList(typeQueryWrapper); String p = "p"; String a = "a"; for (TaskProgressMaterialType rel : taskProgressMaterialRels) { @@ -180,12 +209,12 @@ public class TaskProgressMaterialRelServiceImpl extends ServiceImpl queryList(QueryWrapper queryWrapper) { + return baseMapper.queryList(queryWrapper); + } } diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/impl/TaskProgressServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/impl/TaskProgressServiceImpl.java index a9572e714..e9495946e 100644 --- a/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/impl/TaskProgressServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/impl/TaskProgressServiceImpl.java @@ -1,6 +1,7 @@ package com.zhgd.xmgl.modules.taskprogress.service.impl; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSON; @@ -8,8 +9,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper; -import com.baomidou.mybatisplus.extension.conditions.update.UpdateChainWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.zhgd.jeecg.common.api.vo.Result; @@ -18,7 +17,6 @@ import com.zhgd.jeecg.common.system.query.QueryGenerator; import com.zhgd.xmgl.modules.basicdata.entity.SystemUser; import com.zhgd.xmgl.modules.basicdata.mapper.SystemUserMapper; import com.zhgd.xmgl.modules.basicdata.service.UploadFileService; -import com.zhgd.xmgl.modules.project.constants.ProgressTaskConstant; import com.zhgd.xmgl.modules.taskprogress.entity.*; import com.zhgd.xmgl.modules.taskprogress.mapper.*; import com.zhgd.xmgl.modules.taskprogress.service.ITaskProgressService; @@ -83,32 +81,17 @@ public class TaskProgressServiceImpl extends ServiceImpl getParentChildList(HashMap paramMap) { // 查询项目下的节点集合,通过父节点分组 List progressTaskList = baseMapper.queryList(paramMap); + for (TaskProgress taskProgress : progressTaskList) { + if (Objects.equals(taskProgress.getBeginWarning(), 3) || Objects.equals(taskProgress.getEndWarning(), 3)) { + taskProgress.setMppStatus(3); + } else { + taskProgress.setMppStatus(taskProgress.getStatus()); + } + } Map> parentIdTaskListMap = progressTaskList.stream().collect(Collectors.groupingBy(TaskProgress::getParentId)); return getChild(parentIdTaskListMap, 0L); } - /** - * 获取预警状态 - * - * @param plan - * @param actual - * @return - */ - private Integer getWarningStatus(Date plan, Date actual) { - if (actual != null) { - int i = plan.compareTo(actual); - if (i > 0) { - return 1; - } else if (i < 0) { - return 3; - } else { - return 2; - } - } else { - return 2; - } - } - @Override public void add(TaskProgress taskProgress) { if (!Objects.equals(taskProgress.getParentId(), 0L)) { @@ -117,15 +100,18 @@ public class TaskProgressServiceImpl extends ServiceImpl 0) { taskProgress.setBeginWarning(1); } else { @@ -134,7 +120,6 @@ public class TaskProgressServiceImpl extends ServiceImpl 0) { taskProgress.setEndWarning(1); } else { @@ -149,10 +134,40 @@ public class TaskProgressServiceImpl extends ServiceImpl map) { String id = MapUtils.getString(map, "id"); @@ -179,7 +194,6 @@ public class TaskProgressServiceImpl extends ServiceImpl() - .eq(TaskProgress::getProjectSn, projectSn) - .eq(TaskProgress::getTaskName, taskName) - ); + taskProgressMapper.updateByTaskName(taskProgress); } } } @@ -275,7 +286,11 @@ public class TaskProgressServiceImpl extends ServiceImpl System.currentTimeMillis()) { - progressTask.setProgressRatio(0D); - progressTask.setStatus(ProgressTaskConstant.NOT_STARTED); - } else if (progressRatio == 100D || (actualFinishDate != null && actualFinishDate.getTime() <= System.currentTimeMillis())) { - progressTask.setProgressRatio(100D); - progressTask.setStatus(ProgressTaskConstant.FINISH); - } else { - progressTask.setStatus(ProgressTaskConstant.RUNNING); - } + setStatusRel(progressTask); + // 负责人名称 String dutyUserName = task.getText(4); progressTask.setDutyUserName(dutyUserName); @@ -319,6 +327,7 @@ public class TaskProgressServiceImpl extends ServiceImpl