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.dto.DangerWorkStatisticsQry;
|
||||
import com.zcloud.eightwork.dto.EightworkInfoAddCmd;
|
||||
import com.zcloud.eightwork.dto.EightworkInfoPageQry;
|
||||
import com.zcloud.eightwork.dto.EightworkInfoUpdateCmd;
|
||||
import com.zcloud.eightwork.dto.EightworkInfoWithdrawCmd;
|
||||
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.EightworkInfoCO;
|
||||
import com.alibaba.cola.dto.MultiResponse;
|
||||
|
|
@ -112,5 +114,11 @@ public class EightworkInfoController {
|
|||
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.domain.model.EightworkInfoE;
|
||||
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.clientobject.DangerWorkStatisticsCO;
|
||||
import com.zcloud.eightwork.dto.clientobject.EightworkInfoCO;
|
||||
import com.zcloud.eightwork.dto.clientobject.StatisticsByWorkTypeCO;
|
||||
import com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO;
|
||||
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.repository.EightworkInfoRepository;
|
||||
import com.zcloud.eightwork.persistence.repository.EightworkSupplementaryInfoRepository;
|
||||
|
|
@ -82,6 +85,26 @@ public class EightworkInfoQueryExe {
|
|||
}).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) {
|
||||
// Map<String, Object> params = new HashMap<>();
|
||||
// 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.model.TaskLogE;
|
||||
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.EightworkInfoPageQry;
|
||||
import com.zcloud.eightwork.dto.EightworkInfoUpdateCmd;
|
||||
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.StatisticsByWorkTypeCO;
|
||||
import com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO;
|
||||
|
|
@ -167,5 +169,10 @@ public class EightworkInfoServiceImpl implements EightworkInfoServiceI {
|
|||
public void exportConfinedspace(EightworkInfoPageQry qry, HttpServletResponse 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.SingleResponse;
|
||||
import com.zcloud.eightwork.dto.DangerWorkStatisticsQry;
|
||||
import com.zcloud.eightwork.dto.EightworkInfoAddCmd;
|
||||
import com.zcloud.eightwork.dto.EightworkInfoPageQry;
|
||||
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.StatisticsByWorkTypeCO;
|
||||
|
||||
|
|
@ -49,5 +51,7 @@ public interface EightworkInfoServiceI {
|
|||
void withdraw(Long id, String reason);
|
||||
|
||||
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.DataScopes;
|
||||
import com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO;
|
||||
import com.zcloud.eightwork.persistence.dataobject.dto.DangerWorkStatisticsDTO;
|
||||
import com.zcloud.eightwork.persistence.dataobject.dto.StatisticsByWorkTypeDTO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
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);
|
||||
|
||||
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.jjb.saas.framework.repository.repo.BaseRepository;
|
||||
import com.zcloud.eightwork.persistence.dataobject.EightworkInfoDO;
|
||||
import com.zcloud.eightwork.persistence.dataobject.dto.DangerWorkStatisticsDTO;
|
||||
import com.zcloud.eightwork.persistence.dataobject.dto.StatisticsByWorkTypeDTO;
|
||||
|
||||
import java.util.List;
|
||||
|
|
@ -25,6 +26,8 @@ public interface EightworkInfoRepository extends BaseRepository<EightworkInfoDO>
|
|||
|
||||
List<StatisticsByWorkTypeDTO> statisticsByWorkType(Map<String, Object> params);
|
||||
|
||||
DangerWorkStatisticsDTO dangerWorkStatistics(Map<String, Object> params);
|
||||
|
||||
/**
|
||||
* 使用 CAS 方式更新 lockFlag(乐观锁)
|
||||
* 只有当 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.zcloud.eightwork.domain.model.enums.MenuEnum;
|
||||
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.mapper.EightworkInfoMapper;
|
||||
import com.zcloud.eightwork.persistence.repository.EightworkInfoRepository;
|
||||
|
|
@ -73,6 +74,11 @@ public class EightworkInfoRepositoryImpl extends BaseRepositoryImpl<EightworkInf
|
|||
return eightworkInfoMapper.statisticsByWorkType(params);
|
||||
}
|
||||
|
||||
@Override
|
||||
public DangerWorkStatisticsDTO dangerWorkStatistics(Map<String, Object> params) {
|
||||
return eightworkInfoMapper.dangerWorkStatistics(params);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean updateLockFlagToLocked(Long id, Integer expectedLockFlag, Integer newLockFlag, Integer expectedStatus) {
|
||||
LambdaUpdateWrapper<EightworkInfoDO> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
|
|
|
|||
|
|
@ -133,4 +133,15 @@
|
|||
group by t.corpinfo_id
|
||||
</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>
|
||||
|
|
|
|||
Loading…
Reference in New Issue