This commit is contained in:
guo 2023-09-11 09:14:59 +08:00
parent d6ad72a9cd
commit 46d6dc3612
39 changed files with 247 additions and 82 deletions

View File

@ -0,0 +1,14 @@
package com.zhgd.xmgl.base.entity.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
public class MultiSectorOne {
@ApiModelProperty("名称")
private String name;
@ApiModelProperty("数值")
private List<String> data;
}

View File

@ -0,0 +1,18 @@
package com.zhgd.xmgl.base.entity.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* 多列扇形图表
*/
@Data
public class MultiSectorVo {
@ApiModelProperty("x轴")
private List<String> x;
@ApiModelProperty("y轴数据")
List<MultiSectorOne> data;
}

View File

@ -1,5 +1,8 @@
package com.zhgd.xmgl.base.entity.vo;
import com.alibaba.fastjson2.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ -16,8 +19,13 @@ public class SectorVo {
@ApiModelProperty("百分比")
@JsonInclude(JsonInclude.Include.NON_NULL)
private String percent;
@JsonInclude(JsonInclude.Include.NON_NULL)
@ApiModelProperty(hidden = true)
@JsonIgnore
private Integer state;
@JsonInclude(JsonInclude.Include.NON_NULL)
@ApiModelProperty(hidden = true)
@JsonIgnore
private Integer personType;
@ApiModelProperty(hidden = true)
@JsonIgnore
private Integer engineeringType;
}

View File

@ -9,7 +9,7 @@ import com.zhgd.jeecg.common.system.query.QueryGenerator;
import com.zhgd.jeecg.common.util.PageUtil;
import com.zhgd.xmgl.modules.basicdata.statistics.EngineeringStat;
import com.zhgd.xmgl.modules.city.engineering.entity.Engineering;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringSingle;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringSingle;
import com.zhgd.xmgl.modules.city.engineering.service.IEngineeringService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;

View File

@ -9,9 +9,9 @@ import com.zhgd.jeecg.common.api.vo.Result;
import com.zhgd.jeecg.common.system.query.QueryGenerator;
import com.zhgd.jeecg.common.util.PageUtil;
import com.zhgd.xmgl.modules.basicdata.statistics.EngineeringStat;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringMain;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMain;
import com.zhgd.xmgl.modules.city.enterprise.entity.Enterprise;
import com.zhgd.xmgl.modules.basicdata.service.IEngineeringMainService;
import com.zhgd.xmgl.modules.city.engineering.service.IEngineeringMainService;
import com.zhgd.xmgl.modules.wisdom.dto.MapAiAlarmDto;
import com.zhgd.xmgl.modules.wisdom.dto.MapEnvironAlarmDto;
import com.zhgd.xmgl.modules.wisdom.service.IAiMonitorAlarmService;

View File

@ -1,8 +1,8 @@
package com.zhgd.xmgl.modules.basicdata.vo;
import com.zhgd.xmgl.modules.basicdata.entity.AnnexFile;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringMain;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringSingle;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMain;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringSingle;
import com.zhgd.xmgl.modules.city.engineering.entity.Engineering;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

View File

