Area7Param.java 3.2 KB
package com.huaheng.api.robot.domain;

import com.alibaba.fastjson.JSONArray;
import com.huaheng.pc.inventory.inventoryDetail.domain.InventoryDetail;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/***
 * @author tongzonghao
 *
 */
public class Area7Param {
    /**
     * 内圈外圈 1外圈 2内圈
     */
    private int outOrInSide;
    /**
     * 内圈订单号
     */
    private String insideOrderNo;
    /**
     * 任务类型
     */
    private Integer taskType;
    /**
     * 是否等级匹配出库
     */
    private Integer isNeedQC;
    /**
     * 外圈匹配规则
     */
    private List<String> outsideRule;
    /**
     * 内圈匹配规则
     */
    private Map<String,String> insideRule;
    /**
     * 当前等级
     */
    private String currentLevel;
    /**
     * 下个订单等级
     */
    private String nextOrderLevel;

    public Area7Param() {
    }

    public int getOutOrInSide() {
        return outOrInSide;
    }

    public void setOutOrInSide(int outOrInSide) {
        this.outOrInSide = outOrInSide;
    }

    public String getInsideOrderNo() {
        return insideOrderNo;
    }

    public void setInsideOrderNo(String insideOrderNo) {
        this.insideOrderNo = insideOrderNo;
    }

    public Integer getTaskType() {
        return taskType;
    }

    public void setTaskType(Integer taskType) {
        this.taskType = taskType;
    }

    public Integer getIsNeedQC() {
        return isNeedQC;
    }

    public void setIsNeedQC(Integer isNeedQC) {
        this.isNeedQC = isNeedQC;
    }
    public void setRule(JSONArray rule) {
        outsideRule =new ArrayList<>();
        insideRule =new HashMap<>();
        if(rule!=null){
            for (Object o : rule) {
                if(o instanceof List){
                    List rules = (List)o;
                    outsideRule.add(rules.get(0).toString());
                    insideRule.put(rules.get(0).toString(),rules.get(1).toString());
                }
            }
        }
    }

    public List<String> getOutsideRule() {
        return outsideRule;
    }

    public void setOutsideRule(List<String> outsideRule) {
        this.outsideRule = outsideRule;
    }

    public Map<String,String> getInsideRule() {
        return insideRule;
    }

    public void setInsideRule(Map<String,String> insideRule) {
        this.insideRule = insideRule;
    }

    public boolean hasInsideOrderNo(){
        if(insideOrderNo==null||"".equals(insideOrderNo)){
            return false;
        }else{
            return true;
        }
    }

    public boolean hasLevel(){
        if(isNeedQC==1){
            return true;
        }
        return false;
    }

    public void setInventoryDetail(InventoryDetail inventoryDetail){
        if(hasLevel() && (outsideRule ==null || outsideRule.size()==0)){
            nextOrderLevel = null;
            currentLevel = inventoryDetail.getLevel();
        }else {
            currentLevel = inventoryDetail.getLevel();
            nextOrderLevel = insideRule.get(currentLevel);
        }
    }

    public String getCurrentLevel() {
        return currentLevel;
    }

    public String getNextOrderLevel() {
        return nextOrderLevel;
    }
}