| | |
| | | package com.sandu.ximon.admin.service; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.sandu.common.execption.BusinessException; |
| | | import com.sandu.common.service.impl.BaseServiceImpl; |
| | | import com.sandu.common.util.SpringContextHolder; |
| | | import com.sandu.ximon.admin.param.PoleBindingParam; |
| | | import com.sandu.ximon.dao.domain.Pole; |
| | | import com.sandu.ximon.dao.domain.PoleBinding; |
| | | import com.sandu.ximon.dao.mapper.PoleBindingMapper; |
| | | import lombok.AllArgsConstructor; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.swing.*; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author chenjiantian |
| | |
| | | Integer deviceType = param.getDeviceType(); |
| | | // if (PoleBindingEnums.LIGHT.getCode().equals(deviceType)) { |
| | | // } |
| | | LambdaQueryWrapper<PoleBinding> eq = Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getPoleId, poleId); |
| | | List<PoleBinding> list = list(eq); |
| | | if (list.size() != 0) { |
| | | for (PoleBinding poleBinding : list) { |
| | | //充电桩的绑定是网络请求是带过来的灯杆信息,要允许直接修改 |
| | | if (poleBinding.getDeviceType().equals(deviceType) && deviceType != 2) { |
| | | throw new BusinessException("该灯杆已绑定过相同类型设备"); |
| | | } |
| | | } |
| | | } |
| | | |
| | | PoleBinding one = getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceCode, param.getDeviceCode())); |
| | | if (one == null) { |
| | |
| | | poleBinding.setDeviceCode(param.getDeviceCode()); |
| | | return save(poleBinding); |
| | | } else { |
| | | throw new BusinessException("该设备已绑定过"); |
| | | //删除灯杆的devicescode |
| | | PoleService poleService = SpringContextHolder.getBean(PoleService.class); |
| | | Pole pole = poleService.getOne(Wrappers.lambdaQuery(Pole.class).eq(Pole::getId, one.getPoleId())); |
| | | if (pole != null) { |
| | | pole.setDeviceCode(null); |
| | | poleService.updateById(pole); |
| | | } |
| | | |
| | | one.setPoleId(poleId); |
| | | one.setDeviceType(param.getDeviceType()); |
| | | one.setDeviceName(param.getDeviceName()); |
| | | one.setDeviceCode(param.getDeviceCode()); |
| | | return updateById(one); |
| | | } |
| | | } |
| | | |
| | |
| | | one = getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceCode, deviceCode)); |
| | | } else { |
| | | one = getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceCode, deviceCode).eq(PoleBinding::getPoleId, poleId)); |
| | | |
| | | //删除灯杆的devicescode |
| | | PoleService poleService = SpringContextHolder.getBean(PoleService.class); |
| | | Pole pole = poleService.getOne(Wrappers.lambdaQuery(Pole.class).eq(Pole::getId, poleId)); |
| | | if (pole != null) { |
| | | pole.setDeviceCode(null); |
| | | poleService.updateById(pole); |
| | | } |
| | | |
| | | |
| | | } |
| | | if (one != null) { |
| | | return removeById(one.getId()); |
| | |
| | | } |
| | | } |
| | | |
| | | public PoleBinding getPoleIdByMac(String deviceCode){ |
| | | return getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceCode, deviceCode)); |
| | | public PoleBinding getPoleIdByMac(String deviceCode) { |
| | | return getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceCode, deviceCode)); |
| | | } |
| | | } |