|
@@ -16,6 +16,7 @@ import org.springframework.data.domain.PageRequest;
|
|
import org.springframework.data.domain.Pageable;
|
|
import org.springframework.data.domain.Pageable;
|
|
import org.springframework.data.jpa.domain.Specification;
|
|
import org.springframework.data.jpa.domain.Specification;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import javax.persistence.criteria.Order;
|
|
import javax.persistence.criteria.Order;
|
|
import javax.persistence.criteria.Predicate;
|
|
import javax.persistence.criteria.Predicate;
|
|
@@ -25,6 +26,7 @@ import java.util.ArrayList;
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
import java.util.Map;
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
/**
|
|
* @Project : huimv.shiwan
|
|
* @Project : huimv.shiwan
|
|
@@ -315,20 +317,36 @@ public class DeviceRegisterServiceImpl implements IDeviceRegisterService {
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public void fanoutSyncDevice(Map<String,String> map) throws ParseException {
|
|
|
|
- if ( "FARM_CODE".equals(map.get("farmCode"))){
|
|
|
|
- //说明消息中的数据是该业务平台的,进行数据持久化
|
|
|
|
- EartagDeviceRegisterEntity deviceRegisterEntity = new EartagDeviceRegisterEntity();
|
|
|
|
- deviceRegisterEntity.setChipId(map.get("chipId").trim());
|
|
|
|
- deviceRegisterEntity.setDeviceCode(map.get("deviceCode").trim());
|
|
|
|
- deviceRegisterEntity.setFarmId(map.get("farmCode").trim());
|
|
|
|
- deviceRegisterEntity.setRegisterTime(new DateUtil().getTimestamp());
|
|
|
|
- deviceRegisterEntity.setFarmName( map.get("farmName"));
|
|
|
|
- //默认设备状态未激活
|
|
|
|
- deviceRegisterEntity.setDeviceStatus(2);
|
|
|
|
- deviceRegisterRepo.saveAndFlush(deviceRegisterEntity);
|
|
|
|
- }else {
|
|
|
|
- System.out.println("不是该牧场的设备");
|
|
|
|
|
|
+ @Transactional
|
|
|
|
+ public Result fanoutSyncDevice(List<Map<String,String>> bizDeviceRegisters) {
|
|
|
|
+ System.out.println(bizDeviceRegisters);
|
|
|
|
+ //获取当前消息中,属于本服务的设备注册消息
|
|
|
|
+ for (Map<String, String> bizDeviceRegister : bizDeviceRegisters) {
|
|
|
|
+ String farmCode = bizDeviceRegister.get("farmCode");
|
|
|
|
+ System.out.println(farmCode);
|
|
|
|
+ if ( FARM_CODE.equals(farmCode)){
|
|
|
|
+ EartagDeviceRegisterEntity farmCode1 = deviceRegisterRepo.getDeviceRegister(bizDeviceRegister.get("deviceCode"));
|
|
|
|
+ if(farmCode1!=null){
|
|
|
|
+ System.out.println(farmCode1);
|
|
|
|
+ //设备注册数据存在
|
|
|
|
+ deviceRegisterRepo.updateDeviceRegister(new DateUtil().getTimestamp(),farmCode1.getChipId());
|
|
|
|
+ }else {
|
|
|
|
+ //说明消息中的数据是该业务平台的,进行数据持久化
|
|
|
|
+ EartagDeviceRegisterEntity deviceRegisterEntity = new EartagDeviceRegisterEntity();
|
|
|
|
+ deviceRegisterEntity.setChipId(bizDeviceRegister.get("chipId"));
|
|
|
|
+ deviceRegisterEntity.setDeviceCode(bizDeviceRegister.get("deviceCode"));
|
|
|
|
+ deviceRegisterEntity.setFarmId(bizDeviceRegister.get("farmCode"));
|
|
|
|
+ deviceRegisterEntity.setRegisterTime(new DateUtil().getTimestamp());
|
|
|
|
+ deviceRegisterEntity.setFarmName(bizDeviceRegister.get("farmName"));
|
|
|
|
+ //默认设备状态未激活
|
|
|
|
+ deviceRegisterEntity.setDeviceStatus(2);
|
|
|
|
+ deviceRegisterEntity.setSyncTime(new DateUtil().getTimestamp());
|
|
|
|
+ deviceRegisterRepo.saveAndFlush(deviceRegisterEntity);
|
|
|
|
+ }
|
|
|
|
+ }else {
|
|
|
|
+ return new Result(ResultCode.SUCCESS);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
+ return new Result(ResultCode.SUCCESS);
|
|
}
|
|
}
|
|
}
|
|
}
|