政务增加层级
This commit is contained in:
parent
79111fdd18
commit
6444d035c7
@ -93,16 +93,23 @@ public class GovernmentController {
|
||||
|
||||
/**
|
||||
* 层级查询
|
||||
* @param government
|
||||
* @param map
|
||||
* @return
|
||||
*/
|
||||
@OperLog(operModul = "政务管理", operType = "层级查询", operDesc = "层级查询政务信息")
|
||||
@ApiOperation(value = " 层级查询政务信息", notes = "层级查询政务信息", httpMethod="POST")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "governmentName", value = "政务名称", paramType = "body", dataType = "String"),
|
||||
@ApiImplicitParam(name = "pageNo", value = "页数", paramType = "body", required = true, defaultValue = "1", dataType = "Integer"),
|
||||
@ApiImplicitParam(name = "pageSize", value = "每页条数", paramType = "body", required = true, defaultValue = "10", dataType = "Integer")
|
||||
})
|
||||
@PostMapping(value = "/tree")
|
||||
public Result<List<Government>> treeList(@RequestBody Government government) {
|
||||
Result<List<Government>> result = new Result<List<Government>>();
|
||||
QueryWrapper<Government> queryWrapper = QueryGenerator.initQueryWrapper(government);
|
||||
List<Government> list = governmentService.treeList(queryWrapper);
|
||||
public Result<Page<Government>> treeList(@ApiIgnore @RequestBody Map<String, Object> map) {
|
||||
Result<Page<Government>> result = new Result<Page<Government>>();
|
||||
QueryWrapper<Government> queryWrapper = QueryGenerator.initPageQueryWrapper(Government.class, map);
|
||||
Page<Government> page = PageUtil.getPage(map);
|
||||
queryWrapper.lambda().orderByDesc(Government::getCreateTime);
|
||||
Page<Government> list = governmentService.treeList(page, queryWrapper);
|
||||
result.setSuccess(true);
|
||||
result.setResult(list);
|
||||
return result;
|
||||
@ -149,6 +156,12 @@ public class GovernmentController {
|
||||
if(governmentEntity==null) {
|
||||
result.error500("未找到对应实体");
|
||||
}else {
|
||||
// 检验政务账号是否已存在
|
||||
SystemUser systemUser = systemUserService.getOne(Wrappers.<SystemUser>lambdaQuery().eq(SystemUser::getAccount, governmentVo.getAccount()));
|
||||
if (systemUser != null) {
|
||||
result.error500("该用户账号已被使用");
|
||||
return result;
|
||||
}
|
||||
boolean ok = governmentService.updateInfo(governmentVo) == 1 ? true : false;
|
||||
if(ok) {
|
||||
result.success("修改成功!");
|
||||
|
||||
@ -171,17 +171,22 @@ public class SystemUserAuthController {
|
||||
if (user != null) {
|
||||
BeanUtils.copyProperties(user, userInfo);
|
||||
}
|
||||
if(user==null) {
|
||||
if(user==null || user.getAccountType() == 5) {
|
||||
result.error500("登录名或密码错误");
|
||||
} else if(userInfo.getState() == 0) {
|
||||
result.error500("账号未启用,请联系管理员");
|
||||
} else if(userInfo.getAccountType() != 1) {
|
||||
Government government = governmentService.getGovByUser(userInfo.getAccountType(), userInfo.getSn());
|
||||
Government parent = governmentService.getOne(Wrappers.<Government>lambdaQuery().eq(Government::getGovernmentId, government.getParentId()));
|
||||
if (parent.getExpireTime() != null && DateUtil.endOfDay(parent.getExpireTime()).before(new Date())) {
|
||||
parent.setState(0);
|
||||
governmentService.updateById(parent);
|
||||
}
|
||||
if (government.getExpireTime() != null && DateUtil.endOfDay(government.getExpireTime()).before(new Date())) {
|
||||
government.setState(0);
|
||||
governmentService.updateById(government);
|
||||
}
|
||||
if (government == null || government.getState() == 0) {
|
||||
if (government == null || government.getState() == 0 || parent.getState() == 0) {
|
||||
result.error500("住建局账号异常,请联系管理员");
|
||||
}
|
||||
if (!userInfo.getIsManager()) {
|
||||
|
||||
@ -1,9 +1,8 @@
|
||||
package com.zhgd.xmgl.modules.basicdata.controller.enterprise;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.zhgd.annotation.OperLog;
|
||||
import com.zhgd.jeecg.common.api.vo.Result;
|
||||
@ -17,6 +16,7 @@ import io.swagger.annotations.ApiImplicitParam;
|
||||
import io.swagger.annotations.ApiImplicitParams;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections.MapUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
@ -24,6 +24,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import springfox.documentation.annotations.ApiIgnore;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@ -64,6 +65,10 @@ public class EntLifterAlarmController {
|
||||
public Result<IPage<LifterAlarm>> queryPageList(@ApiIgnore @RequestBody Map<String, Object> map) {
|
||||
QueryWrapper<LifterAlarm> queryWrapper = QueryGenerator.initPageQueryWrapper(LifterAlarm.class, map);
|
||||
Page<LifterAlarm> page = PageUtil.getPage(map);
|
||||
Integer dayRange = MapUtils.getInteger(map, "dayRange");
|
||||
if (dayRange != null) {
|
||||
queryWrapper.lambda().between(LifterAlarm::getCreateTime, DateUtil.offsetDay(new Date(), -dayRange), DateUtil.endOfDay(new Date()));
|
||||
}
|
||||
queryWrapper.lambda().orderByDesc(LifterAlarm::getCreateTime);
|
||||
IPage<LifterAlarm> pageList = lifterAlarmService.page(page, queryWrapper);
|
||||
return Result.success(pageList);
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package com.zhgd.xmgl.modules.basicdata.controller.government;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
@ -26,6 +27,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import springfox.documentation.annotations.ApiIgnore;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@ -69,6 +71,10 @@ public class GovLifterAlarmController {
|
||||
if (StringUtils.isNotBlank(MapUtils.getString(map, ParamConstants.PROJECT_SN))) {
|
||||
queryWrapper.lambda().eq(LifterAlarm::getEngineeringSn, StrUtil.EMPTY);
|
||||
}
|
||||
Integer dayRange = MapUtils.getInteger(map, "dayRange");
|
||||
if (dayRange != null) {
|
||||
queryWrapper.lambda().between(LifterAlarm::getCreateTime, DateUtil.offsetDay(new Date(), -dayRange), DateUtil.endOfDay(new Date()));
|
||||
}
|
||||
queryWrapper.lambda().orderByDesc(LifterAlarm::getCreateTime);
|
||||
IPage<LifterAlarm> pageList = lifterAlarmService.page(page, queryWrapper);
|
||||
return Result.success(pageList);
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package com.zhgd.xmgl.modules.basicdata.controller.project;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
@ -26,6 +27,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import springfox.documentation.annotations.ApiIgnore;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@ -69,6 +71,10 @@ public class LifterAlarmController {
|
||||
if (StringUtils.isNotBlank(MapUtils.getString(map, ParamConstants.PROJECT_SN))) {
|
||||
queryWrapper.lambda().eq(LifterAlarm::getEngineeringSn, StrUtil.EMPTY);
|
||||
}
|
||||
Integer dayRange = MapUtils.getInteger(map, "dayRange");
|
||||
if (dayRange != null) {
|
||||
queryWrapper.lambda().between(LifterAlarm::getCreateTime, DateUtil.offsetDay(new Date(), -dayRange), DateUtil.endOfDay(new Date()));
|
||||
}
|
||||
queryWrapper.lambda().orderByDesc(LifterAlarm::getCreateTime);
|
||||
IPage<LifterAlarm> pageList = lifterAlarmService.page(page, queryWrapper);
|
||||
return Result.success(pageList);
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
package com.zhgd.xmgl.modules.basicdata.service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
@ -8,8 +9,6 @@ import com.zhgd.xmgl.modules.basicdata.dto.GovernmentDto;
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.Government;
|
||||
import com.zhgd.xmgl.modules.basicdata.vo.GovernmentVo;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 政务信息
|
||||
* @author: pds
|
||||
@ -29,5 +28,5 @@ public interface IGovernmentService extends IService<Government> {
|
||||
|
||||
Government getGovByUser(Integer accountType, String sn);
|
||||
|
||||
List<Government> treeList(Wrapper<Government> queryWrapper);
|
||||
Page<Government> treeList(Page page, QueryWrapper<Government> queryWrapper);
|
||||
}
|
||||
|
||||
@ -3,6 +3,7 @@ package com.zhgd.xmgl.modules.basicdata.service.impl;
|
||||
import cn.hutool.core.date.DateUnit;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
@ -55,20 +56,7 @@ public class GovernmentServiceImpl extends ServiceImpl<GovernmentMapper, Governm
|
||||
@Override
|
||||
public IPage<Government> selectPage(Page page, Wrapper<Government> wrapper) {
|
||||
Page<Government> pageList = this.page(page, wrapper);
|
||||
List<Project> projectList = new ArrayList<>();
|
||||
if (pageList.getRecords().size() > 0) {
|
||||
projectList = projectMapper.selectList(Wrappers.<Project>lambdaQuery()
|
||||
.in(Project::getGovernmentSn, pageList.getRecords().stream().map(g -> g.getGovernmentSn()).collect(Collectors.toList()))
|
||||
.eq(Project::getState, 1));
|
||||
}
|
||||
for (Government government : pageList.getRecords()) {
|
||||
if (government.getExpireTime() != null) {
|
||||
Integer between = (int) DateUtil.between(new Date(), DateUtil.endOfDay(government.getExpireTime()), DateUnit.DAY, false);
|
||||
government.setDiffDay(between > 0 ? between : 0);
|
||||
government.setState(between > 0 || DateUtil.endOfDay(government.getExpireTime()).after(new Date()) ? government.getState() : 0);
|
||||
}
|
||||
government.setInstallProject(projectList.stream().filter(p -> p.getGovernmentSn().equals(government.getGovernmentSn())).count());
|
||||
}
|
||||
build(pageList.getRecords());
|
||||
return pageList;
|
||||
}
|
||||
|
||||
@ -79,6 +67,8 @@ public class GovernmentServiceImpl extends ServiceImpl<GovernmentMapper, Governm
|
||||
government.setGovernmentSn(CommonUtil.getUUid());
|
||||
government.setGovernmentTel(governmentVo.getGovernmentTel());
|
||||
government.setCreateTime(new Date());
|
||||
government.setParentId(governmentVo.getParentId());
|
||||
government.setGovernmentType(governmentVo.getGovernmentType());
|
||||
this.save(government);
|
||||
SystemUser systemUser = new SystemUser();
|
||||
systemUser.setRealName(governmentVo.getGovernmentName());
|
||||
@ -141,21 +131,37 @@ public class GovernmentServiceImpl extends ServiceImpl<GovernmentMapper, Governm
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Government> treeList(Wrapper<Government> queryWrapper) {
|
||||
List<Government> list = this.list(queryWrapper);
|
||||
List<Government> treeList = list.stream().filter(d -> d.getParentId().equals(0L)).collect(Collectors.toList());
|
||||
return getTreeList(treeList, list);
|
||||
public Page<Government> treeList(Page page, QueryWrapper<Government> queryWrapper) {
|
||||
queryWrapper.lambda().eq(Government::getParentId, "0L");
|
||||
Page<Government> pageList = this.page(page, queryWrapper);
|
||||
List<Government> list = this.list(Wrappers.<Government>lambdaQuery().in(Government::getParentId, pageList.getRecords().stream().map(g -> g.getGovernmentId()).collect(Collectors.toList())));
|
||||
build(list);
|
||||
getTreeList(pageList.getRecords(), list);
|
||||
build(pageList.getRecords());
|
||||
return pageList;
|
||||
}
|
||||
|
||||
private List<Government> getTreeList(List<Government> treeList, List<Government> list) {
|
||||
for (Government government : treeList) {
|
||||
private void getTreeList(List<Government> pageList, List<Government> list) {
|
||||
for (Government government : pageList) {
|
||||
List<Government> children = list.stream().filter(d -> d.getParentId() != null && d.getParentId().equals(government.getGovernmentId())).collect(Collectors.toList());
|
||||
getTreeList(children, list);
|
||||
if (government.getParentId().equals(0L)) {
|
||||
government.setParentId(null);
|
||||
}
|
||||
government.setChildren(children);
|
||||
}
|
||||
return treeList;
|
||||
}
|
||||
|
||||
private void build(List<Government> list) {
|
||||
List<Project> projectList = new ArrayList<>();
|
||||
if (list.size() > 0) {
|
||||
projectList = projectMapper.selectList(Wrappers.<Project>lambdaQuery()
|
||||
.in(Project::getGovernmentSn, list.stream().map(g -> g.getGovernmentSn()).collect(Collectors.toList()))
|
||||
.eq(Project::getState, 1));
|
||||
}
|
||||
for (Government government : list) {
|
||||
if (government.getExpireTime() != null) {
|
||||
Integer between = (int) DateUtil.between(new Date(), DateUtil.endOfDay(government.getExpireTime()), DateUnit.DAY, false);
|
||||
government.setDiffDay(between > 0 ? between : 0);
|
||||
government.setState(between > 0 || DateUtil.endOfDay(government.getExpireTime()).after(new Date()) ? government.getState() : 0);
|
||||
}
|
||||
government.setInstallProject(projectList.stream().filter(p -> p.getGovernmentSn().equals(government.getGovernmentSn())).count());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -80,19 +80,21 @@ public class DangerousEngineeringServiceImpl extends ServiceImpl<DangerousEngine
|
||||
@Override
|
||||
public DangerousEngineeringStat stat(QueryWrapper<DangerousEngineering> wrapper) {
|
||||
List<DangerousEngineering> list = this.list(wrapper);
|
||||
List<DangerousEngineeringInspect> engineeringCheckAccepts = dangerousEngineeringInspectService.list(Wrappers.<DangerousEngineeringInspect>lambdaQuery()
|
||||
.eq(DangerousEngineeringInspect::getDangerousEngineeringId, list.stream().map(l -> l.getId()).collect(Collectors.toList()))
|
||||
.between(DangerousEngineeringInspect::getCreateTime, DateUtil.beginOfMonth(new Date()), DateUtil.endOfMonth(new Date())));
|
||||
DangerousEngineeringStat dangerousEngineeringStat = new DangerousEngineeringStat();
|
||||
if(list.size() > 0) {
|
||||
List<DangerousEngineeringInspect> dangerousEngineeringInspectList = dangerousEngineeringInspectService.list(Wrappers.<DangerousEngineeringInspect>lambdaQuery()
|
||||
.between(DangerousEngineeringInspect::getInspectTime, DateUtil.beginOfMonth(new Date()), DateUtil.endOfMonth(new Date()))
|
||||
.in(DangerousEngineeringInspect::getDangerousEngineeringId, list.stream().map(l -> l.getId()).collect(Collectors.toList())));
|
||||
dangerousEngineeringStat.setBuilding(list.stream().filter(l -> DateUtil.compare(l.getConstructionStartTime(), new Date()) < 0 &&
|
||||
DateUtil.compare(l.getConstructionEndTime(), new Date()) > 0).collect(Collectors.toList()).size());
|
||||
dangerousEngineeringStat.setSiteNum(list.stream().map(l -> l.getConstructionLocation()).distinct().collect(Collectors.toList()).size());
|
||||
dangerousEngineeringStat.setCheckNumber(engineeringCheckAccepts.size());
|
||||
dangerousEngineeringStat.setQuestionNum(engineeringCheckAccepts.stream().filter(e -> e.getQuestion() != 0).collect(Collectors.toList()).size());
|
||||
BigDecimal checkNum = new BigDecimal(engineeringCheckAccepts.size());
|
||||
dangerousEngineeringStat.setCheckNumber(dangerousEngineeringInspectList.size());
|
||||
dangerousEngineeringStat.setQuestionNum(dangerousEngineeringInspectList.stream().filter(e -> e.getQuestion() != 0).collect(Collectors.toList()).size());
|
||||
BigDecimal checkNum = new BigDecimal(dangerousEngineeringInspectList.stream().map(d -> d.getDangerousEngineeringId()).distinct().collect(Collectors.toList()).size());
|
||||
BigDecimal buildingNum = new BigDecimal(dangerousEngineeringStat.getBuilding());
|
||||
dangerousEngineeringStat.setCheckRatio(dangerousEngineeringStat.getBuilding() == 0 ? buildingNum : checkNum.divide(buildingNum, 2, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")));
|
||||
dangerousEngineeringStat.setPlanNum(list.stream().filter(l -> DateUtil.month(l.getConstructionPlanStartTime()) == DateUtil.month(new Date()) + 1).collect(Collectors.toList()).size());
|
||||
}
|
||||
return dangerousEngineeringStat;
|
||||
}
|
||||
}
|
||||
|
||||
@ -9,20 +9,20 @@ import java.math.BigDecimal;
|
||||
public class DangerousEngineeringStat {
|
||||
|
||||
@ApiModelProperty(value = "在施危大工程")
|
||||
private Integer building;
|
||||
private Integer building = 0;
|
||||
|
||||
@ApiModelProperty(value = "危大工程施工部位")
|
||||
private Integer siteNum;
|
||||
private Integer siteNum = 0;
|
||||
|
||||
@ApiModelProperty(value = "本月检查次数")
|
||||
private Integer checkNumber;
|
||||
private Integer checkNumber = 0;
|
||||
|
||||
@ApiModelProperty(value = "本月危大工程导致隐患数量")
|
||||
private Integer questionNum;
|
||||
private Integer questionNum = 0;
|
||||
|
||||
@ApiModelProperty(value = "本月危大工程排查覆盖率")
|
||||
private BigDecimal checkRatio;
|
||||
private BigDecimal checkRatio = new BigDecimal(0);
|
||||
|
||||
@ApiModelProperty(value = "下月计划施工的危大工程")
|
||||
private Integer planNum;
|
||||
private Integer planNum = 0;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user