From a4e06ccd3cd976fbe4eef99e188d42ec9f3ad054 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Thu, 08 Apr 2021 09:32:05 +0800
Subject: [PATCH] 样式修改

---
 src/views/parcel/parcel.vue |  213 ++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 195 insertions(+), 18 deletions(-)

diff --git a/src/views/parcel/parcel.vue b/src/views/parcel/parcel.vue
index eda5e8d..3746049 100644
--- a/src/views/parcel/parcel.vue
+++ b/src/views/parcel/parcel.vue
@@ -8,9 +8,11 @@
                :before-open="beforeOpen"
                v-model="form"
                ref="crud"
+               :row-style="rowStyle"
                @row-update="rowUpdate"
                @row-save="rowSave"
                @row-del="rowDel"
+               @row-click="rowClick"
                @search-change="searchChange"
                @search-reset="searchReset"
                @selection-change="selectionChange"
@@ -18,19 +20,47 @@
                @size-change="sizeChange"
                @refresh-change="refreshChange"
                @on-load="onLoad">
+
+      <!-- <template slot-scope="{ type, size, row }" slot="menu">
+
+        <el-button
+          v-if="row.imgUrl != null || row.imgUrl != ''"
+          icon="el-icon-view"
+          :size="size"
+          :type="type"
+          @click.stop="handleParcelPic(row)"
+          >查看包裹图片
+        </el-button>
+      </template> -->
+
     </avue-crud>
+    <template>
+      <div>
+          <el-image-viewer
+              class="img"
+              v-if="showViewer"
+              :on-close="closeViewer"
+              :url-list="['data:image/png;base64,'+imgUrl]" />
+      </div>
+    </template>
+
   </basic-container>
 </template>
 
 <script>
-  import {getList, getDetail, add, update, remove} from "@/api/parcel/parcel";
+  import {getList, getDetail, getParcelPic} from "@/api/parcel/parcel";
   import {mapGetters} from "vuex";
