DocumentPhoto.vue 5.17 KB
<template>
  <a-card title="车辆照片查看" style="min-width: 800px;overflow-x:auto ">
    <a-row>
      <!-- 左侧文件树 -->
      <a-col :span="5">
        <a-tree
          showLine
          :treeData="treeData"
          :expandedKeys="[expandedKeys[0]]"
          :selectedKeys="selectedKeys"
          :style="{'height':'500px','border-right':'2px solid #c1c1c1','overflow-y':'auto'}"
          @expand="onExpand"
          @select="this.onSelect"
        >
        </a-tree>
      </a-col>

<!--      <template v-for="(i,k) of 1">-->
<!--        <p :key="k">空托重量:XX 满车重量:XX</p>-->
<!--      </template>-->


      <!--右侧缩略图-->
      <a-col :span="19">
        <a-row style="margin-top: 10px">
          <a-col :span="24" style="padding-left: 2%;margin-bottom: 10px">
            <a-button @click="prev" type="primary"><a-icon type="left" />上一张</a-button>
            <a-button @click="next" type="primary" style="margin-left: 8px">下一张<a-icon type="right" /></a-button>
            <span style="margin-left: 15%;font-weight: bolder">{{ navName }}</span>
          </a-col>
          <a-col :span="24" style="padding-left: 2%;">
            <img :src="imgUrl" preview>
          </a-col>
        </a-row>
      </a-col>
    </a-row>
  </a-card>
</template>

<script>
  import draggable from 'vuedraggable'
  import {cameraRecord} from "../../../api/api";

  export default {
    name: 'ImgTurnPage',
    components:{
      draggable
    },
    data() {
      return {
        description: '图片翻页',
        //数据集
        treeData: [
        //   {
        //   title: '照片',
        //   key: '0-0',
        //   children:[]
        //   //   [
        //   //   {
        //   //   title: '照片的备注',
        //   //   key: '0-0-0',
        //   //   imgUrl:'http://172.16.4.203:9000/otatest/工艺_1652146543633.png'
        //   // },
        //   //
        //   //   {
        //   //   title: '照片的备注',
        //   //   key: '0-0-1',
        //   //   imgUrl:'https://static.jeecg.com/upload/test/u27356337152749454924fm27gp0_1588149731821.jpg'
        //   // },{
        //   //     title: '照片的备注',
        //   //     key: '0-0-2',
        //   //     imgUrl:'https://static.jeecg.com/upload/test/u27356337152749454924fm27gp0_1588149731821.jpg'
        //   //   }
        //   // ]
        // },
        ],
        selectedKeys:[],
        expandedKeys:[],
        sort:0,
        imgUrl:'',
        navName:'',
        imgList:[],
      }
    },
    created(){
      this.getImgList();
    },
    methods: {
      getImgList(){
        var count = 0;
        for(var i=0;i<this.treeData.length;i++){
          for(var j=0;j<this.treeData[i].children.length;j++){
            this.imgList.push({key:this.treeData[i].children[j].key,pkey:this.treeData[i].key,sort:count++,
              imgUrl:this.treeData[i].children[j].imgUrl,navName:this.treeData[i].title+"/"+this.treeData[i].children[j].title})
          }
        }
        this.setValue(this.imgList[this.sort]);
      },
      onSelect (selectedKeys, info) {
        for(var i=0;i<this.imgList.length;i++){
          if(this.imgList[i].key === selectedKeys[0]){
            this.sort = this.imgList[i].sort;
            this.setValue(this.imgList[i]);
            break;
          }
        }
      },
      onExpand (expandedKeys) {
        this.expandedKeys = [];
        if(expandedKeys !== null && expandedKeys !== ''){
          this.expandedKeys[0] = expandedKeys[1];
        }
      },
      prev(){
        if(this.sort === 0){
          this.sort = this.imgList.length-1;
        }else{
          this.sort = this.sort - 1;
        }
        this.setValue(this.imgList[this.sort]);
      },
      next(){
        if(this.sort === this.imgList.length-1){
          this.sort = 0;
        }else{
          this.sort = this.sort + 1;
        }
        this.setValue(this.imgList[this.sort]);
      },
      // 设置受控节点值
      setValue(value){
        this.selectedKeys = [];
        this.imgUrl = value.imgUrl;
        this.selectedKeys[0] = value.key;
        this.expandedKeys[0] = value.pkey;
        this.navName = value.navName;
      },
      loadForm(id){
        let parms = {
          "referCode":id
        }
        cameraRecord(parms).then((res) => {
          if (res.success){
            this.loadData(res.result);
          }else {
            that.$message.warning(res.message);
          }
          this.printer=res;
          console.log(this.printer)
        })
      },
      loadData(data){
        debugger
        let i = 0;
        for (let key in data){
          let children = [];
          for (let item of data[key]){
            console.log(item);
            children.push({"title":item.name,"imgUrl":item.url,"key":item.id});
          }
          this.treeData.push({"title": key,"key": i,"children":children});
        }
        // this.treeData[0].title= id;
        // for (let item of data){
        //   this.treeData[0].children.push({"title":item.name,"imgUrl":item.url,"key":item.id});
        // }
        this.getImgList();
      },
    },
    mounted:function() {
      let id = this.$route.query.id;
      this.loadForm(id);
    }
  }
</script>

<style scoped>

</style>