fuliqi
2024-09-03 461ec2d155d8dd35d8f73c35e7c2a33e040bf862
ycl-server/src/main/java/com/ycl/platform/service/impl/UYErrorTypeCheckServiceImpl.java
@@ -8,12 +8,14 @@
import constant.ApiConstants;
import enumeration.ErrorType;
import enumeration.general.WorkOrderStatusEnum;
import lombok.Data;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
@@ -34,42 +36,37 @@
     */
    @Override
    public void imageDetectionCheck(List<ImageDetectionResult> dataList) {
        List<WorkOrder> workOrderList = dataList.stream().filter(item -> 0 == item.getSigna1()
                || 0 == item.getColor()
                || 0 == item.getSnow()
                || 0 == item.getStripe()
                || 0 == item.getShade()
                || 0 == item.getBlur()
                || 0 == item.getLight()
        List<WorkOrder> workOrderList = dataList.stream().filter(item -> -1 == item.getSignal()
                || -1 == item.getImage()
        )
        .map(item -> {
            WorkOrder workOrder = new WorkOrder();
            // 信号缺失
            if (0 == item.getSigna1() ) {
            if (-1 == item.getSigna1() ) {
                this.genWorkOrder(workOrder, ErrorType.SIGNAL_LOSS, item.getDeviceId());
            }
            // 画面偏色
            if ( 0 == item.getColor()) {
            if (-1 == item.getColor()) {
                this.genWorkOrder(workOrder, ErrorType.SCREEN_COLOR_DEVIATION, item.getDeviceId());
            }
            // 雪花干扰
            if ( 0 == item.getSnow()) {
            if (-1 == item.getSnow()) {
                this.genWorkOrder(workOrder, ErrorType.SNOW_STORM, item.getDeviceId());
            }
            // 条纹干扰
            if (0 == item.getStripe()) {
            if (-1 == item.getStripe()) {
                this.genWorkOrder(workOrder, ErrorType.STRIPE_INTERFERENCE, item.getDeviceId());
            }
            // 画面遮挡
            if (0 == item.getShade()) {
            if (-1 == item.getShade()) {
                this.genWorkOrder(workOrder, ErrorType.SCREEN_OCCLUSION, item.getDeviceId());
            }
            // 清晰度异常
            if (0 == item.getBlur()) {
            if (-1 == item.getBlur()) {
                this.genWorkOrder(workOrder, ErrorType.ABNORMAL_CLARITY, item.getDeviceId());
            }
            // 亮度异常
            if (0 == item.getLight()) {
            if (-1 == item.getLight()) {
                this.genWorkOrder(workOrder, ErrorType.ABNORMAL_BRIGHTNESS, item.getDeviceId());
            }
            return workOrder;
@@ -136,6 +133,7 @@
    @Override
    public void osdCheck(List<OsdCheckResult> dataList) {
        Date now = new Date();
        List<WorkOrder> workOrderList = dataList.stream().map(item -> {
            WorkOrder workOrder = new WorkOrder();
            // osd时间
@@ -163,9 +161,6 @@
     * @param serialNumber 国标码
     */
    private void genWorkOrder(WorkOrder workOrder, ErrorType errorType, String serialNumber) {
        if (! StringUtils.hasText(workOrder.getWorkOrderNo())) {
            workOrder.setWorkOrderNo(IdUtils.randomNO());
        }
        if (CollectionUtils.isEmpty(workOrder.getErrorTypeList())) {
            workOrder.setErrorTypeList(new ArrayList<>());
            workOrder.getErrorTypeList().add(errorType.getValue());