package com.prolog.upcloud.base.wh.operate.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

import java.util.Arrays;

/**
 * @author wujunjie
 */
@AllArgsConstructor
@Getter
public enum WmsMoveDStatus {
	/**
	 * 默认状态
	 */
	NEW("W00"),

	/**
	 * WMS审核通过
	 */
	WMS_AUDIT_PASS("W01"),

	/**
	 * WMS审核通过 ,订单挂起
	 */
	WMS_AUDIT_PASS_HANGUP("W13"),
	/**
	 * WMS审核拒绝
	 */
	WMS_AUDIT_REJECT("W02"),

	/**
	 * 回传ERP完成
	 */
	WMS_SYNC("W10"),

	/**
	 * ERP审核通过
	 */
	ERP_AUDIT_PASS("E01"),

	/**
	 * ERP审核拒绝
	 */
	ERP_AUDIT_REJECT("E02"),

	/**
	 * WMS下架
	 */
	WMS_MOVE_OUT("W20"),

	/**
	 * WMS上架
	 */
	WMS_MOVE_IN("W21"),

	/**
	 * WMS下架-AGV
	 */
	WMS_MOVE_OUT_AGV("W23"),

	/**
	 * WMS上架-AGV
	 */
	WMS_MOVE_IN_AGV("W22"),

	/**
	 * WMS同步完毕
	 */
	WMS_SYNC_DONE("W11");

	private String status;

	public static WmsMoveDStatus get(String status) {
		return Arrays.stream(WmsMoveDStatus.values()).filter(x -> x.getStatus().equals(status)).findFirst()
				.orElse(null);
	}

}
