|  | @@ -30,6 +30,7 @@
 | 
	
		
			
				|  |  |            @row-update="rowUpdate"
 | 
	
		
			
				|  |  |            @cell-dblclick="cellDblclick"
 | 
	
		
			
				|  |  |            @on-load="getList"
 | 
	
		
			
				|  |  | +          @tree-load="treeLoad"
 | 
	
		
			
				|  |  |            @saveColumn="saveColumn">
 | 
	
		
			
				|  |  |            <template slot="menuLeft">
 | 
	
		
			
				|  |  |              <el-button type="primary"
 | 
	
	
		
			
				|  | @@ -46,104 +47,22 @@
 | 
	
		
			
				|  |  |  </template>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <script>
 | 
	
		
			
				|  |  | -import { getDeptLazyTree, getDeptTree } from "@/api/basicData/basicFeesDesc";
 | 
	
		
			
				|  |  | +  import option from "./configuration/mainList.json";
 | 
	
		
			
				|  |  | +  import {
 | 
	
		
			
				|  |  | +    getList,
 | 
	
		
			
				|  |  | +    remove,
 | 
	
		
			
				|  |  | +    update,
 | 
	
		
			
				|  |  | +    add,
 | 
	
		
			
				|  |  | +    getServerTree
 | 
	
		
			
				|  |  | +  } from "@/api/basicData/commodityType";
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  export default {
 | 
	
		
			
				|  |  |    data() {
 | 
	
		
			
				|  |  |      return {
 | 
	
		
			
				|  |  |        loading: false,
 | 
	
		
			
				|  |  |        data: [],
 | 
	
		
			
				|  |  | -      tableOption: {
 | 
	
		
			
				|  |  | -        align: "center",
 | 
	
		
			
				|  |  | -        menuAlign: "center",
 | 
	
		
			
				|  |  | -        height: window.innerHeight - 345,
 | 
	
		
			
				|  |  | -        searchMenuSpan: 12,
 | 
	
		
			
				|  |  | -        menuWidth: "140",
 | 
	
		
			
				|  |  | -        column: [
 | 
	
		
			
				|  |  | -          {
 | 
	
		
			
				|  |  | -            label: "项目名称",
 | 
	
		
			
				|  |  | -            prop: "name",
 | 
	
		
			
				|  |  | -            search: true,
 | 
	
		
			
				|  |  | -            rules: [
 | 
	
		
			
				|  |  | -              {
 | 
	
		
			
				|  |  | -                required: true,
 | 
	
		
			
				|  |  | -                message: "请输入类别名称",
 | 
	
		
			
				|  |  | -                trigger: "blur"
 | 
	
		
			
				|  |  | -              }
 | 
	
		
			
				|  |  | -            ],
 | 
	
		
			
				|  |  | -            overHidden: true
 | 
	
		
			
				|  |  | -          },
 | 
	
		
			
				|  |  | -          {
 | 
	
		
			
				|  |  | -            label: "收费建议",
 | 
	
		
			
				|  |  | -            prop: "sort",
 | 
	
		
			
				|  |  | -            rules: [
 | 
	
		
			
				|  |  | -              {
 | 
	
		
			
				|  |  | -                required: true,
 | 
	
		
			
				|  |  | -                message: "请输入排序",
 | 
	
		
			
				|  |  | -                trigger: "blur"
 | 
	
		
			
				|  |  | -              }
 | 
	
		
			
				|  |  | -            ],
 | 
	
		
			
				|  |  | -            overHidden: true
 | 
	
		
			
				|  |  | -          },
 | 
	
		
			
				|  |  | -          {
 | 
	
		
			
				|  |  | -            label: "收费金额",
 | 
	
		
			
				|  |  | -            prop: "status",
 | 
	
		
			
				|  |  | -            search: true,
 | 
	
		
			
				|  |  | -            addDisplay: false,
 | 
	
		
			
				|  |  | -            editDisplay: false,
 | 
	
		
			
				|  |  | -            overHidden: true
 | 
	
		
			
				|  |  | -          },
 | 
	
		
			
				|  |  | -          {
 | 
	
		
			
				|  |  | -            label: "计价单位",
 | 
	
		
			
				|  |  | -            prop: "user",
 | 
	
		
			
				|  |  | -            addDisplay: false,
 | 
	
		
			
				|  |  | -            editDisplay: false,
 | 
	
		
			
				|  |  | -            overHidden: true
 | 
	
		
			
				|  |  | -          },
 | 
	
		
			
				|  |  | -          {
 | 
	
		
			
				|  |  | -            label: "备注",
 | 
	
		
			
				|  |  | -            prop: "date",
 | 
	
		
			
				|  |  | -            addDisplay: false,
 | 
	
		
			
				|  |  | -            editDisplay: false,
 | 
	
		
			
				|  |  | -            overHidden: true
 | 
	
		
			
				|  |  | -          },
 | 
	
		
			
				|  |  | -          {
 | 
	
		
			
				|  |  | -            label: "频率",
 | 
	
		
			
				|  |  | -            prop: "date",
 | 
	
		
			
				|  |  | -            addDisplay: false,
 | 
	
		
			
				|  |  | -            editDisplay: false,
 | 
	
		
			
				|  |  | -            overHidden: true
 | 
	
		
			
				|  |  | -          },
 | 
	
		
			
				|  |  | -          {
 | 
	
		
			
				|  |  | -            label: "保质期",
 | 
	
		
			
				|  |  | -            prop: "date",
 | 
	
		
			
				|  |  | -            addDisplay: false,
 | 
	
		
			
				|  |  | -            editDisplay: false,
 | 
	
		
			
				|  |  | -            overHidden: true
 | 
	
		
			
				|  |  | -          },
 | 
	
		
			
				|  |  | -          {
 | 
	
		
			
				|  |  | -            label: "标准工时",
 | 
	
		
			
				|  |  | -            prop: "date",
 | 
	
		
			
				|  |  | -            addDisplay: false,
 | 
	
		
			
				|  |  | -            editDisplay: false,
 | 
	
		
			
				|  |  | -            overHidden: true
 | 
	
		
			
				|  |  | -          },
 | 
	
		
			
				|  |  | -          {
 | 
	
		
			
				|  |  | -            label: "创建人",
 | 
	
		
			
				|  |  | -            prop: "user",
 | 
	
		
			
				|  |  | -            addDisplay: false,
 | 
	
		
			
				|  |  | -            editDisplay: false,
 | 
	
		
			
				|  |  | -            overHidden: true
 | 
	
		
			
				|  |  | -          },
 | 
	
		
			
				|  |  | -          {
 | 
	
		
			
				|  |  | -            label: "创建时间",
 | 
	
		
			
				|  |  | -            prop: "date",
 | 
	
		
			
				|  |  | -            addDisplay: false,
 | 
	
		
			
				|  |  | -            editDisplay: false,
 | 
	
		
			
				|  |  | -            overHidden: true
 | 
	
		
			
				|  |  | -          }
 | 
	
		
			
				|  |  | -        ]
 | 
	
		
			
				|  |  | -      },
 | 
	
		
			
				|  |  | +      tableOption: option,
 | 
	
		
			
				|  |  | +      treeDeptId:"",
 | 
	
		
			
				|  |  |        page: {
 | 
	
		
			
				|  |  |          currentPage: 1,
 | 
	
		
			
				|  |  |          total: 0,
 | 
	
	
		
			
				|  | @@ -154,9 +73,9 @@ export default {
 | 
	
		
			
				|  |  |          lazy: true,
 | 
	
		
			
				|  |  |          treeLoad: function(node, resolve) {
 | 
	
		
			
				|  |  |            const parentId = node.level === 0 ? 0 : node.data.id;
 | 
	
		
			
				|  |  | -          getDeptLazyTree(parentId).then(res => {
 | 
	
		
			
				|  |  | +          getServerTree(parentId).then(res => {
 | 
	
		
			
				|  |  |              resolve(
 | 
	
		
			
				|  |  | -              res.data.data.map(item => {
 | 
	
		
			
				|  |  | +              res.data.data.records.map(item => {
 | 
	
		
			
				|  |  |                  return {
 | 
	
		
			
				|  |  |                    ...item,
 | 
	
		
			
				|  |  |                    leaf: !item.hasChildren
 | 
	
	
		
			
				|  | @@ -170,29 +89,19 @@ export default {
 | 
	
		
			
				|  |  |          size: "small",
 | 
	
		
			
				|  |  |          props: {
 | 
	
		
			
				|  |  |            labelText: "标题",
 | 
	
		
			
				|  |  | -          label: "title",
 | 
	
		
			
				|  |  | -          value: "value",
 | 
	
		
			
				|  |  | +          label: "cname",
 | 
	
		
			
				|  |  | +          value: "id",
 | 
	
		
			
				|  |  |            children: "children"
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  |      };
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    methods: {
 | 
	
		
			
				|  |  | -    getList() {
 | 
	
		
			
				|  |  | -      this.loading = true;
 | 
	
		
			
				|  |  | -      setTimeout(() => {
 | 
	
		
			
				|  |  | -        this.loading = false;
 | 
	
		
			
				|  |  | -        this.data = [
 | 
	
		
			
				|  |  | -          {
 | 
	
		
			
				|  |  | -            name: "公司设立",
 | 
	
		
			
				|  |  | -            sort: "2300",
 | 
	
		
			
				|  |  | -            status: "2300",
 | 
	
		
			
				|  |  | -            user: "次",
 | 
	
		
			
				|  |  | -            date: "2021-07-08"
 | 
	
		
			
				|  |  | -          }
 | 
	
		
			
				|  |  | -        ];
 | 
	
		
			
				|  |  | -        this.page.total = 1;
 | 
	
		
			
				|  |  | -      }, 1000);
 | 
	
		
			
				|  |  | +    getList(page, params = {}) {
 | 
	
		
			
				|  |  | +      getList(page.currentPage, page.pageSize, params, this.treeDeptId).then(res => {
 | 
	
		
			
				|  |  | +        this.data = res.data.data.records
 | 
	
		
			
				|  |  | +        this.page.total = res.data.data.total
 | 
	
		
			
				|  |  | +      })
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      searchChange(params, done) {
 | 
	
		
			
				|  |  |        this.getList(this.page, params);
 | 
	
	
		
			
				|  | @@ -211,21 +120,45 @@ export default {
 | 
	
		
			
				|  |  |        this.getList();
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      rowSave(row, done, loading) {
 | 
	
		
			
				|  |  | -      setTimeout(() => {
 | 
	
		
			
				|  |  | +      row.sort = 1;
 | 
	
		
			
				|  |  | +      add(row).then(res => {
 | 
	
		
			
				|  |  | +        this.page.currentPage = 1;
 | 
	
		
			
				|  |  | +        this.getList(this.page);
 | 
	
		
			
				|  |  |          this.$message.success("保存成功");
 | 
	
		
			
				|  |  | +        done()
 | 
	
		
			
				|  |  | +      }, error => {
 | 
	
		
			
				|  |  | +        window.console.log(error);
 | 
	
		
			
				|  |  |          loading();
 | 
	
		
			
				|  |  | -        done();
 | 
	
		
			
				|  |  | -      }, 1000);
 | 
	
		
			
				|  |  | +      });
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      rowUpdate(row, index, done, loading) {
 | 
	
		
			
				|  |  | -      setTimeout(() => {
 | 
	
		
			
				|  |  | -        this.$message.success("修改成功");
 | 
	
		
			
				|  |  | +      update(row).then(() => {
 | 
	
		
			
				|  |  | +        this.$message({
 | 
	
		
			
				|  |  | +          type: "success",
 | 
	
		
			
				|  |  | +          message: "操作成功!"
 | 
	
		
			
				|  |  | +        });
 | 
	
		
			
				|  |  | +        // 数据回调进行刷新
 | 
	
		
			
				|  |  | +        done(row);
 | 
	
		
			
				|  |  | +      }, error => {
 | 
	
		
			
				|  |  | +        window.console.log(error);
 | 
	
		
			
				|  |  |          loading();
 | 
	
		
			
				|  |  | -        done();
 | 
	
		
			
				|  |  | -      }, 1000);
 | 
	
		
			
				|  |  | +      });
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    rowDel(row, index) {
 | 
	
		
			
				|  |  | -      this.$message.success("删除成功");
 | 
	
		
			
				|  |  | +    rowDel(row, index,done) {
 | 
	
		
			
				|  |  | +      this.$confirm("确定将选择数据删除?", {
 | 
	
		
			
				|  |  | +        confirmButtonText: "确定",
 | 
	
		
			
				|  |  | +        cancelButtonText: "取消",
 | 
	
		
			
				|  |  | +        type: "warning"
 | 
	
		
			
				|  |  | +      }).then(() => {
 | 
	
		
			
				|  |  | +        return remove(row.id);
 | 
	
		
			
				|  |  | +      }).then(() => {
 | 
	
		
			
				|  |  | +        this.$message({
 | 
	
		
			
				|  |  | +          type: "success",
 | 
	
		
			
				|  |  | +          message: "操作成功!"
 | 
	
		
			
				|  |  | +        });
 | 
	
		
			
				|  |  | +        // 数据回调进行刷新
 | 
	
		
			
				|  |  | +        done(row);
 | 
	
		
			
				|  |  | +      });
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      cellDblclick(row, column, cell, event) {
 | 
	
		
			
				|  |  |        console.log(row, column, cell, event);
 | 
	
	
		
			
				|  | @@ -240,14 +173,12 @@ export default {
 | 
	
		
			
				|  |  |        this.page.currentPage = 1;
 | 
	
		
			
				|  |  |        this.getList(this.page);
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    //查询全部
 | 
	
		
			
				|  |  | -    initData() {
 | 
	
		
			
				|  |  | -      getDeptTree().then(res => {
 | 
	
		
			
				|  |  | -        console.log(this.form);
 | 
	
		
			
				|  |  | -        const column = this.findObject(this.option.column, "feesTypeId");
 | 
	
		
			
				|  |  | -        column.dicData = res.data.data;
 | 
	
		
			
				|  |  | +    treeLoad(tree, treeNode, resolve) {
 | 
	
		
			
				|  |  | +      const parentId = tree.id;
 | 
	
		
			
				|  |  | +      getList({parentId:parentId}).then(res => {
 | 
	
		
			
				|  |  | +        resolve(res.data.data.records);
 | 
	
		
			
				|  |  |        });
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  |  </script>
 |