feat(web): 添加可视化大屏危险作业统计数据接口
parent
8d497c65f0
commit
1837d83259
|
|
@ -2,11 +2,13 @@ package com.zcloud.eightwork.web;
|
||||||
|
|
||||||
|
|
||||||
import com.zcloud.eightwork.api.EightworkInfoServiceI;
|
import com.zcloud.eightwork.api.EightworkInfoServiceI;
|
||||||
|
import com.zcloud.eightwork.dto.DangerWorkStatisticsQry;
|
||||||
import com.zcloud.eightwork.dto.EightworkInfoAddCmd;
|
import com.zcloud.eightwork.dto.EightworkInfoAddCmd;
|
||||||
import com.zcloud.eightwork.dto.EightworkInfoPageQry;
|
import com.zcloud.eightwork.dto.EightworkInfoPageQry;
|
||||||
import com.zcloud.eightwork.dto.EightworkInfoUpdateCmd;
|
import com.zcloud.eightwork.dto.EightworkInfoUpdateCmd;
|
||||||
import com.zcloud.eightwork.dto.EightworkInfoWithdrawCmd;
|
import com.zcloud.eightwork.dto.EightworkInfoWithdrawCmd;
|
||||||
import com.zcloud.eightwork.dto.ForceTerminateCmd;
|
import com.zcloud.eightwork.dto.ForceTerminateCmd;
|
||||||
|
import com.zcloud.eightwork.dto.clientobject.DangerWorkStatisticsCO;
|
||||||
import com.zcloud.eightwork.dto.clientobject.StatisticsByWorkTypeCO;
|
import com.zcloud.eightwork.dto.clientobject.StatisticsByWorkTypeCO;
|
||||||
import com.zcloud.eightwork.dto.clientobject.EightworkInfoCO;
|
import com.zcloud.eightwork.dto.clientobject.EightworkInfoCO;
|
||||||
import com.alibaba.cola.dto.MultiResponse;
|
import com.alibaba.cola.dto.MultiResponse;
|
||||||
|
|
@ -112,5 +114,11 @@ public class EightworkInfoController {
|
||||||
eightworkInfoService.exportConfinedspace(qry,httpServletResponse);
|
eightworkInfoService.exportConfinedspace(qry,httpServletResponse);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ApiOperation("可视化大屏-危险作业统计数量")
|
||||||
|
@PostMapping("/dangerWorkStatistics")
|
||||||
|
public SingleResponse<DangerWorkStatisticsCO> dangerWorkStatistics(@RequestBody DangerWorkStatisticsQry qry) {
|
||||||
|
return SingleResponse.of(eightworkInfoService.dangerWorkStatistics(qry));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -6,11 +6,14 @@ import com.jjb.saas.framework.auth.utils.AuthContext;
|
||||||
import com.zcloud.eightwork.command.convertor.EightworkInfoCoConvertor;
|
import com.zcloud.eightwork.command.convertor.EightworkInfoCoConvertor;
|
||||||
import com.zcloud.eightwork.domain.model.EightworkInfoE;
|
import com.zcloud.eightwork.domain.model.EightworkInfoE;
|
||||||
import com.zcloud.eightwork.domain.model.enums.WorkCodeEnum;
|
import com.zcloud.eightwork.domain.model.enums.WorkCodeEnum;
|
||||||
|
import com.zcloud.eightwork.dto.DangerWorkStatisticsQry;
|
||||||
import com.zcloud.eightwork.dto.EightworkInfoPageQry;
|
import com.zcloud.eightwork.dto.EightworkInfoPageQry;
|
||||||
|
import com.zcloud.eightwork.dto.clientobject.DangerWorkStatisticsCO;
|
||||||
import com.zcloud.eightwork.dto.clientobject.EightworkInfoCO;
|
import com.zcloud.eightwork.dto.clientobject.EightworkInfoCO;
|
||||||
import com.zcloud.eightwork.dto.clientobject.StatisticsByWorkTypeCO;
|
import com.zcloud.eightwork.dto.clientobject.StatisticsByWorkTypeCO;
|
||||||
import com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO;
|
import com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO;
|
||||||
import com.zcloud.eightwork.persistence.dataobject.EightworkSupplementaryInfoDO;
|
import com.zcloud.eightwork.persistence.dataobject.EightworkSupplementaryInfoDO;
|
||||||
|
import com.zcloud.eightwork.persistence.dataobject.dto.DangerWorkStatisticsDTO;
|
||||||
import com.zcloud.eightwork.persistence.dataobject.dto.StatisticsByWorkTypeDTO;
|
import com.zcloud.eightwork.persistence.dataobject.dto.StatisticsByWorkTypeDTO;
|
||||||
import com.zcloud.eightwork.persistence.repository.EightworkInfoRepository;
|
import com.zcloud.eightwork.persistence.repository.EightworkInfoRepository;
|
||||||
import com.zcloud.eightwork.persistence.repository.EightworkSupplementaryInfoRepository;
|
import com.zcloud.eightwork.persistence.repository.EightworkSupplementaryInfoRepository;
|
||||||
|
|
@ -82,6 +85,26 @@ public class EightworkInfoQueryExe {
|
||||||
}).collect(Collectors.toList());
|
}).collect(Collectors.toList());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public DangerWorkStatisticsCO dangerWorkStatistics(DangerWorkStatisticsQry qry) {
|
||||||
|
Map<String, Object> params = new HashMap<>();
|
||||||
|
if (qry != null) {
|
||||||
|
params.put("corpinfoId", qry.getCorpinfoId());
|
||||||
|
}
|
||||||
|
DangerWorkStatisticsDTO statisticsDTO = eightworkInfoRepository.dangerWorkStatistics(params);
|
||||||
|
if (statisticsDTO == null) {
|
||||||
|
return new DangerWorkStatisticsCO();
|
||||||
|
}
|
||||||
|
DangerWorkStatisticsCO statisticsCO = new DangerWorkStatisticsCO();
|
||||||
|
BeanUtils.copyProperties(statisticsDTO, statisticsCO);
|
||||||
|
if (statisticsCO.getDoingCount() == null) {
|
||||||
|
statisticsCO.setDoingCount(0L);
|
||||||
|
}
|
||||||
|
if (statisticsCO.getAppliedCount() == null) {
|
||||||
|
statisticsCO.setAppliedCount(0L);
|
||||||
|
}
|
||||||
|
return statisticsCO;
|
||||||
|
}
|
||||||
|
|
||||||
public void exportConfinedspace(EightworkInfoPageQry qry, HttpServletResponse httpServletResponse) {
|
public void exportConfinedspace(EightworkInfoPageQry qry, HttpServletResponse httpServletResponse) {
|
||||||
// Map<String, Object> params = new HashMap<>();
|
// Map<String, Object> params = new HashMap<>();
|
||||||
// params.put("ids",ids);
|
// params.put("ids",ids);
|
||||||
|
|
|
||||||
|
|
@ -13,10 +13,12 @@ import com.zcloud.eightwork.command.query.EightworkInfoQueryExe;
|
||||||
import com.zcloud.eightwork.domain.gateway.TaskLogGateway;
|
import com.zcloud.eightwork.domain.gateway.TaskLogGateway;
|
||||||
import com.zcloud.eightwork.domain.model.TaskLogE;
|
import com.zcloud.eightwork.domain.model.TaskLogE;
|
||||||
import com.zcloud.eightwork.domain.model.enums.TaskLogStatus;
|
import com.zcloud.eightwork.domain.model.enums.TaskLogStatus;
|
||||||
|
import com.zcloud.eightwork.dto.DangerWorkStatisticsQry;
|
||||||
import com.zcloud.eightwork.dto.EightworkInfoAddCmd;
|
import com.zcloud.eightwork.dto.EightworkInfoAddCmd;
|
||||||
import com.zcloud.eightwork.dto.EightworkInfoPageQry;
|
import com.zcloud.eightwork.dto.EightworkInfoPageQry;
|
||||||
import com.zcloud.eightwork.dto.EightworkInfoUpdateCmd;
|
import com.zcloud.eightwork.dto.EightworkInfoUpdateCmd;
|
||||||
import com.zcloud.eightwork.dto.TaskLogNextCmd;
|
import com.zcloud.eightwork.dto.TaskLogNextCmd;
|
||||||
|
import com.zcloud.eightwork.dto.clientobject.DangerWorkStatisticsCO;
|
||||||
import com.zcloud.eightwork.dto.clientobject.EightworkInfoCO;
|
import com.zcloud.eightwork.dto.clientobject.EightworkInfoCO;
|
||||||
import com.zcloud.eightwork.dto.clientobject.StatisticsByWorkTypeCO;
|
import com.zcloud.eightwork.dto.clientobject.StatisticsByWorkTypeCO;
|
||||||
import com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO;
|
import com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO;
|
||||||
|
|
@ -167,5 +169,10 @@ public class EightworkInfoServiceImpl implements EightworkInfoServiceI {
|
||||||
public void exportConfinedspace(EightworkInfoPageQry qry, HttpServletResponse httpServletResponse) {
|
public void exportConfinedspace(EightworkInfoPageQry qry, HttpServletResponse httpServletResponse) {
|
||||||
eightworkInfoQueryExe.exportConfinedspace(qry,httpServletResponse);
|
eightworkInfoQueryExe.exportConfinedspace(qry,httpServletResponse);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public DangerWorkStatisticsCO dangerWorkStatistics(DangerWorkStatisticsQry qry) {
|
||||||
|
return eightworkInfoQueryExe.dangerWorkStatistics(qry);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,9 +2,11 @@ package com.zcloud.eightwork.api;
|
||||||
|
|
||||||
import com.alibaba.cola.dto.PageResponse;
|
import com.alibaba.cola.dto.PageResponse;
|
||||||
import com.alibaba.cola.dto.SingleResponse;
|
import com.alibaba.cola.dto.SingleResponse;
|
||||||
|
import com.zcloud.eightwork.dto.DangerWorkStatisticsQry;
|
||||||
import com.zcloud.eightwork.dto.EightworkInfoAddCmd;
|
import com.zcloud.eightwork.dto.EightworkInfoAddCmd;
|
||||||
import com.zcloud.eightwork.dto.EightworkInfoPageQry;
|
import com.zcloud.eightwork.dto.EightworkInfoPageQry;
|
||||||
import com.zcloud.eightwork.dto.EightworkInfoUpdateCmd;
|
import com.zcloud.eightwork.dto.EightworkInfoUpdateCmd;
|
||||||
|
import com.zcloud.eightwork.dto.clientobject.DangerWorkStatisticsCO;
|
||||||
import com.zcloud.eightwork.dto.clientobject.EightworkInfoCO;
|
import com.zcloud.eightwork.dto.clientobject.EightworkInfoCO;
|
||||||
import com.zcloud.eightwork.dto.clientobject.StatisticsByWorkTypeCO;
|
import com.zcloud.eightwork.dto.clientobject.StatisticsByWorkTypeCO;
|
||||||
|
|
||||||
|
|
@ -49,5 +51,7 @@ public interface EightworkInfoServiceI {
|
||||||
void withdraw(Long id, String reason);
|
void withdraw(Long id, String reason);
|
||||||
|
|
||||||
void exportConfinedspace(EightworkInfoPageQry ids, HttpServletResponse httpServletResponse);
|
void exportConfinedspace(EightworkInfoPageQry ids, HttpServletResponse httpServletResponse);
|
||||||
|
|
||||||
|
DangerWorkStatisticsCO dangerWorkStatistics(DangerWorkStatisticsQry qry);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,19 @@
|
||||||
|
package com.zcloud.eightwork.dto;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 可视化大屏危险作业统计查询
|
||||||
|
*
|
||||||
|
* @author codex
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class DangerWorkStatisticsQry implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "企业ID")
|
||||||
|
private Long corpinfoId;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,19 @@
|
||||||
|
package com.zcloud.eightwork.dto.clientobject;
|
||||||
|
|
||||||
|
import com.alibaba.cola.dto.ClientObject;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 可视化大屏危险作业统计数量
|
||||||
|
*
|
||||||
|
* @author codex
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class DangerWorkStatisticsCO extends ClientObject {
|
||||||
|
@ApiModelProperty(value = "进行中数量")
|
||||||
|
private Long doingCount;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "已申请数量")
|
||||||
|
private Long appliedCount;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,14 @@
|
||||||
|
package com.zcloud.eightwork.persistence.dataobject.dto;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 可视化大屏危险作业统计数量
|
||||||
|
*
|
||||||
|
* @author codex
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class DangerWorkStatisticsDTO {
|
||||||
|
private Long doingCount;
|
||||||
|
private Long appliedCount;
|
||||||
|
}
|
||||||
|
|
@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.jjb.saas.framework.datascope.annotation.DataScope;
|
import com.jjb.saas.framework.datascope.annotation.DataScope;
|
||||||
import com.jjb.saas.framework.datascope.annotation.DataScopes;
|
import com.jjb.saas.framework.datascope.annotation.DataScopes;
|
||||||
import com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO;
|
import com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO;
|
||||||
|
import com.zcloud.eightwork.persistence.dataobject.dto.DangerWorkStatisticsDTO;
|
||||||
import com.zcloud.eightwork.persistence.dataobject.dto.StatisticsByWorkTypeDTO;
|
import com.zcloud.eightwork.persistence.dataobject.dto.StatisticsByWorkTypeDTO;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
@ -28,5 +29,7 @@ public interface EightworkInfoMapper extends BaseMapper<EightworkInfoDO> {
|
||||||
IPage<EightworkInfoDO> listPage(Page<Map<String, Object>> page, @Param("params") Map<String, Object> parmas, String menuPerms);
|
IPage<EightworkInfoDO> listPage(Page<Map<String, Object>> page, @Param("params") Map<String, Object> parmas, String menuPerms);
|
||||||
|
|
||||||
List<StatisticsByWorkTypeDTO> statisticsByWorkType(@Param("params") Map<String, Object> params);
|
List<StatisticsByWorkTypeDTO> statisticsByWorkType(@Param("params") Map<String, Object> params);
|
||||||
|
|
||||||
|
DangerWorkStatisticsDTO dangerWorkStatistics(@Param("params") Map<String, Object> params);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@ package com.zcloud.eightwork.persistence.repository;
|
||||||
import com.alibaba.cola.dto.PageResponse;
|
import com.alibaba.cola.dto.PageResponse;
|
||||||
import com.jjb.saas.framework.repository.repo.BaseRepository;
|
import com.jjb.saas.framework.repository.repo.BaseRepository;
|
||||||
import com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO;
|
import com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO;
|
||||||
|
import com.zcloud.eightwork.persistence.dataobject.dto.DangerWorkStatisticsDTO;
|
||||||
import com.zcloud.eightwork.persistence.dataobject.dto.StatisticsByWorkTypeDTO;
|
import com.zcloud.eightwork.persistence.dataobject.dto.StatisticsByWorkTypeDTO;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
@ -25,6 +26,8 @@ public interface EightworkInfoRepository extends BaseRepository<EightworkInfoDO>
|
||||||
|
|
||||||
List<StatisticsByWorkTypeDTO> statisticsByWorkType(Map<String, Object> params);
|
List<StatisticsByWorkTypeDTO> statisticsByWorkType(Map<String, Object> params);
|
||||||
|
|
||||||
|
DangerWorkStatisticsDTO dangerWorkStatistics(Map<String, Object> params);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 使用 CAS 方式更新 lockFlag(乐观锁)
|
* 使用 CAS 方式更新 lockFlag(乐观锁)
|
||||||
* 只有当 lockFlag 和 status 都匹配时才更新
|
* 只有当 lockFlag 和 status 都匹配时才更新
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@ import com.jjb.saas.framework.repository.common.PageHelper;
|
||||||
import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl;
|
import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl;
|
||||||
import com.zcloud.eightwork.domain.model.enums.MenuEnum;
|
import com.zcloud.eightwork.domain.model.enums.MenuEnum;
|
||||||
import com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO;
|
import com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO;
|
||||||
|
import com.zcloud.eightwork.persistence.dataobject.dto.DangerWorkStatisticsDTO;
|
||||||
import com.zcloud.eightwork.persistence.dataobject.dto.StatisticsByWorkTypeDTO;
|
import com.zcloud.eightwork.persistence.dataobject.dto.StatisticsByWorkTypeDTO;
|
||||||
import com.zcloud.eightwork.persistence.mapper.EightworkInfoMapper;
|
import com.zcloud.eightwork.persistence.mapper.EightworkInfoMapper;
|
||||||
import com.zcloud.eightwork.persistence.repository.EightworkInfoRepository;
|
import com.zcloud.eightwork.persistence.repository.EightworkInfoRepository;
|
||||||
|
|
@ -73,6 +74,11 @@ public class EightworkInfoRepositoryImpl extends BaseRepositoryImpl<EightworkInf
|
||||||
return eightworkInfoMapper.statisticsByWorkType(params);
|
return eightworkInfoMapper.statisticsByWorkType(params);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public DangerWorkStatisticsDTO dangerWorkStatistics(Map<String, Object> params) {
|
||||||
|
return eightworkInfoMapper.dangerWorkStatistics(params);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean updateLockFlagToLocked(Long id, Integer expectedLockFlag, Integer newLockFlag, Integer expectedStatus) {
|
public boolean updateLockFlagToLocked(Long id, Integer expectedLockFlag, Integer newLockFlag, Integer expectedStatus) {
|
||||||
LambdaUpdateWrapper<EightworkInfoDO> updateWrapper = new LambdaUpdateWrapper<>();
|
LambdaUpdateWrapper<EightworkInfoDO> updateWrapper = new LambdaUpdateWrapper<>();
|
||||||
|
|
|
||||||
|
|
@ -133,4 +133,15 @@
|
||||||
group by t.corpinfo_id
|
group by t.corpinfo_id
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="dangerWorkStatistics" resultType="com.zcloud.eightwork.persistence.dataobject.dto.DangerWorkStatisticsDTO">
|
||||||
|
select
|
||||||
|
coalesce(sum(case when t.status = 1 then 1 else 0 end), 0) as doingCount,
|
||||||
|
coalesce(sum(case when t.status != 0 then 1 else 0 end), 0) as appliedCount
|
||||||
|
from eightwork_info t
|
||||||
|
where t.delete_enum = 'FALSE'
|
||||||
|
<if test="params.corpinfoId != null">
|
||||||
|
and t.corpinfo_id = #{params.corpinfoId}
|
||||||
|
</if>
|
||||||
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue