Browse Source

看板1.3

master
uu 4 months ago
parent
commit
47676c8112
  1. 23
      huzhou/src/main/java/com/easy/admin/modules/huzhou/controller/HuzhouProjectController.java
  2. 11
      huzhou/src/main/java/com/easy/admin/modules/huzhou/dao/HuzhouProjectinfoMapper.java
  3. 53
      huzhou/src/main/java/com/easy/admin/modules/huzhou/dao/mapping/HuzhouProjectinfoMapper.xml
  4. 2
      huzhou/src/main/java/com/easy/admin/modules/huzhou/service/IHuzhouProjectinfoService.java
  5. 110
      huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouProjectinfoServiceImpl.java
  6. 7
      huzhou/src/main/java/com/easy/admin/modules/huzhou/vo/CountByConditionOV.java
  7. 5
      huzhou/src/main/java/com/easy/admin/modules/huzhou/vo/DimensionPageOV.java
  8. 66
      huzhou/src/main/java/com/easy/admin/modules/huzhou/vo/DimensionPageResponse.java
  9. 73
      huzhou/src/main/java/com/easy/admin/modules/huzhou/vo/ProjectPageOV.java
  10. 72
      huzhou/src/main/java/com/easy/admin/modules/huzhou/vo/ProjectPageResponse.java

23
huzhou/src/main/java/com/easy/admin/modules/huzhou/controller/HuzhouProjectController.java

