Browse Source

项目统计指标开发

dev_kxc
zhuyulei 1 year ago
parent
commit
9cc53966ad
  1. 18
      jwtech-system/src/main/java/com/kms/build/domain/dto/HistogramDto.java
  2. 5
      jwtech-system/src/main/java/com/kms/build/mapper/BsSgcjsjdBuiProInfoMapper.java
  3. 77
      jwtech-system/src/main/java/com/kms/build/service/BsSgcjsjdBuiProInfoService.java
  4. 2
      jwtech-system/src/main/java/com/kms/statistics/controller/AssertStatisticsController.java
  5. 29
      jwtech-system/src/main/resources/mapper/build/BsSgcjsjdBuiProInfoMapper.xml

18
jwtech-system/src/main/java/com/kms/build/domain/dto/HistogramDto.java

@ -0,0 +1,18 @@
package com.kms.build.domain.dto;
import lombok.Data;
import java.io.Serializable;
@Data
public class HistogramDto implements Serializable {
private String city;
private String num;
private String isMajor;
}

5
jwtech-system/src/main/java/com/kms/build/mapper/BsSgcjsjdBuiProInfoMapper.java

@ -5,11 +5,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.kms.build.domain.BsSgcjsjdBuiProInfo;
import com.kms.build.domain.dto.AssertStatisticsDto;
import com.kms.build.domain.dto.GzjbDto;
import com.kms.build.domain.dto.HistogramDto;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
@ -64,4 +66,7 @@ public interface BsSgcjsjdBuiProInfoMapper extends BaseMapper<BsSgcjsjdBuiProInf
@Param("orderBy") String orderBy,
@Param("pageNum") int pageNum,
@Param("pageSize") int pageSize);
List<HistogramDto> getHistogram();
}

77
jwtech-system/src/main/java/com/kms/build/service/BsSgcjsjdBuiProInfoService.java

