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 javax.servlet.http.HttpServletRequest;
import java.io.InputStream; import java.io.InputStream;
import java.util.*; import java.util.*;
import java.util.stream.Collectors;
/** /**
* @author qinx * @author qinx
@@ -217,29 +218,35 @@ public class ProduceshiftorderServiceImpl implements ProduceshiftorderService{
*/ */
@Override @Override
public List<DeviceDto> getDeviceList(String param) { 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<DeviceDto> deviceList = WQL.getWO("ONEPART_QUERY").addParam("flag", "1").addParam("condition", param).process().getResultJSONArray(0).toJavaList(DeviceDto.class);
list.forEach(r -> { 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(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())) { 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"); r.setIs_run("1");
//todo 当前工单数
r.setJob_count("1");
} }
else{ else{
r.setIs_run("0"); r.setIs_run("0");
r.setJob_count("0");
} }
} }
else{ else{
r.setDevice_status(StatusEnum.DEVICE_STATUS_OFF.getCode()); r.setDevice_status(StatusEnum.DEVICE_STATUS_OFF.getCode());
r.setDevice_status_name("关机"); r.setDevice_status_name("关机");
r.setIs_run("0"); 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 ) r ON d.device_code = r.device_code
LEFT JOIN sys_dict s ON s.`value` = r.status_type LEFT JOIN sys_dict s ON s.`value` = r.status_type
AND s.`code` = 'PDM_BI_DEVICERUNSTATUS' AND s.`code` = 'PDM_BI_DEVICERUNSTATUS'
WHERE d.is_delete = 0
ORDER BY ORDER BY
device_code device_code
LIMIT 10 LIMIT 10
@@ -124,4 +125,23 @@
ENDOPTION ENDOPTION
ENDSELECT ENDSELECT
ENDPAGEQUERY 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