数据格式的转换(改为联动的数据格式)

该内容展示了如何将后端返回的原始数据转换为树形结构,便于组织和展示。数据主要涉及基础环境、现场服务和业务系统的多个分类及其子分类,例如:基础环境包括工厂相关业务、终端业务等;现场服务涵盖操作系统相关的系统安装和优化;业务系统则包含资金管理和服务台等多个模块。
摘要由CSDN通过智能技术生成

后端返回的数据格式如下:

 let data = [{
            "c3": "",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 1,
            "c1": "基础环境",
            "c2": "工厂相关业务"
        }, {
            "c3": "",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 2,
            "c1": "基础环境",
            "c2": "终端业务"
        }, {
            "c3": "",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 3,
            "c1": "基础环境",
            "c2": "信息安全"
        }, {
            "c3": "",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 4,
            "c1": "基础环境",
            "c2": "基础应用"
        }, {
            "c3": "",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 5,
            "c1": "基础环境",
            "c2": "中心机房相关业务"
        }, {
            "c3": "",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 6,
            "c1": "基础环境",
            "c2": "网络通信"
        }, {
            "c3": "",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 7,
            "c1": "基础环境",
            "c2": "计算及存储资源"
        }, {
            "c3": "",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 8,
            "c1": "基础环境",
            "c2": "信息安全(标准变更)"
        }, {
            "c3": "",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 9,
            "c1": "基础环境",
            "c2": "数据中心机房相关业务(标准变更)"
        }, {
            "c3": "",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 10,
            "c1": "基础环境",
            "c2": "网络通信(标准变更)"
        }, {
            "c3": "",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 11,
            "c1": "基础环境",
            "c2": "计算及存储资源(标准变更)"
        }, {
            "c3": "",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 12,
            "c1": "基础环境",
            "c2": "流程监控(标准变更)"
        }, {
            "c3": "系统安装-系统升级",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 13,
            "c1": "现场服务",
            "c2": "操作系统"
        }, {
            "c3": "系统优化-运行速度优化",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 14,
            "c1": "现场服务",
            "c2": "操作系统"
        }, {
            "c3": "数据维护",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 296,
            "c1": "业务系统",
            "c2": "资金管理系统"
        }, {
            "c3": "操作指导",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 297,
            "c1": "业务系统",
            "c2": "资金管理系统"
        },  {
            "c3": "",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 644,
            "c1": "网络及机房",
            "c2": "核心区"
        }, {
            "c3": "外围单位",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 645,
            "c1": "网络及机房",
            "c2": "园区网络"
        },  {
            "c3": "电子化平台",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 1250,
            "c1": "应用系统",
            "c2": "大营销"
        }, {
            "c3": "排班表",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 1251,
            "c1": "服务台",
            "c2": "报表制作"
        }, {
            "c3": "录音、排班表",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 1252,
            "c1": "服务台",
            "c2": "质量管理"
        }, {
            "c3": "接待用户来访咨询",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 1253,
            "c1": "服务台",
            "c2": "SSC"
        }, {
            "c3": "巡检",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 1258,
            "c1": "服务台",
            "c2": "日常巡检"
        }, {
            "c3": "疑难问题及投诉处理",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 1261,
            "c1": "服务台",
            "c2": "业务管理"
        }, {
            "c3": "突发事件应对及宣导",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 1262,
            "c1": "服务台",
            "c2": "业务管理"
        }, {
            "c3": "更新与发布",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 1263,
            "c1": "服务台",
            "c2": "培训管理"
        }, {
            "c3": "知识",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 1264,
            "c1": "服务台",
            "c2": "培训管理"
        }, {
            "c3": "业务培训",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 1265,
            "c1": "服务台",
            "c2": "培训管理"
        }, {
            "c3": "其他",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 1266,
            "c1": "服务台",
            "c2": "其他"
        }, {
            "c3": "临时交办任务",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 1267,
            "c1": "服务台",
            "c2": "其他"
        }, {
            "c3": "日报",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 1268,
            "c1": "服务台",
            "c2": "报表制作"
        }, {
            "c3": "月报",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 1269,
            "c1": "服务台",
            "c2": "报表制作"
        }, {
            "c3": "员工回复吧",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 1270,
            "c1": "服务台",
            "c2": "回复"
        }, {
            "c3": "钉钉解答",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 1271,
            "c1": "服务台",
            "c2": "解答"
        }, {
            "c3": "咨询类",
            "createtime": "2021-09-14 14:19:27",
            "enable": 1,
            "id": 1272,
            "c1": "服务台",
            "c2": "热线接听"
        },];

