import * as utils from './utils';

/**   下拉静态存储   */
global.dropDownStorage = {
  customerList: [], /*   客户列表   */
  productList: {}, /*   印件列表(数据格式:{sCustomerId1:[],sCUstomerId2:[]})   */
  wareHouseList: [], /*   仓库列表   */
  materialsList: {}, /*   材料列表(数据格式:{sWareHouseId1:[],sWareHouseId2:[]})   */
  suppyList: [], /*   材料供应商列表   */
  salesManList: [], /*   销售列表   */
  getPayList: [], /*   付款条件   */
  senderList: [], /*   送货人   */
  currencyList: [], /*   币别   */
  deliverList: [], /*   送货方式   */
  taxList: [], /*   税码   */
  parentClassifyList: [], /*   产品分类   */
};

/**   下拉工厂   */
export function getDropDownFactory(sName, sRelationId) {
  if (sName === 'sCustomerId') { /*   客户列表   */
    return global.dropDownStorage.customerList;
  } else if (sName === 'sSupplyId') { /*   材料供应商列表   */
    return global.dropDownStorage.suppyList;
  } else if (sName === 'sProductId') { /*   印件列表   */
    if (utils.isNotEmptyObject(global.dropDownStorage.productList)) {
      return global.dropDownStorage.productList[sRelationId];
    } else {
      return [];
    }
  } else if (sName === 'sWareHouseId') { /*   仓库列表   */
    return global.dropDownStorage.wareHouseList;
  } else if (sName === 'sMaterialsId') { /*   材料列表   */
    if (utils.isNotEmptyObject(global.dropDownStorage.materialsList)) {
      return global.dropDownStorage.materialsList[sRelationId];
    } else {
      return [];
    }
  } else if (sName === 'sSalesManId') { /*   销售列表   */
    return global.dropDownStorage.salesManList;
  } else if (sName === 'sTaxId') { /*   税码   */
    return global.dropDownStorage.taxList;
  } else if (sName === 'sGetPayId') { /*   付款条件   */
    return global.dropDownStorage.getPayList;
  } else if (sName === 'sSenderId') { /*   送货人   */
    return global.dropDownStorage.senderList;
  } else if (sName === 'sCurrency') { /*   币别   */
    return global.dropDownStorage.currencyList;
  } else if (sName === 'sDeliverId') { /*   送货方式   */
    return global.dropDownStorage.deliverList;
  } else if (sName === 'sParentClassify') { /*   产品分类   */
    return global.dropDownStorage.parentClassifyList;
  }
  return null;
}

/**   清除下拉容器   */
export function clearDropDownStorage(sName) {
  if (sName === 'sCustomerId') { /*   客户列表(连带印件容器一起清空因为印件数据会根据客户数据过滤)   */
    global.dropDownStorage.customerList = [];
    global.dropDownStorage.productList = {};
  } else if (sName === 'sSupplyId') { /*   材料供应商列表   */
    global.dropDownStorage.suppyList = [];
  } else if (sName === 'sProductId') { /*   印件列表   */
    global.dropDownStorage.productList = {};
  } else if (sName === 'sWareHouseId') { /*   仓库列表(连带材料容器一起清空因为材料数据会根据仓库数据过滤)   */
    global.dropDownStorage.wareHouseList = [];
    global.dropDownStorage.materialsList = {};
  } else if (sName === 'sMaterialsId') { /*   材料列表   */
    global.dropDownStorage.materialsList = {};
  } else if (sName === 'sSalesManId') { /*   销售列表   */
    global.dropDownStorage.salesManList = [];
  } else if (sName === 'sTaxId') { /*   税码   */
    global.dropDownStorage.taxList = [];
  } else if (sName === 'sGetPayId') { /*   付款条件   */
    global.dropDownStorage.getPayList = [];
  } else if (sName === 'sSenderId') { /*   送货人   */
    global.dropDownStorage.senderList = [];
  } else if (sName === 'sCurrency') { /*   币别   */
    global.dropDownStorage.currencyList = [];
  } else if (sName === 'sDeliverId') { /*   送货方式   */
    global.dropDownStorage.deliverList = [];
  } else if (sName === 'sParentClassify') { /*   产品分类   */
    global.dropDownStorage.parentClassifyList = [];
  }
}

/**   下拉容器赋值   */
export function setDropDownStorage(sName, valueArr, sRelationId) {
  if (sName === 'sCustomerId') { /*   客户列表   */
    global.dropDownStorage.customerList = valueArr;
  } else if (sName === 'sSupplyId') { /*   材料供应商列表   */
    global.dropDownStorage.suppyList = valueArr;
  } else if (sName === 'sProductId') { /*   印件列表(因为印件列表需要根据数据过滤,所有无固定值)   */
    global.dropDownStorage.productList[sRelationId] = valueArr;
  } else if (sName === 'sWareHouseId') { /*   仓库列表   */
    global.dropDownStorage.wareHouseList = valueArr;
  } else if (sName === 'sMaterialsId') { /*   材料列表   */
    global.dropDownStorage.materialsList[sRelationId] = valueArr;
  } else if (sName === 'sSalesManId') { /*   销售列表   */
    global.dropDownStorage.salesManList = valueArr;
  } else if (sName === 'sTaxId') { /*   税码   */
    global.dropDownStorage.taxList = valueArr;
  } else if (sName === 'sGetPayId') { /*   付款条件   */
    global.dropDownStorage.getPayList = valueArr;
  } else if (sName === 'sSenderId') { /*   送货人   */
    global.dropDownStorage.senderList = valueArr;
  } else if (sName === 'sCurrency') { /*   币别   */
    global.dropDownStorage.currencyList = valueArr;
  } else if (sName === 'sDeliverId') { /*   送货方式   */
    global.dropDownStorage.deliverList = valueArr;
  } else if (sName === 'sParentClassify') { /*   产品分类   */
    global.dropDownStorage.parentClassifyList = valueArr;
  }
}

