同一个维度单选请求地址:https://eight1302.github.io/jquery-CX/aidecision/bagData.html
同一个维度多选,请求地址:https://eight1302.github.io/jquery-CX/aidecision2.0/bagData.html
实现代码核心代码:
把数据遍历成合适的json对象
function hqwdDataDeil(data){
//此方法,主要处理通用的数据展示,包括把公司、渠道、品牌、店铺、仓库进行数据拆分赋值处理
//第一层for循环,是区分公司;第二层for循环,是区分渠道;第三层for循环,是区分品牌;第四层for循环,是区分店铺(客户):第五层for循环,是区分仓库.
var datasx = new Array();
for (let i in data) {
let customer = i;
child = data[i];
var ditch = new Array();
for (let j in child) {
let ditchName = j;
let brand = new Array();
ditch.push({"ditch":ditchName,"brandList":brand});
for (let m in child[j]) {
let brandName = m;
let shop = new Array();
brand.push({"brand":brandName,"shopList":shop});
for(let q in child[j][m]){
let shopName = q;
let warehouList = new Array();
shop.push({"shop":shopName,"warehousesList":warehouList});
for(let p in child[j][m][q]){
let warehousesName = p;
warehouList.push({"warehous":warehousesName});
}
}
}
}
data_all.push({"customer":customer,"ditchList":ditch});
}
}
不同维度代码处理:
/公司下面的
function supplier_codeF(data){
dataS.supplier_code.length=0;
dataS.ditch_code.length=0;
dataS.brand_code.length=0;
dataS.shop_code.length=0;
dataS.warehous_code.length=0;
var flag=true;
var supplier_code=data.companys;
for(var i=0;i<supplier_code.length;i++){
if(supplier_code[i]!=null){
if($('.active').val() == 1){
if(supplier_code[i].dic_type == 'shop1'){
dataS.warehous_code.push(supplier_code[i]);
}else if(supplier_code[i].dic_type == 'ditch1' ){
dataS.ditch_code.push(supplier_code[i]);
}else if(supplier_code[i].dic_type == 'supplier1'){
dataS.supplier_code.push(supplier_code[i]);
}else if(supplier_code[i].dic_type == 'brand1'){
dataS.brand_code.push(supplier_code[i]);
}else{
dataS.shop_code.push(supplier_code[i]);
}
}else if($('.active').val() == 2){
if(supplier_code[i].dic_type == 'shop2'){
dataS.warehous_code.push(supplier_code[i]);
}else if(supplier_code[i].dic_type == 'ditch2' ){
dataS.ditch_code.push(supplier_code[i]);
}else if(supplier_code[i].dic_type == 'supplier2'){
dataS.supplier_code.push(supplier_code[i]);
}else if(supplier_code[i].dic_type == 'brand2'){
dataS.brand_code.push(supplier_code[i]);
}else{
dataS.shop_code.push(supplier_code[i]);
}
}else{
if(supplier_code[i].dic_type == 'shop3'){
dataS.warehous_code.push(supplier_code[i]);
}else if(supplier_code[i].dic_type == 'ditch3' ){
dataS.ditch_code.push(supplier_code[i]);
}else if(supplier_code[i].dic_type == 'supplier3'){
dataS.supplier_code.push(supplier_code[i]);
}else if(supplier_code[i].dic_type == 'brand3'){
dataS.brand_code.push(supplier_code[i]);
}else{
dataS.shop_code.push(supplier_code[i]);
}
}
ditchF(dataS.ditch_code);
wareHousesF(dataS.shop_code);
brand_codeF(dataS.brand_code);
}
}
queryReload(dataS);
}
//渠道下面的
function ditchF(data){
var ditchs=data;
for(var i1=0;i1<ditchs.length;i1++){
if(ditchs[i1]!=null){
var flag=true;
if(dataS.ditch_code.length==0){
dataS.ditch_code.push({"name":ditchs[i1].name,"value":ditchs[i1].value});
}else{
for(var a1=0;a1<dataS.ditch_code.length;a1++){
if(dataS.ditch_code[a1].name==ditchs[i1]['name']){
flag=false;
}
}
if(flag){
dataS.ditch_code.push({"name":ditchs[i1].name,"value":ditchs[i1].value});
}
}
}
}
}
//品牌下面的
function brand_codeF(data){
var brand_code=data;
for(var i2=0;i2<brand_code.length;i2++){
if(brand_code[i2]!=null){
var flag1=true;
if(dataS.brand_code.length==0){
dataS.brand_code.push({"name":brand_code[i2].name,"value":brand_code[i2].value});
}else{
for(var a2=0;a2<dataS.brand_code.length;a2++){
if(dataS.brand_code[a2]['name']==brand_code[i2]['name']){
flag1=false;
}
}
if(flag1){
dataS.brand_code.push({"name":brand_code[i2].name,"value":brand_code[i2].value});
}
}
}
}
}
//仓库的
function wareHousesF(data){
var warehouses=data;
for(var i3=0;i3<warehouses.length;i3++){
if(warehouses[i3]!=null){
var flag2=true;
if(dataS.shop_code.length==0){
dataS.shop_code.push({"name":warehouses[i3].name,"value":warehouses[i3].value});
}else{
for(var a3=0;a3<dataS.shop_code.length;a3++){
if(dataS.shop_code[a3]['name']==warehouses[i3]['name']){
flag2=false;
}
}
if(flag2){
dataS.shop_code.push({"name":warehouses[i3].name,"value":warehouses[i3].value});
}
}
}
}
}
筛选相应的数据
//点击搜索条件筛选相应数据
var supplier = '',ditch ='',brand ='',shop ='',warehous = '';
function commonData(key,data,categary,headerName){
//判断维度是否存在
if(key == "supplier_code"){
supplier = data;
}else if(key == "ditch_code"){
ditch = data;
}else if(key == "brand_code"){
brand = data;
}else if(key == "shop_code"){
shop = data;
}else if(key == "warehous_code"){
warehous = data;
}
if(key == "supplier_code" && data ==undefined && categary == undefined){
supplier ='';
}else if(key == "ditch_code" && data ==undefined && categary == undefined){
ditch = '';
}else if(key == "brand_code" && data ==undefined && categary == undefined){
brand = '';
}else if(key == "shop_code" && data ==undefined && categary == undefined){
shop = '';
}else if(key == "warehous_code" && data ==undefined && categary == undefined){
warehous = '';
}
//整理数据
var data_wd = {
supplier : supplier,
ditch : ditch,
brand : brand,
shop : shop,
warehous : warehous
};
if(data_wd.supplier !='' && data_wd.ditch =='' && data_wd.brand == '' && data_wd.shop == '' && data_wd.warehous == ''){
localStorage.setItem("flagsx",1);
}else if(data_wd.supplier =='' && data_wd.ditch !='' && data_wd.brand == '' && data_wd.shop == '' && data_wd.warehous == ''){
localStorage.setItem("flagsx",2);
}else if(data_wd.supplier =='' && data_wd.ditch =='' && data_wd.brand != '' && data_wd.shop == '' && data_wd.warehous == ''){
localStorage.setItem("flagsx",3);
}else if(data_wd.supplier =='' && data_wd.ditch =='' && data_wd.brand == '' && data_wd.shop != '' && data_wd.warehous == ''){
localStorage.setItem("flagsx",4);
}else if(data_wd.supplier =='' && data_wd.ditch =='' && data_wd.brand == '' && data_wd.shop == '' && data_wd.warehous != ''){
localStorage.setItem("flagsx",5);
}else if(data_wd.supplier =='' && data_wd.ditch =='' && data_wd.brand == '' && data_wd.shop == '' && data_wd.warehous == ''){
localStorage.setItem("flagsx",0);
}
var flagsx = localStorage.flagsx;
dataS1={
supplier_code:[],
ditch_code:[],
brand_code:[],
shop_code:[],
warehous_code : []
};
//数据整合
if(flagsx == 1){
let gsData = new Array(),brandData = new Array(),shopData = new Array(),ckData = new Array();
var supData1 = data_wd.supplier.split(',');
let ditData = data_wd.ditch.split(',');
let braData = data_wd.brand.split(',');
let warData = data_wd.warehous.split(',');
for(var a=0;a<supData1.length;a++){
for(var i=0;i<data_all.length;i++){
if(supData1[a] == data_all[i].customer){
ditchData = data_all[i];
dataS1.supplier_code.push(data_all[i].customer);
for(var j=0;j<data_all[i].ditchList.length;j++){
for(var m=0;m<data_all[i].ditchList[j].brandList.length;m++){
dataS1.brand_code.push(data_all[i].ditchList[j].brandList[m].brand);
for(var q=0;q<data_all[i].ditchList[j].brandList[m].shopList.length;q++){
dataS1.shop_code.push(data_all[i].ditchList[j].brandList[m].shopList[q].shop);
for(var p=0;p<data_all[i].ditchList[j].brandList[m].shopList[q].warehousesList.length;p++){
dataS1.warehous_code.push(data_all[i].ditchList[j].brandList[m].shopList[q].warehousesList[p].warehous);
}
}
}
dataS1.ditch_code.push(data_all[i].ditchList[j].ditch);
}
}
}
}
//判断公司,渠道都选择
if(data_wd.ditch!='' && data_wd.brand==''){
dataS1.ditch_code.length = 0;
dataS1.brand_code.length = 0;
dataS1.shop_code.length = 0;
dataS1.warehous_code.length = 0;
for(let b=0;b<supData1.length;b++){
for(let c=0;c<ditData.length;c++){
for(var i=0;i<data_all.length;i++){
for(var j=0;j<data_all[i].ditchList.length;j++){
if(ditData[c] ==data_all[i].ditchList[j].ditch && supData1[b] == data_all[i].customer){
dataS1.ditch_code.push(ditData[c]);
for(var m=0;m<data_all[i].ditchList[j].brandList.length;m++){
dataS1.brand_code.push(data_all[i].ditchList[j].brandList[m].brand);
for(var q=0;q<data_all[i].ditchList[j].brandList[m].shopList.length;q++){
dataS1.shop_code.push(data_all[i].ditchList[j].brandList[m].shopList[q].shop);
for(var p=0;p<data_all[i].ditchList[j].brandList[m].shopList[q].warehousesList.length;p++){
dataS1.warehous_code.push(data_all[i].ditchList[j].brandList[m].shopList[q].warehousesList[p].warehous);
}
}
}
}
}
}
}
}
}
//判断公司、品牌都选择
if(data_wd.brand!='' && data_wd.ditch==''){
dataS1.ditch_code.length = 0;
dataS1.brand_code.length = 0;
dataS1.shop_code.length = 0;
dataS1.warehous_code.length = 0;
for(let b=0;b<supData1.length;b++){
for(let c=0;c<braData.length;c++){
for(var i=0;i<data_all.length;i++){
for(var j=0;j<data_all[i].ditchList.length;j++){
for(var m=0;m<data_all[i].ditchList[j].brandList.length;m++){
if(braData[c] ==data_all[i].ditchList[j].brandList[m].brand && supData1[b] == data_all[i].customer){
dataS1.ditch_code.push(data_all[i].ditchList[j].ditch);
dataS1.brand_code.push(braData[c]);
for(var q=0;q<data_all[i].ditchList[j].brandList[m].shopList.length;q++){
dataS1.shop_code.push(data_all[i].ditchList[j].brandList[m].shopList[q].shop);
for(var p=0;p<data_all[i].ditchList[j].brandList[m].shopList[q].warehousesList.length;p++){
dataS1.warehous_code.push(data_all[i].ditchList[j].brandList[m].shopList[q].warehousesList[p].warehous);
}
}
}
}
}
}
}
}
}
//判断公司、仓库都选择
if(data_wd.warehous!='' && data_wd.brand =='' && data_wd.ditch==''){
dataS1.ditch_code.length = 0;
dataS1.brand_code.length = 0;
dataS1.shop_code.length = 0;
dataS1.warehous_code.length = 0;
for(let b=0;b<supData1.length;b++){
for(let c=0;c<warData.length;c++){
for(var i=0;i<data_all.length;i++){
for(var j=0;j<data_all[i].ditchList.length;j++){
for(var m=0;m<data_all[i].ditchList[j].brandList.length;m++){
for(var q=0;q<data_all[i].ditchList[j].brandList[m].shopList.length;q++){
for(var p=0;p<data_all[i].ditchList[j].brandList[m].shopList[q].warehousesList.length;p++){
if(warData[c] ==data_all[i].ditchList[j].brandList[m].shopList[q].warehousesList[p].warehous && supData1[b] == data_all[i].customer){
dataS1.ditch_code.push(data_all[i].ditchList[j].ditch);
dataS1.brand_code.push(data_all[i].ditchList[j].brandList[m].brand);
dataS1.shop_code.push(data_all[i].ditchList[j].brandList[m].shopList[q].shop);
dataS1.warehous_code.push(warData[c]);
}
}
}
}
}
}
}
}
}
//判断公司、渠道、品牌都选择
if(data_wd.ditch!='' && data_wd.brand!=''){
dataS1.ditch_code.length = 0;
dataS1.brand_code.length = 0;
dataS1.shop_code.length = 0;
dataS1.warehous_code.length = 0;
for(let b=0;b<supData1.length;b++){
for(let c=0;c<ditData.length;c++){
for(let d=0;d<braData.length;d++){
for(var i=0;i<data_all.length;i++){
for(var j=0;j<data_all[i].ditchList.length;j++){
for(var m=0;m<data_all[i].ditchList[j].brandList.length;m++){
if(ditData[c] ==data_all[i].ditchList[j].ditch && supData1[b] == data_all[i].customer && braData[d] == data_all[i].ditchList[j].brandList[m].brand){
dataS1.ditch_code.push(ditData[c]);
dataS1.brand_code.push(braData[d]);
for(var q=0;q<data_all[i].ditchList[j].brandList[m].shopList.length;q++){
dataS1.shop_code.push(data_all[i].ditchList[j].brandList[m].shopList[q].shop);
for(var p=0;p<data_all[i].ditchList[j].brandList[m].shopList[q].warehousesList.length;p++){
dataS1.warehous_code.push(data_all[i].ditchList[j].brandList[m].shopList[q].warehousesList[p].warehous);
}
}
}
}
}
}
}
}
}
}
//判断公司、品牌、仓库
if(data_wd.brand!='' && data_wd.warehous!=''){
dataS1.warehous_code.length = 0;
for(let a=0;a<warData.length;a++){
dataS1.warehous_code.push(warData[a]);
}
}
//判断公司、渠道、品牌、仓库都选择
if(data_wd.ditch!='' && data_wd.brand!='' && data_wd.warehous){
dataS1.shop_code.length = 0;
dataS1.warehous_code.length = 0;
for(let b=0;b<supData1.length;b++){
for(let c=0;c<ditData.length;c++){
for(let d=0;d<braData.length;d++){
for(let e=0;e<warData.length;e++){
for(var i=0;i<data_all.length;i++){
for(var j=0;j<data_all[i].ditchList.length;j++){
for(var m=0;m<data_all[i].ditchList[j].brandList.length;m++){
for(var q=0;q<data_all[i].ditchList[j].brandList[m].shopList.length;q++){
dataS1.shop_code.push(data_all[i].ditchList[j].brandList[m].shopList[q].shop);
for(var p=0;p<data_all[i].ditchList[j].brandList[m].shopList[q].warehousesList.length;p++){
if(ditData[c] ==data_all[i].ditchList[j].ditch && supData1[b] == data_all[i].customer && braData[d] == data_all[i].ditchList[j].brandList[m].brand && warData[e] == data_all[i].ditchList[j].brandList[m].shopList[q].warehousesList[p].warehous){
dataS1.warehous_code.push(warData[e]);
}
}
}
}
}
}
}
}
}
}
}
}else if(flagsx == 2){
//选择渠道
var gsData = new Array(),brandData = new Array(),ckData = new Array();
let ditchData = data_wd.ditch.split(',');
let supplData = data_wd.supplier.split(',');
let braData = data_wd.brand.split(',');
let warData = data_wd.warehous.split(',');
for(let a=0;a<ditchData.length;a++){
for(var i=0;i<data_all.length;i++){
for(var j=0;j<data_all[i].ditchList.length;j++){
if(ditchData[a] ==data_all[i].ditchList[j].ditch){
for(var m=0;m<data_all[i].ditchList[j].brandList.length;m++){
for(var p=0;p<data_all[i].ditchList[j].brandList[m].shopList.length;p++){
for(var q=0;q<data_all[i].ditchList[j].brandList[m].shopList[p].warehousesList.length;q++){
dataS1.warehous_code.push(data_all[i].ditchList[j].brandList[m].shopList[p].warehousesList[q].warehous);
dataS1.shop_code.push(data_all[i].ditchList[j].brandList[m].shopList[p].shop);
dataS1.brand_code.push(data_all[i].ditchList[j].brandList[m].brand);
dataS1.ditch_code.push(data_all[i].ditchList[j].ditch);
dataS1.supplier_code.push(data_all[i].customer);
gsData.push({"customer":data_all[i].customer});
brandData.push({"brand":data_all[i].ditchList[j].brandList[m].brand});
}
}
}
}
}
}
}
//判断渠道,公司都选择
if(data_wd.ditch!='' && data_wd.supplier!=''){
dataS1.supplier_code.length = 0;
for(let a=0;a<supplData.length;a++){
for(var i=0;i<gsData.length;i++){
if(supplData[a] == gsData[i].customer){
dataS1.supplier_code.push(gsData[i].customer);
}
}
}
}
//判断品牌,渠道都选择
if(data_wd.ditch!='' && data_wd.brand!=''){
dataS1.warehous_code.length = 0;
dataS1.shop_code.length = 0;
dataS1.brand_code.length = 0;
for(let a=0;a<ditchData.length;a++){
for(let b=0;b<braData.length;b++){
for(var i=0;i<data_all.length;i++){
for(var j=0;j<data_all[i].ditchList.length;j++){
for(var m=0;m<data_all[i].ditchList[j].brandList.length;m++){
if(ditchData[a] ==data_all[i].ditchList[j].ditch && braData[b] == data_all[i].ditchList[j].brandList[m].brand){
for(var p=0;p<data_all[i].ditchList[j].brandList[m].shopList.length;p++){
for(var q=0;q<data_all[i].ditchList[j].brandList[m].shopList[p].warehousesList.length;q++){
dataS1.warehous_code.push(data_all[i].ditchList[j].brandList[m].shopList[p].warehousesList[q].warehous);
dataS1.shop_code.push(data_all[i].ditchList[j].brandList[m].shopList[p].shop);
dataS1.brand_code.push(data_all[i].ditchList[j].brandList[m].brand);
ckData.push({"warehous":data_all[i].ditchList[j].brandList[m].shopList[p].warehousesList[q].warehous});
}
}
}
}
}
}
}
}
}
//判断品牌,渠道,仓库都选择
if(data_wd.ditch!='' && data_wd.brand!='' && data_wd.warehous!=''){
dataS1.warehous_code.length = 0;
for(let a=0;a<warData.length;a++){
dataS1.warehous_code.push(warData[a]);
}
if(brandData.length>0){
dataS1.brand_code.length = 0;
for(let b=0;b<braData.length;b++){
dataS1.brand_code.push(braData[b]);
}
}
}
//判断渠道、仓库都选择
if(data_wd.ditch!='' && data_wd.warehous!='' && data_wd.brand==''){
dataS1.warehous_code.length = 0;
dataS1.shop_code.length = 0;
dataS1.brand_code.length = 0;
brandData.length = 0;
for(let a=0;a<ditchData.length;a++){
for(let b=0;b<warData.length;b++){
for(var i=0;i<data_all.length;i++){
for(var j=0;j<data_all[i].ditchList.length;j++){
for(var m=0;m<data_all[i].ditchList[j].brandList.length;m++){
for(var p=0;p<data_all[i].ditchList[j].brandList[m].shopList.length;p++){
for(var q=0;q<data_all[i].ditchList[j].brandList[m].shopList[p].warehousesList.length;q++){
if(ditchData[a] ==data_all[i].ditchList[j].ditch && warData[b] == data_all[i].ditchList[j].brandList[m].shopList[p].warehousesList[q].warehous){
dataS1.warehous_code.push(data_all[i].ditchList[j].brandList[m].shopList[p].warehousesList[q].warehous);
dataS1.shop_code.push(data_all[i].ditchList[j].brandList[m].shopList[p].shop);
dataS1.brand_code.push(data_all[i].ditchList[j].brandList[m].brand);
ckData.push({"warehous":data_all[i].ditchList[j].brandList[m].shopList[p].warehousesList[q].warehous});
brandData.push({"brand":data_all[i].ditchList[j].brandList[m].brand});
}
}
}
}
}
}
}
}
}
}else if(flagsx == 3){
//判断选择品牌
dataS1.supplier_code.length = 0;
dataS1.ditch_code.length = 0;
dataS1.brand_code.length = 0;
dataS1.shop_code.length = 0;
dataS1.warehous_code.length = 0;
let brandData = data_wd.brand.split(',');
let warData = data_wd.warehous.split(',');
let ditchData = data_wd.ditch.split(',');
let supplData = data_wd.supplier.split(',');
var ckData = new Array(),qdData = new Array(), gsData = new Array();
for(var a=0;a<brandData.length;a++){
for(var i=0;i<data_all.length;i++){
for(var j=0;j<data_all[i].ditchList.length;j++){
for(var m=0;m<data_all[i].ditchList[j].brandList.length;m++){
if(brandData[a] == data_all[i].ditchList[j].brandList[m].brand){
for(var p = 0;p<data_all[i].ditchList[j].brandList[m].shopList.length;p++){
for(var q = 0;q<data_all[i].ditchList[j].brandList[m].shopList[p].warehousesList.length;q++){
dataS1.warehous_code.push(data_all[i].ditchList[j].brandList[m].shopList[p].warehousesList[q].warehous);
dataS1.shop_code.push(data_all[i].ditchList[j].brandList[m].shopList[p].shop);
ckData.push({"warehous":data_all[i].ditchList[j].brandList[m].shopList[p].warehousesList[q].warehous});
}
}
dataS1.brand_code.push(data_all[i].ditchList[j].brandList[m].brand);
dataS1.ditch_code.push(data_all[i].ditchList[j].ditch);
dataS1.supplier_code.push(data_all[i].customer);
qdData.push({"ditch":data_all[i].ditchList[j].ditch});
gsData.push({"customer":data_all[i].customer});
}
}
}
}
}
//选择品牌、仓库
if(data_wd.brand!='' && data_wd.warehous!=''){
dataS1.warehous_code.length = 0;
for(var b=0;b<warData.length;b++){
for(var i=0;i<ckData.length;i++){
if(warData[b] == ckData[i].warehous){
dataS1.warehous_code.push(ckData[i].warehous);
}
}
}
}
//选中品牌、渠道
if(data_wd.brand!='' && data_wd.ditch!=''){
dataS1.ditch_code.length = 0;
for(let a=0;a<ditchData.length;a++){
for(var i=0;i<qdData.length;i++){
if(ditchData[a] == qdData[i].ditch){
dataS1.ditch_code.push(qdData[i].ditch);
}
}
}
}
//选中品牌、公司
if(data_wd.brand!='' && data_wd.supplier!=''){
dataS1.supplier_code.length = 0;
for(let a = 0;a<supplData.length;a++){
for(var i=0;i<gsData.length;i++){
if(supplData[a] == gsData[i].customer){
dataS1.supplier_code.push(gsData[i].customer);
}
}
}
}
}else if(flagsx == 4){
console.log("客户暂无数据");
}else if(flagsx == 5){
var gsData = new Array();
var wareData = data_wd.warehous.split(',');
for(let a=0;a<wareData.length;a++){
for(var i=0;i<data_all.length;i++){
for(var j=0;j<data_all[i].ditchList.length;j++){
for(var m=0;m<data_all[i].ditchList[j].brandList.length;m++){
for(var p=0;p<data_all[i].ditchList[j].brandList[m].shopList.length;p++){
for(var q=0;q<data_all[i].ditchList[j].brandList[m].shopList[p].warehousesList.length;q++){
if(wareData[a] == data_all[i].ditchList[j].brandList[m].shopList[p].warehousesList[q].warehous){
dataS1.warehous_code.push(data_all[i].ditchList[j].brandList[m].shopList[p].warehousesList[q].warehous);
dataS1.shop_code.push(data_all[i].ditchList[j].brandList[m].shopList[p].shop);
dataS1.brand_code.push(data_all[i].ditchList[j].brandList[m].brand);
dataS1.ditch_code.push(data_all[i].ditchList[j].ditch);
dataS1.supplier_code.push(data_all[i].customer);
gsData.push({"customer":data_all[i].customer});
}
}
}
}
}
}
}
//判断同时选择仓库、品牌
if(data_wd.brand!='' && data_wd.warehous!=''){
dataS1.brand_code.length = 0;
dataS1.supplier_code.length = 0;
var brandData = data_wd.brand.split(',');
var wareData = data_wd.warehous.split(',');
for(let a=0;a<brandData.length;a++){
for(let b=0;b<wareData.length;b++){
for(var i=0;i<data_all.length;i++){
for(var j=0;j<data_all[i].ditchList.length;j++){
for(var m=0;m<data_all[i].ditchList[j].brandList.length;m++){
for(var p=0;p<data_all[i].ditchList[j].brandList[m].shopList.length;p++){
for(var q=0;q<data_all[i].ditchList[j].brandList[m].shopList[p].warehousesList.length;q++){
if(wareData[b] == data_all[i].ditchList[j].brandList[m].shopList[p].warehousesList[q].warehous && brandData[a] == data_all[i].ditchList[j].brandList[m].brand){
dataS1.warehous_code.push(data_all[i].ditchList[j].brandList[m].shopList[p].warehousesList[q].warehous);
dataS1.shop_code.push(data_all[i].ditchList[j].brandList[m].shopList[p].shop);
dataS1.brand_code.push(brandData[a]);
dataS1.ditch_code.push(data_all[i].ditchList[j].ditch);
dataS1.supplier_code.push(data_all[i].customer);
}
}
}
}
}
}
}
}
}
//判断仓库,公司都都选择
if(data_wd.warehous!='' && data_wd.supplier!=''){
var supData = data_wd.supplier.split(',');
dataS1.supplier_code.length = 0;
for(var i=0;i<gsData.length;i++){
for(let a=0;a<supData.length;a++){
if(supData[a] == gsData[i].customer){
dataS1.supplier_code.push(gsData[i].customer);
}
}
}
}
}else{
for(var i=0;i<data_all.length;i++){
dataS1.supplier_code.push(data_all[i].customer);
for(var j=0;j<data_all[i].ditchList.length;j++){
for(var m=0;m<data_all[i].ditchList[j].brandList.length;m++){
dataS1.brand_code.push(data_all[i].ditchList[j].brandList[m].brand);
for(var q=0;q<data_all[i].ditchList[j].brandList[m].shopList.length;q++){
dataS1.shop_code.push(data_all[i].ditchList[j].brandList[m].shopList[q].shop);
for(var p=0;p<data_all[i].ditchList[j].brandList[m].shopList[q].warehousesList.length;p++){
dataS1.warehous_code.push(data_all[i].ditchList[j].brandList[m].shopList[q].warehousesList[p].warehous);
}
}
}
dataS1.ditch_code.push(data_all[i].ditchList[j].ditch);
}
}
}
removeDuplicatedItem(dataS1.supplier_code);
removeDuplicatedItem(dataS1.ditch_code);
removeDuplicatedItem(dataS1.brand_code);
removeDuplicatedItem(dataS1.shop_code);
removeDuplicatedItem(dataS1.warehous_code);
//数据整合处理,把两个接口的数据,进行品牌,赋值处理
for(var i=0;i<dataS1.supplier_code.length;i++){
for(let j=0;j<insideData.companys.length;j++){
if(dataS1.supplier_code[i] === insideData.companys[j].dic_code){
dataS1.supplier_code[i] = insideData.companys[j];
}
}
}
for(var i=0;i<dataS1.ditch_code.length;i++){
for(let j=0;j<insideData.companys.length;j++){
if(dataS1.ditch_code[i] === insideData.companys[j].dic_code){
dataS1.ditch_code[i] = insideData.companys[j];
}
}
}
for(var i=0;i<dataS1.brand_code.length;i++){
for(let j=0;j<insideData.companys.length;j++){
if(dataS1.brand_code[i] === insideData.companys[j].dic_code){
dataS1.brand_code[i] = insideData.companys[j];
}
}
}
for(var i=0;i<dataS1.shop_code.length;i++){
for(let j=0;j<insideData.companys.length;j++){
if(dataS1.shop_code[i] === insideData.companys[j].dic_code){
dataS1.shop_code[i] = insideData.companys[j];
}
}
}
for(var i=0;i<dataS1.warehous_code.length;i++){
for(let j=0;j<insideData.companys.length;j++){
if(dataS1.warehous_code[i] === insideData.companys[j].dic_code){
dataS1.warehous_code[i] = insideData.companys[j];
}
}
}
//仓库对应数据进行判断,是去除字符串,只保留json对象。
dataS1.supplier_code = warehousJson(dataS1.supplier_code);
dataS1.ditch_code = warehousJson(dataS1.ditch_code);
dataS1.brand_code = warehousJson(dataS1.brand_code);
dataS1.shop_code = warehousJson(dataS1.shop_code);
dataS1.warehous_code = warehousJson(dataS1.warehous_code);
//数据筛选整合
showSelectData(dataS1,categary,headerName,data_wd);
}
数据去重以及非json对象删除
//数组去重
function removeDuplicatedItem(arr) {
for(var i = 0; i < arr.length-1; i++){
for(var j = i+1; j < arr.length; j++){
if(arr[i]==arr[j]){
arr.splice(j,1);//console.log(arr[j]);
j--;
}
}
}
return arr;
}
//清除数组中的非json对象的数据
function warehousJson(data){
var warehouse = new Array();
for(var i=0;i<data.length;i++){
if(data[i].id != null || data[i].id != undefined){
warehouse.push(data[i]);
}
}
data = warehouse;
return data;
}
页面展示
//用来控制那个搜索条件刷新
function queryReload(data,categary,headerName,data_wd){
arrList={
supplier_code:[],
ditch_code:[],
brand_code:[],
shop_code:[],
warehous_code : []
};
var searchData=$('#search-data');
//公司
function supplierF(){
var str='';
var supplier_code=searchData.find('div.supplierId');
var supplier_codehtml=data.supplier_code;
//数据排序
var compare = function (obj1, obj2) {
var val1 = obj1.dic_ext1?Number(obj1.dic_ext1):'999';
var val2 = obj2.dic_ext1?Number(obj1.dic_ext1):'999';
if (val1 < val2) {
return -1;
} else if (val1 > val2) {
return 1;
} else {
return 0;
}
};
var level1='<span class="list" style="vertical-align:top;display:inline-block;height:36px;line-height:36px;">一级:</span>',
level2='<br/><span class="list" style="vertical-align:top;display:inline-block;height:36px;line-height:36px;">二级:</span>',
level3='<br/><span class="list" style="vertical-align:top;display:inline-block;height:36px;line-height:36px;">三级:</span>';
supplier_codehtml.sort(compare);
var supcustomer2 = 0,supcustomer3=0;
for(var i=0;i<supplier_codehtml.length;i++){
if(supplier_codehtml[i].dic_ext2 == '1' || supplier_codehtml[i].dic_ext2 == null){
level1 += '<a href="javascript:;" class="c-item" data-header="'+ supplier_codehtml[i].dic_name +'" data-header-name="'+ supplier_codehtml[i].dic_code +'" data-flag="supplier_code"><input type="checkbox" data-flag="true" class="hide checkbox1"/><span>'+ supplier_codehtml[i].dic_name +'</span></a>';
}else if(supplier_codehtml[i].dic_ext2 == '2'){
supcustomer2 = 1;
level2 += '<a href="javascript:;" class="c-item" data-header="'+ supplier_codehtml[i].dic_name +'" data-header-name="'+ supplier_codehtml[i].dic_code +'" data-flag="supplier_code"><input type="checkbox" data-flag="true" class="hide checkbox1"/><span>'+ supplier_codehtml[i].dic_name +'</span></a>';
}else{
supcustomer3 = 1;
level3 += '<a href="javascript:;" class="c-item" data-header="'+ supplier_codehtml[i].dic_name +'" data-header-name="'+ supplier_codehtml[i].dic_code +'" data-flag="supplier_code"><input type="checkbox" data-flag="true" class="hide checkbox1"/><span>'+ supplier_codehtml[i].dic_name +'</span></a>';
}
arrList.supplier_code.push({name:supplier_codehtml[i].dic_name,value:supplier_codehtml[i].dic_code});
}
//判断隐藏
if(supcustomer2>0 && supcustomer3>0){
str+=level1+level2+level3+'<p class="remind hide1"><a href="javascript:;" class="assured">确定</a><a href="javascript:;" class="cancel">取消</a> </p>';
}else if(supcustomer2>0 && supcustomer3==0){
str+=level1+level2+'<p class="remind hide1"><a href="javascript:;" class="assured">确定</a><a href="javascript:;" class="cancel">取消</a> </p>';
}else{
str+=level1+'<p class="remind hide1"><a href="javascript:;" class="assured">确定</a><a href="javascript:;" class="cancel">取消</a> </p>';
}
supplier_code.html(str);
}
//渠道
function ditchF(){
var str='';
var ditch_code=searchData.find('div.ditchId');
var brand_codehtml=data.ditch_code;
var compare = function (obj1, obj2) {
var val1 = obj1.dic_ext1?Number(obj1.dic_ext1):'999';
var val2 = obj2.dic_ext1?Number(obj1.dic_ext1):'999';
if (val1 < val2) {
return -1;
} else if (val1 > val2) {
return 1;
} else {
return 0;
}
};
brand_codehtml.sort(compare);
var level1='<span class="list" style="vertical-align:top;display:inline-block;height:36px;line-height:36px;">一级:</span>',
level2='<br/><span class="list" style="vertical-align:top;display:inline-block;height:36px;line-height:36px;">二级:</span>',
level3='<br/><span class="list" style="vertical-align:top;display:inline-block;height:36px;line-height:36px;">三级:</span>';
var ditDatashow2 = 0,ditDatashow3 = 0;
for(var i=0;i<brand_codehtml.length;i++){
if(brand_codehtml[i].dic_ext2 == '1' || brand_codehtml[i].dic_ext2 == null){
level1+='<a href="javascript:;" class="c-item" data-header="'+ brand_codehtml[i].dic_name +'" data-header-name="'+ brand_codehtml[i].dic_code +'" data-flag="ditch_code"><input type="checkbox" data-flag="true" class="hide checkbox1"/><span>'+ brand_codehtml[i].dic_name +'</span></a>';
}else if(brand_codehtml[i].dic_ext2 == '2'){
ditDatashow2 = 1;
level2+='<a href="javascript:;" class="c-item" data-header="'+ brand_codehtml[i].dic_name +'" data-header-name="'+ brand_codehtml[i].dic_code +'" data-flag="ditch_code"><input type="checkbox" data-flag="true" class="hide checkbox1"/><span>'+ brand_codehtml[i].dic_name +'</span></a>';
}else{
ditDatashow3 = 1;
level3+='<a href="javascript:;" class="c-item" data-header="'+ brand_codehtml[i].dic_name +'" data-header-name="'+ brand_codehtml[i].dic_code +'" data-flag="ditch_code"><input type="checkbox" data-flag="true" class="hide checkbox1"/><span>'+ brand_codehtml[i].dic_name +'</span></a>';
}
arrList.ditch_code.push({name:brand_codehtml[i].dic_name,value:brand_codehtml[i].dic_code});
}
if(ditDatashow2>0 && ditDatashow3>0){
str+=level1+level2+level3+'<p class="remind hide1"><a href="javascript:;" class="assured">确定</a><a href="javascript:;" class="cancel">取消</a> </p>';
}else if(ditDatashow2>0 && ditDatashow3==0){
str+=level1+level2+'<p class="remind hide1"><a href="javascript:;" class="assured">确定</a><a href="javascript:;" class="cancel">取消</a> </p>';
}else{
str+=level1+'<p class="remind hide1"><a href="javascript:;" class="assured">确定</a><a href="javascript:;" class="cancel">取消</a> </p>';
}
ditch_code.html(str);
}
//店铺仓库
function storeF(){
var str='';
var shop_code=searchData.find('div.store_warehouse');
var storewarehousehtml=data.warehous_code;
var level1='<span class="list" style="vertical-align:top;display:inline-block;height:36px;line-height:36px;">一级:</span>',
level2='<br/><span class="list" style="vertical-align:top;display:inline-block;height:36px;line-height:36px;">二级:</span>',
level3='<br/><span class="list" style="vertical-align:top;display:inline-block;height:36px;line-height:36px;">三级:</span>';
var warelevel2 = 0, warelevel3 = 0;
for(var i=0;i<storewarehousehtml.length;i++){
if(storewarehousehtml[i].dic_ext2 == '1' || storewarehousehtml[i].dic_ext2 == null){
level1+='<a href="javascript:;" class="c-item" data-header="'+ storewarehousehtml[i].dic_name +'" data-header-name="'+ storewarehousehtml[i].dic_code +'" data-flag="warehous_code"><input type="checkbox" data-flag="true" class="hide checkbox1"/><span>'+ storewarehousehtml[i].dic_name +'</span></a>';
}else if(storewarehousehtml[i].dic_ext2 == '2'){
level2+='<a href="javascript:;" class="c-item" data-header="'+ storewarehousehtml[i].dic_name +'" data-header-name="'+ storewarehousehtml[i].dic_code +'" data-flag="warehous_code"><input type="checkbox" data-flag="true" class="hide checkbox1"/><span>'+ storewarehousehtml[i].dic_name +'</span></a>';
}else{
level3+='<a href="javascript:;" class="c-item" data-header="'+ storewarehousehtml[i].dic_name +'" data-header-name="'+ storewarehousehtml[i].dic_code +'" data-flag="warehous_code"><input type="checkbox" data-flag="true" class="hide checkbox1"/><span>'+ storewarehousehtml[i].dic_name +'</span></a>';
}
arrList.shop_code.push({name:storewarehousehtml[i].dic_name,value:storewarehousehtml[i].dic_code});
}
if(warelevel2>0 && warelevel3>0){
str+=level1+level2+level3+'<p class="remind hide1"><a href="javascript:;" class="checkAll">全选</a> <a href="javascript:;" class="assured">确定</a><a href="javascript:;" class="cancel">取消</a> </p>';
}else if(warelevel2>0 && warelevel3==0){
str+=level1+level2+'<p class="remind hide1"><a href="javascript:;" class="checkAll">全选</a> <a href="javascript:;" class="assured">确定</a><a href="javascript:;" class="cancel">取消</a> </p>';
}else{
str+=level1+'<p class="remind hide1"><a href="javascript:;" class="checkAll">全选</a> <a href="javascript:;" class="assured">确定</a><a href="javascript:;" class="cancel">取消</a> </p>';
}
shop_code.html(str);
}
//品牌
function brandF(){
var level1='<span class="list" style="vertical-align:top;display:inline-block;height:36px;line-height:36px;">一级:</span>',
level2='<br/><span class="list" style="vertical-align:top;display:inline-block;height:36px;line-height:36px;">二级:</span>',
level3='<br/><span class="list" style="vertical-align:top;display:inline-block;height:36px;line-height:36px;">三级:</span>';
var str='',name='',str1='',flag=false;
var brand_code=searchData.find('div.brand_code');
var brand_codehtml=data.brand_code;
var brandlevel2 = 0,brandlevel3=0;
for(var i=0;i<brand_codehtml.length;i++){
if(brand_codehtml[i].dic_ext2 == '1' || brand_codehtml[i].dic_ext2 == null){
level1+='<a href="javascript:;" class="c-item" data-header="'+ brand_codehtml[i].dic_name +'" data-header-name="'+ brand_codehtml[i].dic_code +'" data-flag="brand_code"><input type="checkbox" data-flag="true" class="hide checkbox1"/><span>'+ brand_codehtml[i].dic_name +'</span></a>';
}else if(brand_codehtml[i].dic_ext2 == '2'){
level2+='<a href="javascript:;" class="c-item" data-header="'+ brand_codehtml[i].dic_name +'" data-header-name="'+ brand_codehtml[i].dic_code +'" data-flag="brand_code"><input type="checkbox" data-flag="true" class="hide checkbox1"/><span>'+ brand_codehtml[i].dic_name +'</span></a>';
}else{
level3+='<a href="javascript:;" class="c-item" data-header="'+ brand_codehtml[i].dic_name +'" data-header-name="'+ brand_codehtml[i].dic_code +'" data-flag="brand_code"><input type="checkbox" data-flag="true" class="hide checkbox1"/><span>'+ brand_codehtml[i].dic_name +'</span></a>';
}
arrList.brand_code.push({name:brand_codehtml[i].dic_name,value:brand_codehtml[i].dic_code});
}
if(brandlevel2>0 && brandlevel3>0){
str=level1+level2+level3+'<p class="remind hide1"><a href="javascript:;" class="checkAll">全选</a><a href="javascript:;" class="assured">确定</a><a href="javascript:;" class="cancel">取消</a> </p>';
brand_code.eq(0).html(str);
}else if(brandlevel2>0 && brandlevel3==0){
str=level1+level2+'<p class="remind hide1"><a href="javascript:;" class="checkAll">全选</a><a href="javascript:;" class="assured">确定</a><a href="javascript:;" class="cancel">取消</a> </p>';
brand_code.eq(0).html(str);
}else{
str=level1+'<p class="remind hide1"><a href="javascript:;" class="checkAll">全选</a><a href="javascript:;" class="assured">确定</a><a href="javascript:;" class="cancel">取消</a> </p>';
brand_code.eq(0).html(str);
}
}
//客户
function shopF(){
var level1='<span class="list" style="vertical-align:top;display:inline-block;height:36px;line-height:36px;">一级:</span>',
level2='<br/><span class="list" style="vertical-align:top;display:inline-block;height:36px;line-height:36px;">二级:</span>',
level3='<br/><span class="list" style="vertical-align:top;display:inline-block;height:36px;line-height:36px;">三级:</span>';
var str='',name='',str1='',flag=false;
var customer_code=searchData.find('div.customer_code');
var brand_codehtml=data.shop_code;
var shoplevel2 = 0, shoplevel3 = 0;
for(var i=0;i<brand_codehtml.length;i++){
if(brand_codehtml[i].dic_ext2==='1' && brand_codehtml[i].dic_ext2 == null){
level1+='<a href="javascript:;" data-categary="1" class="c-item" data-header="'+ brand_codehtml[i].dic_name +'" data-header-name="'+ brand_codehtml[i].dic_code +'" data-flag="brand_code"><input type="checkbox" data-flag="true" class="hide checkbox1"/><span>'+ brand_codehtml[i].dic_name +'</span></a>';
}else if(brand_codehtml[i].dic_ext2==='2'){
level2+='<a href="javascript:;" data-categary="2" class="c-item" data-header="'+ brand_codehtml[i].dic_name +'" data-header-name="'+ brand_codehtml[i].dic_code +'" data-flag="brand_code"><input type="checkbox" data-flag="true" class="hide checkbox1"/><span>'+ brand_codehtml[i].dic_name +'</span></a>';
}else if(brand_codehtml[i].dic_ext2==='3'){
level3+='<a href="javascript:;" data-categary="3" class="c-item" data-header="'+ brand_codehtml[i].dic_name +'" data-header-name="'+ brand_codehtml[i].dic_code +'" data-flag="brand_code"><input type="checkbox" data-flag="true" class="hide checkbox1"/><span>'+ brand_codehtml[i].dic_name +'</span></a>';
}
arrList.warehous_code.push({name:brand_codehtml[i].dic_name,value:brand_codehtml[i].dic_code});
}
if(shoplevel2>0 && shoplevel3>0){
str1=level1+level2+level3+'<p class="remind hide1"><a href="javascript:;" class="checkAll">全选</a><a href="javascript:;" class="assured">确定</a><a href="javascript:;" class="cancel">取消</a> </p>';
}else if(shoplevel2>0 && shoplevel3==0){
str1=level1+level2+'<p class="remind hide1"><a href="javascript:;" class="checkAll">全选</a><a href="javascript:;" class="assured">确定</a><a href="javascript:;" class="cancel">取消</a> </p>';
}else{
str1=level1+'<p class="remind hide1"><a href="javascript:;" class="checkAll">全选</a><a href="javascript:;" class="assured">确定</a><a href="javascript:;" class="cancel">取消</a> </p>';
}
customer_code.html(str1);
}
supplierF();//公司
ditchF();//渠道
brandF();//品牌
shopF();//客户
storeF();//店铺仓库
}
详细操作,点击链接。