金林湾-按问题状态统计问题趋势-补充数据
This commit is contained in:
parent
8c0a68714b
commit
7b3b6c677b
@ -6,7 +6,7 @@
|
||||
resultType="com.zhgd.xmgl.modules.dangerous.entity.HiddenDangerInspectionStatistics">
|
||||
SELECT
|
||||
hd.id,
|
||||
date_add( date_sub(hd.create_time,interval dayofweek(hd.create_time)-2 day), INTERVAL 7 DAY ) create_time,
|
||||
date_sub(hd.create_time,interval dayofweek(hd.create_time)-2 day) create_time,
|
||||
sum(hd.increase_num) increase_num,
|
||||
sum(hd.solve_num) solve_num,
|
||||
sum(hd.un_resolve_num) un_resolve_num,
|
||||
|
||||
@ -28,6 +28,7 @@ import com.zhgd.xmgl.modules.project.mapper.ProjectMapper;
|
||||
import com.zhgd.xmgl.modules.quality.service.impl.QualityInspectionRecordServiceImpl;
|
||||
import com.zhgd.xmgl.modules.worker.mapper.EnterpriseInfoMapper;
|
||||
import com.zhgd.xmgl.util.JxlExcelUtils;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.collections.MapUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@ -438,17 +439,57 @@ public class HiddenDangerInspectRecordServiceImpl extends ServiceImpl<HiddenDang
|
||||
@Override
|
||||
public List<HiddenDangerInspectionStatistics> selectHiddenDangerStateTrendByWeek(Map<String, Object> map) {
|
||||
Integer offsetWeek = MapUtils.getInteger(map, "offsetWeek");
|
||||
String projectSn = MapUtils.getString(map, "projectSn");
|
||||
|
||||
int defaultOffsetWeek = 5;
|
||||
if (offsetWeek == null || offsetWeek <= 0) {
|
||||
offsetWeek = 5;
|
||||
offsetWeek = defaultOffsetWeek;
|
||||
}
|
||||
map.put("offsetWeek", offsetWeek + 1);
|
||||
List<HiddenDangerInspectionStatistics> statisticsList = hiddenDangerInspectionStatisticsMapper.selectHiddenDangerStateTrendByWeek(map);
|
||||
//删除最新的没有完全统计的一周的数据,一条数据
|
||||
statisticsList.remove(0);
|
||||
Collections.sort(statisticsList,(o1, o2) -> o1.getCreateTime().compareTo(o2.getCreateTime()));
|
||||
Date thisMonday = getThisMonday();
|
||||
if (CollectionUtils.isNotEmpty(statisticsList)) {
|
||||
HiddenDangerInspectionStatistics statistics = statisticsList.get(0);
|
||||
if (statistics != null) {
|
||||
//删除最新的没有完全统计的一周的数据,一条数据
|
||||
statisticsList.remove(0);
|
||||
}
|
||||
}
|
||||
//数据不够时补充前面的为0
|
||||
if (statisticsList.size() < defaultOffsetWeek) {
|
||||
Date d = null;
|
||||
int size = statisticsList.size();
|
||||
if (CollectionUtils.isNotEmpty(statisticsList)) {
|
||||
d = statisticsList.get(size - 1).getCreateTime();
|
||||
} else {
|
||||
d = thisMonday;
|
||||
}
|
||||
d = DateUtil.offsetDay(d, -7);
|
||||
for (int i = 0; i < defaultOffsetWeek - size; i++) {
|
||||
HiddenDangerInspectionStatistics e = new HiddenDangerInspectionStatistics();
|
||||
e.setCreateTime(d);
|
||||
e.setIncreaseNum(0);
|
||||
e.setSolveNum(0);
|
||||
e.setUnResolveNum(0);
|
||||
e.setProjectSn(projectSn);
|
||||
d = DateUtil.offsetDay(d, -7);
|
||||
statisticsList.add(e);
|
||||
}
|
||||
}
|
||||
Collections.sort(statisticsList, (o1, o2) -> o1.getCreateTime().compareTo(o2.getCreateTime()));
|
||||
statisticsList.stream().forEach(o -> o.setCreateTime(DateUtil.offsetDay(o.getCreateTime(), 7)));
|
||||
return statisticsList;
|
||||
}
|
||||
|
||||
public Date getThisMonday() {
|
||||
Calendar cal = Calendar.getInstance();
|
||||
// 设置周一为第一天
|
||||
cal.setFirstDayOfWeek(Calendar.MONDAY);
|
||||
// 时间设置到周一,此时时间为周一的日期
|
||||
cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
|
||||
return cal.getTime();
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置全部占比
|
||||
*
|
||||
|
||||
@ -9,11 +9,12 @@ import com.zhgd.redis.lock.RedisRepository;
|
||||
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.dto.SjProjectDto;
|
||||
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.SanjiangProgressProjectEnum;
|
||||
import com.zhgd.xmgl.modules.project.service.IProjectService;
|
||||
import com.zhgd.xmgl.modules.project.service.impl.ProjectServiceImpl;
|
||||
import com.zhgd.xmgl.util.MessageUtil;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiImplicitParam;
|
||||
@ -21,6 +22,8 @@ import io.swagger.annotations.ApiImplicitParams;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections.MapUtils;
|
||||
import org.simpleframework.xml.core.Validate;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@ -43,7 +46,7 @@ import java.util.Map;
|
||||
@Api(tags = "项目")
|
||||
public class ProjectController {
|
||||
@Autowired
|
||||
private IProjectService projectService;
|
||||
private ProjectServiceImpl projectService;
|
||||
@Autowired
|
||||
private AsyncProject asyncProject;
|
||||
@Resource
|
||||
@ -108,6 +111,24 @@ public class ProjectController {
|
||||
return Result.ok();
|
||||
}
|
||||
|
||||
/**
|
||||
* 三江业务中台添加项目
|
||||
*
|
||||
* @param dto
|
||||
* @return
|
||||
*/
|
||||
//@OperLog(operModul = "项目管理", operType = "添加项目", operDesc = "添加项目")
|
||||
@ApiOperation(value = " 三江业务中台添加项目", notes = "三江业务中台添加项目", httpMethod = "POST")
|
||||
@PostMapping(value = "/sj/business/add")
|
||||
public Result addSjProject(@RequestBody @Validate SjProjectDto dto) {
|
||||
Project project = new Project();
|
||||
BeanUtils.copyProperties(dto, project);
|
||||
project.setCompanySn("B386480F85E84592B8E102224D090794");
|
||||
projectService.setProjectCode(project);
|
||||
projectService.saveProject(project);
|
||||
return Result.ok();
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加
|
||||
*
|
||||
|
||||
@ -248,4 +248,7 @@ public class Project implements Serializable {
|
||||
@ApiModelProperty(value = "云联万物-工程所在街(乡)镇机构编码")
|
||||
private String streetTownshipTownCode;
|
||||
|
||||
@ApiModelProperty(value = "'三江重点工程类型多选'")
|
||||
private String keyProjectType;
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,59 @@
|
||||
package com.zhgd.xmgl.modules.project.entity.dto;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
@Data
|
||||
@ApiModel(value = "SjProjectDto实体类", description = "SjProjectDto")
|
||||
public class SjProjectDto {
|
||||
|
||||
@ApiModelProperty(value = "项目名称")
|
||||
@NotBlank
|
||||
private java.lang.String projectName;
|
||||
|
||||
@ApiModelProperty(value = "项目地址")
|
||||
private java.lang.String projectAddress;
|
||||
|
||||
@ApiModelProperty(value = "纬度")
|
||||
private java.lang.String latitude;
|
||||
|
||||
@ApiModelProperty(value = "经度")
|
||||
private java.lang.String longitude;
|
||||
|
||||
@ApiModelProperty(value = "项目编号")
|
||||
private java.lang.String projectNumber;
|
||||
|
||||
@ApiModelProperty(value = "工程类别,1房建,2市政,5公路")
|
||||
private java.lang.Integer projectType;
|
||||
|
||||
@ApiModelProperty(value = "工程用途,1住宅建筑,2宿舍建筑,3教育建筑,4办公建筑,5科研建筑,6文化建筑,7商业建筑,8体育建筑,9医疗建筑,10交通建筑,11司法建筑,12纪念建筑,13园林建筑,14综合建筑,15工业厂房,16电子厂房,17其他")
|
||||
private java.lang.Integer engineeringPurpose;
|
||||
|
||||
@ApiModelProperty(value = "结构类型,1装配整体式框级结构,2装配整体式剪力墙结构,3装配整体式框级-现浇剪力墙结构,4装配整体式框级-现浇核心筒结构,5装配整体式部分框支剪力墙结构,6混合结构,7框架结构,8剪力墙结构,9框架-剪力墙结构,10简体结构,11钢结构,12型钢混凝土结构,13砖混结构,14砖木结构")
|
||||
private java.lang.Integer structureType;
|
||||
|
||||
@ApiModelProperty(value = "项目面积")
|
||||
private java.lang.String projectAcreage;
|
||||
|
||||
@ApiModelProperty(value = "工程状态,0未开工,1在建,2停工,3验收,4完工")
|
||||
private java.lang.Integer bulidStatus;
|
||||
|
||||
@ApiModelProperty(value = "开工日期")
|
||||
private java.lang.String startWorkDate;
|
||||
|
||||
@ApiModelProperty(value = "项目经理")
|
||||
private java.lang.String projectManage;
|
||||
|
||||
@ApiModelProperty(value = "项目联系电话")
|
||||
private java.lang.String projectTel;
|
||||
|
||||
@ApiModelProperty(value = "是否是重点工程 0否,2省重,3市重,4区重")
|
||||
private java.lang.Integer majorProjectType;
|
||||
|
||||
@ApiModelProperty(value = "项目进度")
|
||||
private Integer projectProgress;
|
||||
|
||||
}
|
||||
@ -173,12 +173,6 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
||||
|
||||
@Override
|
||||
public void saveProject(Project project) {
|
||||
if (profileJudgeUtil.isSjjt()) {
|
||||
if (StringUtils.isBlank(project.getCompanySn())) {
|
||||
project.setCompanySn("B386480F85E84592B8E102224D090794");
|
||||
}
|
||||
setProjectCode(project);
|
||||
}
|
||||
QueryWrapper<Company> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.lambda().eq(Company::getCompanySn, project.getCompanySn());
|
||||
Company company = companyService.getOne(queryWrapper);
|
||||
@ -221,7 +215,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
||||
*
|
||||
* @param project
|
||||
*/
|
||||
private void setProjectCode(Project project) {
|
||||
public void setProjectCode(Project project) {
|
||||
String address = project.getProjectAddress();
|
||||
WSSsdrAddress wsSsdrAddress = AddressUtil.resolveAddress(address);
|
||||
String province = wsSsdrAddress.getProvince();
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user