⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 comparators.java

📁 本公司开发项目中本人做的公共类文件。如文件的操作
💻 JAVA
字号:
/**
 * 
 */
package com.intohotel.util;

import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Comparator;
import java.util.Date;

import com.intohotel.entity.CustomItem;
import com.intohotel.entity.DayPrice;
import com.intohotel.entity.HotelRoom;
import com.intohotel.entity.OrderOprRecord;
import com.intohotel.entity.TicketPrice;


/**
 * @author mler
 *
 */
public class Comparators{

//	房间价格排序	冲低到高排序
	@SuppressWarnings("unchecked")
	public static class PriceComparator implements Comparator {
		public int compare(Object element1,Object element2) {
			HotelRoom room1 = null,room2 = null;
			if(element1 instanceof CustomItem) room1 = (HotelRoom)element1;
			if(element2 instanceof CustomItem) room2 = (HotelRoom)element2;
			BigDecimal p1 = null,p2=null;
			if(room1 != null && room1.getDayPrices() != null && !room1.getDayPrices().isEmpty())
				p1 = new BigDecimal(((DayPrice)room1.getDayPrices().iterator().next()).getDayPrice());
			if(room2 != null && room2.getDayPrices() != null && !room2.getDayPrices().isEmpty())
				p2 = new BigDecimal(((DayPrice)room2.getDayPrices().iterator().next()).getDayPrice());
			if(p1 == null && p2 == null)
				return 0;
			else if(p1 != null && p2 == null)
				return -1;
			else if(p1 == null && p2 != null)
				return 1;
			else
				return p1.compareTo(p2);
		}	
	}
	
//	customItem乘客类型排序
	@SuppressWarnings("unchecked")
	public static class TagComparator implements Comparator {
		public int compare(Object element1,Object element2) {
			if(element1 instanceof CustomItem && element2 instanceof CustomItem){
//				CustomItem item1 = (CustomItem)element1;
//				CustomItem item2 = (CustomItem)element2;
				return 0;
			}else{
				return 0;
			}			
		}	
	}
	
//	TicketPrice排序
	@SuppressWarnings("unchecked")
	public static class TicketPriceComparator implements Comparator {
		public int compare(Object element1,Object element2) {
			if(element1 instanceof TicketPrice && element2 instanceof TicketPrice){
				TicketPrice item1 = (TicketPrice)element1;
				TicketPrice item2 = (TicketPrice)element2;
				
				return item1.getTicketPriceId().compareTo(item2.getTicketPriceId());
			}
			return 0;
		
		}
	}
//	yyyy-MM-dd进行日期排序
	@SuppressWarnings("unchecked")
	public static class DateComparator implements Comparator {		
		public int compare(Object element1,Object element2) {
			if(element1 == null)
				return -1;
			if(element2 == null)
				return 1;
			SimpleDateFormat ymd = new SimpleDateFormat("yyyy-MM-dd");
			if(element1 instanceof Date && element2 instanceof Date){
				Date item1, item2;
				try {
					item1 = ymd.parse(ymd.format((Date)element1));
					item2 = ymd.parse(ymd.format((Date)element2));
					return item1.compareTo(item2);
				} catch (ParseException e) {
					e.printStackTrace();
				}
			}else{
				return 0;
			}
			return 0;
		}	
	}
	
	//操作记录明细按起始时间排序
	@SuppressWarnings("unchecked")
	public static class StartDateComparator implements Comparator {		
		public int compare(Object element1,Object element2) {
			if(element1 == null)
				return -1;
			if(element2 == null)
				return 1;
			if(element1 instanceof OrderOprRecord && element2 instanceof OrderOprRecord){
//				OrderOprRecord item1 = (OrderOprRecord)element1, item2 = (OrderOprRecord)element2;
//				return item1.getStartTime().compareTo(item2.getStartTime());
				return 0;
			}else{
				return 0;
			}
				
		}	
	}
		
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -