rev:修改一体机设备列表工单数获取。

This commit is contained in:
2023-04-11 16:33:03 +08:00
parent a41a254545
commit af698f6663
2 changed files with 36 additions and 9 deletions

View File

@@ -43,6 +43,7 @@ import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import java.io.InputStream;
import java.util.*;
import java.util.stream.Collectors;
/**
* @author qinx
@@ -217,29 +218,35 @@ public class ProduceshiftorderServiceImpl implements ProduceshiftorderService{
*/
@Override
public List<DeviceDto> getDeviceList(String param) {
List<DeviceDto> list = WQL.getWO("ONEPART_QUERY").addParam("flag", "1").addParam("condition", param).process().getResultJSONArray(0).toJavaList(DeviceDto.class);
list.forEach(r -> {
//状态为为关机
List<DeviceDto> deviceList = WQL.getWO("ONEPART_QUERY").addParam("flag", "1").addParam("condition", param).process().getResultJSONArray(0).toJavaList(DeviceDto.class);
List<DeviceDto> jobCountList = WQL.getWO("ONEPART_QUERY").addParam("flag", "3").process().getResultJSONArray(0).toJavaList(DeviceDto.class);
Optional<List<DeviceDto>> jobCountLists = Optional.of(jobCountList);
deviceList.forEach(r -> {
//获取当前工单数
Optional<DeviceDto> jobCount = jobCountList.stream().filter(j -> j.getDeviceCode().equals(r.getDeviceCode())).findFirst();
if(jobCount.isPresent()) {
r.setJob_count(jobCount.get().getJob_count());
}
else{
r.setJob_count("0");
}
//有对应状态
if(StrUtil.isNotEmpty(r.getDevice_status())) {
//不是关机与故障状态则为运行
if(!Objects.equals(r.getDevice_status(), StatusEnum.DEVICE_STATUS_OFF.getCode()) && !Objects.equals(r.getDevice_status(), StatusEnum.DEVICE_STATUS_ERROR.getCode())) {
r.setIs_run("1");
//todo 当前工单数
r.setJob_count("1");
}
else{
r.setIs_run("0");
r.setJob_count("0");
}
}
else{
r.setDevice_status(StatusEnum.DEVICE_STATUS_OFF.getCode());
r.setDevice_status_name("关机");
r.setIs_run("0");
r.setJob_count("0");
}
});
return list;
return deviceList;
}
/**

View File

@@ -69,6 +69,7 @@
) r ON d.device_code = r.device_code
LEFT JOIN sys_dict s ON s.`value` = r.status_type
AND s.`code` = 'PDM_BI_DEVICERUNSTATUS'
WHERE d.is_delete = 0
ORDER BY
device_code
LIMIT 10
@@ -124,4 +125,23 @@
ENDOPTION
ENDSELECT
ENDPAGEQUERY
ENDIF
ENDIF
IF 输入.flag = "3"
QUERY
SELECT
current_device_code deviceCode,
count( current_device_code ) job_count
FROM
pdm_produce_workorder
WHERE
is_delete = 0
AND current_device_code != ''
GROUP BY
current_device_code
ENDSELECT
ENDQUERY
ENDIF