From 1265732fe83533f3d55ed537951905fc6c19a5b6 Mon Sep 17 00:00:00 2001 From: guo Date: Tue, 7 Nov 2023 18:24:50 +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=BE=E5=A4=A7=E5=B1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zhgd/xmgl/base/entity/vo/SectorVo.java | 35 +++--- .../java/com/zhgd/xmgl/enums/ParamEnum.java | 36 ++++++ .../service/impl/SystemUserServiceImpl.java | 5 +- .../project/controller/ProjectController.java | 7 +- .../project/entity/vo/ProjectInfoExtVo.java | 117 ++++++++++++++++++ .../modules/project/mapper/ProjectMapper.java | 7 +- .../project/mapper/xml/ProjectMapper.xml | 21 ++-- .../project/service/IProjectService.java | 7 +- .../service/impl/ProjectServiceImpl.java | 9 +- .../TaskProgressAlarmController.java | 10 ++ .../controller/TaskProgressController.java | 27 +++- .../entity/TaskProgressAlarm.java | 16 +-- .../entity/vo/CountDutyUserNameVo.java | 11 ++ .../entity/vo/CountTaskProgressVo.java | 14 +++ .../mapper/TaskProgressAlarmMapper.java | 5 + .../mapper/TaskProgressMapper.java | 6 + .../mapper/xml/TaskProgressAlarmMapper.xml | 6 + .../mapper/xml/TaskProgressMapper.xml | 31 +++++ .../service/ITaskProgressAlarmService.java | 5 + .../service/ITaskProgressService.java | 9 ++ .../impl/TaskProgressAlarmServiceImpl.java | 8 ++ .../impl/TaskProgressContentServiceImpl.java | 1 + .../service/impl/TaskProgressServiceImpl.java | 41 +++++- .../zhgd/xmgl/security/JwtTokenProvider.java | 6 +- .../com/zhgd/xmgl/util/EnvironmentUtil.java | 6 +- 25 files changed, 380 insertions(+), 66 deletions(-) create mode 100644 src/main/java/com/zhgd/xmgl/modules/project/entity/vo/ProjectInfoExtVo.java create mode 100644 src/main/java/com/zhgd/xmgl/modules/taskprogress/entity/vo/CountDutyUserNameVo.java create mode 100644 src/main/java/com/zhgd/xmgl/modules/taskprogress/entity/vo/CountTaskProgressVo.java diff --git a/src/main/java/com/zhgd/xmgl/base/entity/vo/SectorVo.java b/src/main/java/com/zhgd/xmgl/base/entity/vo/SectorVo.java index c663d2e84..690d9a216 100644 --- a/src/main/java/com/zhgd/xmgl/base/entity/vo/SectorVo.java +++ b/src/main/java/com/zhgd/xmgl/base/entity/vo/SectorVo.java @@ -26,23 +26,6 @@ public class SectorVo { private String count; private List data; - /** - * 计算data的百分比 - * - * @param vo - */ - private static void calPercent(SectorVo vo) { - String count = vo.getCount(); - for (SectorOneVo one : vo.getData()) { - Double d = Double.valueOf(count); - if (d.equals(0.0)) { - one.setPercent("0"); - } else { - one.setPercent(NumberUtil.roundStr(Double.valueOf(one.getCount()) / d * 100, 2)); - } - } - - } /** * 获取扇形图表,通过枚举 @@ -110,4 +93,22 @@ public class SectorVo { public static void calCount(SectorVo vo) { vo.setCount(String.valueOf(vo.getData().stream().mapToInt(o -> Integer.parseInt(o.getCount())).sum())); } + + /** + * 计算data的百分比 + * + * @param vo + */ + private static void calPercent(SectorVo vo) { + String count = vo.getCount(); + for (SectorOneVo one : vo.getData()) { + Double d = Double.valueOf(count); + if (d.equals(0.0)) { + one.setPercent("0"); + } else { + one.setPercent(NumberUtil.roundStr(Double.valueOf(one.getCount()) / d * 100, 2)); + } + } + + } } diff --git a/src/main/java/com/zhgd/xmgl/enums/ParamEnum.java b/src/main/java/com/zhgd/xmgl/enums/ParamEnum.java index ec14c7eeb..7a695e702 100644 --- a/src/main/java/com/zhgd/xmgl/enums/ParamEnum.java +++ b/src/main/java/com/zhgd/xmgl/enums/ParamEnum.java @@ -318,4 +318,40 @@ public class ParamEnum { this.desc = desc; } } + + /** + * 甘特图状态,0未开始 ,1进行中,2已完成 ,3已逾期 + */ + @JsonFormat(shape = JsonFormat.Shape.OBJECT) + public enum TaskProgressMppStatusEnum implements BaseEnum { + HAS_NOT_STARTED(0, "未开始"), + IN_PROGRESS(1, "进行中"), + COMPLETED(2, "已完成"), + OVERDUE(3, "已逾期"), + ; + + TaskProgressMppStatusEnum(Integer value, String desc) { + this.value = value; + this.desc = desc; + } + + private Integer value; + private String desc; + + public Integer getValue() { + return value; + } + + public void setValue(Integer value) { + this.value = value; + } + + public String getDesc() { + return desc; + } + + public void setDesc(String desc) { + this.desc = desc; + } + } } diff --git a/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/SystemUserServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/SystemUserServiceImpl.java index 6ee7cb568..3e4e8e95d 100644 --- a/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/SystemUserServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/SystemUserServiceImpl.java @@ -33,6 +33,7 @@ import com.zhgd.xmgl.modules.worker.service.IUserEnterpriseService; import com.zhgd.xmgl.security.JwtTokenProvider; import com.zhgd.xmgl.security.entity.UserInfo; import com.zhgd.xmgl.security.util.SecurityUtils; +import com.zhgd.xmgl.util.EnvironmentUtil; import com.zhgd.xmgl.util.GovDanzhouSafeHatUtil; import com.zhgd.xmgl.util.MessageUtil; import com.zhgd.xmgl.util.PwUtil; @@ -140,7 +141,7 @@ public class SystemUserServiceImpl extends ServiceImpl= 5) { throw new OpenAlertException("您已登录失败次数达到5次,锁定账号时间10分钟,请稍后重试"); @@ -1066,7 +1067,7 @@ public class SystemUserServiceImpl extends ServiceImpl= 5) { throw new OpenAlertException("您已登录失败次数达到5次,锁定账号时间10分钟,请稍后重试"); diff --git a/src/main/java/com/zhgd/xmgl/modules/project/controller/ProjectController.java b/src/main/java/com/zhgd/xmgl/modules/project/controller/ProjectController.java index 62e1df2b1..091fb8fe9 100644 --- a/src/main/java/com/zhgd/xmgl/modules/project/controller/ProjectController.java +++ b/src/main/java/com/zhgd/xmgl/modules/project/controller/ProjectController.java @@ -14,10 +14,7 @@ import com.zhgd.xmgl.async.AsyncProject; import com.zhgd.xmgl.entity.vo.ZwProjectDataVo; import com.zhgd.xmgl.modules.project.entity.Project; import com.zhgd.xmgl.modules.project.entity.dto.SjProjectDto; -import com.zhgd.xmgl.modules.project.entity.vo.ConstructionStageVo; -import com.zhgd.xmgl.modules.project.entity.vo.GroupByProjectProgressVo; -import com.zhgd.xmgl.modules.project.entity.vo.GroupByProjectTypeVo; -import com.zhgd.xmgl.modules.project.entity.vo.ProjectDurationVO; +import com.zhgd.xmgl.modules.project.entity.vo.*; import com.zhgd.xmgl.modules.project.enums.SanjiangProgressProjectEnum; import com.zhgd.xmgl.modules.project.service.IProjectService; import com.zhgd.xmgl.modules.project.service.impl.ProjectServiceImpl; @@ -251,7 +248,7 @@ public class ProjectController { @ApiOperation(value = "通过项目SN查询项目信息", notes = "通过项目SN查询项目信息", httpMethod = "POST") @ApiImplicitParam(name = "projectSn", value = "项目SN", paramType = "query", required = true, dataType = "String") @PostMapping(value = "/getProjectInfoBySn") - public Result getProjectInfoBySn(@RequestBody Map map) { + public Result getProjectInfoBySn(@RequestBody Map map) { return Result.success(projectService.getProjectInfoBySn(map)); } diff --git a/src/main/java/com/zhgd/xmgl/modules/project/entity/vo/ProjectInfoExtVo.java b/src/main/java/com/zhgd/xmgl/modules/project/entity/vo/ProjectInfoExtVo.java new file mode 100644 index 000000000..c6e4638ad --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/modules/project/entity/vo/ProjectInfoExtVo.java @@ -0,0 +1,117 @@ +package com.zhgd.xmgl.modules.project.entity.vo; + +import com.zhgd.xmgl.modules.project.entity.Project; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class ProjectInfoExtVo extends Project { + /** + * 合同签订日期 + */ + @ApiModelProperty(value = "合同签订日期") + private java.lang.String contractSignTime; + /** + * 合同金额 + */ + @ApiModelProperty(value = "合同金额") + private java.lang.String contractPrice; + /** + * 合同工期开始时间 + */ + @ApiModelProperty(value = "合同工期开始时间") + private java.lang.String contractPeriodStartTime; + /** + * 合同工期结束时间 + */ + @ApiModelProperty(value = "合同工期结束时间") + private java.lang.String contractPeriodEndTime; + /** + * 实际工期开始时间 + */ + @ApiModelProperty(value = "实际工期开始时间") + private java.lang.String realPeriodStartTime; + /** + * 实际工期结束时间 + */ + @ApiModelProperty(value = "实际工期结束时间") + private java.lang.String realPeriodEndTime; + /** + * 中标单位 + */ + @ApiModelProperty(value = "中标单位") + private java.lang.String bidWinner; + /** + * 建设单位 + */ + @ApiModelProperty(value = "建设单位") + private java.lang.String constructionUnit; + /** + * 设计单位 + */ + @ApiModelProperty(value = "设计单位") + private java.lang.String designUnit; + /** + * 监理单位 + */ + @ApiModelProperty(value = "监理单位") + private java.lang.String supervisorUnit; + /** + * 业主单位 + */ + @ApiModelProperty(value = "业主单位") + private java.lang.String ownerUnit; + /** + * 工程概况 + */ + @ApiModelProperty(value = "工程概况") + private java.lang.String projectOverview; + /** + * 工程结束时间 + */ + @ApiModelProperty(value = "工程结束时间") + private java.lang.String engineeringEndTime; + + /** + * 质量目标 + */ + @ApiModelProperty(value = "质量目标") + private String qualityTarget; + + /** + * 安全目标 + */ + @ApiModelProperty(value = "安全目标") + private String safeTarget; + + /** + * 科技目标 + */ + @ApiModelProperty(value = "科技目标") + private String technologyTarget; + + /** + * 设计目标 + */ + @ApiModelProperty(value = "设计目标") + private String designTarget; + + /** + * 绿色施工 + */ + @ApiModelProperty(value = "绿色施工") + private String greenConstruction; + + @ApiModelProperty(value = "项目总体倒计时(天)") + private String totalProjectDay; + private String companyName; + private String areaName; + private String videoNum; + private String name; + private String provinceName; + private Double periodRatio; + private String ufaceDevNum; + private String cityName; + private String surplusDay; + private String contractPeriodType; +} diff --git a/src/main/java/com/zhgd/xmgl/modules/project/mapper/ProjectMapper.java b/src/main/java/com/zhgd/xmgl/modules/project/mapper/ProjectMapper.java index 537cbe9ee..8f543bb35 100644 --- a/src/main/java/com/zhgd/xmgl/modules/project/mapper/ProjectMapper.java +++ b/src/main/java/com/zhgd/xmgl/modules/project/mapper/ProjectMapper.java @@ -6,10 +6,7 @@ import com.zhgd.jeecg.common.mybatis.EntityMap; import com.zhgd.xmgl.modules.basicdata.entity.vo.CompanyProjectTypeCountVo; import com.zhgd.xmgl.modules.project.entity.Project; import com.zhgd.xmgl.modules.project.entity.bo.ProjectStatisticsCountBo; -import com.zhgd.xmgl.modules.project.entity.vo.ConstructionStageVo; -import com.zhgd.xmgl.modules.project.entity.vo.GroupByProjectProgressVo; -import com.zhgd.xmgl.modules.project.entity.vo.GroupByProjectTypeVo; -import com.zhgd.xmgl.modules.project.entity.vo.ProjectDurationVO; +import com.zhgd.xmgl.modules.project.entity.vo.*; import com.zhgd.xmgl.modules.yunlianwanwu.middle.entity.bo.ProjectBo; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -30,7 +27,7 @@ public interface ProjectMapper extends BaseMapper { EntityMap getProjectInfoById(Map map); - EntityMap getProjectInfoBySn(Map map); + ProjectInfoExtVo getProjectInfoBySn(Map map); List selectCompanyProjectList(Map map); diff --git a/src/main/java/com/zhgd/xmgl/modules/project/mapper/xml/ProjectMapper.xml b/src/main/java/com/zhgd/xmgl/modules/project/mapper/xml/ProjectMapper.xml index 3987a7aa0..d23fbbbcf 100644 --- a/src/main/java/com/zhgd/xmgl/modules/project/mapper/xml/ProjectMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/project/mapper/xml/ProjectMapper.xml @@ -29,17 +29,18 @@ LEFT JOIN system_areas e ON a.area_code = e.areaid WHERE a.project_id = #{projectId} - SELECT a.*, - b.company_name, - c.province province_name, - d.city city_name, - e.area area_name, - a.project_name name, - a.coordinate_group, - IFNULL(t.video_num, 0) video_num, - IFNULL(u.uface_dev_num, 0) uface_dev_num, - ex.contract_sign_time, + b.company_name, + c.province province_name, + d.city city_name, + e.area area_name, + a.project_name name, + a.coordinate_group, + IFNULL(t.video_num, 0) video_num, + IFNULL(u.uface_dev_num, 0) uface_dev_num, + ex.contract_sign_time, ex.contract_period_start_time, ex.contract_period_end_time, ex.real_period_start_time, diff --git a/src/main/java/com/zhgd/xmgl/modules/project/service/IProjectService.java b/src/main/java/com/zhgd/xmgl/modules/project/service/IProjectService.java index 6988c706d..54643e675 100644 --- a/src/main/java/com/zhgd/xmgl/modules/project/service/IProjectService.java +++ b/src/main/java/com/zhgd/xmgl/modules/project/service/IProjectService.java @@ -6,10 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.zhgd.jeecg.common.mybatis.EntityMap; import com.zhgd.xmgl.entity.vo.ZwProjectDataVo; import com.zhgd.xmgl.modules.project.entity.Project; -import com.zhgd.xmgl.modules.project.entity.vo.ConstructionStageVo; -import com.zhgd.xmgl.modules.project.entity.vo.GroupByProjectProgressVo; -import com.zhgd.xmgl.modules.project.entity.vo.GroupByProjectTypeVo; -import com.zhgd.xmgl.modules.project.entity.vo.ProjectDurationVO; +import com.zhgd.xmgl.modules.project.entity.vo.*; import java.util.HashMap; import java.util.List; @@ -33,7 +30,7 @@ public interface IProjectService extends IService { EntityMap getProjectInfoById(Map map); - EntityMap getProjectInfoBySn(Map map); + ProjectInfoExtVo getProjectInfoBySn(Map map); List selectCompanyProjectList(Map map); diff --git a/src/main/java/com/zhgd/xmgl/modules/project/service/impl/ProjectServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/project/service/impl/ProjectServiceImpl.java index 18f18b1ce..61d6b6b9b 100644 --- a/src/main/java/com/zhgd/xmgl/modules/project/service/impl/ProjectServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/project/service/impl/ProjectServiceImpl.java @@ -47,10 +47,7 @@ import com.zhgd.xmgl.modules.massrebound.service.IFunctionRoomService; import com.zhgd.xmgl.modules.project.entity.Project; import com.zhgd.xmgl.modules.project.entity.ProjectConfig; import com.zhgd.xmgl.modules.project.entity.WSSsdrAddress; -import com.zhgd.xmgl.modules.project.entity.vo.ConstructionStageVo; -import com.zhgd.xmgl.modules.project.entity.vo.GroupByProjectProgressVo; -import com.zhgd.xmgl.modules.project.entity.vo.GroupByProjectTypeVo; -import com.zhgd.xmgl.modules.project.entity.vo.ProjectDurationVO; +import com.zhgd.xmgl.modules.project.entity.vo.*; import com.zhgd.xmgl.modules.project.enums.SanjiangProgressProjectEnum; import com.zhgd.xmgl.modules.project.mapper.ProjectConfigMapper; import com.zhgd.xmgl.modules.project.mapper.ProjectEnterpriseMapper; @@ -208,8 +205,8 @@ public class ProjectServiceImpl extends ServiceImpl impl } @Override - public EntityMap getProjectInfoBySn(Map map) { - EntityMap info = redisRepository.getOrSetEx("projectInfoBySn:" + map.get("projectSn"), (() -> projectMapper.getProjectInfoBySn(map))); + public ProjectInfoExtVo getProjectInfoBySn(Map map) { + ProjectInfoExtVo info = redisRepository.getOrSetEx("projectInfoBySn:" + map.get("projectSn"), (() -> projectMapper.getProjectInfoBySn(map))); if (info == null) { throw new NullPointerException(" 当前查询条件结果不存在!"); } 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 69df81bcb..8a91bd507 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 @@ -7,7 +7,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.zhgd.jeecg.common.api.vo.Result; import com.zhgd.jeecg.common.system.query.QueryGenerator; import com.zhgd.jeecg.common.util.oConvertUtils; +import com.zhgd.xmgl.base.entity.vo.SectorVo; import com.zhgd.xmgl.modules.taskprogress.entity.TaskProgressAlarm; +import com.zhgd.xmgl.modules.taskprogress.entity.vo.CountDutyUserNameVo; import com.zhgd.xmgl.modules.taskprogress.service.ITaskProgressAlarmService; import com.zhgd.xmgl.util.PageUtil; import io.swagger.annotations.Api; @@ -191,4 +193,12 @@ public class TaskProgressAlarmController { return mv; } + @ApiOperation(value = "进度预警(按人员)", notes = "进度预警(按人员)", httpMethod = "POST") + @ApiImplicitParams({ + @ApiImplicitParam(name = "projectSn", value = "项目sn", paramType = "body", required = true, dataType = "String"), + }) + @PostMapping(value = "/countDutyUserName") + public Result> countDutyUserName(@ApiIgnore @RequestBody HashMap paramMap) { + return Result.success(taskProgressAlarmService.countDutyUserName(paramMap)); + } } 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 87e2aee9d..ec89ae323 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 @@ -2,10 +2,12 @@ package com.zhgd.xmgl.modules.taskprogress.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.zhgd.jeecg.common.api.vo.Result; import com.zhgd.jeecg.common.system.query.QueryGenerator; +import com.zhgd.xmgl.base.entity.vo.SectorVo; +import com.zhgd.xmgl.base.entity.vo.TrendVo; import com.zhgd.xmgl.modules.taskprogress.entity.TaskProgress; +import com.zhgd.xmgl.modules.taskprogress.entity.vo.CountTaskProgressVo; import com.zhgd.xmgl.modules.taskprogress.service.ITaskProgressService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; @@ -55,6 +57,7 @@ public class TaskProgressController { @ApiImplicitParams({ @ApiImplicitParam(name = "pageNo", value = "第几页", paramType = "query", required = true, dataType = "Integer"), @ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "query", required = true, dataType = "Integer"), + @ApiImplicitParam(name = "type", value = "1.本月2.下月", paramType = "query", required = false, dataType = "Integer"), }) @GetMapping(value = "/page") public Result> queryPageList(@ApiIgnore @RequestParam HashMap paramMap) { @@ -228,4 +231,26 @@ public class TaskProgressController { public ModelAndView exportXls(@ApiIgnore @RequestBody HashMap paramMap, HttpServletRequest request) { return taskProgressService.exportXls(paramMap, request); } + + + @ApiOperation(value = "工作一览(统计)", notes = "工作一览(统计)", httpMethod = "POST") + @ApiImplicitParams({ + @ApiImplicitParam(name = "projectSn", value = "项目sn", paramType = "body", required = true, dataType = "String"), + @ApiImplicitParam(name = "type", value = "1.本月2.下月", paramType = "body", required = false, dataType = "Integer"), + }) + @PostMapping(value = "/countTaskProgress") + public Result countTaskProgress(@ApiIgnore @RequestBody HashMap paramMap) { + return Result.success(taskProgressService.countTaskProgress(paramMap)); + } + + @ApiOperation(value = "状态统计", notes = "状态统计", httpMethod = "POST") + @ApiImplicitParams({ + @ApiImplicitParam(name = "projectSn", value = "项目sn", paramType = "body", required = true, dataType = "String"), + }) + @PostMapping(value = "/countMppStatus") + public Result countMppStatus(@ApiIgnore @RequestBody HashMap paramMap) { + return Result.success(taskProgressService.countMppStatus(paramMap)); + } + + } diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/entity/TaskProgressAlarm.java b/src/main/java/com/zhgd/xmgl/modules/taskprogress/entity/TaskProgressAlarm.java index 9fb77a781..1ddc4f48a 100644 --- a/src/main/java/com/zhgd/xmgl/modules/taskprogress/entity/TaskProgressAlarm.java +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/entity/TaskProgressAlarm.java @@ -1,7 +1,6 @@ package com.zhgd.xmgl.modules.taskprogress.entity; import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; @@ -49,12 +48,6 @@ public class TaskProgressAlarm implements Serializable { @Excel(name = "报警详情", width = 15) @ApiModelProperty(value = "报警详情") private java.lang.String alarmDetails; - /** - * 报警类型 1:逾期未开始 2:逾期未完成 - */ - @Excel(name = "报警类型 1:逾期未开始 2:逾期未完成", width = 15) - @ApiModelProperty(value = "报警类型 1:逾期未开始 2:逾期未完成") - private java.lang.Integer alarmType; /** * 报警时间 */ @@ -74,4 +67,13 @@ public class TaskProgressAlarm implements Serializable { @ApiModelProperty(value = "任务名称") private java.lang.String taskName; + @ApiModelProperty(value = "负责人id") + private java.lang.Long dutyUserId; + + /** + * 负责人名称 + */ + @ApiModelProperty(value = "负责人名称") + private String dutyUserName; + } diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/entity/vo/CountDutyUserNameVo.java b/src/main/java/com/zhgd/xmgl/modules/taskprogress/entity/vo/CountDutyUserNameVo.java new file mode 100644 index 000000000..38e636757 --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/entity/vo/CountDutyUserNameVo.java @@ -0,0 +1,11 @@ +package com.zhgd.xmgl.modules.taskprogress.entity.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class CountDutyUserNameVo { + @ApiModelProperty(value = "负责人名称") + private java.lang.String dutyUserName; + private Integer count; +} diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/entity/vo/CountTaskProgressVo.java b/src/main/java/com/zhgd/xmgl/modules/taskprogress/entity/vo/CountTaskProgressVo.java new file mode 100644 index 000000000..00a4e9086 --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/entity/vo/CountTaskProgressVo.java @@ -0,0 +1,14 @@ +package com.zhgd.xmgl.modules.taskprogress.entity.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class CountTaskProgressVo { + @ApiModelProperty("工作总数") + private Integer workCount; + @ApiModelProperty("延迟工作(那按照实际开始时间来算,实际开始时间提前就算提前工作,实际开始时间逾期就算延迟工作)") + private Integer delayCount; + @ApiModelProperty("提前工作(那按照实际开始时间来算,实际开始时间提前就算提前工作,实际开始时间逾期就算延迟工作)") + private Integer aheadCount; +} diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/TaskProgressAlarmMapper.java b/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/TaskProgressAlarmMapper.java index 183beef2e..ba31403a7 100644 --- a/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/TaskProgressAlarmMapper.java +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/TaskProgressAlarmMapper.java @@ -1,9 +1,13 @@ package com.zhgd.xmgl.modules.taskprogress.mapper; +import com.zhgd.xmgl.modules.taskprogress.entity.vo.CountDutyUserNameVo; import org.apache.ibatis.annotations.Mapper; import com.zhgd.xmgl.modules.taskprogress.entity.TaskProgressAlarm; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import java.util.HashMap; +import java.util.List; + /** * @Description: 任务进度甘特图-报警信息 * @author: pds @@ -13,4 +17,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; @Mapper public interface TaskProgressAlarmMapper extends BaseMapper { + List countDutyUserName(HashMap paramMap); } 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 cf77ed244..7e57a2d62 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 @@ -3,7 +3,9 @@ package com.zhgd.xmgl.modules.taskprogress.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.zhgd.xmgl.base.entity.vo.SectorOneVo; import com.zhgd.xmgl.modules.taskprogress.entity.TaskProgress; +import com.zhgd.xmgl.modules.taskprogress.entity.vo.CountTaskProgressVo; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -29,4 +31,8 @@ public interface TaskProgressMapper extends BaseMapper { void updateByTaskName(TaskProgress taskProgress); void updateByPrimaryId(TaskProgress taskProgress); + + List countMppStatus(HashMap paramMap); + + CountTaskProgressVo countTaskProgress(HashMap paramMap); } diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/xml/TaskProgressAlarmMapper.xml b/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/xml/TaskProgressAlarmMapper.xml index 073f303b4..d3c89a0e7 100644 --- a/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/xml/TaskProgressAlarmMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/mapper/xml/TaskProgressAlarmMapper.xml @@ -1,4 +1,10 @@ + 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 441cbb7a5..0903325b0 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 @@ -109,4 +109,35 @@ where id = #{id} + + + + diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/ITaskProgressAlarmService.java b/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/ITaskProgressAlarmService.java index 5cf158708..8d663fde1 100644 --- a/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/ITaskProgressAlarmService.java +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/ITaskProgressAlarmService.java @@ -2,6 +2,10 @@ package com.zhgd.xmgl.modules.taskprogress.service; import com.zhgd.xmgl.modules.taskprogress.entity.TaskProgressAlarm; import com.baomidou.mybatisplus.extension.service.IService; +import com.zhgd.xmgl.modules.taskprogress.entity.vo.CountDutyUserNameVo; + +import java.util.HashMap; +import java.util.List; /** * @Description: 任务进度甘特图-报警信息 @@ -11,4 +15,5 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface ITaskProgressAlarmService extends IService { + List countDutyUserName(HashMap paramMap); } diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/ITaskProgressService.java b/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/ITaskProgressService.java index f41d02f3b..3240811a7 100644 --- a/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/ITaskProgressService.java +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/ITaskProgressService.java @@ -2,7 +2,11 @@ package com.zhgd.xmgl.modules.taskprogress.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; +import com.zhgd.jeecg.common.api.vo.Result; +import com.zhgd.xmgl.base.entity.vo.SectorVo; +import com.zhgd.xmgl.base.entity.vo.TrendVo; import com.zhgd.xmgl.modules.taskprogress.entity.TaskProgress; +import com.zhgd.xmgl.modules.taskprogress.entity.vo.CountTaskProgressVo; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.servlet.ModelAndView; @@ -33,4 +37,9 @@ public interface ITaskProgressService extends IService { IPage queryPageList(HashMap paramMap); void edit(TaskProgress taskProgress); + + CountTaskProgressVo countTaskProgress(HashMap paramMap); + + SectorVo countMppStatus(HashMap paramMap); + } diff --git a/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/impl/TaskProgressAlarmServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/impl/TaskProgressAlarmServiceImpl.java index 0a0278007..4a2bb4fb5 100644 --- a/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/impl/TaskProgressAlarmServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/taskprogress/service/impl/TaskProgressAlarmServiceImpl.java @@ -1,12 +1,16 @@ package com.zhgd.xmgl.modules.taskprogress.service.impl; import com.zhgd.xmgl.modules.taskprogress.entity.TaskProgressAlarm; +import com.zhgd.xmgl.modules.taskprogress.entity.vo.CountDutyUserNameVo; import com.zhgd.xmgl.modules.taskprogress.mapper.TaskProgressAlarmMapper; import com.zhgd.xmgl.modules.taskprogress.service.ITaskProgressAlarmService; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import java.util.HashMap; +import java.util.List; + /** * @Description: 任务进度甘特图-报警信息 * @author: pds @@ -16,4 +20,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @Service public class TaskProgressAlarmServiceImpl extends ServiceImpl implements ITaskProgressAlarmService { + @Override + public List countDutyUserName(HashMap paramMap) { + return baseMapper.countDutyUserName(paramMap); + } } 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 33d4a6e44..26eb999da 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 @@ -45,6 +45,7 @@ public class TaskProgressContentServiceImpl extends ServiceImpl getParentChildList(HashMap paramMap) { // 查询项目下的节点集合,通过父节点分组 List progressTaskList = baseMapper.queryList(paramMap); + setMppStatus(progressTaskList); + Map> parentIdTaskListMap = progressTaskList.stream().collect(Collectors.groupingBy(TaskProgress::getParentId)); + return getChild(parentIdTaskListMap, 0L); + } + + /** + * 设置甘特图状态 + * + * @param progressTaskList + */ + private void setMppStatus(List progressTaskList) { for (TaskProgress taskProgress : progressTaskList) { if (Objects.equals(taskProgress.getBeginWarning(), 3) || Objects.equals(taskProgress.getEndWarning(), 3)) { taskProgress.setMppStatus(3); @@ -88,8 +102,6 @@ public class TaskProgressServiceImpl extends ServiceImpl> parentIdTaskListMap = progressTaskList.stream().collect(Collectors.groupingBy(TaskProgress::getParentId)); - return getChild(parentIdTaskListMap, 0L); } @Override @@ -409,8 +421,20 @@ public class TaskProgressServiceImpl extends ServiceImpl queryPageList(HashMap paramMap) { QueryWrapper queryWrapper = QueryGenerator.initPageQueryWrapper(TaskProgress.class, paramMap); + Integer type = MapUtils.getInteger(paramMap, "type"); + if (Objects.equals(type, 1)) { + //本月 + queryWrapper.lambda().and(w -> w.ge(TaskProgress::getStartDate, DateUtil.formatDate(DateUtil.beginOfMonth(new Date()))) + .or().ge(TaskProgress::getFinishDate, DateUtil.formatDate(DateUtil.endOfMonth(new Date())))); + } else if (Objects.equals(type, 2)) { + //下月 + queryWrapper.lambda().and(w -> w.ge(TaskProgress::getStartDate, DateUtil.formatDate(DateUtil.beginOfMonth(DateUtil.offsetMonth(new Date(), 1)))) + .or().ge(TaskProgress::getFinishDate, DateUtil.formatDate(DateUtil.endOfMonth(DateUtil.offsetMonth(new Date(), 1))))); + } Page page = PageUtil.getPage(paramMap); - return page(page, queryWrapper); + Page p = page(page, queryWrapper); + setMppStatus(p.getRecords()); + return p; } @Override @@ -419,4 +443,15 @@ public class TaskProgressServiceImpl extends ServiceImpl paramMap) { + return baseMapper.countTaskProgress(paramMap); + } + + @Override + public SectorVo countMppStatus(HashMap paramMap) { + return SectorVo.getSectorVoByEnum(baseMapper.countMppStatus(paramMap), ParamEnum.TaskProgressMppStatusEnum.values()); + } + } diff --git a/src/main/java/com/zhgd/xmgl/security/JwtTokenProvider.java b/src/main/java/com/zhgd/xmgl/security/JwtTokenProvider.java index 24ec9ba98..8a7e636e2 100644 --- a/src/main/java/com/zhgd/xmgl/security/JwtTokenProvider.java +++ b/src/main/java/com/zhgd/xmgl/security/JwtTokenProvider.java @@ -38,8 +38,6 @@ public class JwtTokenProvider { @Autowired private MyUserDetailsImpl myUserDetailsImpl; - @Autowired - private SystemUserMapper systemUserMapper; @PostConstruct protected void init() { @@ -76,7 +74,7 @@ public class JwtTokenProvider { .compact(); userMap.put(username, token); //刷新token - String key = USER_TOKEN_EXPIRE_PREFIX + EnvironmentUtil.activeEnvironment + ":" + username + ":" + uuid; + String key = USER_TOKEN_EXPIRE_PREFIX + EnvironmentUtil.getActiveEnvironment() + ":" + username + ":" + uuid; redisRepository.set(key, "", userTokenExpireMinute * 60L); return token; } @@ -111,7 +109,7 @@ public class JwtTokenProvider { Map cs = (Map) body; if (Objects.equals(cs.get("loginTimeOut"), 1)) { //判断token过期没有 - String key = USER_TOKEN_EXPIRE_PREFIX + EnvironmentUtil.activeEnvironment + ":" + cs.get("account") + ":" + cs.get("uuid"); + String key = USER_TOKEN_EXPIRE_PREFIX + EnvironmentUtil.getActiveEnvironment() + ":" + cs.get("account") + ":" + cs.get("uuid"); if (redisRepository.get(key) == null) { return false; } diff --git a/src/main/java/com/zhgd/xmgl/util/EnvironmentUtil.java b/src/main/java/com/zhgd/xmgl/util/EnvironmentUtil.java index 94ba4db18..4285fec76 100644 --- a/src/main/java/com/zhgd/xmgl/util/EnvironmentUtil.java +++ b/src/main/java/com/zhgd/xmgl/util/EnvironmentUtil.java @@ -15,13 +15,17 @@ public class EnvironmentUtil { /** * 激活的环境 */ - public static String activeEnvironment; + private static String activeEnvironment; @Value("${active.environment.name}") public void setActiveEnvironment(String activeEnvironment) { EnvironmentUtil.activeEnvironment = activeEnvironment; } + public static String getActiveEnvironment() { + return activeEnvironment; + } + /** * 是否本地开发环境 *