k94314517
2024-09-29 2d2ac91d76af6ef4d755555c7623ee4e016a3066
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceServiceImpl.java
@@ -1,6 +1,12 @@
package com.doumee.service.business.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
import com.doumee.core.haikang.model.HKConstants;
import com.doumee.core.haikang.model.param.BaseResponse;
import com.doumee.core.haikang.model.param.request.*;
import com.doumee.core.haikang.service.HKService;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
@@ -12,11 +18,15 @@
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * 设备信息表Service实现
@@ -212,4 +222,44 @@
        return deviceMapper.selectCount(wrapper);
    }
    @Override
    public void setLedContent(TransparentChannelSingleRequest model) {
        Device device = findById(model.getDeviceId());
        if(device == null
                || Constants.equalsInteger(device.getIsdeleted(),Constants.ONE)
                || !Constants.equalsInteger(device.getType(),Constants.TWO)){
            throw new BusinessException(ResponseStatus.DATA_EMPTY);
        }
        TransparentChannelBodyRequest body = new TransparentChannelBodyRequest();
        TransparentChannelHeadRequest head = new TransparentChannelHeadRequest();
        TransparentChannelBodyParamRequest request = new TransparentChannelBodyParamRequest();
        TransparentChannelBodyRegionRequest regions = new TransparentChannelBodyRegionRequest();
        head.setAbility("cld");//固定值
        head.setTreatyType("haixuan_led_net");//固定值
        head.setDeviceIndexCode(device.getHkId());
        body.setMethod("ControlLedGereral");//固定值
        request.setIndexCode(device.getHkId());
        request.setOperationType(219);//固定值
        regions.setActionType(32);
        regions.setContent(model.getContent());
        regions.setRegionNo(1);
        regions.setRegionType(14);
        regions.setFontColor(1);
        regions.setCircleTimes(1);//循环次数
        regions.setFontSize(32);//
        regions.setStayTime(1);//单位??
        regions.setRegionLeftTopXPos(0);
        regions.setRegionLeftTopYPos(0);
        regions.setRegionRightBottomXPos(255);
        regions.setRegionRightBottomYPos(31);
        request.setRegions(new ArrayList<>());
        request.getRegions().add(regions);
        regions.setSpeed(13);
        body.setParams(request);
        BaseResponse response =  HKService.transparentchannel(head,body);
        if(response == null || !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)){
            throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(), "对不起,屏幕内容设置失败"+(response!=null?response.getMsg():""));
        }
    }
}