feat(api): 添加可视化大屏相关接口和数据查询功能
parent
1837d83259
commit
43eece07c2
|
|
@ -8,9 +8,17 @@ 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.ScreenStatisticsQry;
|
||||||
|
import com.zcloud.eightwork.dto.ScreenWorkPageQry;
|
||||||
|
import com.zcloud.eightwork.dto.ScreenWorkRecordQry;
|
||||||
|
import com.zcloud.eightwork.dto.ScreenWorkTrendQry;
|
||||||
import com.zcloud.eightwork.dto.clientobject.DangerWorkStatisticsCO;
|
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.zcloud.eightwork.dto.clientobject.ScreenStatusStatisticsCO;
|
||||||
|
import com.zcloud.eightwork.dto.clientobject.ScreenWorkPageCO;
|
||||||
|
import com.zcloud.eightwork.dto.clientobject.ScreenWorkRecordCO;
|
||||||
|
import com.zcloud.eightwork.dto.clientobject.ScreenWorkTrendCO;
|
||||||
import com.alibaba.cola.dto.MultiResponse;
|
import com.alibaba.cola.dto.MultiResponse;
|
||||||
import com.alibaba.cola.dto.PageResponse;
|
import com.alibaba.cola.dto.PageResponse;
|
||||||
import com.alibaba.cola.dto.Response;
|
import com.alibaba.cola.dto.Response;
|
||||||
|
|
@ -120,5 +128,29 @@ public class EightworkInfoController {
|
||||||
return SingleResponse.of(eightworkInfoService.dangerWorkStatistics(qry));
|
return SingleResponse.of(eightworkInfoService.dangerWorkStatistics(qry));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ApiOperation("可视化大屏-安全作业状态统计")
|
||||||
|
@PostMapping("/screenStatusStatistics")
|
||||||
|
public SingleResponse<ScreenStatusStatisticsCO> screenStatusStatistics(@RequestBody ScreenStatisticsQry qry) {
|
||||||
|
return SingleResponse.of(eightworkInfoService.screenStatusStatistics(qry));
|
||||||
|
}
|
||||||
|
|
||||||
|
@ApiOperation("可视化大屏-作业情况统计")
|
||||||
|
@PostMapping("/screenWorkTrend")
|
||||||
|
public MultiResponse<ScreenWorkTrendCO> screenWorkTrend(@RequestBody ScreenWorkTrendQry qry) {
|
||||||
|
return MultiResponse.of(eightworkInfoService.screenWorkTrend(qry));
|
||||||
|
}
|
||||||
|
|
||||||
|
@ApiOperation("可视化大屏-安全作业记录")
|
||||||
|
@PostMapping("/screenWorkRecord")
|
||||||
|
public PageResponse<ScreenWorkRecordCO> screenWorkRecord(@RequestBody ScreenWorkRecordQry qry) {
|
||||||
|
return eightworkInfoService.screenWorkRecord(qry);
|
||||||
|
}
|
||||||
|
|
||||||
|
@ApiOperation("可视化大屏-作业分页查询")
|
||||||
|
@PostMapping("/screenWorkPage")
|
||||||
|
public PageResponse<ScreenWorkPageCO> screenWorkPage(@RequestBody ScreenWorkPageQry qry) {
|
||||||
|
return eightworkInfoService.screenWorkPage(qry);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
package com.zcloud.eightwork.command.query;
|
package com.zcloud.eightwork.command.query;
|
||||||
|
|
||||||
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import com.alibaba.cola.dto.PageResponse;
|
import com.alibaba.cola.dto.PageResponse;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.jjb.saas.framework.auth.utils.AuthContext;
|
import com.jjb.saas.framework.auth.utils.AuthContext;
|
||||||
|
|
@ -8,12 +9,23 @@ 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.DangerWorkStatisticsQry;
|
||||||
import com.zcloud.eightwork.dto.EightworkInfoPageQry;
|
import com.zcloud.eightwork.dto.EightworkInfoPageQry;
|
||||||
|
import com.zcloud.eightwork.dto.ScreenStatisticsQry;
|
||||||
|
import com.zcloud.eightwork.dto.ScreenWorkPageQry;
|
||||||
|
import com.zcloud.eightwork.dto.ScreenWorkRecordQry;
|
||||||
|
import com.zcloud.eightwork.dto.ScreenWorkTrendQry;
|
||||||
import com.zcloud.eightwork.dto.clientobject.DangerWorkStatisticsCO;
|
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.ScreenStatusStatisticsCO;
|
||||||
|
import com.zcloud.eightwork.dto.clientobject.ScreenWorkPageCO;
|
||||||
|
import com.zcloud.eightwork.dto.clientobject.ScreenWorkRecordCO;
|
||||||
|
import com.zcloud.eightwork.dto.clientobject.ScreenWorkTrendCO;
|
||||||
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.DangerWorkStatisticsDTO;
|
||||||
|
import com.zcloud.eightwork.persistence.dataobject.dto.ScreenStatusStatisticsDTO;
|
||||||
|
import com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkRecordDTO;
|
||||||
|
import com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkTrendDTO;
|
||||||
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;
|
||||||
|
|
@ -27,6 +39,8 @@ import org.springframework.beans.BeanUtils;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import java.time.LocalDate;
|
||||||
|
import java.time.format.DateTimeFormatter;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
@ -86,10 +100,8 @@ public class EightworkInfoQueryExe {
|
||||||
}
|
}
|
||||||
|
|
||||||
public DangerWorkStatisticsCO dangerWorkStatistics(DangerWorkStatisticsQry qry) {
|
public DangerWorkStatisticsCO dangerWorkStatistics(DangerWorkStatisticsQry qry) {
|
||||||
Map<String, Object> params = new HashMap<>();
|
|
||||||
if (qry != null) {
|
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
|
||||||
params.put("corpinfoId", qry.getCorpinfoId());
|
|
||||||
}
|
|
||||||
DangerWorkStatisticsDTO statisticsDTO = eightworkInfoRepository.dangerWorkStatistics(params);
|
DangerWorkStatisticsDTO statisticsDTO = eightworkInfoRepository.dangerWorkStatistics(params);
|
||||||
if (statisticsDTO == null) {
|
if (statisticsDTO == null) {
|
||||||
return new DangerWorkStatisticsCO();
|
return new DangerWorkStatisticsCO();
|
||||||
|
|
@ -105,6 +117,164 @@ public class EightworkInfoQueryExe {
|
||||||
return statisticsCO;
|
return statisticsCO;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public ScreenStatusStatisticsCO screenStatusStatistics(ScreenStatisticsQry qry) {
|
||||||
|
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
|
||||||
|
ScreenStatusStatisticsDTO statisticsDTO = eightworkInfoRepository.screenStatusStatistics(params);
|
||||||
|
if (statisticsDTO == null) {
|
||||||
|
return new ScreenStatusStatisticsCO();
|
||||||
|
}
|
||||||
|
ScreenStatusStatisticsCO statisticsCO = new ScreenStatusStatisticsCO();
|
||||||
|
BeanUtils.copyProperties(statisticsDTO, statisticsCO);
|
||||||
|
if (statisticsCO.getAppliedCount() == null) {
|
||||||
|
statisticsCO.setAppliedCount(0L);
|
||||||
|
}
|
||||||
|
if (statisticsCO.getApprovingCount() == null) {
|
||||||
|
statisticsCO.setApprovingCount(0L);
|
||||||
|
}
|
||||||
|
if (statisticsCO.getArchivedCount() == null) {
|
||||||
|
statisticsCO.setArchivedCount(0L);
|
||||||
|
}
|
||||||
|
return statisticsCO;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<ScreenWorkTrendCO> screenWorkTrend(ScreenWorkTrendQry qry) {
|
||||||
|
Map<String, Object> params = new HashMap<>();
|
||||||
|
List<LocalDate> dates = buildDateRange(qry);
|
||||||
|
if (qry != null) {
|
||||||
|
params.put("corpinfoId", qry.getCorpinfoId());
|
||||||
|
}
|
||||||
|
if(qry.getPortArea() != null){
|
||||||
|
params.put("portArea", qry.getPortArea());
|
||||||
|
}
|
||||||
|
params.put("startDate", dates.get(0).format(DateTimeFormatter.ISO_LOCAL_DATE));
|
||||||
|
params.put("endDate", dates.get(dates.size() - 1).format(DateTimeFormatter.ISO_LOCAL_DATE));
|
||||||
|
List<ScreenWorkTrendDTO> trendDTOS = eightworkInfoRepository.screenWorkTrend(params);
|
||||||
|
if (trendDTOS == null) {
|
||||||
|
return new ArrayList<>();
|
||||||
|
}
|
||||||
|
Map<String, Long> countMap = trendDTOS.stream()
|
||||||
|
.collect(Collectors.toMap(dto -> dto.getWorkDate() + "#" + dto.getWorkType(), ScreenWorkTrendDTO::getCount));
|
||||||
|
List<ScreenWorkTrendCO> trendCOS = new ArrayList<>();
|
||||||
|
for (LocalDate date : dates) {
|
||||||
|
String workDate = date.format(DateTimeFormatter.ISO_LOCAL_DATE);
|
||||||
|
for (WorkCodeEnum workCodeEnum : WorkCodeEnum.values()) {
|
||||||
|
ScreenWorkTrendCO trendCO = new ScreenWorkTrendCO();
|
||||||
|
trendCO.setWorkDate(workDate);
|
||||||
|
trendCO.setWorkType(workCodeEnum.getWorkType());
|
||||||
|
trendCO.setWorkTypeName(workCodeEnum.getName());
|
||||||
|
trendCO.setCount(countMap.getOrDefault(workDate + "#" + workCodeEnum.getWorkType(), 0L));
|
||||||
|
trendCOS.add(trendCO);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return trendCOS;
|
||||||
|
}
|
||||||
|
|
||||||
|
public PageResponse<ScreenWorkRecordCO> screenWorkRecord(ScreenWorkRecordQry qry) {
|
||||||
|
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
|
||||||
|
PageResponse<ScreenWorkRecordDTO> pageResponse = eightworkInfoRepository.screenWorkRecord(params);
|
||||||
|
if (CollUtil.isEmpty(pageResponse.getData())) {
|
||||||
|
return PageResponse.of(null, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||||
|
}
|
||||||
|
List<ScreenWorkRecordCO> records = pageResponse.getData().stream()
|
||||||
|
.map(this::toScreenWorkRecordCO)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
return PageResponse.of(records, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||||
|
}
|
||||||
|
|
||||||
|
public PageResponse<ScreenWorkPageCO> screenWorkPage(ScreenWorkPageQry qry) {
|
||||||
|
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
|
||||||
|
PageResponse<ScreenWorkRecordDTO> pageResponse = eightworkInfoRepository.screenWorkPage(params);
|
||||||
|
if (CollUtil.isEmpty(pageResponse.getData())) {
|
||||||
|
return PageResponse.of(null, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||||
|
}
|
||||||
|
List<ScreenWorkPageCO> records = pageResponse.getData().stream()
|
||||||
|
.map(this::toScreenWorkPageCO)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
return PageResponse.of(records, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||||
|
}
|
||||||
|
|
||||||
|
private List<LocalDate> buildDateRange(ScreenWorkTrendQry qry) {
|
||||||
|
LocalDate endDate = LocalDate.now();
|
||||||
|
LocalDate startDate = endDate.minusDays(6);
|
||||||
|
if (qry != null && StringUtils.isNotBlank(qry.getEndDate())) {
|
||||||
|
endDate = LocalDate.parse(qry.getEndDate(), DateTimeFormatter.ISO_LOCAL_DATE);
|
||||||
|
}
|
||||||
|
if (qry != null && StringUtils.isNotBlank(qry.getStartDate())) {
|
||||||
|
startDate = LocalDate.parse(qry.getStartDate(), DateTimeFormatter.ISO_LOCAL_DATE);
|
||||||
|
}
|
||||||
|
if (startDate.isAfter(endDate)) {
|
||||||
|
LocalDate tempDate = startDate;
|
||||||
|
startDate = endDate;
|
||||||
|
endDate = tempDate;
|
||||||
|
}
|
||||||
|
List<LocalDate> dates = new ArrayList<>();
|
||||||
|
LocalDate currentDate = startDate;
|
||||||
|
while (!currentDate.isAfter(endDate)) {
|
||||||
|
dates.add(currentDate);
|
||||||
|
currentDate = currentDate.plusDays(1);
|
||||||
|
}
|
||||||
|
return dates;
|
||||||
|
}
|
||||||
|
|
||||||
|
private ScreenWorkRecordCO toScreenWorkRecordCO(ScreenWorkRecordDTO recordDTO) {
|
||||||
|
ScreenWorkRecordCO recordCO = new ScreenWorkRecordCO();
|
||||||
|
BeanUtils.copyProperties(recordDTO, recordCO);
|
||||||
|
recordCO.setWorkTypeName(WorkCodeEnum.getNameByWorkType(recordDTO.getWorkType()));
|
||||||
|
recordCO.setStatusName(StringUtils.isNotBlank(recordDTO.getCurrentStepName()) ? recordDTO.getCurrentStepName() : getStatusName(recordDTO.getStatus()));
|
||||||
|
recordCO.setCreateTime(formatDateTime(recordDTO.getCreateTime()));
|
||||||
|
return recordCO;
|
||||||
|
}
|
||||||
|
|
||||||
|
private ScreenWorkPageCO toScreenWorkPageCO(ScreenWorkRecordDTO recordDTO) {
|
||||||
|
ScreenWorkPageCO pageCO = new ScreenWorkPageCO();
|
||||||
|
BeanUtils.copyProperties(recordDTO, pageCO);
|
||||||
|
pageCO.setWorkTypeName(WorkCodeEnum.getNameByWorkType(recordDTO.getWorkType()));
|
||||||
|
pageCO.setInfo(parseJson(recordDTO.getInfo()));
|
||||||
|
pageCO.setCreateTime(formatDateTime(recordDTO.getCreateTime()));
|
||||||
|
return pageCO;
|
||||||
|
}
|
||||||
|
|
||||||
|
private String getStatusName(Integer status) {
|
||||||
|
if (status == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
if (status == 1) {
|
||||||
|
return "审批中";
|
||||||
|
}
|
||||||
|
if (status == 999) {
|
||||||
|
return "已归档";
|
||||||
|
}
|
||||||
|
if (status == 998) {
|
||||||
|
return "强制终止";
|
||||||
|
}
|
||||||
|
if (status == 2) {
|
||||||
|
return "已打回";
|
||||||
|
}
|
||||||
|
if (status == 0) {
|
||||||
|
return "暂存";
|
||||||
|
}
|
||||||
|
return String.valueOf(status);
|
||||||
|
}
|
||||||
|
|
||||||
|
private String formatDateTime(java.time.LocalDateTime dateTime) {
|
||||||
|
if (dateTime == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
return dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
|
||||||
|
}
|
||||||
|
|
||||||
|
private JSONObject parseJson(String value) {
|
||||||
|
if (StringUtils.isBlank(value)) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
return JSONObject.parseObject(value);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.warn("解析作业详情失败,使用空对象", e);
|
||||||
|
return new JSONObject();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
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);
|
||||||
|
|
|
||||||
|
|
@ -17,9 +17,17 @@ 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.ScreenStatisticsQry;
|
||||||
|
import com.zcloud.eightwork.dto.ScreenWorkPageQry;
|
||||||
|
import com.zcloud.eightwork.dto.ScreenWorkRecordQry;
|
||||||
|
import com.zcloud.eightwork.dto.ScreenWorkTrendQry;
|
||||||
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.DangerWorkStatisticsCO;
|
||||||
import com.zcloud.eightwork.dto.clientobject.EightworkInfoCO;
|
import com.zcloud.eightwork.dto.clientobject.EightworkInfoCO;
|
||||||
|
import com.zcloud.eightwork.dto.clientobject.ScreenStatusStatisticsCO;
|
||||||
|
import com.zcloud.eightwork.dto.clientobject.ScreenWorkPageCO;
|
||||||
|
import com.zcloud.eightwork.dto.clientobject.ScreenWorkRecordCO;
|
||||||
|
import com.zcloud.eightwork.dto.clientobject.ScreenWorkTrendCO;
|
||||||
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.repository.EightworkInfoRepository;
|
import com.zcloud.eightwork.persistence.repository.EightworkInfoRepository;
|
||||||
|
|
@ -174,5 +182,25 @@ public class EightworkInfoServiceImpl implements EightworkInfoServiceI {
|
||||||
public DangerWorkStatisticsCO dangerWorkStatistics(DangerWorkStatisticsQry qry) {
|
public DangerWorkStatisticsCO dangerWorkStatistics(DangerWorkStatisticsQry qry) {
|
||||||
return eightworkInfoQueryExe.dangerWorkStatistics(qry);
|
return eightworkInfoQueryExe.dangerWorkStatistics(qry);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ScreenStatusStatisticsCO screenStatusStatistics(ScreenStatisticsQry qry) {
|
||||||
|
return eightworkInfoQueryExe.screenStatusStatistics(qry);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<ScreenWorkTrendCO> screenWorkTrend(ScreenWorkTrendQry qry) {
|
||||||
|
return eightworkInfoQueryExe.screenWorkTrend(qry);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PageResponse<ScreenWorkRecordCO> screenWorkRecord(ScreenWorkRecordQry qry) {
|
||||||
|
return eightworkInfoQueryExe.screenWorkRecord(qry);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PageResponse<ScreenWorkPageCO> screenWorkPage(ScreenWorkPageQry qry) {
|
||||||
|
return eightworkInfoQueryExe.screenWorkPage(qry);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -6,8 +6,16 @@ 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.ScreenStatisticsQry;
|
||||||
|
import com.zcloud.eightwork.dto.ScreenWorkPageQry;
|
||||||
|
import com.zcloud.eightwork.dto.ScreenWorkRecordQry;
|
||||||
|
import com.zcloud.eightwork.dto.ScreenWorkTrendQry;
|
||||||
import com.zcloud.eightwork.dto.clientobject.DangerWorkStatisticsCO;
|
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.ScreenStatusStatisticsCO;
|
||||||
|
import com.zcloud.eightwork.dto.clientobject.ScreenWorkPageCO;
|
||||||
|
import com.zcloud.eightwork.dto.clientobject.ScreenWorkRecordCO;
|
||||||
|
import com.zcloud.eightwork.dto.clientobject.ScreenWorkTrendCO;
|
||||||
import com.zcloud.eightwork.dto.clientobject.StatisticsByWorkTypeCO;
|
import com.zcloud.eightwork.dto.clientobject.StatisticsByWorkTypeCO;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
@ -53,5 +61,13 @@ public interface EightworkInfoServiceI {
|
||||||
void exportConfinedspace(EightworkInfoPageQry ids, HttpServletResponse httpServletResponse);
|
void exportConfinedspace(EightworkInfoPageQry ids, HttpServletResponse httpServletResponse);
|
||||||
|
|
||||||
DangerWorkStatisticsCO dangerWorkStatistics(DangerWorkStatisticsQry qry);
|
DangerWorkStatisticsCO dangerWorkStatistics(DangerWorkStatisticsQry qry);
|
||||||
|
|
||||||
|
ScreenStatusStatisticsCO screenStatusStatistics(ScreenStatisticsQry qry);
|
||||||
|
|
||||||
|
List<ScreenWorkTrendCO> screenWorkTrend(ScreenWorkTrendQry qry);
|
||||||
|
|
||||||
|
PageResponse<ScreenWorkRecordCO> screenWorkRecord(ScreenWorkRecordQry qry);
|
||||||
|
|
||||||
|
PageResponse<ScreenWorkPageCO> screenWorkPage(ScreenWorkPageQry qry);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,22 @@
|
||||||
|
package com.zcloud.eightwork.dto;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 可视化大屏统计查询
|
||||||
|
*
|
||||||
|
* @author codex
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ScreenStatisticsQry implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "企业ID")
|
||||||
|
private Long corpinfoId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "港区,1:秦皇岛港区,2:秦皇岛东,3:秦皇岛西", name = "portArea")
|
||||||
|
private Integer portArea;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,21 @@
|
||||||
|
package com.zcloud.eightwork.dto;
|
||||||
|
|
||||||
|
import com.alibaba.cola.dto.PageQuery;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 可视化大屏作业分页查询
|
||||||
|
*
|
||||||
|
* @author codex
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ScreenWorkPageQry extends PageQuery {
|
||||||
|
@ApiModelProperty(value = "企业ID")
|
||||||
|
private Long corpinfoId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "作业类型,枚举")
|
||||||
|
private String workType;
|
||||||
|
@ApiModelProperty(value = "港区,1:秦皇岛港区,2:秦皇岛东,3:秦皇岛西", name = "portArea")
|
||||||
|
private Integer portArea;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,19 @@
|
||||||
|
package com.zcloud.eightwork.dto;
|
||||||
|
|
||||||
|
import com.alibaba.cola.dto.PageQuery;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 可视化大屏安全作业记录查询
|
||||||
|
*
|
||||||
|
* @author codex
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ScreenWorkRecordQry extends PageQuery {
|
||||||
|
@ApiModelProperty(value = "企业ID")
|
||||||
|
private Long corpinfoId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "港区,1:秦皇岛港区,2:秦皇岛东,3:秦皇岛西", name = "portArea")
|
||||||
|
private Integer portArea;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,27 @@
|
||||||
|
package com.zcloud.eightwork.dto;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 可视化大屏作业情况统计查询
|
||||||
|
*
|
||||||
|
* @author codex
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ScreenWorkTrendQry implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "企业ID")
|
||||||
|
private Long corpinfoId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "开始日期,格式:yyyy-MM-dd")
|
||||||
|
private String startDate;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "结束日期,格式:yyyy-MM-dd")
|
||||||
|
private String endDate;
|
||||||
|
@ApiModelProperty(value = "港区,1:秦皇岛港区,2:秦皇岛东,3:秦皇岛西", name = "portArea")
|
||||||
|
private Integer portArea;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,22 @@
|
||||||
|
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 ScreenStatusStatisticsCO extends ClientObject {
|
||||||
|
@ApiModelProperty(value = "申请数")
|
||||||
|
private Long appliedCount;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "审批中数量")
|
||||||
|
private Long approvingCount;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "归档数")
|
||||||
|
private Long archivedCount;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,44 @@
|
||||||
|
package com.zcloud.eightwork.dto.clientobject;
|
||||||
|
|
||||||
|
import com.alibaba.cola.dto.ClientObject;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 可视化大屏作业分页数据
|
||||||
|
*
|
||||||
|
* @author codex
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ScreenWorkPageCO extends ClientObject {
|
||||||
|
@ApiModelProperty(value = "主键")
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "业务主键ID")
|
||||||
|
private String workId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "企业ID")
|
||||||
|
private Long corpinfoId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "企业名称")
|
||||||
|
private String corpinfoName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "票号")
|
||||||
|
private String checkNo;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "作业类型")
|
||||||
|
private String workType;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "作业类型名称")
|
||||||
|
private String workTypeName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "状态")
|
||||||
|
private Integer status;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "详情信息")
|
||||||
|
private JSONObject info;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "创建时间")
|
||||||
|
private String createTime;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,49 @@
|
||||||
|
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 ScreenWorkRecordCO extends ClientObject {
|
||||||
|
@ApiModelProperty(value = "主键")
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "业务主键ID")
|
||||||
|
private String workId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "企业ID")
|
||||||
|
private Long corpinfoId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "企业名称")
|
||||||
|
private String corpinfoName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "票号")
|
||||||
|
private String checkNo;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "作业类型")
|
||||||
|
private String workType;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "作业类型名称")
|
||||||
|
private String workTypeName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "状态")
|
||||||
|
private Integer status;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "状态名称")
|
||||||
|
private String statusName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "当前步骤名称")
|
||||||
|
private String currentStepName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "下一步操作人")
|
||||||
|
private String nextStepName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "创建时间")
|
||||||
|
private String createTime;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
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 ScreenWorkTrendCO extends ClientObject {
|
||||||
|
@ApiModelProperty(value = "日期")
|
||||||
|
private String workDate;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "作业类型")
|
||||||
|
private String workType;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "作业类型名称")
|
||||||
|
private String workTypeName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "数量")
|
||||||
|
private Long count;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,15 @@
|
||||||
|
package com.zcloud.eightwork.persistence.dataobject.dto;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 可视化大屏安全作业状态统计
|
||||||
|
*
|
||||||
|
* @author codex
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ScreenStatusStatisticsDTO {
|
||||||
|
private Long appliedCount;
|
||||||
|
private Long approvingCount;
|
||||||
|
private Long archivedCount;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
package com.zcloud.eightwork.persistence.dataobject.dto;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 可视化大屏作业数据
|
||||||
|
*
|
||||||
|
* @author codex
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ScreenWorkRecordDTO {
|
||||||
|
private Long id;
|
||||||
|
private String workId;
|
||||||
|
private Long corpinfoId;
|
||||||
|
private String corpinfoName;
|
||||||
|
private String checkNo;
|
||||||
|
private String workType;
|
||||||
|
private Integer status;
|
||||||
|
private String currentStepName;
|
||||||
|
private String nextStepName;
|
||||||
|
private String info;
|
||||||
|
private LocalDateTime createTime;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,15 @@
|
||||||
|
package com.zcloud.eightwork.persistence.dataobject.dto;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 可视化大屏作业情况统计
|
||||||
|
*
|
||||||
|
* @author codex
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ScreenWorkTrendDTO {
|
||||||
|
private String workDate;
|
||||||
|
private String workType;
|
||||||
|
private Long count;
|
||||||
|
}
|
||||||
|
|
@ -7,6 +7,9 @@ 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.DangerWorkStatisticsDTO;
|
||||||
|
import com.zcloud.eightwork.persistence.dataobject.dto.ScreenStatusStatisticsDTO;
|
||||||
|
import com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkRecordDTO;
|
||||||
|
import com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkTrendDTO;
|
||||||
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;
|
||||||
|
|
@ -31,5 +34,13 @@ public interface EightworkInfoMapper extends BaseMapper<EightworkInfoDO> {
|
||||||
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);
|
DangerWorkStatisticsDTO dangerWorkStatistics(@Param("params") Map<String, Object> params);
|
||||||
|
|
||||||
|
ScreenStatusStatisticsDTO screenStatusStatistics(@Param("params") Map<String, Object> params);
|
||||||
|
|
||||||
|
List<ScreenWorkTrendDTO> screenWorkTrend(@Param("params") Map<String, Object> params);
|
||||||
|
|
||||||
|
IPage<ScreenWorkRecordDTO> screenWorkRecord(Page<Map<String, Object>> page, @Param("params") Map<String, Object> params);
|
||||||
|
|
||||||
|
IPage<ScreenWorkRecordDTO> screenWorkPage(Page<Map<String, Object>> page, @Param("params") Map<String, Object> params);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,9 @@ 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.DangerWorkStatisticsDTO;
|
||||||
|
import com.zcloud.eightwork.persistence.dataobject.dto.ScreenStatusStatisticsDTO;
|
||||||
|
import com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkRecordDTO;
|
||||||
|
import com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkTrendDTO;
|
||||||
import com.zcloud.eightwork.persistence.dataobject.dto.StatisticsByWorkTypeDTO;
|
import com.zcloud.eightwork.persistence.dataobject.dto.StatisticsByWorkTypeDTO;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
@ -28,6 +31,14 @@ public interface EightworkInfoRepository extends BaseRepository<EightworkInfoDO>
|
||||||
|
|
||||||
DangerWorkStatisticsDTO dangerWorkStatistics(Map<String, Object> params);
|
DangerWorkStatisticsDTO dangerWorkStatistics(Map<String, Object> params);
|
||||||
|
|
||||||
|
ScreenStatusStatisticsDTO screenStatusStatistics(Map<String, Object> params);
|
||||||
|
|
||||||
|
List<ScreenWorkTrendDTO> screenWorkTrend(Map<String, Object> params);
|
||||||
|
|
||||||
|
PageResponse<ScreenWorkRecordDTO> screenWorkRecord(Map<String, Object> params);
|
||||||
|
|
||||||
|
PageResponse<ScreenWorkRecordDTO> screenWorkPage(Map<String, Object> params);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 使用 CAS 方式更新 lockFlag(乐观锁)
|
* 使用 CAS 方式更新 lockFlag(乐观锁)
|
||||||
* 只有当 lockFlag 和 status 都匹配时才更新
|
* 只有当 lockFlag 和 status 都匹配时才更新
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,9 @@ 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.DangerWorkStatisticsDTO;
|
||||||
|
import com.zcloud.eightwork.persistence.dataobject.dto.ScreenStatusStatisticsDTO;
|
||||||
|
import com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkRecordDTO;
|
||||||
|
import com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkTrendDTO;
|
||||||
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;
|
||||||
|
|
@ -79,6 +82,30 @@ public class EightworkInfoRepositoryImpl extends BaseRepositoryImpl<EightworkInf
|
||||||
return eightworkInfoMapper.dangerWorkStatistics(params);
|
return eightworkInfoMapper.dangerWorkStatistics(params);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ScreenStatusStatisticsDTO screenStatusStatistics(Map<String, Object> params) {
|
||||||
|
return eightworkInfoMapper.screenStatusStatistics(params);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<ScreenWorkTrendDTO> screenWorkTrend(Map<String, Object> params) {
|
||||||
|
return eightworkInfoMapper.screenWorkTrend(params);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PageResponse<ScreenWorkRecordDTO> screenWorkRecord(Map<String, Object> params) {
|
||||||
|
Page<Map<String, Object>> page = new Page<>(Integer.parseInt(params.get("pageIndex").toString()), Integer.parseInt(params.get("pageSize").toString()));
|
||||||
|
IPage<ScreenWorkRecordDTO> iPage = eightworkInfoMapper.screenWorkRecord(page, params);
|
||||||
|
return PageHelper.pageToResponse(iPage, iPage.getRecords());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PageResponse<ScreenWorkRecordDTO> screenWorkPage(Map<String, Object> params) {
|
||||||
|
Page<Map<String, Object>> page = new Page<>(Integer.parseInt(params.get("pageIndex").toString()), Integer.parseInt(params.get("pageSize").toString()));
|
||||||
|
IPage<ScreenWorkRecordDTO> iPage = eightworkInfoMapper.screenWorkPage(page, params);
|
||||||
|
return PageHelper.pageToResponse(iPage, iPage.getRecords());
|
||||||
|
}
|
||||||
|
|
||||||
@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<>();
|
||||||
|
|
|
||||||
|
|
@ -144,4 +144,105 @@
|
||||||
</if>
|
</if>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="screenStatusStatistics" resultType="com.zcloud.eightwork.persistence.dataobject.dto.ScreenStatusStatisticsDTO">
|
||||||
|
select
|
||||||
|
coalesce(sum(case when t.status != 0 then 1 else 0 end), 0) as appliedCount,
|
||||||
|
coalesce(sum(case when t.status = 1 then 1 else 0 end), 0) as approvingCount,
|
||||||
|
coalesce(sum(case when t.status = 999 then 1 else 0 end), 0) as archivedCount
|
||||||
|
from eightwork_info t left join vi_corp_info c on t.corpinfo_id = c.id
|
||||||
|
where t.delete_enum = 'FALSE' and c.delete_enum='FALSE'
|
||||||
|
<if test="params.corpinfoId != null">
|
||||||
|
and t.corpinfo_id = #{params.corpinfoId}
|
||||||
|
</if>
|
||||||
|
<if test="params.portArea != null">
|
||||||
|
AND c.port_area = #{params.portArea}
|
||||||
|
</if>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="screenWorkTrend" resultType="com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkTrendDTO">
|
||||||
|
select
|
||||||
|
date_format(t.create_time, '%Y-%m-%d') as workDate,
|
||||||
|
t.work_type as workType,
|
||||||
|
count(1) as count
|
||||||
|
from eightwork_info t left join vi_corp_info c on t.corpinfo_id = c.id
|
||||||
|
where t.delete_enum = 'FALSE' and c.delete_enum='FALSE'
|
||||||
|
and t.status != 0
|
||||||
|
<if test="params.corpinfoId != null">
|
||||||
|
and t.corpinfo_id = #{params.corpinfoId}
|
||||||
|
</if>
|
||||||
|
<if test="params.startDate != null and params.startDate != ''">
|
||||||
|
and t.create_time >= date_format(concat(#{params.startDate}, ' 00:00:00'), '%Y-%m-%d %H:%i:%s')
|
||||||
|
</if>
|
||||||
|
<if test="params.endDate != null and params.endDate != ''">
|
||||||
|
and t.create_time < date_format(date_add(#{params.endDate}, interval 1 day), '%Y-%m-%d %H:%i:%s')
|
||||||
|
</if>
|
||||||
|
<if test="params.portArea != null">
|
||||||
|
AND c.port_area = #{params.portArea}
|
||||||
|
</if>
|
||||||
|
group by date_format(t.create_time, '%Y-%m-%d'), t.work_type
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="screenWorkRecord" resultType="com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkRecordDTO">
|
||||||
|
select
|
||||||
|
t.id,
|
||||||
|
t.work_id as workId,
|
||||||
|
t.corpinfo_id as corpinfoId,
|
||||||
|
c.corp_name as corpinfoName,
|
||||||
|
t.check_no as checkNo,
|
||||||
|
t.work_type as workType,
|
||||||
|
t.status,
|
||||||
|
log.step_name as currentStepName,
|
||||||
|
log.next_step_name as nextStepName,
|
||||||
|
t.info,
|
||||||
|
t.create_time as createTime
|
||||||
|
from eightwork_info t
|
||||||
|
left join vi_corp_info c on t.corpinfo_id = c.id
|
||||||
|
left join task_log log on log.id = (
|
||||||
|
select l.id
|
||||||
|
from task_log l
|
||||||
|
where l.work_id = t.work_id
|
||||||
|
and l.status = 0
|
||||||
|
order by case when l.step_type = 1 then 0 else 1 end,
|
||||||
|
l.create_time desc,
|
||||||
|
l.id desc
|
||||||
|
limit 1
|
||||||
|
)
|
||||||
|
where t.delete_enum = 'FALSE' and c.delete_enum='FALSE'
|
||||||
|
and t.status = 1
|
||||||
|
<if test="params.corpinfoId != null">
|
||||||
|
and t.corpinfo_id = #{params.corpinfoId}
|
||||||
|
</if>
|
||||||
|
<if test="params.portArea != null">
|
||||||
|
AND c.port_area = #{params.portArea}
|
||||||
|
</if>
|
||||||
|
order by t.create_time desc
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="screenWorkPage" resultType="com.zcloud.eightwork.persistence.dataobject.dto.ScreenWorkRecordDTO">
|
||||||
|
select
|
||||||
|
t.id,
|
||||||
|
t.work_id as workId,
|
||||||
|
t.corpinfo_id as corpinfoId,
|
||||||
|
c.corp_name as corpinfoName,
|
||||||
|
t.check_no as checkNo,
|
||||||
|
t.work_type as workType,
|
||||||
|
t.status,
|
||||||
|
t.info,
|
||||||
|
t.create_time as createTime
|
||||||
|
from eightwork_info t
|
||||||
|
left join vi_corp_info c on t.corpinfo_id = c.id
|
||||||
|
where t.delete_enum = 'FALSE' and c.delete_enum='FALSE'
|
||||||
|
and t.status = 1
|
||||||
|
<if test="params.corpinfoId != null">
|
||||||
|
and t.corpinfo_id = #{params.corpinfoId}
|
||||||
|
</if>
|
||||||
|
<if test="params.workType != null and params.workType != ''">
|
||||||
|
and t.work_type = #{params.workType}
|
||||||
|
</if>
|
||||||
|
<if test="params.portArea != null">
|
||||||
|
AND c.port_area = #{params.portArea}
|
||||||
|
</if>
|
||||||
|
order by t.create_time desc
|
||||||
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue