package com.prolog.rdc.tms.config.enums;

import com.prolog.rdc.tms.model.vo.BmsFeeAdjustImportVO;
import com.prolog.rdc.tms.model.vo.BmsShipBillImportVO;
import com.prolog.rdc.tms.model.vo.xlsimport.BranchImportStdVO;
import com.prolog.rdc.tms.model.vo.xlsimport.CarportImportStdVO;
import com.prolog.rdc.tms.model.vo.xlsimport.CarriersImportStdVO;
import com.prolog.rdc.tms.model.vo.xlsimport.ContainerImportVO;
import com.prolog.rdc.tms.model.vo.xlsimport.CustomerImportStdVO;
import com.prolog.rdc.tms.model.vo.xlsimport.CustomerReceiverImportStdVO;
import com.prolog.rdc.tms.model.vo.xlsimport.DeliverymanImportStdVO;
import com.prolog.rdc.tms.model.vo.xlsimport.DeviceImportVO;
import com.prolog.rdc.tms.model.vo.xlsimport.DriverImportStdVO;
import com.prolog.rdc.tms.model.vo.xlsimport.FreightPriceImportVO;
import com.prolog.rdc.tms.model.vo.xlsimport.ItemCategoryImportVO;
import com.prolog.rdc.tms.model.vo.xlsimport.ItemImportVO;
import com.prolog.rdc.tms.model.vo.xlsimport.LineCarrierImportStdVO;
import com.prolog.rdc.tms.model.vo.xlsimport.LineConsigneeImportStdVO;
import com.prolog.rdc.tms.model.vo.xlsimport.LineShipperImportStdVO;
import com.prolog.rdc.tms.model.vo.xlsimport.ProviderImportStdVO;
import com.prolog.rdc.tms.model.vo.xlsimport.ShipbillImportVO;
import com.prolog.rdc.tms.model.vo.xlsimport.ShipperImportStdVO;
import com.prolog.rdc.tms.model.vo.xlsimport.TranslineImportStdVO;
import com.prolog.rdc.tms.model.vo.xlsimport.VehicleImportStdVO;
import com.prolog.rdc.tms.model.vo.xlsimport.VehicleTypeImportVO;

import lombok.Getter;
import lombok.Setter;

/**
 *
 * 标准模板枚举
 *
 *
 * @version :1.0.0
 * @className: ImportObjEnum
 * @author: kh
 * @creationTime: 2022/1/13 14:17
 * @description:
 * @modifier:
 * @modifyTime:
 * @reviseRemarks:
 */
public enum ImportObjEnum {

	// 商品资料导入
	ITEM_IMPORT(ItemImportVO.class),

	// 商品品类导入
	ITEM_CATEGORY_IMPORT(ItemCategoryImportVO.class),

	// 供应商导入
	PROVIDER_IMPORT(ProviderImportStdVO.class),

	// 供应商发货方导入
	PROVIDER_SHIPPER_IMPORT(ShipperImportStdVO.class),

	// 客户导入
	CUSTOMER_IMPORT(CustomerImportStdVO.class),

	// 客户收货方导入
	CUSTOMER_CONSIGNEE_IMPORT(CustomerReceiverImportStdVO.class),

	// 仓库导入
	BRANCH_IMPORT(BranchImportStdVO.class),

	// 仓库车位导入
	BRANCH_PARKING_SPACE_IMPORT(CarportImportStdVO.class),

	// 承运商导入
	CARRIER_IMPORT(CarriersImportStdVO.class),

	// 线路导入
	LINE_IMPORT(TranslineImportStdVO.class),

	// 线路承运方导入
	LINE_CARRIER_IMPORT(LineCarrierImportStdVO.class),

	// 线路收货方导入
	LINE_CONSIGNEE_IMPORT(LineConsigneeImportStdVO.class),

	// 司机导入
	DRIVER_IMPORT(DriverImportStdVO.class),

	// 送货员导入
	DELIVERYMAN_IMPORT(DeliverymanImportStdVO.class),

	// 车型导入
	VEHICLE_TYPE_IMPORT(VehicleTypeImportVO.class),

	// BMS运单导入
	BMS_SHIP_BILL_IMPORT(BmsShipBillImportVO.class),

	// BMS费用调整导入
	BMS_FEE_ADJUST_IMPORT(BmsFeeAdjustImportVO.class),

	// 车辆导入
	VEHICLE_IMPORT(VehicleImportStdVO.class),

	// 设备导入
	DEVICE_IMPORT(DeviceImportVO.class),

	// 容器导入
	CONTAINER_IMPORT(ContainerImportVO.class),

	// 订单导入
	SHIPBILL_IMPORT(ShipbillImportVO.class),

	/**
	 * 价格导入
	 */
	BMS_FREIGHT_PRICE_IMPORT(FreightPriceImportVO.class),

	// 线路发货方导入
	LINE_SHIPPER_IMPORT(LineShipperImportStdVO.class);


	/**
	 * 导入数据对应的对象
	 */
	@Getter
	@Setter
	private Class<?> clazz;

	ImportObjEnum(Class<?> clazz) {
		this.clazz = clazz;
	}
}