@ -1,5 +1,7 @@
package com.zhgd.xmgl.modules.city.engineering.controller;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@ -8,23 +10,26 @@ import com.zhgd.annotation.OperLog;
import com.zhgd.jeecg.common.api.vo.Result;
import com.zhgd.jeecg.common.system.query.QueryGenerator;
import com.zhgd.jeecg.common.util.PageUtil;
import com.zhgd.xmgl.base.entity.vo.MultiSectorVo;
import com.zhgd.xmgl.base.entity.vo.SectorVo;
import com.zhgd.xmgl.base.entity.vo.TrendVo;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringSingle;
import com.zhgd.xmgl.modules.basicdata.statistics.EngineeringStat;
import com.zhgd.xmgl.modules.basicdata.vo.EngineeringVo;
import com.zhgd.xmgl.modules.city.engineering.entity.Engineering;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringSingle;
import com.zhgd.xmgl.modules.city.engineering.entity.vo.CountEngineeringVo;
import com.zhgd.xmgl.modules.city.engineering.entity.vo.EngineeringTrendProgressVo;
import com.zhgd.xmgl.modules.city.engineering.entity.vo.EngineeringTrendVo;
import com.zhgd.xmgl.modules.city.engineering.service.IEngineeringService;
import com.zhgd.xmgl.util.ParamEnum;
import com.zhgd.xmgl.util.RefUtil;
import com.zhgd.xmgl.valid.AddGroup;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.MapUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
@ -33,10 +38,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.stream.Collectors;
@ -64,13 +66,22 @@ public class EngineeringController {
@ApiOperation(value = " 分页列表查询报监记录", notes = "分页列表查询报监记录", httpMethod = "POST")
@ApiImplicitParams({
@ApiImplicitParam(name = "pageNo", value = "页数", paramType = "body", required = true, defaultValue = "1", dataType = "Integer"),
@ApiImplicitParam(name = "pageSize", value = "每页条数", paramType = "body", required = true, defaultValue = "10", dataType = "Integer")
@ApiImplicitParam(name = "pageSize", value = "每页条数", paramType = "body", required = true, defaultValue = "10", dataType = "Integer"),
@ApiImplicitParam(name = "newThisYear", value = "是否今年新增1是0否", paramType = "body", required = false, dataType = "Integer"),
@ApiImplicitParam(name = "endThisYear", value = "是否今年竣工合格1是0否", paramType = "body", required = false, dataType = "Integer"),
})
@PostMapping(value = "/page")
public Result<IPage<Engineering>> queryPageList(@ApiIgnore @RequestBody Map<String, Object> map) {
QueryWrapper<Engineering> wrapper = QueryGenerator.initPageQueryWrapper(Engineering.class, map);
Page<Engineering> page = PageUtil.getPage(map);
wrapper.lambda().orderByDesc(Engineering::getCreateTime);
DateTime dateTime = DateUtil.beginOfYear(new Date());
if (Objects.equals(MapUtils.getInteger(map, "newThisYear"), 1)) {
wrapper.ge(RefUtil.fieldNameUlc(Engineering::getStartTime), dateTime);
}
if (Objects.equals(MapUtils.getInteger(map, "endThisYear"), 1)) {
wrapper.ge(RefUtil.fieldNameUlc(Engineering::getEndTime), dateTime);
}
IPage<Engineering> pageList = engineeringService.getPageList(page, wrapper);
return Result.success(pageList);
}
@ -192,7 +203,6 @@ public class EngineeringController {
@OperLog(operModul = "工程管理", operType = "统计", operDesc = "统计工程")
@ApiOperation(value = "统计工程", notes = "统计工程", httpMethod = "POST")
@PostMapping(value = "/countEngineering")
public Result<CountEngineeringVo> countEngineering() {
return Result.success(engineeringService.countEngineering());
@ -281,4 +291,21 @@ public class EngineeringController {
return Result.success(engineeringService.countEngineeringDistrictCost(paramMap));
}
@OperLog(operModul = "工程管理", operType = "查询", operDesc = "统计工程类别")
@ApiOperation(value = "统计工程类别", notes = "统计工程类别", httpMethod = "POST")
@ApiImplicitParams({
})
@PostMapping(value = "/countEngineeringType")
public Result<List<SectorVo>> countEngineeringType() {
return Result.success(engineeringService.countEngineeringType());
}
@OperLog(operModul = "工程管理", operType = "查询", operDesc = "统计工程每个区每个类别数量")
@ApiOperation(value = "统计工程每个区每个类别数量", notes = "统计工程每个区每个类别数量", httpMethod = "POST")
@ApiImplicitParams({
})
@PostMapping(value = "/countEngineeringEveryDistrictAndType")
public Result<MultiSectorVo> countEngineeringEveryDistrictAndType() {
return Result.success(engineeringService.countEngineeringEveryDistrictAndType());
}
}

View File

@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringSingle;
import com.zhgd.xmgl.valid.AddGroup;
import com.zhgd.xmgl.valid.EditGroup;
import io.swagger.annotations.ApiModel;
@ -335,5 +334,8 @@ public class Engineering implements Serializable {
@ApiModelProperty(value = "单体工程")
private List<EngineeringSingle> engineeringSingleList;
@TableField(exist = false)
@ApiModelProperty(hidden = true)
private Integer count;
}

View File

@ -1,4 +1,4 @@
package com.zhgd.xmgl.modules.basicdata.entity;
package com.zhgd.xmgl.modules.city.engineering.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;

View File

@ -1,4 +1,4 @@
package com.zhgd.xmgl.modules.basicdata.entity;
package com.zhgd.xmgl.modules.city.engineering.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;

View File

@ -1,4 +1,4 @@
package com.zhgd.xmgl.modules.basicdata.entity;
package com.zhgd.xmgl.modules.city.engineering.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;

View File

@ -1,4 +1,4 @@
package com.zhgd.xmgl.modules.basicdata.entity;
package com.zhgd.xmgl.modules.city.engineering.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;

View File

@ -1,7 +1,7 @@
package com.zhgd.xmgl.modules.basicdata.mapper;
package com.zhgd.xmgl.modules.city.engineering.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringMain;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMain;
import com.zhgd.xmgl.modules.city.enterprise.entity.Enterprise;
import org.apache.ibatis.annotations.Mapper;

View File

@ -1,7 +1,7 @@
package com.zhgd.xmgl.modules.basicdata.mapper;
package com.zhgd.xmgl.modules.city.engineering.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringMainPerson;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMainPerson;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;

View File

@ -70,4 +70,7 @@ public interface EngineeringMapper extends BaseMapper<Engineering> {
List<TrendVo> countEngineeringDistrictCost(HashMap<String, Object> paramMap);
List<SectorVo> countEngineeringType();
List<Engineering> countEngineeringEveryDistrictAndType();
}

View File

@ -1,7 +1,7 @@
package com.zhgd.xmgl.modules.basicdata.mapper;
package com.zhgd.xmgl.modules.city.engineering.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringSingle;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringSingle;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;

View File

@ -1,7 +1,7 @@
package com.zhgd.xmgl.modules.basicdata.mapper;
package com.zhgd.xmgl.modules.city.engineering.mapper;
import org.apache.ibatis.annotations.Mapper;
import com.zhgd.xmgl.modules.basicdata.entity.EnterpriseMainLicense;
import com.zhgd.xmgl.modules.city.engineering.entity.EnterpriseMainLicense;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zhgd.xmgl.modules.basicdata.mapper.EngineeringMainMapper">
<select id="getByEngineeringSn" resultType="com.zhgd.xmgl.modules.basicdata.entity.EngineeringMain">
<mapper namespace="com.zhgd.xmgl.modules.city.engineering.mapper.EngineeringMainMapper">
<select id="getByEngineeringSn" resultType="com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMain">
SELECT e.type, e.engineering_sn, t.enterprise_name
FROM engineering_main e
LEFT JOIN enterprise t ON e.enterprise_sn = t.enterprise_sn
@ -11,7 +11,7 @@
</foreach>
</select>
<select id="getList" resultType="com.zhgd.xmgl.modules.basicdata.entity.EngineeringMain">
<select id="getList" resultType="com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMain">
SELECT m.*, e.enterprise_name, e.credit_code, e.legal_person, e.legal_person_tel, d.dict_value as typeName
FROM engineering_main m
LEFT JOIN enterprise e ON m.enterprise_sn = e.enterprise_sn

View File

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zhgd.xmgl.modules.basicdata.mapper.EngineeringMainPersonMapper">
<mapper namespace="com.zhgd.xmgl.modules.city.engineering.mapper.EngineeringMainPersonMapper">
<select id="getList" resultType="com.zhgd.xmgl.modules.basicdata.entity.EngineeringMainPerson">
<select id="getList" resultType="com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMainPerson">
SELECT p.*, d.dict_value as jobName FROM engineering_main_person p
LEFT JOIN system_dict_data d ON p.job_id = d.dict_label AND d.dict_type = 'engineering_post'
WHERE p.engineering_sn = #{engineeringSn}

View File

@ -79,34 +79,40 @@
<select id="getTotalProjectCost" resultType="java.lang.Double">
select sum(engineering_cost)
from engineering
where examine_state = 3
</select>
<select id="getNewThisYearCount" resultType="java.lang.Integer">
select count(*)
from engineering
where year(start_time) = year(now())
where examine_state = 3
and year(start_time) = year(now())
</select>
<select id="getCompletedThisYearCount" resultType="java.lang.Integer">
select count(*)
from engineering
where year(end_time) = year(now())
where examine_state = 3
and year(end_time) = year(now())
</select>
<select id="getKeyProjectCount" resultType="java.lang.Integer">
select count(*)
from engineering
where is_important = 1
where examine_state = 3
and is_important = 1
</select>
<select id="getTotalEngineeringArea" resultType="java.lang.Double">
select sum(engineering_area)
from engineering
where examine_state = 3
</select>
<select id="getTotalEngineeringLength" resultType="java.lang.Double">
select sum(engineering_length)
from engineering
where examine_state = 3
</select>
<select id="countEngineeringState" resultType="com.zhgd.xmgl.base.entity.vo.SectorVo">
@ -213,5 +219,17 @@
</if>
group by province, city, district
</select>
<select id="countEngineeringType" resultType="com.zhgd.xmgl.base.entity.vo.SectorVo">
select engineering_type, count(*) count
from engineering
group by engineering_type
</select>
<select id="countEngineeringEveryDistrictAndType" resultType="com.zhgd.xmgl.modules.city.engineering.entity.Engineering">
select district, engineering_type, count(*) count
from engineering e
group by province, city, district, engineering_type
</select>
</mapper>

View File

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zhgd.xmgl.modules.basicdata.mapper.EngineeringSingleMapper">
<mapper namespace="com.zhgd.xmgl.modules.city.engineering.mapper.EngineeringSingleMapper">
<select id="getList" resultType="com.zhgd.xmgl.modules.basicdata.entity.EngineeringSingle">
<select id="getList" resultType="com.zhgd.xmgl.modules.city.engineering.entity.EngineeringSingle">
SELECT s.*, d.dict_value as shapeName FROM engineering_single s
LEFT JOIN system_dict_data d ON s.shape = d.dict_label AND d.dict_type = 'structural_style'
WHERE s.engineering_sn = #{engineeringSn}

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zhgd.xmgl.modules.basicdata.mapper.EnterpriseMainLicenseMapper">
<mapper namespace="com.zhgd.xmgl.modules.city.engineering.mapper.EnterpriseMainLicenseMapper">
</mapper>

View File

@ -1,7 +1,7 @@
package com.zhgd.xmgl.modules.basicdata.service;
package com.zhgd.xmgl.modules.city.engineering.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringMainPerson;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMainPerson;
import java.util.List;

View File

@ -1,7 +1,7 @@
package com.zhgd.xmgl.modules.basicdata.service;
package com.zhgd.xmgl.modules.city.engineering.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringMain;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMain;
import java.util.List;

View File

@ -3,11 +3,12 @@ package com.zhgd.xmgl.modules.city.engineering.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhgd.xmgl.base.entity.vo.MultiSectorVo;
import com.zhgd.xmgl.base.entity.vo.SectorVo;
import com.zhgd.xmgl.base.entity.vo.TrendVo;
import com.zhgd.xmgl.modules.basicdata.dto.AppIndexTopStatDto;
import com.zhgd.xmgl.modules.basicdata.dto.EngineeringPageDto;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringSingle;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringSingle;
import com.zhgd.xmgl.modules.basicdata.statistics.EngineeringStat;
import com.zhgd.xmgl.modules.basicdata.vo.EngineeringVo;
import com.zhgd.xmgl.modules.city.engineering.entity.Engineering;
@ -76,4 +77,8 @@ public interface IEngineeringService extends IService<Engineering> {
EngineeringTrendProgressVo getEngineeringTrendProgressMonth(HashMap<String, Object> paramMap);
List<TrendVo> countEngineeringDistrictCost(HashMap<String, Object> paramMap);
List<SectorVo> countEngineeringType();
MultiSectorVo countEngineeringEveryDistrictAndType();
}

View File

@ -1,7 +1,7 @@
package com.zhgd.xmgl.modules.basicdata.service;
package com.zhgd.xmgl.modules.city.engineering.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringSingle;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringSingle;
import com.zhgd.xmgl.modules.basicdata.vo.EngineeringVo;
import java.util.List;

View File

@ -1,6 +1,6 @@
package com.zhgd.xmgl.modules.basicdata.service;
package com.zhgd.xmgl.modules.city.engineering.service;
import com.zhgd.xmgl.modules.basicdata.entity.EnterpriseMainLicense;
import com.zhgd.xmgl.modules.city.engineering.entity.EnterpriseMainLicense;
import com.baomidou.mybatisplus.extension.service.IService;
/**

View File

@ -1,8 +1,8 @@
package com.zhgd.xmgl.modules.basicdata.service.impl;
package com.zhgd.xmgl.modules.city.engineering.service.impl;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringMainPerson;
import com.zhgd.xmgl.modules.basicdata.mapper.EngineeringMainPersonMapper;
import com.zhgd.xmgl.modules.basicdata.service.IEngineeringMainPersonService;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMainPerson;
import com.zhgd.xmgl.modules.city.engineering.mapper.EngineeringMainPersonMapper;
import com.zhgd.xmgl.modules.city.engineering.service.IEngineeringMainPersonService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;

View File

@ -1,8 +1,8 @@
package com.zhgd.xmgl.modules.basicdata.service.impl;
package com.zhgd.xmgl.modules.city.engineering.service.impl;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringMain;
import com.zhgd.xmgl.modules.basicdata.mapper.EngineeringMainMapper;
import com.zhgd.xmgl.modules.basicdata.service.IEngineeringMainService;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMain;
import com.zhgd.xmgl.modules.city.engineering.mapper.EngineeringMainMapper;
import com.zhgd.xmgl.modules.city.engineering.service.IEngineeringMainService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;

View File

@ -1,5 +1,6 @@
package com.zhgd.xmgl.modules.city.engineering.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.NumberUtil;
@ -13,22 +14,32 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhgd.jeecg.common.system.query.QueryGenerator;
import com.zhgd.jeecg.common.util.PageUtil;
import com.zhgd.xmgl.base.entity.vo.MultiSectorOne;
import com.zhgd.xmgl.base.entity.vo.MultiSectorVo;
import com.zhgd.xmgl.base.entity.vo.SectorVo;
import com.zhgd.xmgl.base.entity.vo.TrendVo;
import com.zhgd.xmgl.handler.exception.CustomException;
import com.zhgd.xmgl.modules.basicdata.dto.AppIndexTopStatDto;
import com.zhgd.xmgl.modules.basicdata.dto.EngineeringPageDto;
import com.zhgd.xmgl.modules.basicdata.entity.*;
import com.zhgd.xmgl.modules.basicdata.service.*;
import com.zhgd.xmgl.modules.basicdata.entity.AnnexFile;
import com.zhgd.xmgl.modules.basicdata.entity.SystemDictData;
import com.zhgd.xmgl.modules.basicdata.service.IAnnexFileService;
import com.zhgd.xmgl.modules.basicdata.service.ISystemDictDataService;
import com.zhgd.xmgl.modules.basicdata.statistics.EngineeringStat;
import com.zhgd.xmgl.modules.basicdata.vo.EngineeringVo;
import com.zhgd.xmgl.modules.city.dust.service.IEnvironmentAlarmService;
import com.zhgd.xmgl.modules.city.engineering.entity.Engineering;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMain;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMainPerson;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringSingle;
import com.zhgd.xmgl.modules.city.engineering.entity.vo.CountEngineeringVo;
import com.zhgd.xmgl.modules.city.engineering.entity.vo.EngineeringTrendProgressVo;
import com.zhgd.xmgl.modules.city.engineering.entity.vo.EngineeringTrendVo;
import com.zhgd.xmgl.modules.city.engineering.mapper.EngineeringMapper;
import com.zhgd.xmgl.modules.city.engineering.service.IEngineeringMainPersonService;
import com.zhgd.xmgl.modules.city.engineering.service.IEngineeringMainService;
import com.zhgd.xmgl.modules.city.engineering.service.IEngineeringService;
import com.zhgd.xmgl.modules.city.engineering.service.IEngineeringSingleService;
import com.zhgd.xmgl.modules.city.government.entity.Government;
import com.zhgd.xmgl.modules.city.government.mapper.GovernmentMapper;
import com.zhgd.xmgl.modules.city.monitor.mapper.MonitorDevMapper;
@ -375,6 +386,58 @@ public class EngineeringServiceImpl extends ServiceImpl<EngineeringMapper, Engin
return list;
}
@Override
public List<SectorVo> countEngineeringType() {
List<SectorVo> list = baseMapper.countEngineeringType();
List<SectorVo> rtList = new ArrayList<>();
Map<Integer, SectorVo> map = list.stream().collect(Collectors.toMap(SectorVo::getEngineeringType, Function.identity()));
for (ParamEnum.EngineeringType type : ParamEnum.EngineeringType.values()) {
SectorVo vo = map.get(type.getValue());
if (vo == null) {
vo = new SectorVo();
vo.setCount("0");
}
vo.setName(type.getDesc());
rtList.add(vo);
}
rtList.sort((o1, o2) -> Integer.valueOf(o2.getCount()).compareTo(Integer.valueOf(o1.getCount())));
return rtList;
}
@Override
public MultiSectorVo countEngineeringEveryDistrictAndType() {
List<Engineering> list = baseMapper.countEngineeringEveryDistrictAndType();
List<Government> myGovernments = governmentMapper.getMyGovernments(SecurityUtil.getUser().getSn());
if (CollUtil.isEmpty(myGovernments)) {
return null;
}
List<String> names = myGovernments.stream().map(Government::getGovernmentName).collect(Collectors.toList());
MultiSectorVo vo = new MultiSectorVo();
vo.setX(names);
List<MultiSectorOne> data = new ArrayList<>();
for (ParamEnum.EngineeringType type : ParamEnum.EngineeringType.values()) {
MultiSectorOne one = new MultiSectorOne();
one.setName(type.getDesc());
one.setData(getData(names, type, list));
data.add(one);
}
vo.setData(data);
return vo;
}
private List<String> getData(List<String> names, ParamEnum.EngineeringType type, List<Engineering> list) {
List<String> rtList = new ArrayList<>();
for (String name : names) {
List<Engineering> l = list.stream().filter(e -> Objects.equals(name, e.getDistrict()) && Objects.equals(type.getValue(), e.getEngineeringType())).collect(Collectors.toList());
if (CollUtil.isNotEmpty(l)) {
rtList.add(l.get(0).getCount() + "");
} else {
rtList.add("0");
}
}
return rtList;
}
private List<TrendVo> getUnderConstructions(List<Engineering> list) {
List<TrendVo> trendVos = new ArrayList<>();
int year = DateUtil.year(new Date());

View File

@ -1,15 +1,15 @@
package com.zhgd.xmgl.modules.basicdata.service.impl;
package com.zhgd.xmgl.modules.city.engineering.service.impl;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.zhgd.xmgl.modules.basicdata.entity.AnnexFile;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringMain;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringMainPerson;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringSingle;
import com.zhgd.xmgl.modules.basicdata.mapper.EngineeringSingleMapper;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMain;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMainPerson;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringSingle;
import com.zhgd.xmgl.modules.city.engineering.mapper.EngineeringSingleMapper;
import com.zhgd.xmgl.modules.basicdata.service.IAnnexFileService;
import com.zhgd.xmgl.modules.basicdata.service.IEngineeringMainPersonService;
import com.zhgd.xmgl.modules.basicdata.service.IEngineeringMainService;
import com.zhgd.xmgl.modules.basicdata.service.IEngineeringSingleService;
import com.zhgd.xmgl.modules.city.engineering.service.IEngineeringMainPersonService;
import com.zhgd.xmgl.modules.city.engineering.service.IEngineeringMainService;
import com.zhgd.xmgl.modules.city.engineering.service.IEngineeringSingleService;
import com.zhgd.xmgl.modules.basicdata.vo.EngineeringVo;
import com.zhgd.xmgl.modules.city.project.entity.Project;
import com.zhgd.xmgl.modules.city.project.service.IProjectService;

View File

@ -1,8 +1,8 @@
package com.zhgd.xmgl.modules.basicdata.service.impl;
package com.zhgd.xmgl.modules.city.engineering.service.impl;
import com.zhgd.xmgl.modules.basicdata.entity.EnterpriseMainLicense;
import com.zhgd.xmgl.modules.basicdata.mapper.EnterpriseMainLicenseMapper;
import com.zhgd.xmgl.modules.basicdata.service.IEnterpriseMainLicenseService;
import com.zhgd.xmgl.modules.city.engineering.entity.EnterpriseMainLicense;
import com.zhgd.xmgl.modules.city.engineering.mapper.EnterpriseMainLicenseMapper;
import com.zhgd.xmgl.modules.city.engineering.service.IEnterpriseMainLicenseService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;

View File

@ -4,7 +4,7 @@ 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.zhgd.xmgl.modules.basicdata.entity.EnterpriseMainLicense;
import com.zhgd.xmgl.modules.city.engineering.entity.EnterpriseMainLicense;
import com.zhgd.xmgl.valid.AddGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

View File

@ -10,10 +10,10 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhgd.jeecg.common.util.PageUtil;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringMain;
import com.zhgd.xmgl.modules.basicdata.entity.EnterpriseMainLicense;
import com.zhgd.xmgl.modules.basicdata.mapper.EngineeringMainMapper;
import com.zhgd.xmgl.modules.basicdata.service.IEnterpriseMainLicenseService;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMain;
import com.zhgd.xmgl.modules.city.engineering.entity.EnterpriseMainLicense;
import com.zhgd.xmgl.modules.city.engineering.mapper.EngineeringMainMapper;
import com.zhgd.xmgl.modules.city.engineering.service.IEnterpriseMainLicenseService;
import com.zhgd.xmgl.modules.basicdata.vo.EnterpriseVo;
import com.zhgd.xmgl.modules.city.basicdata.entity.SystemUser;
import com.zhgd.xmgl.modules.city.basicdata.service.ISystemUserService;

View File

@ -4,6 +4,8 @@ import org.apache.ibatis.annotations.Mapper;
import com.zhgd.xmgl.modules.city.government.entity.Government;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import java.util.List;
/**
* @Description: 政务信息
* @author pds
@ -12,5 +14,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
*/
@Mapper
public interface GovernmentMapper extends BaseMapper<Government> {
List<Government> getMyGovernments(String sn);
}

View File

@ -1,5 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zhgd.xmgl.modules.city.government.mapper.GovernmentMapper">
<select id="getMyGovernments" resultType="com.zhgd.xmgl.modules.city.government.entity.Government">
select *
from `government` g
INNER JOIN `government` fg ON g.parent_id = fg.government_id
where fg.government_sn = #{sn}
</select>
</mapper>

View File

@ -9,8 +9,8 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhgd.xmgl.handler.exception.CustomException;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringMain;
import com.zhgd.xmgl.modules.basicdata.service.IEngineeringMainService;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMain;
import com.zhgd.xmgl.modules.city.engineering.service.IEngineeringMainService;
import com.zhgd.xmgl.modules.city.engineering.entity.Engineering;
import com.zhgd.xmgl.modules.city.project.entity.Project;
import com.zhgd.xmgl.modules.city.engineering.service.IEngineeringService;

View File

@ -11,8 +11,8 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhgd.xmgl.handler.exception.CustomException;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringMain;
import com.zhgd.xmgl.modules.basicdata.service.IEngineeringMainService;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMain;
import com.zhgd.xmgl.modules.city.engineering.service.IEngineeringMainService;
import com.zhgd.xmgl.modules.city.deepexcavation.mapper.DeepExcavationEngineeringMapper;
import com.zhgd.xmgl.modules.city.engineering.entity.Engineering;
import com.zhgd.xmgl.modules.city.engineering.mapper.DangerousEngineeringMapper;

View File

@ -7,9 +7,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhgd.jeecg.common.util.PageUtil;
import com.zhgd.xmgl.handler.exception.CustomException;
import com.zhgd.xmgl.modules.basicdata.entity.EngineeringMain;
import com.zhgd.xmgl.modules.city.engineering.entity.EngineeringMain;
import com.zhgd.xmgl.modules.basicdata.entity.SystemDictData;
import com.zhgd.xmgl.modules.basicdata.service.IEngineeringMainService;
import com.zhgd.xmgl.modules.city.engineering.service.IEngineeringMainService;
import com.zhgd.xmgl.modules.basicdata.service.ISystemDictDataService;
import com.zhgd.xmgl.modules.safety.dto.EnterpriseScoreDto;
import com.zhgd.xmgl.modules.safety.entity.EnterpriseScore;