| | |
| | | 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; |
| | | import com.doumee.core.utils.Utils; |
| | | import com.doumee.dao.business.DeviceMapper; |
| | | import com.doumee.dao.business.model.Device; |
| | |
| | | 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实现 |
| | |
| | | public List<Device> findIdAndNameList(Device param) { |
| | | LambdaQueryWrapper<Device> wrapper = new LambdaQueryWrapper<>(param); |
| | | wrapper.select(Device::getId, Device::getName, Device::getDoorName,Device::getRegionPathName, Device::getRegionName); |
| | | if(null != param.getType() && null != param.getIsdeleted() && null != param.getHkStatus()) { |
| | | wrapper.eq(Device::getType,param.getType()) |
| | | .eq(Device::getIsdeleted,param.getIsdeleted()) |
| | | .eq(Device::getHkStatus,param.getHkStatus()); |
| | | } |
| | | wrapper.eq(null != param.getType(),Device::getType,param.getType()) |
| | | .eq(null !=param.getIsdeleted(),Device::getIsdeleted,param.getIsdeleted()) |
| | | .eq(null != param.getHkStatus(),Device::getHkStatus,param.getHkStatus()); |
| | | return deviceMapper.selectList(wrapper); |
| | | } |
| | | |
| | |
| | | public PageData<Device> findPage(PageWrap<Device> pageWrap) { |
| | | IPage<Device> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); |
| | | QueryWrapper<Device> queryWrapper = new QueryWrapper<>(); |
| | | pageWrap.getModel().setIsdeleted(Constants.ZERO); |
| | | Utils.MP.blankToNull(pageWrap.getModel()); |
| | | if (pageWrap.getModel().getId() != null) { |
| | | queryWrapper.lambda().eq(Device::getId, pageWrap.getModel().getId()); |
| | |
| | | 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():"")); |
| | | } |
| | | } |
| | | |
| | | } |