@ -193,8 +193,8 @@ public class HuzhouProjectController {
* @param * @param
* @param * @param
*/ */
@GetMapping("/acount") @GetMapping("/getDimensionPageSorted")
public Result<?> acount(HuzhouProjectinfo projectInfo, public Result<?> getDimensionPageSorted(HuzhouProjectinfo projectInfo,
@RequestParam(name="current", defaultValue="1") Integer pageNo, @RequestParam(name="current", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize, @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
@RequestParam(name="orderBy", defaultValue="duty_workplace") String orderBy, @RequestParam(name="orderBy", defaultValue="duty_workplace") String orderBy,
@ -203,5 +203,24 @@ public class HuzhouProjectController {
return Result.OK(dimensionPage); return Result.OK(dimensionPage);
} }
@GetMapping("/getPageSorted")
public Result<?> getPageSorted(HuzhouProjectinfo projectInfo,
@RequestParam(name="current", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
@RequestParam(name="orderBy", defaultValue="duty_workplace") String orderBy,
@RequestParam(name="orderDir", defaultValue="desc") String orderDir){
IPage<ProjectPageResponse> projectPage = projectinfoService.getProjectPage(projectInfo, pageNo, pageSize, orderBy, orderDir);
return Result.OK(projectPage);
}
@GetMapping("/countByCondition")
public Result<?> countByCondition(HuzhouProjectinfo projectInfo,
@RequestParam(name="current", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
@RequestParam(name="orderBy", defaultValue="duty_workplace") String orderBy,
@RequestParam(name="orderDir", defaultValue="desc") String orderDir){
IPage<ProjectPageResponse> projectPage = projectinfoService.getProjectPage(projectInfo, pageNo, pageSize, orderBy, orderDir);
return Result.OK(projectPage);
}
} }

11
huzhou/src/main/java/com/easy/admin/modules/huzhou/dao/HuzhouProjectinfoMapper.java

@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.easy.admin.modules.huzhou.vo.DimensionPageOV; import com.easy.admin.modules.huzhou.vo.DimensionPageOV;
import com.easy.admin.modules.huzhou.vo.HuzhouProjectinfoOV; import com.easy.admin.modules.huzhou.vo.HuzhouProjectinfoOV;
import com.easy.admin.modules.huzhou.vo.ProjectPageOV;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import com.easy.admin.modules.huzhou.entity.HuzhouProjectinfo; import com.easy.admin.modules.huzhou.entity.HuzhouProjectinfo;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
@ -51,11 +52,17 @@ public interface HuzhouProjectinfoMapper extends BaseMapper<HuzhouProjectinfo> {
Integer updateType(); Integer updateType();
/** /**
* 获取项目信息和子项目信息列表(排序) * 获取项目信息列表(排序)
* @param info 查询条件 * @param info 查询条件
* @return List<HuzhouProjectinfoOV> * @return List<HuzhouProjectinfoOV>
*/ */
IPage<DimensionPageOV> getPageSorted(Page page, @Param("info") HuzhouProjectinfo info, @Param("orderBy") String orderBy, @Param("orderDir") String orderDir); IPage<DimensionPageOV> getDimensionPageSorted(Page page, @Param("info") HuzhouProjectinfo info, @Param("orderBy") String orderBy, @Param("orderDir") String orderDir);
/**
* 获取项目信息列表(排序)
* @param info 查询条件
* @return List<HuzhouProjectinfoOV>
*/
IPage<ProjectPageOV> getProjectPageSorted(Page page, @Param("info") HuzhouProjectinfo info, @Param("orderBy") String orderBy, @Param("orderDir") String orderDir);
} }

53
huzhou/src/main/java/com/easy/admin/modules/huzhou/dao/mapping/HuzhouProjectinfoMapper.xml

@ -63,6 +63,17 @@
<result property="centralMoney" column="centralMoney" jdbcType="NUMERIC"/> <result property="centralMoney" column="centralMoney" jdbcType="NUMERIC"/>
<result property="provincialMoney" column="provincialMoney" jdbcType="NUMERIC"/> <result property="provincialMoney" column="provincialMoney" jdbcType="NUMERIC"/>
</resultMap> </resultMap>
<resultMap id="projectPageMap" type="com.easy.admin.modules.huzhou.vo.ProjectPageOV">
<result property="id" column="id" jdbcType="VARCHAR"/>
<result property="projectName" column="projectName" jdbcType="VARCHAR"/>
<result property="dutyWorkplace" column="dutyWorkplace" jdbcType="VARCHAR"/>
<result property="adminDivision" column="adminDivision" jdbcType="VARCHAR"/>
<result property="workplaceProperties" column="workplaceProperties" jdbcType="VARCHAR"/>
<result property="superLeader" column="superLeader" jdbcType="VARCHAR"/>
<result property="totalMoney" column="totalMoney" jdbcType="NUMERIC"/>
<result property="centralMoney" column="centralMoney" jdbcType="NUMERIC"/>
<result property="provincialMoney" column="provincialMoney" jdbcType="NUMERIC"/>
</resultMap>
<sql id="selectAuthSql"> <sql id="selectAuthSql">
(1=1 (1=1
<if test="info.projectContacts!=null and info.projectContacts!=''"> <if test="info.projectContacts!=null and info.projectContacts!=''">
@ -222,7 +233,7 @@ order by create_date desc
SET type = "0" SET type = "0"
WHERE type = "2" and (central_money!='' or provincial_money!='') WHERE type = "2" and (central_money!='' or provincial_money!='')
</update> </update>
<select id="getPageSorted" resultMap="dimensionPageMap" parameterType="com.easy.admin.modules.huzhou.entity.HuzhouProjectinfo"> <select id="getDimensionPageSorted" resultMap="dimensionPageMap" parameterType="com.easy.admin.modules.huzhou.entity.HuzhouProjectinfo">
SELECT duty_workplace as dutyWorkplace,admin_division as adminDivision,workplace_properties as workplaceProperties,super_leader as superLeader, SELECT duty_workplace as dutyWorkplace,admin_division as adminDivision,workplace_properties as workplaceProperties,super_leader as superLeader,
sum(total_money) as totalMoney, sum(total_money) as totalMoney,
sum(central_money) as centralMoney, sum(central_money) as centralMoney,
@ -260,8 +271,44 @@ order by create_date desc
group by duty_workplace,admin_division,workplace_properties,super_leader group by duty_workplace,admin_division,workplace_properties,super_leader
order by ${orderBy} ${orderDir} order by ${orderBy} ${orderDir}
</select> </select>
<select id="getProjectPageSorted" resultMap="projectPageMap" parameterType="com.easy.admin.modules.huzhou.entity.HuzhouProjectinfo">
SELECT id as id,project_name as projectName,duty_workplace as dutyWorkplace,admin_division as adminDivision,workplace_properties as workplaceProperties,super_leader as superLeader,
total_money as totalMoney,
central_money as centralMoney,
provincial_money as provincialMoney from huzhou_projectinfo
<where>
<include refid="selectAuthSql"/>
<if test="info.projectName!=null and info.projectName!=''">
<bind name="tempStr" value="'%' + info.projectName + '%'" />
and project_name like #{tempStr}
</if>
<select id="getPageSorted" resultMap="dimensionPageMap" parameterType="com.easy.admin.modules.huzhou.entity.HuzhouProjectinfo"> <if test="info.adminDivision!=null and info.adminDivision!=''">
<bind name="tempStr" value="'%' + info.adminDivision + '%'" />
and admin_division like #{tempStr}
</if>
<if test="info.dutyWorkplace!=null and info.dutyWorkplace!=''">
<bind name="tempStr" value="'%' + info.dutyWorkplace + '%'" />
and duty_workplace like #{tempStr}
</if>
<if test="info.workplaceProperties!=null and info.workplaceProperties!=''">
<bind name="tempStr" value="'%' + info.workplaceProperties + '%'" />
and workplace_properties like #{tempStr}
</if>
<if test="info.dutyWorkplace!=null and info.dutyWorkplace!=''">
<bind name="tempStr" value="'%' + info.dutyWorkplace + '%'" />
and duty_workplace like #{tempStr}
</if>
<if test="info.reformName!=null and info.reformName!=''">
and reform_name = #{info.reformName}
</if>
<if test="info.superLeader!=null and info.superLeader!=''">
and super_leader = #{info.superLeader}
</if>
</where>
order by ${orderBy} ${orderDir}
</select>
<select id="getDimensionPageSortedByCondition" resultMap="dimensionPageMap" parameterType="com.easy.admin.modules.huzhou.entity.HuzhouProjectinfo">
SELECT duty_workplace as dutyWorkplace,admin_division as adminDivision,workplace_properties as workplaceProperties,super_leader as superLeader, SELECT duty_workplace as dutyWorkplace,admin_division as adminDivision,workplace_properties as workplaceProperties,super_leader as superLeader,
sum(total_money) as totalMoney, sum(total_money) as totalMoney,
sum(central_money) as centralMoney, sum(central_money) as centralMoney,
@ -296,7 +343,7 @@ order by create_date desc
and super_leader = #{info.superLeader} and super_leader = #{info.superLeader}
</if> </if>
</where> </where>
group by duty_workplace,admin_division,workplace_properties,super_leader group by ${condition}
order by ${orderBy} ${orderDir} order by ${orderBy} ${orderDir}
</select> </select>
</mapper> </mapper>

2
huzhou/src/main/java/com/easy/admin/modules/huzhou/service/IHuzhouProjectinfoService.java

@ -171,7 +171,7 @@ public interface IHuzhouProjectinfoService extends IService<HuzhouProjectinfo> {
*/ */
IPage<DimensionPageResponse> getDimensionPage(HuzhouProjectinfo projectInfo, Integer pageNo, Integer pageSize,String orderBy,String orderDir); IPage<DimensionPageResponse> getDimensionPage(HuzhouProjectinfo projectInfo, Integer pageNo, Integer pageSize,String orderBy,String orderDir);
IPage<ProjectPageResponse> getProjectPage(HuzhouProjectinfo projectInfo, Integer pageNo, Integer pageSize,String orderBy,String orderDir);
} }

110
huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouProjectinfoServiceImpl.java

@ -758,18 +758,22 @@ public class HuzhouProjectinfoServiceImpl extends ServiceImpl<HuzhouProjectinfoM
public ProjectProgressOV getProgress(List<String> Ids) { public ProjectProgressOV getProgress(List<String> Ids) {
int fininshNum=0; int fininshNum=0;
int unfininshNum=0; int unfininshNum=0;
BigDecimal progress = new BigDecimal("0.00"); double progress=0.00;
String formatted = "0.00";
if(Ids.size()!=0){ if(Ids.size()!=0){
List<HuzhouPlaninfo> planInfoList = planinfoService.listByProjectIds(Ids); List<HuzhouPlaninfo> planInfoList = planinfoService.listByProjectIds(Ids);
fininshNum = (int) planInfoList.stream().filter(x -> (x.getIsfinish().equals("2"))).count(); fininshNum = (int) planInfoList.stream().filter(x -> (x.getIsfinish().equals("2"))).count();
unfininshNum = planInfoList.size()-fininshNum; unfininshNum = planInfoList.size()-fininshNum;
if(fininshNum!=0&&planInfoList.size()!=0){
progress= (double)fininshNum/planInfoList.size();
formatted = String.format("%.2f", progress);
}
progress= BigDecimal.valueOf(((double) fininshNum/planInfoList.size()));
} }
ProjectProgressOV result = ProjectProgressOV.builder().fininshNum(fininshNum) ProjectProgressOV result = ProjectProgressOV.builder().fininshNum(fininshNum)
.unfininshNum(unfininshNum) .unfininshNum(unfininshNum)
.projectProgress(String.valueOf(progress)).build(); .projectProgress(formatted).build();
return result; return result;
} }
@ -796,21 +800,29 @@ public class HuzhouProjectinfoServiceImpl extends ServiceImpl<HuzhouProjectinfoM
@Override @Override
public NewFundOV getFund(List<String> Ids) { public NewFundOV getFund(List<String> Ids) {
NewFundOV result = null; NewFundOV result = null;
BigDecimal defVal = new BigDecimal("0.00");
if(Ids.size()!=0){ if(Ids.size()!=0){
Map<String, BigDecimal> totalMap = contractinfoMapper.getTotalByProjectIds(Ids); Map<String, BigDecimal> totalMap = contractinfoMapper.getTotalByProjectIds(Ids);
Map<String, BigDecimal> paymentMap = contractinfoMapper.getPaymentsByProjectIds(Ids); Map<String, BigDecimal> paymentMap = contractinfoMapper.getPaymentsByProjectIds(Ids);
BigDecimal totalAmount = totalMap.get("totalAcount"); BigDecimal totalAmount = totalMap != null?totalMap.get("totalAcount"):defVal;
BigDecimal totalCentral = totalMap.get("centralAcount"); BigDecimal totalCentral = totalMap != null?totalMap.get("centralAcount"):defVal;
BigDecimal totalProvincial = totalMap.get("provincialAcount"); BigDecimal totalProvincial = totalMap != null?totalMap.get("provincialAcount"):defVal;
BigDecimal payAmount = paymentMap.get("totalPayment"); BigDecimal payAmount = paymentMap != null?paymentMap.get("totalPayment"):defVal;
BigDecimal payCentral = paymentMap.get("centralPayment"); BigDecimal payCentral = paymentMap != null?paymentMap.get("centralPayment"):defVal;
BigDecimal payProvincial = paymentMap.get("provincialPayment"); BigDecimal payProvincial = paymentMap != null?paymentMap.get("provincialPayment"):defVal;
//资金执行率 //资金执行率
BigDecimal paymentExecutionRate = payAmount.divide(totalAmount, 2, RoundingMode.HALF_UP); BigDecimal paymentExecutionRate=new BigDecimal("0.00");
BigDecimal SuperiorFundPayment = payCentral.add(payProvincial); if(payAmount.compareTo(BigDecimal.ZERO) > 0){
BigDecimal SuperiorFundTotal = totalCentral.add(totalProvincial); paymentExecutionRate = payAmount.divide(totalAmount, 2, RoundingMode.HALF_UP);
}
BigDecimal superiorFundPayment = payCentral.add(payProvincial);
BigDecimal superiorFundTotal = totalCentral.add(totalProvincial);
//上级资金执行率 //上级资金执行率
BigDecimal superiorFundExecutionRate = SuperiorFundPayment.divide(SuperiorFundTotal, 2, RoundingMode.HALF_UP); BigDecimal superiorFundExecutionRate=new BigDecimal("0.00");
if(superiorFundPayment.compareTo(BigDecimal.ZERO) > 0){
superiorFundExecutionRate = superiorFundPayment.divide(superiorFundTotal, 2, RoundingMode.HALF_UP);
}
result=NewFundOV.builder().totalMoney(String.valueOf(totalAmount)).payAmount(String.valueOf(payAmount)) result=NewFundOV.builder().totalMoney(String.valueOf(totalAmount)).payAmount(String.valueOf(payAmount))
.totalCentral(String.valueOf(totalCentral)).payCentral(String.valueOf(payCentral)) .totalCentral(String.valueOf(totalCentral)).payCentral(String.valueOf(payCentral))
.totalProvincial(String.valueOf(totalProvincial)).payProvincial(String.valueOf(payProvincial)) .totalProvincial(String.valueOf(totalProvincial)).payProvincial(String.valueOf(payProvincial))
@ -826,15 +838,16 @@ public class HuzhouProjectinfoServiceImpl extends ServiceImpl<HuzhouProjectinfoM
List<String> cprojectIds = this.getIdsByType().getCrkIdsList(); List<String> cprojectIds = this.getIdsByType().getCrkIdsList();
projectIds.addAll(cprojectIds); projectIds.addAll(cprojectIds);
NewFundOV result = null; NewFundOV result = null;
BigDecimal defVal = new BigDecimal("0.00");
if(projectIds.size()!=0){ if(projectIds.size()!=0){
Map<String, BigDecimal> totalMap = contractinfoMapper.getTotalByProjectIds(projectIds); Map<String, BigDecimal> totalMap = contractinfoMapper.getTotalByProjectIds(projectIds);
Map<String, BigDecimal> paymentMap = contractinfoMapper.getPaymentsByProjectIds(projectIds); Map<String, BigDecimal> paymentMap = contractinfoMapper.getPaymentsByProjectIds(projectIds);
BigDecimal totalAmount = totalMap.get("totalAcount"); BigDecimal totalAmount = totalMap.size()>0?totalMap.get("totalAcount"):defVal;
BigDecimal totalCentral = totalMap.get("centralAcount"); BigDecimal totalCentral = totalMap.size()>0?totalMap.get("centralAcount"):defVal;
BigDecimal totalProvincial = totalMap.get("provincialAcount"); BigDecimal totalProvincial = totalMap.size()>0?totalMap.get("provincialAcount"):defVal;
BigDecimal payAmount = paymentMap.get("totalPayment"); BigDecimal payAmount = totalMap.size()>0?paymentMap.get("totalPayment"):defVal;
BigDecimal payCentral = paymentMap.get("centralPayment"); BigDecimal payCentral = totalMap.size()>0?paymentMap.get("centralPayment"):defVal;
BigDecimal payProvincial = paymentMap.get("provincialPayment"); BigDecimal payProvincial = totalMap.size()>0?paymentMap.get("provincialPayment"):defVal;
result=NewFundOV.builder().totalMoney(String.valueOf(totalAmount)).payAmount(String.valueOf(payAmount)) result=NewFundOV.builder().totalMoney(String.valueOf(totalAmount)).payAmount(String.valueOf(payAmount))
.totalCentral(String.valueOf(totalCentral)).payCentral(String.valueOf(payCentral)) .totalCentral(String.valueOf(totalCentral)).payCentral(String.valueOf(payCentral))
.totalProvincial(String.valueOf(totalProvincial)).payProvincial(String.valueOf(payProvincial)).build(); .totalProvincial(String.valueOf(totalProvincial)).payProvincial(String.valueOf(payProvincial)).build();
@ -845,34 +858,79 @@ public class HuzhouProjectinfoServiceImpl extends ServiceImpl<HuzhouProjectinfoM
@Override @Override
public IPage<DimensionPageResponse> getDimensionPage(HuzhouProjectinfo projectInfo, Integer pageNo, Integer pageSize,String orderBy,String orderDir) { public IPage<DimensionPageResponse> getDimensionPage(HuzhouProjectinfo projectInfo, Integer pageNo, Integer pageSize,String orderBy,String orderDir) {
Page page = new Page(pageNo, pageSize); Page page = new Page(pageNo, pageSize);
// //只要入库项目
// projectInfo.setType("2");
ProjectInfoAuthSelect projectInfoAuthSelect = CommonUtils.setGetProjectInfoAuth(projectInfo); ProjectInfoAuthSelect projectInfoAuthSelect = CommonUtils.setGetProjectInfoAuth(projectInfo);
IPage<DimensionPageOV> pageSorted = projectinfoMapper.getDimensionPageSorted(page, projectInfoAuthSelect, orderBy, orderDir);
IPage<DimensionPageOV> pageSorted = projectinfoMapper.getPageSorted(page, projectInfoAuthSelect, orderBy, orderDir);
List<DimensionPageOV> records = pageSorted.getRecords(); List<DimensionPageOV> records = pageSorted.getRecords();
List<DimensionPageResponse> newRecords = new ArrayList<>(); List<DimensionPageResponse> newRecords = new ArrayList<>();
IPage<DimensionPageResponse> result=new Page<>(); IPage<DimensionPageResponse> result=new Page<>();
LambdaQueryWrapper<HuzhouProjectinfo> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<HuzhouProjectinfo> queryWrapper = new LambdaQueryWrapper<>();
List<String> projectIds=new ArrayList<>(); List<String> projectIds=new ArrayList<>();
DimensionPageResponse build = DimensionPageResponse.builder().build();
for(DimensionPageOV r:records) { for(DimensionPageOV r:records) {
queryWrapper.eq(HuzhouProjectinfo::getDutyWorkplace, r.getDutyWorkplace()).eq(HuzhouProjectinfo::getAdminDivision, r.getAdminDivision()) queryWrapper.eq(HuzhouProjectinfo::getDutyWorkplace, r.getDutyWorkplace()).eq(HuzhouProjectinfo::getAdminDivision, r.getAdminDivision())
.eq(HuzhouProjectinfo::getWorkplaceProperties, r.getWorkplaceProperties()).eq(HuzhouProjectinfo::getSuperLeader, r.getSuperLeader()); .eq(HuzhouProjectinfo::getWorkplaceProperties, r.getWorkplaceProperties()).eq(HuzhouProjectinfo::getSuperLeader, r.getSuperLeader());
projectIds.addAll(projectinfoMapper.selectList(queryWrapper).stream().map(x -> x.getId()).collect(Collectors.toList())); projectIds.addAll(projectinfoMapper.selectList(queryWrapper).stream().map(x -> x.getId()).collect(Collectors.toList()));
NewFundOV fund = this.getFund(projectIds); NewFundOV fund = this.getFund(projectIds);
ProjectProgressOV progress = this.getProgress(projectIds); ProjectProgressOV progress = this.getProgress(projectIds);
BeanUtils.copyProperties(build,r); DimensionPageResponse build =new DimensionPageResponse();
build.setTotalMoney(String.valueOf(r.getTotalMoney())).setCentralMoney(String.valueOf(r.getCentralMoney())) BeanUtils.copyProperties(r,build);
.setProvincialMoney(String.valueOf(r.getProvincialMoney())) BigDecimal totalDecimal = BigDecimal.valueOf(r.getTotalMoney());
BigDecimal roundedTotalDecimal = totalDecimal.setScale(2, RoundingMode.HALF_UP);
BigDecimal centralDecimal = BigDecimal.valueOf(r.getCentralMoney());
BigDecimal roundedCentralDecimal = centralDecimal.setScale(2, RoundingMode.HALF_UP);
BigDecimal provincialDecimal = BigDecimal.valueOf(r.getProvincialMoney());
BigDecimal roundedProvincialDecimal = provincialDecimal.setScale(2, RoundingMode.HALF_UP);
DimensionPageResponse newRecord = build.setTotalMoneyToString(roundedTotalDecimal.toString())
.setCentralMoneyToString(roundedCentralDecimal.toString())
.setProvincialMoneyToString(roundedProvincialDecimal.toString())
.setPaymentExecutionRate(fund.getPaymentExecutionRate()) .setPaymentExecutionRate(fund.getPaymentExecutionRate())
.setSuperiorFundExecutionRate(fund.getSuperiorFundExecutionRate()) .setSuperiorFundExecutionRate(fund.getSuperiorFundExecutionRate())
.setProjectProgress(progress.getProjectProgress()); .setProjectProgress(progress.getProjectProgress());
newRecords.add(build); newRecords.add(newRecord);
} }
result.setSize(pageSorted.getSize()).setCurrent(pageSorted.getCurrent()).setRecords(newRecords).setTotal(pageSorted.getTotal()); result.setSize(pageSorted.getSize()).setCurrent(pageSorted.getCurrent()).setRecords(newRecords).setTotal(pageSorted.getTotal());
return result; return result;
} }
@Override
public IPage<ProjectPageResponse> getProjectPage(HuzhouProjectinfo projectInfo, Integer pageNo, Integer pageSize,String orderBy,String orderDir) {
Page page = new Page(pageNo, pageSize);
// //只要入库项目
// projectInfo.setType("2");
ProjectInfoAuthSelect projectInfoAuthSelect = CommonUtils.setGetProjectInfoAuth(projectInfo);
IPage<ProjectPageOV> pageSorted = projectinfoMapper.getProjectPageSorted(page, projectInfoAuthSelect, orderBy, orderDir);
List<ProjectPageOV> records = pageSorted.getRecords();
List<ProjectPageResponse> newRecords = new ArrayList<>();
IPage<ProjectPageResponse> result=new Page<>();
for(ProjectPageOV r:records) {
List<String> projectIds=new ArrayList<>();
projectIds.add(r.getId());
NewFundOV fund = this.getFund(projectIds);
ProjectProgressOV progress = this.getProgress(projectIds);
ProjectPageResponse build =new ProjectPageResponse();
BeanUtils.copyProperties(r,build);
BigDecimal totalDecimal = BigDecimal.valueOf(r.getTotalMoney());
BigDecimal roundedTotalDecimal = totalDecimal.setScale(2, RoundingMode.HALF_UP);
BigDecimal centralDecimal = BigDecimal.valueOf(r.getCentralMoney());
BigDecimal roundedCentralDecimal = centralDecimal.setScale(2, RoundingMode.HALF_UP);
BigDecimal provincialDecimal = BigDecimal.valueOf(r.getProvincialMoney());
BigDecimal roundedProvincialDecimal = provincialDecimal.setScale(2, RoundingMode.HALF_UP);
ProjectPageResponse newRecord = build.setTotalMoneyToString(roundedTotalDecimal.toString())
.setCentralMoneyToString(roundedCentralDecimal.toString())
.setProvincialMoneyToString(roundedProvincialDecimal.toString())
.setPaymentExecutionRate(fund.getPaymentExecutionRate())
.setSuperiorFundExecutionRate(fund.getSuperiorFundExecutionRate())
.setProjectProgress(progress.getProjectProgress());
newRecords.add(newRecord);
}
result.setSize(pageSorted.getSize()).setCurrent(pageSorted.getCurrent()).setRecords(newRecords).setTotal(pageSorted.getTotal());
return result;
}

7
huzhou/src/main/java/com/easy/admin/modules/huzhou/vo/CountByConditionOV.java

@ -0,0 +1,7 @@
package com.easy.admin.modules.huzhou.vo;
public class CountByConditionOV {
private String progress;
}

5
huzhou/src/main/java/com/easy/admin/modules/huzhou/vo/DimensionPageOV.java

@ -2,14 +2,13 @@ package com.easy.admin.modules.huzhou.vo;
import com.easy.admin.modules.huzhou.entity.HuzhouProjectinfo; import com.easy.admin.modules.huzhou.entity.HuzhouProjectinfo;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.AllArgsConstructor;
import lombok.Builder; import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
@Data @Data
@Accessors(chain = true) @Accessors(chain = true)
@Builder(toBuilder = true)
public class DimensionPageOV { public class DimensionPageOV {
/** /**
@ -63,4 +62,6 @@ public class DimensionPageOV {
// private Double projectProgress; // private Double projectProgress;
} }

66
huzhou/src/main/java/com/easy/admin/modules/huzhou/vo/DimensionPageResponse.java

@ -1,54 +1,64 @@
package com.easy.admin.modules.huzhou.vo; package com.easy.admin.modules.huzhou.vo;
import lombok.AllArgsConstructor;
import lombok.Builder; import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
@Data @Data
@Accessors(chain = true) @Accessors(chain = true)
@Builder(toBuilder = true)
public class DimensionPageResponse extends DimensionPageOV{ public class DimensionPageResponse extends DimensionPageOV{
/**
* 责任单位
*/
private String dutyWorkplace;
/**
* 行政区划
*/
private String adminDivision;
/**
* 单位属性
*/
private String workplaceProperties;
/** // /**
* 上级指导处室 // * 责任单位
*/ // */
private String superLeader; // private String dutyWorkplace;
//
// /**
// * 行政区划
// */
// private String adminDivision;
//
// /**
// * 单位属性
// */
// private String workplaceProperties;
//
// /**
// * 上级指导处室
// */
// private String superLeader;
//
// /**
// * 总投资
// */
// private Double totalMoney;
/** /**
* 总投资 * 总投资
*/ */
private String totalMoney; private String totalMoneyToString;
/** /**
* 合同支付执行率 * 合同支付执行率
*/ */
private String paymentExecutionRate; private String paymentExecutionRate;
/** // /**
* 中央资金 // * 中央资金
*/ // */
private String centralMoney; // private Double centralMoney;
/** private String centralMoneyToString;
* 省级资金
*/ // /**
private String provincialMoney; // * 省级资金
// */
// private Double provincialMoney;
private String provincialMoneyToString;
/** /**
* 合同支付执行率 * 合同支付执行率

73
huzhou/src/main/java/com/easy/admin/modules/huzhou/vo/ProjectPageOV.java

@ -0,0 +1,73 @@
package com.easy.admin.modules.huzhou.vo;
import lombok.Data;
import lombok.experimental.Accessors;
@Data
@Accessors(chain = true)
public class ProjectPageOV {
/**
* 项目id
*/
private String id;
/**
* 项目名称
*/
private String projectName;
/**
* 责任单位
*/
private String dutyWorkplace;
/**
* 行政区划
*/
private String adminDivision;
/**
* 单位属性
*/
private String workplaceProperties;
/**
* 上级指导处室
*/
private String superLeader;
/**
* 总投资
*/
private Double totalMoney;
// /**
// * 合同支付执行率
// */
// private Double paymentExecutionRate;
/**
* 中央资金
*/
private Double centralMoney;
/**
* 省级资金
*/
private Double provincialMoney;
// /**
// * 合同支付执行率
// */
// private Double superiorFundExecutionRate;
//
// /**
// * 项目总进度
// */
// private Double projectProgress;
}

72
huzhou/src/main/java/com/easy/admin/modules/huzhou/vo/ProjectPageResponse.java

@ -0,0 +1,72 @@
package com.easy.admin.modules.huzhou.vo;
import lombok.Data;
import lombok.experimental.Accessors;
@Data
@Accessors(chain = true)
public class ProjectPageResponse extends ProjectPageOV{
// /**
// * 责任单位
// */
// private String dutyWorkplace;
//
// /**
// * 行政区划
// */
// private String adminDivision;
//
// /**
// * 单位属性
// */
// private String workplaceProperties;
//
// /**
// * 上级指导处室
// */
// private String superLeader;
//
// /**
// * 总投资
// */
// private Double totalMoney;
/**
* 总投资
*/
private String totalMoneyToString;
/**
* 合同支付执行率
*/
private String paymentExecutionRate;
// /**
// * 中央资金
// */
// private Double centralMoney;
private String centralMoneyToString;
// /**
// * 省级资金
// */
// private Double provincialMoney;
private String provincialMoneyToString;
/**
* 合同支付执行率
*/
private String superiorFundExecutionRate;
/**
* 项目总进度
*/
private String projectProgress;
}
Loading…
Cancel
Save