想改为的类似格式:

 [
        {
          text: '浙江',
          children: [
            {
              text: '杭州',
              children: [{ text: '西湖区' }, { text: '余杭区' }],
            },
            {
              text: '温州',
              children: [{ text: '鹿城区' }, { text: '瓯海区' }],
            },
          ],
        },
        {
          text: '福建',
          children: [
            {
              text: '福州',
              children: [{ text: '鼓楼区' }, { text: '台江区' }],
            },
             {
              text: '福州2',
              children: [{ text: '' }],
            },
            {
              text: '厦门',
              children: [{ text: '思明区' }, { text: '海沧区' }],
            },
          ],
        },
]


```bash
 let list = data
        let newData = {};
        for (let item of list) { //用值遍历数据
          if (newData[item.c1] == undefined) {
            newData[item.c1] = {} //目录1 --- 1层
          } else {
            if (newData[item.c1][item.c2] == undefined) {
              newData[item.c1][item.c2] = [] //目录2----2层
            }
            newData[item.c1][item.c2].push(item.c3); //目录3-----3层
          }
        }
        // console.log('最终newData---',newData)
        var col = []; //最终值
        for (let item in newData) { //用键遍历刚才查重数据一级目录
          let obj = { //定义一级目录
            text: item, //文字
            children: [] //子节点
          }
          for (let item_ in newData[item]) { //用键遍历刚才查重数据二级目录
            let obj_ = { //定义二级目录,因为有些子节点没有
              text: item_,
              //新改
              children:[]
            }
            if (newData[item][item_][0] != "") {//如果有子节点
              for (let item__ of newData[item][item_]) { //用键遍历刚才查重数据三级目录
                if(item__!=""){
                  let obj__ = { //最终节点
                    text: item__
                  }
                  obj_.children.push(obj__); //添加到二级目录子节点里
                }
                // console.log('item__',item__)
              }
            }
            obj.children.push(obj_); //添加一级目录到子节点里
          }
          col.push(obj) //添加根节点里

          for(let item1 of col){
            if(item1.children.length==0){
              let obj = {
                text:"",
                children:[]
              }
              let obj1 = {
                text:""
              }
              item1.children.push(obj)
              item1.children[0].children.push(obj1)
              // console.log('item1',item1)
            }
          }
          _this.columns = col
          // console.log('_this.columns',_this.columns)
        }})
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
省市联动,-- Table structure for province -- ---------------------------- DROP TABLE IF EXISTS `province`; CREATE TABLE `province` ( `id` int(5) NOT NULL auto_increment, `name` varchar(255) default '', `pid` int(5) default NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- ---------------------------- -- Records of province -- ---------------------------- INSERT INTO `province` VALUES ('82', '北京市', '0'); INSERT INTO `province` VALUES ('83', '天津市', '0'); INSERT INTO `province` VALUES ('84', '河北省', '0'); INSERT INTO `province` VALUES ('85', '山西省', '0'); INSERT INTO `province` VALUES ('86', '内蒙古自治区', '0'); INSERT INTO `province` VALUES ('87', '辽宁省', '0'); INSERT INTO `province` VALUES ('88', '吉林省', '0'); INSERT INTO `province` VALUES ('89', '黑龙江省', '0'); INSERT INTO `province` VALUES ('90', '上海市', '0'); INSERT INTO `province` VALUES ('91', '江苏省', '0'); INSERT INTO `province` VALUES ('92', '浙江省', '0'); INSERT INTO `province` VALUES ('93', '安徽省', '0'); INSERT INTO `province` VALUES ('94', '福建省', '0'); INSERT INTO `province` VALUES ('95', '江西省', '0'); INSERT INTO `province` VALUES ('96', '山东省', '0'); INSERT INTO `province` VALUES ('97', '河南省', '0'); INSERT INTO `province` VALUES ('98', '湖北省', '0'); INSERT INTO `province` VALUES ('99', '湖南省', '0'); INSERT INTO `province` VALUES ('100', '广东省', '0'); INSERT INTO `province` VALUES ('101', '广西壮族自治区', '0'); INSERT INTO `province` VALUES ('102', '海南省', '0'); INSERT INTO `province` VALUES ('103', '重庆市', '0'); INSERT INTO `province` VALUES ('104', '四川省', '0'); INSERT INTO `province` VALUES ('105', '贵州省', '0'); INSERT INTO `province` VALUES ('106', '云南省', '0'); INSERT INTO `province` VALUES ('107', '西藏自治区', '0'); INSERT INTO `province` VALUES ('108', '陕西省', '0'); INSERT INTO `province` VALUES ('109', '甘肃省', '0'); INSERT INTO `province` VALUES ('110', '青海省', '0'); INSERT INTO `province` VALUES ('111', '宁夏回族自治区', '0'); INSERT INTO `province` VALUES ('112', '新疆维吾尔自治区', '0'); INSERT INTO `province` VALUES ('113', '台
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

马码码1997

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值