统计危大类别情况
This commit is contained in:
parent
93162da5b0
commit
f69d4a8a53
@ -3,11 +3,13 @@ package com.zhgd.xmgl.modules.dangerous.controller;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.zhgd.annotation.OperLog;
|
||||
import com.zhgd.jeecg.common.api.vo.Result;
|
||||
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
||||
import com.zhgd.xmgl.enums.ParamEnum;
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.SystemUser;
|
||||
import com.zhgd.xmgl.modules.basicdata.service.ISystemUserService;
|
||||
import com.zhgd.xmgl.modules.dangerous.entity.*;
|
||||
@ -21,7 +23,11 @@ import com.zhgd.xmgl.modules.worker.service.IEnterpriseInfoService;
|
||||
import com.zhgd.xmgl.modules.worker.service.IWorkerInfoService;
|
||||
import com.zhgd.xmgl.modules.xz.security.entity.XzSecurityInspectTaskRecord;
|
||||
import com.zhgd.xmgl.modules.xz.security.entity.XzSecurityQualityInspectionRecord;
|
||||
import com.zhgd.xmgl.modules.xz.special.entity.*;
|
||||
import com.zhgd.xmgl.modules.xz.special.entity.vo.CountSpecialByFinalStatusVo;
|
||||
import com.zhgd.xmgl.security.util.SecurityUtils;
|
||||
import com.zhgd.xmgl.util.MessageUtil;
|
||||
import com.zhgd.xmgl.util.NumberUtils;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiImplicitParam;
|
||||
import io.swagger.annotations.ApiImplicitParams;
|
||||
@ -253,6 +259,5 @@ public class DangerousEngineeringRecordController {
|
||||
public Result endEngineer(@ApiIgnore @RequestBody Map<String, Object> paramMap) {
|
||||
dangerousEngineeringRecordService.endEngineer(paramMap);
|
||||
return Result.ok();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -6,6 +6,7 @@ import java.util.Map;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.zhgd.annotation.DataScope;
|
||||
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
||||
import com.zhgd.xmgl.modules.xz.special.entity.vo.CountSpecialByFinalStatusVo;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import com.zhgd.xmgl.modules.dangerous.entity.DangerousEngineeringRecord;
|
||||
@ -24,4 +25,6 @@ public interface DangerousEngineeringRecordMapper extends BaseMapper<DangerousEn
|
||||
List<EntityMap> queryDangerousEngineeringPageList(Page<EntityMap> page, @Param("param")Map<String, Object> map);
|
||||
|
||||
EntityMap queryDangerousEngineeringPageList(@Param("param") Map<String, Object> map);
|
||||
|
||||
List<CountSpecialByFinalStatusVo.GroupByType> countDangerEngineerByFinalStatus(Map<String, Object> param);
|
||||
}
|
||||
|
||||
@ -46,4 +46,14 @@
|
||||
</if>
|
||||
order by t.create_time desc
|
||||
</select>
|
||||
|
||||
<select id="countDangerEngineerByFinalStatus"
|
||||
resultType="com.zhgd.xmgl.modules.xz.special.entity.vo.CountSpecialByFinalStatusVo$GroupByType">
|
||||
select engineering_type_name as name,
|
||||
ifnull(sum(if(final_acceptance_status=1,1,0)),0) as running,
|
||||
ifnull(sum(if(final_acceptance_status=2,1,0)),0) as complete,
|
||||
count(*) as num
|
||||
from dangerous_engineering_record
|
||||
group by engineering_type_name
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
@ -5,8 +5,10 @@ import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
||||
import com.zhgd.xmgl.modules.dangerous.entity.DangerousEngineeringRecord;
|
||||
import com.zhgd.xmgl.modules.xz.security.entity.vo.GetStatScoreVo;
|
||||
import com.zhgd.xmgl.modules.xz.special.entity.vo.CountSpecialByFinalStatusVo;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
@ -72,4 +74,11 @@ public interface IDangerousEngineeringRecordService extends IService<DangerousEn
|
||||
* @param map
|
||||
*/
|
||||
void delete(Map<String, Object> map);
|
||||
|
||||
/**
|
||||
* 统计危大类别情况
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
List<CountSpecialByFinalStatusVo.GroupByType> countDangerEngineerByFinalStatus(Map<String, Object> param);
|
||||
}
|
||||
|
||||
@ -30,6 +30,7 @@ import com.zhgd.xmgl.modules.xz.security.entity.XzSecurityQualityInspectionRecor
|
||||
import com.zhgd.xmgl.modules.xz.security.entity.vo.GetStatScoreVo;
|
||||
import com.zhgd.xmgl.modules.xz.security.service.IXzSecurityQualityInspectionRecordService;
|
||||
import com.zhgd.xmgl.modules.xz.service.IXzDangerousEngineeringAcceptanceService;
|
||||
import com.zhgd.xmgl.modules.xz.special.entity.vo.CountSpecialByFinalStatusVo;
|
||||
import com.zhgd.xmgl.util.MapBuilder;
|
||||
import com.zhgd.xmgl.util.MessageUtil;
|
||||
import org.apache.commons.collections.MapUtils;
|
||||
@ -321,4 +322,9 @@ public class DangerousEngineeringRecordServiceImpl extends ServiceImpl<Dangerous
|
||||
.eq(XzSecurityQualityInspectionRecord::getType, val)
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CountSpecialByFinalStatusVo.GroupByType> countDangerEngineerByFinalStatus(Map<String, Object> param) {
|
||||
return baseMapper.countDangerEngineerByFinalStatus(param);
|
||||
}
|
||||
}
|
||||
|
||||
@ -8,28 +8,30 @@ import com.zhgd.jeecg.common.api.vo.Result;
|
||||
import com.zhgd.jeecg.common.system.query.QueryGenerator;
|
||||
import com.zhgd.xmgl.constant.Cts;
|
||||
import com.zhgd.xmgl.enums.ParamEnum;
|
||||
import com.zhgd.xmgl.modules.dangerous.service.IDangerousEngineeringRecordService;
|
||||
import com.zhgd.xmgl.modules.video.entity.AiAnalyseHardWareAlarmRecord;
|
||||
import com.zhgd.xmgl.modules.video.mapper.AiAnalyseHardWareAlarmRecordMapper;
|
||||
import com.zhgd.xmgl.modules.video.service.IAiAnalyseHardWareAlarmRecordService;
|
||||
import com.zhgd.xmgl.modules.worker.service.impl.UserEnterpriseServiceImpl;
|
||||
import com.zhgd.xmgl.modules.xz.emergency.entity.XzEmergencyRecord;
|
||||
import com.zhgd.xmgl.modules.xz.emergency.mapper.XzEmergencyRecordMapper;
|
||||
import com.zhgd.xmgl.modules.xz.special.entity.vo.CountSpecialByFinalStatusVo;
|
||||
import com.zhgd.xmgl.security.util.SecurityUtils;
|
||||
import com.zhgd.xmgl.util.NumberUtils;
|
||||
import com.zhgd.xmgl.util.PageUtil;
|
||||
import com.zhgd.xmgl.util.RefUtil;
|
||||
import io.swagger.annotations.Api;
|
||||
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.context.annotation.Lazy;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import springfox.documentation.annotations.ApiIgnore;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.*;
|
||||
|
||||
@RestController
|
||||
@RequestMapping(value = {"/xmgl/agjtLiveScreen"})
|
||||
@ -43,6 +45,9 @@ public class XzAgjtLiveScreenController {
|
||||
AiAnalyseHardWareAlarmRecordMapper aiAnalyseHardWareAlarmRecordMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
IDangerousEngineeringRecordService dangerousEngineeringRecordService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private UserEnterpriseServiceImpl userEnterpriseService;
|
||||
@Autowired
|
||||
private XzEmergencyRecordMapper xzEmergencyRecordMapper;
|
||||
@ -84,4 +89,29 @@ public class XzAgjtLiveScreenController {
|
||||
IPage<XzEmergencyRecord> pageList = xzEmergencyRecordMapper.queryList(page, queryWrapper);
|
||||
return Result.success(pageList);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "统计危大类别情况", notes = "统计危大类别情况", httpMethod = "POST")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "projectSn", value = "项目sn", paramType = "body", required = true, dataType = "String"),
|
||||
})
|
||||
@PostMapping(value = "/countDangerEngineerByFinalStatus")
|
||||
public Result<CountSpecialByFinalStatusVo> countDangerEngineerByFinalStatus(@ApiIgnore @RequestBody Map<String, Object> param) {
|
||||
List<CountSpecialByFinalStatusVo.GroupByType> groupByTypes = dangerousEngineeringRecordService.countDangerEngineerByFinalStatus(param);
|
||||
long sum = groupByTypes.stream().map(CountSpecialByFinalStatusVo.GroupByType::getNum).mapToLong(value -> value).sum();
|
||||
Long running = 0L;
|
||||
Long complete = 0L;
|
||||
for (CountSpecialByFinalStatusVo.GroupByType type : groupByTypes) {
|
||||
running += type.getRunning();
|
||||
complete += type.getComplete();
|
||||
type.setRatio(Optional.ofNullable(NumberUtils.occupyRate(type.getNum(), sum, 2)).orElse(0D));
|
||||
}
|
||||
CountSpecialByFinalStatusVo rtVo = new CountSpecialByFinalStatusVo();
|
||||
CountSpecialByFinalStatusVo.Total total = new CountSpecialByFinalStatusVo.Total();
|
||||
total.setRunning(running);
|
||||
total.setComplete(complete);
|
||||
rtVo.setTotal(total);
|
||||
rtVo.setGroupByType(groupByTypes);
|
||||
return Result.success(rtVo);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user