From 7b3b6c677b0691a1702fac5e07ac103a86974c7e Mon Sep 17 00:00:00 2001 From: Administrator <1923636941@qq.com> Date: Thu, 6 Apr 2023 09:08:25 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=91=E6=9E=97=E6=B9=BE-=E6=8C=89=E9=97=AE?= =?UTF-8?q?=E9=A2=98=E7=8A=B6=E6=80=81=E7=BB=9F=E8=AE=A1=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E8=B6=8B=E5=8A=BF-=E8=A1=A5=E5=85=85=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...HiddenDangerInspectionStatisticsMapper.xml | 2 +- .../HiddenDangerInspectRecordServiceImpl.java | 49 +++++++++++++-- .../project/controller/ProjectController.java | 25 +++++++- .../xmgl/modules/project/entity/Project.java | 3 + .../project/entity/dto/SjProjectDto.java | 59 +++++++++++++++++++ .../service/impl/ProjectServiceImpl.java | 8 +-- 6 files changed, 132 insertions(+), 14 deletions(-) create mode 100644 src/main/java/com/zhgd/xmgl/modules/project/entity/dto/SjProjectDto.java diff --git a/src/main/java/com/zhgd/xmgl/modules/dangerous/mapper/xml/HiddenDangerInspectionStatisticsMapper.xml b/src/main/java/com/zhgd/xmgl/modules/dangerous/mapper/xml/HiddenDangerInspectionStatisticsMapper.xml index e95555312..d157fa283 100644 --- a/src/main/java/com/zhgd/xmgl/modules/dangerous/mapper/xml/HiddenDangerInspectionStatisticsMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/dangerous/mapper/xml/HiddenDangerInspectionStatisticsMapper.xml @@ -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, diff --git a/src/main/java/com/zhgd/xmgl/modules/dangerous/service/impl/HiddenDangerInspectRecordServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/dangerous/service/impl/HiddenDangerInspectRecordServiceImpl.java index 0df0c663a..9913b295b 100644 --- a/src/main/java/com/zhgd/xmgl/modules/dangerous/service/impl/HiddenDangerInspectRecordServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/dangerous/service/impl/HiddenDangerInspectRecordServiceImpl.java @@ -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 selectHiddenDangerStateTrendByWeek(Map 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 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(); + } + /** * 设置全部占比 * diff --git a/src/main/java/com/zhgd/xmgl/modules/project/controller/ProjectController.java b/src/main/java/com/zhgd/xmgl/modules/project/controller/ProjectController.java index 8ba7bb7e3..ea1d25c3e 100644 --- a/src/main/java/com/zhgd/xmgl/modules/project/controller/ProjectController.java +++ b/src/main/java/com/zhgd/xmgl/modules/project/controller/ProjectController.java @@ -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(); + } + /** * 添加 * diff --git a/src/main/java/com/zhgd/xmgl/modules/project/entity/Project.java b/src/main/java/com/zhgd/xmgl/modules/project/entity/Project.java index d642c76da..7136e6244 100644 --- a/src/main/java/com/zhgd/xmgl/modules/project/entity/Project.java +++ b/src/main/java/com/zhgd/xmgl/modules/project/entity/Project.java @@ -248,4 +248,7 @@ public class Project implements Serializable { @ApiModelProperty(value = "云联万物-工程所在街(乡)镇机构编码") private String streetTownshipTownCode; + @ApiModelProperty(value = "'三江重点工程类型多选'") + private String keyProjectType; + } diff --git a/src/main/java/com/zhgd/xmgl/modules/project/entity/dto/SjProjectDto.java b/src/main/java/com/zhgd/xmgl/modules/project/entity/dto/SjProjectDto.java new file mode 100644 index 000000000..534b1bc78 --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/modules/project/entity/dto/SjProjectDto.java @@ -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; + +} diff --git a/src/main/java/com/zhgd/xmgl/modules/project/service/impl/ProjectServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/project/service/impl/ProjectServiceImpl.java index 914e3a552..384d96a8b 100644 --- a/src/main/java/com/zhgd/xmgl/modules/project/service/impl/ProjectServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/project/service/impl/ProjectServiceImpl.java @@ -173,12 +173,6 @@ public class ProjectServiceImpl extends ServiceImpl impl @Override public void saveProject(Project project) { - if (profileJudgeUtil.isSjjt()) { - if (StringUtils.isBlank(project.getCompanySn())) { - project.setCompanySn("B386480F85E84592B8E102224D090794"); - } - setProjectCode(project); - } QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.lambda().eq(Company::getCompanySn, project.getCompanySn()); Company company = companyService.getOne(queryWrapper); @@ -221,7 +215,7 @@ public class ProjectServiceImpl extends ServiceImpl 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();