查询每个不同项目进度的名称、数量

This commit is contained in:
Administrator 2023-02-28 16:08:59 +08:00
parent 20207ee480
commit fbd96a9301
9 changed files with 176 additions and 13 deletions

View File

@ -8,8 +8,10 @@ import com.zhgd.jeecg.common.mybatis.EntityMap;
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.vo.GroupByProjectType;
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.enums.ProgressSanjiangProjectEnum;
import com.zhgd.xmgl.modules.project.service.IProjectService;
import com.zhgd.xmgl.util.MessageUtil;
import io.swagger.annotations.Api;
@ -21,6 +23,7 @@ import org.apache.commons.collections.MapUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
@ -304,7 +307,32 @@ public class ProjectController {
*/
@ApiOperation(value = "查询每个不同工程类别的名称、数量", notes = "查询每个不同工程类别的名称、数量", httpMethod = "GET")
@GetMapping(value = "/groupBy/projectType")
public Result<List<GroupByProjectType>> groupByProjectType(Map<String, Object> map) {
public Result<List<GroupByProjectTypeVo>> groupByProjectType(Map<String, Object> map) {
return Result.success(projectService.groupByProjectType(map));
}
/**
* 查询每个不同项目进度的名称数量
*
* @param
* @return
*/
@ApiOperation(value = "查询每个不同项目进度的名称、数量", notes = "查询每个不同项目进度的名称、数量", httpMethod = "GET")
@GetMapping(value = "/groupBy/projectProgress")
public Result<List<GroupByProjectProgressVo>> groupByProjectProgress(Map<String, Object> map) {
return Result.success(projectService.groupByProjectProgress(map));
}
/**
* 查询三江的所有项目进度
*
* @param
* @return
*/
@ApiOperation(value = "查询三江的所有项目进度", notes = "查询三江的所有项目进度", httpMethod = "GET")
@GetMapping(value = "/getProjectProgress")
public Result<List<ProgressSanjiangProjectEnum>> getProjectProgress() {
return Result.success(Arrays.asList(ProgressSanjiangProjectEnum.values()));
}
}

View File

@ -239,4 +239,6 @@ public class Project implements Serializable {
@ApiModelProperty(value = "自定义的工程类别")
private java.lang.String customProjectType;
@ApiModelProperty(value = "项目进度")
private Integer projectProgress;
}

View File

@ -0,0 +1,10 @@
package com.zhgd.xmgl.modules.project.entity.vo;
import io.swagger.models.auth.In;
import lombok.Data;
@Data
public class GroupByProjectProgressVo {
private Integer count;
private String projectProgress;
}

View File

@ -3,7 +3,7 @@ package com.zhgd.xmgl.modules.project.entity.vo;
import lombok.Data;
@Data
public class GroupByProjectType {
private int count;
public class GroupByProjectTypeVo {
private Integer count;
private String customProjectType;
}

View File

@ -0,0 +1,101 @@
package com.zhgd.xmgl.modules.project.enums;
import com.fasterxml.jackson.annotation.JsonFormat;
/**
* 三江项目进度枚举
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum ProgressSanjiangProjectEnum {
/**
* 三江项目进度总坪施工
*/
GENERAL_PING_CONSTRUCTION(1, "总坪施工"),
/**
* 三江项目进度绿化
*/
GREENING(2, "绿化"),
/**
* 三江项目进度安装工程
*/
INSTALLATION_WORKS(3, "安装工程"),
/**
* 三江项目进度交安
*/
TRAFFIC_SECURITY(4, "交安"),
/**
* 三江项目进度主体封顶
*/
THE_MAIN_BODY_IS_CAPPED(5, "主体封顶"),
/**
* 三江项目进度路面(路沿)
*/
PAVEMENT_CURB(6, "路面(路沿)"),
/**
* 三江项目进度主体施工
*/
MAIN_CONSTRUCTION(7, "主体施工"),
/**
* 三江项目进度路面(沥青)
*/
PAVEMENT_ASPHALT(8, "路面(沥青)"),
/**
* 三江项目进度基础工程
*/
BASIC_ENGINEERING(9, "基础工程"),
/**
* 三江项目进度路面(水稳)
*/
PAVEMENT_WATER_STABILIZATION(10, "路面(水稳)"),
/**
* 三江项目进度垫层完成
*/
THE_CUSHION_IS_COMPLETE(11, "垫层完成"),
/**
* 三江项目进度市政管网
*/
MUNICIPAL_PIPE_NETWORK(12, "市政管网"),
/**
* 三江项目进度桩基
*/
PILE_FOUNDATION(13, "桩基"),
/**
* 三江项目进度桥涵
*/
BRIDGE(14, "桥涵"),
/**
* 三江项目进度土方开挖
*/
EARTHWORK_EXCAVATION(15, "土方开挖"),
/**
* 三江项目进度土石方
*/
EARTHWORK(16, "土石方"),
;
private Integer id;
private String type;
private ProgressSanjiangProjectEnum(Integer id, String type) {
this.id = id;
this.type = type;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
}

View File

@ -4,7 +4,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhgd.jeecg.common.mybatis.EntityMap;
import com.zhgd.xmgl.modules.project.entity.Project;
import com.zhgd.xmgl.modules.project.entity.vo.GroupByProjectType;
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 org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -79,5 +80,7 @@ public interface ProjectMapper extends BaseMapper<Project> {
*/
ProjectDurationVO getProjectDuration(String projectSn);
List<GroupByProjectType> groupByProjectType(Map<String, Object> map);
List<GroupByProjectTypeVo> groupByProjectType(Map<String, Object> map);
List<GroupByProjectProgressVo> groupByProjectProgress(Map<String, Object> map);
}

View File

@ -647,7 +647,7 @@
left join project_extend pe on p.project_sn = pe.project_sn
where p.project_sn = #{projectSn}
</select>
<select id="groupByProjectType" resultType="com.zhgd.xmgl.modules.project.entity.vo.GroupByProjectType">
<select id="groupByProjectType" resultType="com.zhgd.xmgl.modules.project.entity.vo.GroupByProjectTypeVo">
SELECT COUNT(p.project_id) AS count,p.custom_project_type
FROM
`project` p
@ -656,4 +656,14 @@
HAVING
p.custom_project_type is NOT null
</select>
<select id="groupByProjectProgress" resultType="com.zhgd.xmgl.modules.project.entity.vo.GroupByProjectProgressVo"
parameterType="java.util.Map">
SELECT COUNT(p.project_id) AS count,p.project_progress
FROM
`project` p
GROUP BY
p.project_progress
HAVING
p.project_progress is NOT null
</select>
</mapper>

View File

@ -6,7 +6,8 @@ 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.GroupByProjectType;
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 java.util.List;
@ -63,5 +64,7 @@ public interface IProjectService extends IService<Project> {
*/
ProjectDurationVO getProjectDuration(String projectSn);
List<GroupByProjectType> groupByProjectType(Map<String, Object> map);
List<GroupByProjectTypeVo> groupByProjectType(Map<String, Object> map);
List<GroupByProjectProgressVo> groupByProjectProgress(Map<String, Object> map);
}

View File

@ -32,7 +32,8 @@ import com.zhgd.xmgl.modules.environment.service.IEnvironmentDevService;
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.vo.GroupByProjectType;
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.mapper.ProjectConfigMapper;
import com.zhgd.xmgl.modules.project.mapper.ProjectEnterpriseMapper;
@ -496,9 +497,14 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
}
@Override
public List<GroupByProjectType> groupByProjectType(Map<String, Object> map) {
List<GroupByProjectType> groupByProjectTypes = projectMapper.groupByProjectType(map);
return groupByProjectTypes;
public List<GroupByProjectTypeVo> groupByProjectType(Map<String, Object> map) {
List<GroupByProjectTypeVo> groupByProjectTypeVos = projectMapper.groupByProjectType(map);
return groupByProjectTypeVos;
}
@Override
public List<GroupByProjectProgressVo> groupByProjectProgress(Map<String, Object> map) {
return projectMapper.groupByProjectProgress(map);
}
}