+  import ElImageViewer from 'element-ui/packages/image/src/image-viewer'
 
   export default {
+    name:'index',
+    components: { ElImageViewer },
     data() {
       return {
         form: {},
         query: {},
+        showViewer: false, // 显示查看器
+        imgUrl:'',
         loading: true,
         page: {
           pageSize: 10,
@@ -39,25 +69,30 @@
         },
         selectionList: [],
         option: {
+          menu:false,
           height:'auto',
           calcHeight: 30,
           tip: false,
           searchShow: true,
           searchMenuSpan: 6,
-          border: true,
+          activeClass: 3,
+          border: false,
+          stripe:true,
           index: true,
           viewBtn: true,
           selection: true,
           labelWidth:120,
+          menuWidth:220,
           dialogClickModal: false,
           headerAlign: 'center',
           align: 'center',
+          tree:true,
           column: [
             {
               label: '坐标',
               prop: 'test',
               hide: true,
-              span: 24,
+              span: 50,
               component: "avueMap",
               clickChild: (obj) => {
                 this.form.jd = obj.latitude
@@ -75,25 +110,86 @@
             {
               label: "包裹图片KEY",
               prop: "imgUrl",
+              hide:true
             },
+            // {
+            //   label: '包裹图片',
+            //   prop: 'imgUrl',
+            //   type: 'upload',
+            //   width: 300,
+            //   listType: 'data:image/png;base64',
+            //   span: 24,
+            //   propsHttp: {
+            //     res: 'data'
+            //   },
+            //   canvasOption: {
+            //     text: 'avue',
+            //     ratio: 0.1
+            //   }
+            // },
             {
-              label: "过包裹时间",
+              label: "安检时间",
               prop: "samplingTime",
             },
             {
+              label: "安检时间",
+              prop: "dateTime",
+              type: "datetime",
+              format: "yyyy-MM-dd HH:mm:ss",
+              valueFormat: "yyyy-MM-dd HH:mm:ss",
+              searchRange: true,
+              searchSpan: 8,
+              searchValue:[this.getStartTime(),this.getEndTime()],
+              hide: true,
+              addDisplay: false,
+              editDisplay: false,
+              viewDisplay: false,
+              search: true,
+              rules: [
+                {
+                  required: true,
+                  message: "请输入时间",
+                  trigger: "blur"
+                }
+              ]
+            },
+            {
               label: "是否违禁",
-              prop: "sex",
+              prop: "mechineMark",
+              dicData: [
+                {
+                  label: "是",
+                  value: 1
+                },
+                {
+                  label: "否",
+                  value: 0
+                },
+              ]
+            },
+            {
+              label: "是否违禁",
+              search: true,
+              searchValue: this.getIsKindParams(),
+              searchLabelWidth: 120,
+              searchSpan: 4,
+              hide: true,
+              prop: "decisioDiagramResult",
               type: "select",
               dicData: [
                 {
                   label: "是",
-                  value: "1"
+                  value: "contraband"
                 },
                 {
                   label: "否",
-                  value: "0"
+                  value: "normal"
                 },
               ]
+            },
+            {
+              label: "违禁包裹物品",
+              prop: "decisioDiagramResultDetails",
             }
           ]
         },
@@ -105,7 +201,7 @@
       permissionList() {
         return {
           addBtn: this.vaildData(null, false),
-          viewBtn: this.vaildData(this.permission.parcel_pic_view, true),
+          viewBtn: this.vaildData(null, false),
           delBtn: this.vaildData(null, false),
           editBtn: this.vaildData(null, false)
         };
@@ -120,8 +216,8 @@
     },
     methods: {
       beforeOpen(done, type) {
-        if (["edit", "view"].includes(type)) {
-          getDetail(this.form.id).then(res => {
+        if (["view"].includes(type)) {
+          getDetail(this.form.imgUrl).then(res => {
             this.form = res.data.data;
           });
         }
@@ -136,6 +232,13 @@
         this.page.currentPage = 1;
         this.onLoad(this.page, params);
         done();
+      },
+      rowClick(row){
+        var that=this;
+        getParcelPic(row.imgUrl).then(res => {
+            that.imgUrl = res.data.data.imgBase64;
+            this.showViewer = true
+          });
       },
       selectionChange(list) {
         this.selectionList = list;
@@ -153,21 +256,95 @@
       refreshChange() {
         this.onLoad(this.page, this.query);
       },
-      onLoad(page, params = {}) {
-        this.loading = true;
-        params ={
-          status:this.$route.query.status,
-          type:this.$route.query.type
+      getStartTime(){
+           if (this.$route.query.startTime != undefined && this.$route.query.startTime != null && this.$route.query.startTime != "" ) {
+             return this.$route.query.startTime
+           }
+      },
+      getEndTime(){
+           if (this.$route.query.endTime != undefined && this.$route.query.endTime != null && this.$route.query.endTime != "" ) {
+             return this.$route.query.endTime
+           }
+      },
+      getIsKindParams(){
+        if(this.$route.query.decisioDiagramResult && this.$route.query!='' && this.$route.query!=null && this.$route.query!=undefined){
+          //回显
+          return this.$route.query.decisioDiagramResult
         }
-        getList(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => {
+      },
+      //给行加颜色
+      rowStyle({row, column, rowIndex}){
+         if(row.mechineMark==1){
+           return {
+             color:"#fe1515"
+           }
+         }
+      },
+      onLoad(page, params = {}) {
+        const { dateTime } = this.query;
+        let values = {
+          ...params,
+        };
+
+        if (this.$route.query.decisioDiagramResult && this.$route.query!='' && this.$route.query!=null && this.$route.query!=undefined ) {
+            if (this.$route.query.startTime != undefined && this.$route.query.startTime != null && this.$route.query.startTime != "" ) {
+              this.page.currentPage = 1;
+              params = {
+                startTime:this.$route.query.startTime,
+                endTime:this.$route.query.endTime,
+                decisioDiagramResult:this.$route.query.decisioDiagramResult
+              }
+            } else {
+              this.page.currentPage = 1;
+              params = {
+                decisioDiagramResult:this.$route.query.decisioDiagramResult
+              };
+            }
+        }else{
+            if (this.$route.query.startTime != undefined && this.$route.query.startTime != null && this.$route.query.startTime != "" ) {
+              this.page.currentPage = 1;
+              params = {
+                startTime:this.$route.query.startTime,
+                endTime:this.$route.query.endTime
+              }
+            }
+        }
+
+        if (dateTime) {
+          values = {
+            ...params,
+            startTime: dateTime[0],
+            endTime: dateTime[1],
+            ...this.query,
+          };
+          values.dateTime = null;
+        } else {
+          values = {
+            ...params,
+            ...this.query,
+          };
+
+        }
+        this.loading = true;
+        getList(page.currentPage, page.pageSize,values).then(res => {
           const data = res.data.data;
-          console.log(data,111);
           this.page.total = data.totalSize;
-          this.data = data.records;
+          this.data = data.data;
           this.loading = false;
           this.selectionClear();
         });
+      },
+      // 关闭查看器
+      closeViewer() {
+        this.showViewer = false
       }
     }
   };
 </script>
+<style lang="scss">
+    .img {
+      .el-icon-circle-close {
+        color: white;
+      }
+    }
+</style>

--
Gitblit v1.9.3