修复bug

This commit is contained in:
guo 2023-10-08 18:44:32 +08:00
parent 11aa7cd217
commit db534e7c00
5 changed files with 53 additions and 15 deletions

View File

@ -0,0 +1,9 @@
package com.zhgd.xmgl.modules.project.entity.bo;
import lombok.Data;
@Data
public class ProjectStatisticsCountBo {
private Integer projectNum;
private Double saleAcreageTotal;
}

View File

@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhgd.jeecg.common.mybatis.EntityMap; import com.zhgd.jeecg.common.mybatis.EntityMap;
import com.zhgd.xmgl.modules.basicdata.entity.vo.CompanyProjectTypeCountVo; import com.zhgd.xmgl.modules.basicdata.entity.vo.CompanyProjectTypeCountVo;
import com.zhgd.xmgl.modules.project.entity.Project; 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.ConstructionStageVo;
import com.zhgd.xmgl.modules.project.entity.vo.GroupByProjectProgressVo; 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.GroupByProjectTypeVo;
@ -51,7 +52,7 @@ public interface ProjectMapper extends BaseMapper<Project> {
Map<String, Object> selectDevStatisticsCount(Map<String, Object> map); Map<String, Object> selectDevStatisticsCount(Map<String, Object> map);
Map<String, Object> selectProjectStatisticsCount(Map<String, Object> map); ProjectStatisticsCountBo selectProjectStatisticsCount(Map<String, Object> map);
List<EntityMap> selectDevCoordinateList(Map<String, Object> map); List<EntityMap> selectDevCoordinateList(Map<String, Object> map);

View File

@ -337,7 +337,8 @@
</if> </if>
</where> </where>
</select> </select>
<select id="selectProjectStatisticsCount" resultType="java.util.Map"> <select id="selectProjectStatisticsCount"
resultType="com.zhgd.xmgl.modules.project.entity.bo.ProjectStatisticsCountBo">
SELECT COUNT(1) projectNum, SELECT COUNT(1) projectNum,
IFNULL(SUM(a.sale_acreage), 0) saleAcreageTotal IFNULL(SUM(a.sale_acreage), 0) saleAcreageTotal
FROM project a FROM project a
@ -345,6 +346,9 @@
Left JOIN company b ON cp.parent_id = b.company_id Left JOIN company b ON cp.parent_id = b.company_id
Left JOIN company f ON b.parent_id = f.company_id Left JOIN company f ON b.parent_id = f.company_id
<where> <where>
<if test="projectName != null and projectName != ''">
and a.project_name like CONCAT(CONCAT('%', #{projectName}), '%')
</if>
<if test="companyType == '1'.toString()"> <if test="companyType == '1'.toString()">
and f.headquarters_sn = #{sn} and f.headquarters_sn = #{sn}
</if> </if>
@ -354,6 +358,9 @@
<if test="companyType == '3'.toString()"> <if test="companyType == '3'.toString()">
and b.company_sn = #{sn} and b.company_sn = #{sn}
</if> </if>
<if test="companyType == '4'.toString()">
and a.project_sn = #{sn}
</if>
<if test="companyType == '5'.toString()"> <if test="companyType == '5'.toString()">
and cp.company_sn = #{sn} and cp.company_sn = #{sn}
</if> </if>

View File

@ -15,8 +15,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.gexin.fastjson.JSON;
import com.gexin.fastjson.JSONArray;
import com.zhgd.jeecg.common.api.vo.Result; import com.zhgd.jeecg.common.api.vo.Result;
import com.zhgd.jeecg.common.execption.OpenAlertException; import com.zhgd.jeecg.common.execption.OpenAlertException;
import com.zhgd.jeecg.common.mybatis.EntityMap; import com.zhgd.jeecg.common.mybatis.EntityMap;
@ -29,6 +27,7 @@ import com.zhgd.xmgl.modules.basicdata.service.UploadFileService;
import com.zhgd.xmgl.modules.govtapi.GovtOpenApiService; import com.zhgd.xmgl.modules.govtapi.GovtOpenApiService;
import com.zhgd.xmgl.modules.project.entity.Project; import com.zhgd.xmgl.modules.project.entity.Project;
import com.zhgd.xmgl.modules.project.entity.ProjectEnterprise; import com.zhgd.xmgl.modules.project.entity.ProjectEnterprise;
import com.zhgd.xmgl.modules.project.entity.bo.ProjectStatisticsCountBo;
import com.zhgd.xmgl.modules.project.mapper.ProjectEnterpriseMapper; import com.zhgd.xmgl.modules.project.mapper.ProjectEnterpriseMapper;
import com.zhgd.xmgl.modules.project.mapper.ProjectMapper; import com.zhgd.xmgl.modules.project.mapper.ProjectMapper;
import com.zhgd.xmgl.modules.project.service.IProjectUfaceConfigService; import com.zhgd.xmgl.modules.project.service.IProjectUfaceConfigService;
@ -399,7 +398,7 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
map.put("companyType", "5"); map.put("companyType", "5");
} }
Map<String, Object> devcount = projectMapper.selectDevStatisticsCount(map); Map<String, Object> devcount = projectMapper.selectDevStatisticsCount(map);
Map<String, Object> projectcount = projectMapper.selectProjectStatisticsCount(map); ProjectStatisticsCountBo projectcount = projectMapper.selectProjectStatisticsCount(map);
WorkerManageStatisticsVo.WorkerCount workercount = workerInfoMapper.getProjectWorkerStatistics(map); WorkerManageStatisticsVo.WorkerCount workercount = workerInfoMapper.getProjectWorkerStatistics(map);
WorkerManageStatisticsVo.PresenceCount presencecount = workerInfoMapper.getWorkerPresenceStatistics(map); WorkerManageStatisticsVo.PresenceCount presencecount = workerInfoMapper.getWorkerPresenceStatistics(map);
map.put("timeType", 1); map.put("timeType", 1);
@ -412,7 +411,7 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
} else { } else {
map.put("companyType", "4"); map.put("companyType", "4");
Map<String, Object> devcount = projectMapper.selectDevStatisticsCount(map); Map<String, Object> devcount = projectMapper.selectDevStatisticsCount(map);
Map<String, Object> projectcount = projectMapper.selectProjectStatisticsCount(map); ProjectStatisticsCountBo projectcount = projectMapper.selectProjectStatisticsCount(map);
WorkerManageStatisticsVo.WorkerCount workercount = workerInfoMapper.getProjectWorkerStatistics(map); WorkerManageStatisticsVo.WorkerCount workercount = workerInfoMapper.getProjectWorkerStatistics(map);
WorkerManageStatisticsVo.PresenceCount presencecount = workerInfoMapper.getWorkerPresenceStatistics(map); WorkerManageStatisticsVo.PresenceCount presencecount = workerInfoMapper.getWorkerPresenceStatistics(map);
map.put("timeType", 1); map.put("timeType", 1);
@ -644,6 +643,8 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
} }
//查询项目下所有人员按照人员类型年龄岗位等统计人员数 //查询项目下所有人员按照人员类型年龄岗位等统计人员数
WorkerManageStatisticsVo.WorkerCount workercount = workerInfoMapper.getProjectWorkerStatistics(map); WorkerManageStatisticsVo.WorkerCount workercount = workerInfoMapper.getProjectWorkerStatistics(map);
ProjectStatisticsCountBo projectStatisticsCountBo = projectMapper.selectProjectStatisticsCount(map);
workercount.setTotalSaleAcreage(projectStatisticsCountBo.getSaleAcreageTotal());
//查询参加安全教育人员数量 //查询参加安全教育人员数量
int educationPerson = workerSafeEducationMapper.getCurrentMonthSafeEducationPersonToltal(map); int educationPerson = workerSafeEducationMapper.getCurrentMonthSafeEducationPersonToltal(map);
workercount.setEduPersonTotal(educationPerson); workercount.setEduPersonTotal(educationPerson);
@ -656,15 +657,12 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
//获取黑名单人数占劳务人员和管理人员数的比例 //获取黑名单人数占劳务人员和管理人员数的比例
double blacklistratio = DataObjUtils.getPercentage("" + workercount.getBlacklistPersonTotal(), lwAndGlPersonTotal); double blacklistratio = DataObjUtils.getPercentage("" + workercount.getBlacklistPersonTotal(), lwAndGlPersonTotal);
workercount.setBlacklistratio(blacklistratio); workercount.setBlacklistratio(blacklistratio);
//计算劳务人员和项目可售面积的比例 //计算劳务人员人均面积
double lwacreageratio = DataObjUtils.getPercentage("" + workercount.getTotalSaleAcreage(), totallwPerson); workercount.setLwacreageratio(NumberUtils.div(workercount.getTotalSaleAcreage(), Double.valueOf(totallwPerson), 2));
workercount.setLwacreageratio(lwacreageratio); //计算管理人员人均面积
//计算管理人员和项目可售面积的比例 workercount.setGlacreageratio(NumberUtils.div(workercount.getTotalSaleAcreage(), Double.valueOf(totalglPerson), 2));
double glacreageratio = DataObjUtils.getPercentage("" + workercount.getTotalSaleAcreage(), totalglPerson); //计算监理管理人员人均面积
workercount.setGlacreageratio(glacreageratio); workercount.setJlacreageratio(NumberUtils.div(workercount.getTotalSaleAcreage(), workercount.getJlGlPersonTotal(), 2));
//计算监理管理人员和项目可售面积的比例
double jlacreageratio = DataObjUtils.getPercentage("" + workercount.getTotalSaleAcreage(), "" + workercount.getJlGlPersonTotal());
workercount.setJlacreageratio(jlacreageratio);
//查询在场的人员按照人员类型年龄岗位等统计人员数 //查询在场的人员按照人员类型年龄岗位等统计人员数
WorkerManageStatisticsVo.PresenceCount presencecount = workerInfoMapper.getWorkerPresenceStatistics(map); WorkerManageStatisticsVo.PresenceCount presencecount = workerInfoMapper.getWorkerPresenceStatistics(map);
//查询各工种人数 //查询各工种人数

View File

@ -0,0 +1,23 @@
package com.zhgd.xmgl.util;
import cn.hutool.core.util.NumberUtil;
import lombok.experimental.UtilityClass;
@UtilityClass
public class NumberUtils {
/**
* 除以
*
* @param b1
* @param b2
* @param scale
* @return
*/
public Double div(Double b1, Double b2, Integer scale) {
if (b1 == null || b2 == null || b2.equals(0D)) {
return 0D;
}
return NumberUtil.round(b1 / b2, scale).doubleValue();
}
}