BasicData.java 5.33 KB
//package com.bsth.data;
//
//import java.util.HashMap;
//import java.util.Iterator;
//import java.util.Map;
//
//import org.slf4j.Logger;
//import org.slf4j.LoggerFactory;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.stereotype.Component;
//
//import com.bsth.entity.CarPark;
//import com.bsth.entity.Cars;
//import com.bsth.entity.Line;
//import com.bsth.entity.Station;
//import com.bsth.entity.schedule.CarConfigInfo;
//import com.bsth.repository.CarParkRepository;
//import com.bsth.repository.CarsRepository;
//import com.bsth.repository.LineRepository;
//import com.bsth.repository.StationRepository;
//import com.bsth.repository.schedule.CarConfigInfoRepository;
//import com.google.common.collect.BiMap;
//import com.google.common.collect.HashBiMap;
//import com.google.common.collect.TreeMultimap;
//
///**
// * 
// * @ClassName: BasicData
// * @Description: TODO(基础的映射数据)
// * @author PanZhao
// * @date 2016年8月10日 下午3:27:45
// *
// */
//@Component
//public class BasicData {
//	
//	//设备号和车辆自编号 (K: 设备编码 ,V:车辆自编号)
//	public static BiMap<String, String> deviceId2NbbmMap;
//
//	//车辆自编号和公司代码对照 (K: 车辆自编号 ,V:公司代码)
//	public static Map<String, String> nbbm2CompanyCodeMap;
//
//	//站点编码和名称对照,包括停车场 (K: 站点编码 ,V:站点名称)
//	public static Map<String, String> stationCode2NameMap;
//	
//	//车辆和线路对照
//	public static Map<String, Line> nbbm2LineMap;
//
//	//线路和用户对照 用于webSocket定向推送消息(用户进入线调时写入数据)
//	public static TreeMultimap<Integer, String> lineCode2SocketUserMap = TreeMultimap.create();
//
//	//线路ID和code 对照
//	public static BiMap<Integer, Integer> lineId2CodeMap;
//	
//	@Autowired
//	BasicDataLoader basicDataLoader;
//	
//	Logger logger = LoggerFactory.getLogger(this.getClass());
//	
//	/**
//	 * 
//	 * @Title: loadAllData 
//	 * @Description: TODO(加载所有数据) 
//	 * @throws
//	 */
//	public int loadAllData(){
//		try{
//			basicDataLoader.loadDeviceInfo();
//			basicDataLoader.loadStationInfo();
//			basicDataLoader.loadLineInfo();
//			basicDataLoader.loadNbbm2LineInfo();
//		}catch(Exception e){
//			logger.error("加载基础数据时出现异常," , e);
//		}
//		return 0;
//	}
//	
//	@Component
//	public class BasicDataLoader{
//		
//		@Autowired
//		CarsRepository carsRepository;
//		
//		@Autowired
//		StationRepository stationRepository;
//		
//		@Autowired
//		CarParkRepository carParkRepository;
//		
//		@Autowired
//		CarConfigInfoRepository carConfigInfoRepository;
//		
//		@Autowired
//		LineRepository lineRepository;
//		
//		/**
//		 * 
//		 * @Title: loadDeviceInfo 
//		 * @Description: TODO(加载设备相关信息) 
//		 * @throws
//		 */
//		public void loadDeviceInfo(){
//			BiMap<String, String> deviceId2Nbbm = HashBiMap.create();
//			//车辆和公司代码对照
//			Map<String, String> nbbm2CompanyCode = new HashMap<>();
//			Iterator<Cars> carIterator = carsRepository.findAll().iterator();
//			Cars car;
//			while(carIterator.hasNext()){
//				car = carIterator.next();
//				deviceId2Nbbm.put(car.getEquipmentCode(), car.getInsideCode());
//				nbbm2CompanyCode.put(car.getInsideCode(), car.getBusinessCode());
//			}
//			
//			deviceId2NbbmMap = deviceId2Nbbm;
//			nbbm2CompanyCodeMap = nbbm2CompanyCode;
//		}
//		
//		/**
//		 * 
//		 * @Title: loadStationInfo 
//		 * @Description: TODO(加载站点信息) 
//		 * @throws
//		 */
//		public void loadStationInfo(){
//			Map<String, String> stationCode2Name = new HashMap<>();
//			Iterator<Station> iterator = stationRepository.findAll().iterator();
//			//站点
//			Station station;
//			while(iterator.hasNext()){
//				station = iterator.next();
//				stationCode2Name.put(station.getStationCod(), station.getStationName());
//			}
//			//停车场
//			Iterator<CarPark> iterator2 = carParkRepository.findAll().iterator();
//			CarPark carPark;
//			while(iterator2.hasNext()){
//				carPark = iterator2.next();
//				stationCode2Name.put(carPark.getParkCode(), carPark.getParkName());
//			}
//			
//			stationCode2NameMap = stationCode2Name;
//		}
//		
//		/**
//		 * 
//		 * @Title: loadNbbm2LineInfo 
//		 * @Description: TODO(车辆和线路对照) 
//		 * @throws
//		 */
//		public void loadNbbm2LineInfo(){
//			Iterator<CarConfigInfo> allIterator = carConfigInfoRepository.findAll().iterator();
//			Map<String, Line> ccMap = new HashMap<>();
//			
//			CarConfigInfo cci;
//			while(allIterator.hasNext()){
//				cci = allIterator.next();
//				ccMap.put(cci.getCl().getInsideCode(), cci.getXl());
//			}
//			nbbm2LineMap = ccMap;
//		}
//		
//		/**
//		 * 
//		 * @Title: loadLineInfo 
//		 * @Description: TODO(加载线路相关信息) 
//		 * @throws
//		 */
//		public void loadLineInfo(){
//			Iterator<Line> iterator = lineRepository.findAll().iterator();
//			
//			Line line;
//			BiMap<Integer, Integer> biMap = HashBiMap.create();
//			while(iterator.hasNext()){
//				line = iterator.next();
//				biMap.put(line.getId(), Integer.parseInt(line.getLineCode()));
//			}
//			
//			lineId2CodeMap = biMap;
//		}
//	}
//}