@ -15,16 +15,20 @@ import com.kms.build.domain.BsSgcJsjdBuiConAcc;
import com.kms.build.domain.BsSgcJsjdBuiContInfo;
import com.kms.build.domain.BsSgcjsjdBuiProInfo;
import com.kms.build.domain.dto.AssertStatisticsDto;
import com.kms.build.domain.dto.HistogramDto;
import com.kms.build.mapper.BsSgcjsjdBuiProInfoMapper;
import com.kms.common.utils.UserUtils;
import com.kms.earlyStage.domain.SpecialProjectInfo;
import com.kms.system.service.SysDeptService;
import com.kms.system.service.SysXzqhService;
import lombok.Data;
import org.apache.ibatis.reflection.wrapper.BaseWrapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -157,15 +161,14 @@ public class BsSgcjsjdBuiProInfoService extends BaseService<BsSgcjsjdBuiProInfoM
String isMajor = null;
String projectType = data.getProjectType();
if (!ObjectUtil.isNull(projectType)) {
String[] split = projectType.split(",");
isMajor=split[0];
isMajor = split[0];
if (" ".equals(split[1])) {
projectType=null;
}else {
projectType=split[1];
projectType = null;
} else {
projectType = split[1];
}
}
@ -174,7 +177,7 @@ public class BsSgcjsjdBuiProInfoService extends BaseService<BsSgcjsjdBuiProInfoM
IPage<BsSgcjsjdBuiProInfo> list = null;
list = bsSgcjsjdBuiProInfoMapper.selectManagePage(data.getId(), data.getProjectName(), isMajor,projectType,
list = bsSgcjsjdBuiProInfoMapper.selectManagePage(data.getId(), data.getProjectName(), isMajor, projectType,
sysXzqhService.getSubString(sp.getData().getAdcd()),
"create_time", new Page<>(sp.getPageNum(), sp.getPageSize()));
@ -210,11 +213,11 @@ public class BsSgcjsjdBuiProInfoService extends BaseService<BsSgcjsjdBuiProInfoM
String projectType = data.getProjectType();
if (!ObjectUtil.isNull(projectType)) {
String[] split = projectType.split(",");
isMajor=split[0];
isMajor = split[0];
if (" ".equals(split[1])) {
projectType=null;
}else {
projectType=split[1];
projectType = null;
} else {
projectType = split[1];
}
}
@ -226,7 +229,7 @@ public class BsSgcjsjdBuiProInfoService extends BaseService<BsSgcjsjdBuiProInfoM
SysDept sysDept = sysDeptService.get(deptId);
String xzqhId = sysDept.getXzqhId();
list = bsSgcjsjdBuiProInfoMapper.selectPageByCode(data.getId(), data.getProjectName(),isMajor, data.getProjectType(),
list = bsSgcjsjdBuiProInfoMapper.selectPageByCode(data.getId(), data.getProjectName(), isMajor, data.getProjectType(),
sysXzqhService.getSubString(xzqhId),
"create_time", new Page<>(sp.getPageNum(), sp.getPageSize()));
@ -244,25 +247,23 @@ public class BsSgcjsjdBuiProInfoService extends BaseService<BsSgcjsjdBuiProInfoM
String isMajor = null;
String projectType = data.getProjectType();
if (!ObjectUtil.isNull(projectType)) {
String[] split = projectType.split(",");
isMajor=split[0];
isMajor = split[0];
if (" ".equals(split[1])) {
projectType=null;
}else {
projectType=split[1];
projectType = null;
} else {
projectType = split[1];
}
}
assert sysUser != null;
IPage<BsSgcjsjdBuiProInfo> list = null;
list = bsSgcjsjdBuiProInfoMapper.selectManagePage(data.getId(), data.getProjectName(), isMajor,projectType,
list = bsSgcjsjdBuiProInfoMapper.selectManagePage(data.getId(), data.getProjectName(), isMajor, projectType,
sysXzqhService.getSubString(sp.getData().getAdcd()),
"create_time", new Page<>(sp.getPageNum(), sp.getPageSize()));
@ -288,10 +289,46 @@ public class BsSgcjsjdBuiProInfoService extends BaseService<BsSgcjsjdBuiProInfoM
}
public String getHistogram() {
public List<HashMap<String, Use>> getHistogram() {
List<HistogramDto> list = bsSgcjsjdBuiProInfoMapper.getHistogram();
List<HashMap<String, Use>> hashMap = new ArrayList<>();
for (int i = 0; i < list.size(); i++) {
HashMap<String, Use> map = new HashMap<>();
Use use = new Use();
if (list.get(i).getIsMajor() == "zd") {
use.setZd(list.get(i).getNum());
} else {
use.setMs(list.get(i).getNum());
}
for (int j = 0; j < list.size(); j++) {
if (list.get(i).getCity().equals(list.get(j).getCity())
&& !list.get(i).getIsMajor().equals(list.get(j).getIsMajor())) {
if (list.get(j).getIsMajor() == "zd") {
use.setZd(list.get(j).getNum());
} else {
use.setMs(list.get(j).getNum());
}
map.put(list.get(i).getCity(), use);
}else {
map.put(list.get(i).getCity(), use);
}
}
hashMap.add(map);
}
return hashMap;
}
return "";
@Data
public class Use {
private String ms;
private String zd;
}
}

2
jwtech-system/src/main/java/com/kms/statistics/controller/AssertStatisticsController.java

@ -35,10 +35,8 @@ public class AssertStatisticsController {
@GetMapping
public AjaxResult getHistogram() {
return AjaxResult.success(bsSgcjsjdBuiProInfoService.getHistogram());
}

29
jwtech-system/src/main/resources/mapper/build/BsSgcjsjdBuiProInfoMapper.xml

@ -374,4 +374,33 @@
</if>
GROUP BY info.PRO_CODE
</select>
<resultMap id="his" type="HistogramDto">
<result property="city" column="name"/>
<result property="num" column="num"/>
<result property="isMajor" column="isMajor"/>
</resultMap>
<select id="getHistogram" resultMap="his">
SELECT
sy.`NAME`,
t.num,
t.IS_MAJOR
FROM
(
SELECT
CONCAT( LEFT ( sx.`XZQHDM`, 4 ), '00' ) adcd,
COUNT( 1 ) num,
pi.IS_MAJOR
FROM
bs_sgc_jsjd_bui_pro_info pi
LEFT JOIN bs_slgc_qqjd_spe_pro_proposal pp ON pi.PRO_NO = pp.PRO_NO
AND pi.PRO_CODE = pp.PROJECT_CODE
LEFT JOIN sys_xzqh sx ON pp.ADCD = sx.XZQHDM
LEFT JOIN sys_xzqh xx ON sx.XZQHDM = xx.XZQHDM
GROUP BY
LEFT ( pp.ADCD, 4 ),pi.IS_MAJOR ) t LEFT JOIN sys_xzqh sy ON sy.XZQHDM = t.adcd;
</select>
</mapper>

Loading…
Cancel
Save