shaogen1995 4 лет назад
Родитель
Сommit
9b28eeef44
38 измененных файлов с 2034 добавлено и 640 удалено
  1. 1 1
      src/assets/style/initial.css
  2. 1 1
      src/components/tabLeft.vue
  3. 1 1
      src/components/tabLeft2.vue
  4. 1 1
      src/components/tabLeft3.vue
  5. 1 1
      src/components/tabLeft4.vue
  6. 8 6
      src/main.js
  7. 1 1
      src/utils/request.js
  8. 4 4
      src/views/collect/collect0_DiaEdit.vue
  9. 24 14
      src/views/holding/holding0.vue
  10. 4 4
      src/views/holding/holding0_DiaEdit.vue
  11. 5 5
      src/views/holding/holding0_Dialog.vue
  12. 4 0
      src/views/holding/holding0_add.vue
  13. 166 77
      src/views/holding/holding0_audit.vue
  14. 158 38
      src/views/holding/holding0_result.vue
  15. 143 61
      src/views/holding/holding1.vue
  16. 55 5
      src/views/holding/holding1_audit.vue
  17. 103 15
      src/views/holding/holding1_look.vue
  18. 159 65
      src/views/holding/holding2.vue
  19. 65 6
      src/views/holding/holding2_audit.vue
  20. 118 19
      src/views/holding/holding2_look.vue
  21. 4 4
      src/views/holding/holding3_DiaEdit.vue
  22. 20 11
      src/views/holding/holding3_look.vue
  23. 118 57
      src/views/holding/holding4.vue
  24. 124 55
      src/views/holding/holding4_audit.vue
  25. 102 8
      src/views/holding/holding4_look.vue
  26. 148 70
      src/views/holding/holding5.vue
  27. 64 6
      src/views/holding/holding5_audit.vue
  28. 100 3
      src/views/holding/holding5_look.vue
  29. 6 6
      src/views/home/index.vue
  30. 8 4
      src/views/layout/index.vue
  31. 4 4
      src/views/statistics/statistics0.vue
  32. 123 57
      src/views/statistics/statistics2.vue
  33. 59 4
      src/views/statistics/statistics2_audit.vue
  34. 101 8
      src/views/statistics/statistics2_look.vue
  35. 1 0
      src/views/system/system1.vue
  36. 1 0
      src/views/system/system2.vue
  37. 13 8
      src/views/system/system3.vue
  38. 16 10
      src/views/system/system3_add.vue

+ 1 - 1
src/assets/style/initial.css

@@ -78,4 +78,4 @@ a {
 }
 .el-textarea__inner:focus{
   border-color: #3E5EB3;
-}
+}

+ 1 - 1
src/components/tabLeft.vue

@@ -62,7 +62,7 @@ export default {
 <style lang='less' scoped>
   .left {
     width: 220px;
-    min-width: 130px;
+    min-width: 150px;
     height: calc(100vh - 68px);
     background-color: #fff;
     ul {

+ 1 - 1
src/components/tabLeft2.vue

@@ -47,7 +47,7 @@ export default {
 <style lang='less' scoped>
   .left {
     width: 220px;
-    min-width: 130px;
+    min-width: 150px;
     height: calc(100vh - 68px);
     background-color: #fff;
     ul {

+ 1 - 1
src/components/tabLeft3.vue

@@ -53,7 +53,7 @@ export default {
 <style lang='less' scoped>
   .left {
     width: 220px;
-    min-width: 130px;
+    min-width: 150px;
     height: calc(100vh - 68px);
     background-color: #fff;
     ul {

+ 1 - 1
src/components/tabLeft4.vue

@@ -40,7 +40,7 @@ export default {
 <style lang='less' scoped>
   .left {
     width: 220px;
-    min-width: 130px;
+    min-width: 150px;
     height: calc(100vh - 68px);
     background-color: #fff;
     ul {

+ 8 - 6
src/main.js

@@ -106,9 +106,11 @@ const checkBtn = {
       const list = [
         { id: '', name: '' },
         { id: 0, name: '待办理' },
-        { id: 1, name: '待审核' },
-        { id: 2, name: '审核不通过' },
-        { id: 3, name: '已完成' }
+        { id: 1, name: '主任审核中' },
+        { id: 2, name: '主任不通过' },
+        { id: 3, name: '馆长审核中' },
+        { id: 4, name: '馆长不通过' },
+        { id: 5, name: '已完成' }
       ]
       return list.filter(v => id === v.id)[0] ? list.filter(v => id === v.id)[0].name : ''
     },
@@ -129,9 +131,9 @@ const checkBtn = {
     mySave (id) {
       const list = [
         { id: '', name: '' },
-        { id: 0, name: '不需修复' },
-        { id: 1, name: '需要修复' },
-        { id: 2, name: '继续修复' },
+        { id: 0, name: '状态稳定,不需修复' },
+        { id: 1, name: '部分损腐,需要修复' },
+        { id: 2, name: '腐蚀损坏严重,急需修复' },
         { id: 3, name: '已修复' }
       ]
       return list.filter(v => id === v.id)[0] ? list.filter(v => id === v.id)[0].name : ''

+ 1 - 1
src/utils/request.js

@@ -1,7 +1,7 @@
 import axios from 'axios'
 // export const baseURL = '666初始地址'
 const service = axios.create({
-  // baseURL: 'http://192.168.0.135:8006',//本地调试
+  // baseURL: 'http://192.168.0.135:8006', // 本地调试
   baseURL: 'http://8.135.106.227:8006', // 线上调试
   // baseURL: '', // build
   timeout: 5000

+ 4 - 4
src/views/collect/collect0_DiaEdit.vue

@@ -146,9 +146,9 @@
           >
             <el-option label="请选择" value=""></el-option>
             <el-option label="已修复" :value="3"></el-option>
-            <el-option label="继续修复" :value="2"></el-option>
-            <el-option label="需要修复" :value="1"></el-option>
-            <el-option label="不需修复" :value="0"></el-option>
+            <el-option label="腐蚀损坏严重,急需修复" :value="2"></el-option>
+            <el-option label="部分损腐,需要修复" :value="1"></el-option>
+            <el-option label="状态稳定,不需修复" :value="0"></el-option>
           </el-select>
         </el-form-item>
       </div>
@@ -362,7 +362,7 @@ export default {
         quality: '', // 具体质量
         qualityScope: '', // 质量范围
         registerNum: '', // 总登记号
-        repair: '', // 保存状态(修复状态), 0:不需修复, 1:需要修复,2:继续修复, 3:已修复
+        repair: '', // 保存状态(修复状态), 0:不需修复, 1:需要修复,2:腐蚀损坏严重,急需修复, 3:已修复
         texture: '', // 质地
         textureCategory: '', // 质地类别
         textureType: '', // 质地类型,前端输入, 0:单一质地, 1:复活质地

+ 24 - 14
src/views/holding/holding0.vue

@@ -76,14 +76,13 @@
               </el-table-column>
               <el-table-column prop="status" label="状态" width="130" :resizable="false">
               </el-table-column>
-              <el-table-column label="操作" width="150" :resizable="false">
+              <el-table-column label="操作" width="200" :resizable="false">
                 <template #default="{ row }">
                   <el-button
                     type="text"
                     v-if="
-                      row.status === '已完成' ||
-                      row.status === '审核不通过' ||
-                      row.status === '已完成'
+                      row.status === '已完成' ||row.status === '主任不通过' ||
+                      row.status === '馆长不通过'
                     "
                     @click="mylook(row)"
                     >查看</el-button
@@ -98,9 +97,16 @@
                   <el-button
                     v-show="userLimits.audit"
                     type="text"
-                    v-if="row.status === '待审核'"
+                    v-if="row.status === '主任审核中'"
                     @click="auditH0(row)"
-                    >审核</el-button
+                    >主任审核</el-button
+                  >
+                  <el-button
+                    v-show="userLimits.auditTow"
+                    type="text"
+                    v-if="row.status === '馆长审核中'"
+                    @click="auditH0(row)"
+                    >馆长审核</el-button
                   >
                   <el-button
                     style="color:#C94848;"
@@ -144,7 +150,8 @@ export default {
       userLimits: {
         edit: false,
         del: false,
-        audit: false
+        audit: false,
+        auditTow: false
       },
       // 选择状态的变量
       stateInd: 0,
@@ -197,7 +204,7 @@ export default {
           this.getList(this.myData)
         } else if (index === 3) {
           // 点击已完成
-          this.myData.status = 3
+          this.myData.status = 5
           this.getList(this.myData)
         } else if (index === 4) {
           // 点击审核不通过
@@ -262,6 +269,7 @@ export default {
     },
     // 点击审核
     async auditH0 (val) {
+      console.log(999, val)
       // if (val.status === '草稿中') await auditH0(val.id)
       this.$router.push({
         path: '/layout/holding0_audit',
@@ -279,9 +287,10 @@ export default {
           // 发请求,清空数据
           await removeH0(id)
           // 更新顶部数据
-          this.stateArr.forEach(v => {
-            if (v.txt === status) v.num--
-          })
+          if (status === '馆长审核中' || status === '主任审核中') this.stateArr[1].num--
+          if (status === '待办理') this.stateArr[2].num--
+          if (status === '已完成') this.stateArr[3].num--
+          if (status === '主任不通过' || status === '馆长不通过') this.stateArr[4].num--
           this.stateArr[0].num--
           this.$message({
             type: 'success',
@@ -369,10 +378,10 @@ export default {
     let num3 = 0
     let num4 = 0
     res.data.list.forEach(v => {
-      if (v.status === 1) num1++
+      if (v.status === 1 || v.status === 3) num1++
       if (v.status === 0) num2++
-      if (v.status === 3) num3++
-      if (v.status === 2) num4++
+      if (v.status === 5) num3++
+      if (v.status === 2 || v.status === 4) num4++
     })
     this.stateArr[1].num = num1
     this.stateArr[2].num = num2
@@ -384,6 +393,7 @@ export default {
     this.userLimits.edit = temp2[0].children[0].authority
     this.userLimits.del = temp2[0].children[1].authority
     this.userLimits.audit = temp2[0].children[2].authority
+    this.userLimits.auditTow = temp2[0].children[3].authority
     // console.log(999, temp2)
   },
   beforeCreate () {}, // 生命周期 - 创建之前

+ 4 - 4
src/views/holding/holding0_DiaEdit.vue

@@ -150,9 +150,9 @@
           >
             <el-option label="请选择" value=""></el-option>
             <el-option label="已修复" :value="3"></el-option>
-            <el-option label="继续修复" :value="2"></el-option>
-            <el-option label="需要修复" :value="1"></el-option>
-            <el-option label="不需修复" :value="0"></el-option>
+            <el-option label="腐蚀损坏严重,急需修复" :value="2"></el-option>
+            <el-option label="部分损腐,需要修复" :value="1"></el-option>
+            <el-option label="状态稳定,不需修复" :value="0"></el-option>
           </el-select>
         </el-form-item>
       </div>
@@ -370,7 +370,7 @@ export default {
         quality: '', // 具体质量
         qualityScope: '', // 质量范围
         registerNum: '', // 总登记号
-        repair: '', // 保存状态(修复状态), 0:不需修复, 1:需要修复,2:继续修复, 3:已修复
+        repair: '', // 保存状态(修复状态), 0:不需修复, 1:需要修复,2:腐蚀损坏严重,急需修复, 3:已修复
         texture: '', // 质地
         textureCategory: '', // 质地类别
         textureType: '', // 质地类型,前端输入, 0:单一质地, 1:复活质地

+ 5 - 5
src/views/holding/holding0_Dialog.vue

@@ -150,9 +150,9 @@
           >
             <el-option label="请选择" :value='null'></el-option>
             <el-option label="已修复" :value="3"></el-option>
-            <el-option label="继续修复" :value="2"></el-option>
-            <el-option label="需要修复" :value="1"></el-option>
-            <el-option label="不需修复" :value="0"></el-option>
+            <el-option label="腐蚀损坏严重,急需修复" :value="2"></el-option>
+            <el-option label="部分损腐,需要修复" :value="1"></el-option>
+            <el-option label="状态稳定,不需修复" :value="0"></el-option>
           </el-select>
         </el-form-item>
       </div>
@@ -374,7 +374,7 @@ export default {
         quality: '', // 具体质量
         qualityScope: '', // 质量范围
         registerNum: '', // 总登记号
-        repair: '', // 保存状态(修复状态), 0:不需修复, 1:需要修复,2:继续修复, 3:已修复
+        repair: '', // 保存状态(修复状态), 0:不需修复, 1:需要修复,2:腐蚀损坏严重,急需修复, 3:已修复
         texture: '', // 质地
         textureCategory: '', // 质地类别
         textureType: '', // 质地类型,前端输入, 0:单一质地, 1:复活质地
@@ -591,7 +591,7 @@ export default {
           quality: '', // 具体质量
           qualityScope: '', // 质量范围
           registerNum: '', // 总登记号
-          repair: '', // 保存状态(修复状态), 0:不需修复, 1:需要修复,2:继续修复, 3:已修复
+          repair: '', // 保存状态(修复状态), 0:不需修复, 1:需要修复,2:腐蚀损坏严重,急需修复, 3:已修复
           texture: '', // 质地
           textureCategory: '', // 质地类别
           textureType: '', // 质地类型,前端输入, 0:单一质地, 1:复活质地

+ 4 - 0
src/views/holding/holding0_add.vue

@@ -301,6 +301,10 @@ export default {
     this.mydata.id = Number(this.mydata.id)
     this.fromData.number = this.mydata.num
     this.fromData.unit = this.mydata.unit
+    if (this.fromData.unit) {
+      console.log(998)
+      this.fromData.sourceId = this.mydata.sourceId
+    }
     this.fromData.description = this.mydata.description
     this.fromData.people = this.mydata.realName
     // 获取服务器前缀地址

+ 166 - 77
src/views/holding/holding0_audit.vue

@@ -12,29 +12,31 @@
         </el-breadcrumb>
       </div>
       <div class="conten">
+        <div class="myState">
+          <div class="myStateOne"><span>①</span> 主任审核</div>
+          <span>></span>
+          <div :class="{myStateOne:myData.status==='馆长审核中'}"><span>②</span> 馆长审核</div>
+        </div>
         <div class="info">
           <div>
             <h4>登记编号:</h4>
-            <span>{{myData.num}}</span>
+            <span>{{ myData.num }}</span>
           </div>
           <div>
             <h4>登记人:</h4>
-            <span>{{myData.realName}}</span>
+            <span>{{ myData.realName }}</span>
           </div>
           <div>
             <h4>藏品来源:</h4>
-            <span>{{myData.sourceName}}</span>
+            <span>{{ myData.sourceName }}</span>
           </div>
           <div>
             <h4>单位或个人:</h4>
-            <span>{{myData.unit}}</span>
+            <span>{{ myData.unit }}</span>
           </div>
         </div>
         <div class="explain">
-          <p>
-            <span>登记说明:</span
-            >{{myData.description}}
-          </p>
+          <p><span>登记说明:</span>{{ myData.description }}</p>
         </div>
         <!-- 表格 -->
         <div class="table">
@@ -48,73 +50,117 @@
             style="width: 100%"
           >
             <el-table-column label="缩略图" width="100" :resizable="false">
-              <template #default='{row}'>
+              <template #default="{ row }">
                 <div class="smimg">
-                  <img :src="baseURL+row.thumb" alt="" :onerror='defaultImg'/>
+                  <img
+                    :src="baseURL + row.thumb"
+                    alt=""
+                    :onerror="defaultImg"
+                  />
                 </div>
               </template>
             </el-table-column>
-            <el-table-column prop="registerNum" label="总登记号" width="235" :resizable="false">
+            <el-table-column
+              prop="registerNum"
+              label="总登记号"
+              width="235"
+              :resizable="false"
+            >
+            </el-table-column>
+            <el-table-column prop="name" label="藏品名称" :resizable="false">
             </el-table-column>
-            <el-table-column prop="name" label="藏品名称" :resizable="false"> </el-table-column>
-            <el-table-column prop="goodsTypeId" label="类别" width="130" :resizable="false">
+            <el-table-column
+              prop="goodsTypeId"
+              label="类别"
+              width="130"
+              :resizable="false"
+            >
             </el-table-column>
-            <el-table-column prop="integrity" label="完残程度" width="220" :resizable="false">
+            <el-table-column
+              prop="integrity"
+              label="完残程度"
+              width="220"
+              :resizable="false"
+            >
             </el-table-column>
             <el-table-column label="操作" width="130" :resizable="false">
-              <template #default='{row}'>
+              <template #default="{ row }">
                 <el-button type="text" @click="myLook(row)">查 看</el-button>
               </template>
             </el-table-column>
-            <el-table-column label="藏品归属" width="200" :resizable="false" v-if="0">
-              <template #default='scopt' >
-<el-switch
- @click.native="myswitch1(scopt.$index,scopt.row.id)"
-  v-model="switch1[scopt.$index]"
-  active-text="入库"
-  inactive-text="不入库">
-</el-switch>
+            <el-table-column
+              label="藏品归属"
+              width="200"
+              :resizable="false"
+              v-if="0"
+            >
+              <template #default="scopt">
+                <el-switch
+                  @click.native="myswitch1(scopt.$index, scopt.row.id)"
+                  v-model="switch1[scopt.$index]"
+                  active-text="入库"
+                  inactive-text="不入库"
+                >
+                </el-switch>
               </template>
             </el-table-column>
           </el-table>
         </div>
         <div class="txt">
-            <el-form
-          :model="fromData"
-          :rules="rules"
-          ref="fromData"
-          label-width="100px"
-          class="demo-ruleForm"
-        >
-         <el-form-item label="审核结果:" style="width: 100%">
-                      <el-select
-                  v-model="myresult"
-                  placeholder="请选择"
-                >
-                  <el-option  label="审核通过" :value="3"></el-option>
-                  <el-option  label="审核不通过" :value="2"></el-option>
-                </el-select>
-
-          </el-form-item>
-          <el-form-item label="审核说明:" prop="textarea" style="width: 100%">
-            <el-input
-              type="textarea"
-              :rows="2"
-              v-model="fromData.textarea"
-              placeholder="请输入"
-            ></el-input>
-          </el-form-item>
-            </el-form>
+          <el-form
+            :model="fromData"
+            :rules="rules"
+            ref="fromData"
+            label-width="122px"
+            class="demo-ruleForm"
+          >
+            <el-form-item label="审核结果:" style="width: 100%">
+              <el-select v-model="myresult" placeholder="请选择">
+                <el-option label="审核通过" :value="3"></el-option>
+                <el-option label="审核不通过" :value="2"></el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item
+              v-if="myData.status === '主任审核中'"
+              label="主任审核说明:"
+              prop="textarea"
+              style="width: 100%"
+            >
+              <el-input
+                type="textarea"
+                :rows="2"
+                v-model="fromData.textarea"
+                placeholder="请输入"
+              ></el-input>
+            </el-form-item>
+            <el-form-item
+              v-else
+              label="馆长审核说明:"
+              prop="reasonCurator"
+              style="width: 100%"
+            >
+              <el-input
+                type="textarea"
+                :rows="2"
+                v-model="fromData.reasonCurator"
+                placeholder="请输入"
+              ></el-input>
+            </el-form-item>
+          </el-form>
         </div>
         <!-- 最下面的按钮 -->
-          <div class="button">
-              <el-button type="primary" @click='submit'>提交</el-button>
-              <el-button @click="$router.go(-1)">返回</el-button>
-          </div>
+        <div class="button">
+          <el-button type="primary" @click="submit">提交</el-button>
+          <el-button @click="$router.go(-1)">返回</el-button>
+        </div>
       </div>
     </div>
     <!-- 点击查看显示弹窗 -->
-    <Holding0AuditDia :dialogFormVisible.sync='isShow' :myObj='myObj' ref="mylook"/>
+    <Holding0AuditDia
+      :dialogFormVisible.sync="isShow"
+      :myObj="myObj"
+      ref="mylook"
+    />
   </div>
 </template>
 
@@ -140,10 +186,18 @@ export default {
       // 点击查看显示弹窗
       isShow: false,
       fromData: {
-        textarea: ''
+        textarea: '',
+        reasonCurator: ''
       },
       rules: {
-        textarea: [{ required: true, message: '不能为空', trigger: 'blur' }, { max: 255, message: '不能超过255个字符', trigger: 'blur' }]
+        textarea: [
+          { required: true, message: '不能为空', trigger: 'blur' },
+          { max: 255, message: '不能超过255个字符', trigger: 'blur' }
+        ],
+        reasonCurator: [
+          { required: true, message: '不能为空', trigger: 'blur' },
+          { max: 255, message: '不能超过255个字符', trigger: 'blur' }
+        ]
       },
       // 多选框数据
       // mySelect: [{ id: 4, name: '入库' }, { id: 3, name: '不入库' }, { id: 2, name: '审核不通过' }],
@@ -154,7 +208,7 @@ export default {
   // 监听属性 类似于data概念
   computed: {},
   // 监控data中的数据变化
-  watch: { },
+  watch: {},
   // 方法集合
   methods: {
     // 点击入库
@@ -171,19 +225,33 @@ export default {
           confirmButtonText: '确定',
           cancelButtonText: '取消',
           type: 'warning'
-        }).then(async () => {
-          const obj = { id: this.myData.id, status: this.myresult, reason: this.fromData.textarea, isStorages: this.mySrt }
-          const res = await auditH0Tow(obj)
-          if (res.code === 0) {
-            this.$message.success('提交成功')
-            this.$router.push('/layout/holding0')
-          }
-        }).catch(() => {
-          this.$message({
-            type: 'info',
-            message: '已取消提交'
-          })
         })
+          .then(async () => {
+            const obj = {
+              id: this.myData.id,
+              status: this.myresult,
+              reason: this.fromData.textarea,
+              isStorages: this.mySrt
+            }
+            // if (this.myData.status === '主任审核中' && obj.status === 3) obj.status = 4
+            if (this.myData.status === '馆长审核中' && obj.status === 3) obj.status = 5
+            if (this.myData.status === '馆长审核中' && obj.status === 2) obj.status = 4
+            if (this.myData.status === '馆长审核中') {
+              obj.reasonCurator = this.fromData.reasonCurator
+              obj.reason = null
+            }
+            const res = await auditH0Tow(obj)
+            if (res.code === 0) {
+              this.$message.success('提交成功')
+              this.$router.push('/layout/holding0')
+            }
+          })
+          .catch(() => {
+            this.$message({
+              type: 'info',
+              message: '已取消提交'
+            })
+          })
       } catch (error) {
         console.log(error)
       }
@@ -193,9 +261,9 @@ export default {
     myLook (val) {
       const obj = val
       obj.goodsTypeName = val.goodsTypeId // 修改文物类别
-      if (typeof (obj.level) === 'number') obj.level = this.myWwjb(obj.level) // 修改文物级别
+      if (typeof obj.level === 'number') obj.level = this.myWwjb(obj.level) // 修改文物级别
       if (obj.textureType === 0) obj.textureType = '单一质地'
-      else if (obj.textureType === 1) obj.textureType = '复合质地'// 修改质地类型
+      else if (obj.textureType === 1) obj.textureType = '复合质地' // 修改质地类型
       this.myObj = obj
       // 调用子组件的方法,获取附件信息
       this.$refs.mylook.getFileList(val.id, 'video')
@@ -206,7 +274,7 @@ export default {
       const res = await getHoldingList(id)
       // console.log(6666, res)
       this.tableData = res.data
-      this.tableData.forEach(v => {
+      this.tableData.forEach((v) => {
         v.goodsTypeId = this.category(v.goodsTypeId)
         v.integrity = this.spoil(v.integrity)
         v.numTypeId = this.mycategory(v.numTypeId)
@@ -245,7 +313,7 @@ export default {
 <style lang='less' scoped>
 //@import url(); 引入公共css类
 .holding0_audit {
-    /deep/#mytitle>span{
+  /deep/#mytitle > span {
     font-weight: 800;
   }
 
@@ -254,7 +322,7 @@ export default {
     width: 100%;
     display: flex;
     flex-direction: column;
-   .top {
+    .top {
       padding-left: 18px;
       display: flex;
       align-items: center;
@@ -263,6 +331,27 @@ export default {
     }
   }
   .conten {
+    .myState{
+      display: flex;
+      align-items: center;
+      height: 50px;
+      background-color: #f5f7fa;
+      margin: -20px 0 20px;
+      &>div {
+        width: 49%;
+        line-height: 50px;
+        text-align: center;
+        &>span {
+          font-size: 20px;
+        }
+      }
+      &>span {
+        font-size: 20px;
+      }
+      .myStateOne{
+        color: #3e5eb3;
+      }
+    }
     position: relative;
     flex: 1;
     background-color: #fff;
@@ -284,7 +373,7 @@ export default {
     .explain {
       border: 1px solid #ccc;
       color: black;
-      padding: 30px 150px 30px 20px;
+      padding: 10px 20px 10px 20px;
       display: flex;
       flex-wrap: wrap;
       span {
@@ -292,7 +381,7 @@ export default {
       }
     }
     .table {
-      max-height: 288px;
+      max-height: 275px;
       overflow: auto;
       .smimg {
         // border: 3px solid #ccc;
@@ -311,7 +400,7 @@ export default {
         line-height: 50px;
       }
     }
-    .txt{
+    .txt {
       margin-top: 38px;
     }
     .button {

+ 158 - 38
src/views/holding/holding0_result.vue

@@ -11,36 +11,36 @@
           <el-breadcrumb-item id="mytitle">查看</el-breadcrumb-item>
         </el-breadcrumb>
       </div>
-      <div class="conten">
+      <!-- 后面追加的功能-tab栏切换 -->
+      <ul class="topTab">
+        <li :class="{ active: topTabInd === 0 }" @click="topTabInd = 0">
+          登记信息
+        </li>
+        <li :class="{ active: topTabInd === 1 }" @click="topTabInd = 1">
+          审核信息
+        </li>
+      </ul>
+      <div class="conten" v-if="topTabInd === 0">
         <div class="info">
           <div>
             <h4>登记编号:</h4>
-            <span>{{mydata.num}}</span>
+            <span>{{ mydata.num }}</span>
           </div>
           <div>
             <h4>登记人:</h4>
-            <span>{{mydata.realName}}</span>
+            <span>{{ mydata.realName }}</span>
           </div>
           <div>
             <h4>藏品来源:</h4>
-            <span>{{mydata.sourceName}}</span>
+            <span>{{ mydata.sourceName }}</span>
           </div>
           <div>
             <h4>单位或个人:</h4>
-            <span>{{mydata.unit}}</span>
+            <span>{{ mydata.unit }}</span>
           </div>
         </div>
         <div class="explain">
-          <p>
-            <span>登记说明:</span
-            >{{mydata.description}}
-          </p>
-        </div>
-        <div class="explain">
-          <p>
-            <span>审核说明:</span
-            >{{mydata.reason}}
-          </p>
+          <p><span>登记说明:</span>{{ mydata.description }}</p>
         </div>
         <!-- 表格 -->
         <div class="table">
@@ -54,36 +54,89 @@
             style="width: 100%"
           >
             <el-table-column label="缩略图" width="120" :resizable="false">
-              <template #default='{row}'>
+              <template #default="{ row }">
                 <div class="smimg">
-                  <img :src="baseURL+row.thumb" alt="" :onerror='defaultImg'/>
+                  <img
+                    :src="baseURL + row.thumb"
+                    alt=""
+                    :onerror="defaultImg"
+                  />
                 </div>
               </template>
             </el-table-column>
-            <el-table-column prop="registerNum" label="总登记号" width="235" :resizable="false">
+            <el-table-column
+              prop="registerNum"
+              label="总登记号"
+              width="235"
+              :resizable="false"
+            >
+            </el-table-column>
+            <el-table-column prop="name" label="藏品名称" :resizable="false">
             </el-table-column>
-            <el-table-column prop="name" label="藏品名称" :resizable="false"> </el-table-column>
-            <el-table-column prop="goodsTypeId" label="文物类别" width="180" :resizable="false">
+            <el-table-column
+              prop="goodsTypeId"
+              label="文物类别"
+              width="180"
+              :resizable="false"
+            >
             </el-table-column>
-            <el-table-column prop="integrity" label="完残程度" width="220" :resizable="false">
+            <el-table-column
+              prop="integrity"
+              label="完残程度"
+              width="220"
+              :resizable="false"
+            >
             </el-table-column>
             <el-table-column label="操作" width="130" :resizable="false">
-              <template #default='{row}'>
-                <el-button type="text"  @click="myLook(row)">查 看</el-button>
+              <template #default="{ row }">
+                <el-button type="text" @click="myLook(row)">查 看</el-button>
               </template>
             </el-table-column>
-            <el-table-column prop="isStorage" label="审核结果" width="130" :resizable="false">
+            <el-table-column
+              v-if="0"
+              prop="isStorage"
+              label="审核结果"
+              width="130"
+              :resizable="false"
+            >
             </el-table-column>
           </el-table>
         </div>
         <!-- 最下面的按钮 -->
-          <div class="button">
-              <el-button @click="$router.push('/layout/holding0')">返回</el-button>
-          </div>
+        <div class="button">
+          <el-button @click="$router.push('/layout/holding0')">返回</el-button>
+        </div>
       </div>
+      <!-- 后面追加的审核信息 -->
+      <div class="conten conten2" v-else>
+        <div class="conten2_head">
+          <div style="width:200px">类型</div>
+          <div  style="width:300px">审核结果</div>
+          <div>审核说明</div>
+        </div>
+        <div class="conten2_head conten2_con">
+          <div style="width:200px">主任审核</div>
+          <div  style="width:300px">{{mydata.status1}}</div>
+          <div>{{mydata.reason}}</div>
+        </div>
+        <div class="conten2_head conten2_con last">
+          <div style="width:200px">馆长审核</div>
+          <div  style="width:300px">{{mydata.status2}}</div>
+          <div>{{mydata.reasonCurator?mydata.reasonCurator:'-'}}</div>
+        </div>
+              <!-- 最下面的按钮 -->
+        <div class="button">
+          <el-button @click="$router.push('/layout/holding0')">返回</el-button>
+        </div>
+      </div>
+
     </div>
-        <!-- 点击查看显示弹窗 -->
-    <Holding0AuditDia :dialogFormVisible.sync='isShow' :myObj='myObj' ref="mylook"/>
+    <!-- 点击查看显示弹窗 -->
+    <Holding0AuditDia
+      :dialogFormVisible.sync="isShow"
+      :myObj="myObj"
+      ref="mylook"
+    />
   </div>
 </template>
 
@@ -99,6 +152,7 @@ export default {
   data () {
     // 这里存放数据
     return {
+      topTabInd: 0,
       myObj: {},
       // 服务器前缀地址
       baseURL: '',
@@ -126,11 +180,11 @@ export default {
     myLook (val) {
       const obj = val
       obj.goodsTypeName = val.goodsTypeId // 修改文物类别
-      if (typeof (obj.level) === 'number') obj.level = this.myWwjb(obj.level) // 修改文物级别
+      if (typeof obj.level === 'number') obj.level = this.myWwjb(obj.level) // 修改文物级别
       if (obj.textureType === 0) obj.textureType = '单一质地'
-      else if (obj.textureType === 1) obj.textureType = '复合质地'// 修改质地类型
+      else if (obj.textureType === 1) obj.textureType = '复合质地' // 修改质地类型
       if (obj.amountType === 0) obj.amountType = '单件'
-      else if (obj.amountType === 1) obj.amountType = '一套多件'// 修改数量类型
+      else if (obj.amountType === 1) obj.amountType = '一套多件' // 修改数量类型
 
       this.myObj = obj
       // 调用子组件的方法,获取附件信息
@@ -143,9 +197,23 @@ export default {
     // 获取服务器前缀地址
     this.baseURL = axios.defaults.baseURL
     this.mydata = this.$route.query
+    // console.log(999, this.mydata)
+    if (this.mydata.status === '馆长审核中') {
+      this.mydata.status1 = '主任通过'
+      this.mydata.status2 = '审核中'
+    } else if (this.mydata.status === '主任不通过') {
+      this.mydata.status1 = '主任不通过'
+      this.mydata.status2 = '-'
+    } else if (this.mydata.status === '馆长不通过') {
+      this.mydata.status1 = '主任通过'
+      this.mydata.status2 = '馆长不通过'
+    } else if (this.mydata.status === '已完成') {
+      this.mydata.status1 = '主任通过'
+      this.mydata.status2 = '馆长通过'
+    }
     const res = await getHoldingList(this.mydata.id)
     this.tableData = res.data
-    this.tableData.forEach(v => {
+    this.tableData.forEach((v) => {
       // console.log(Number(v.integrity))
       v.goodsTypeId = this.category(v.goodsTypeId)
       v.integrity = this.spoil(v.integrity)
@@ -169,8 +237,7 @@ export default {
 <style lang='less' scoped>
 //@import url(); 引入公共css类
 .holding0_result {
-
-    /deep/#mytitle>span{
+  /deep/#mytitle > span {
     font-weight: 800;
   }
 
@@ -179,20 +246,39 @@ export default {
     width: 100%;
     display: flex;
     flex-direction: column;
-   .top {
+    .top {
       padding-left: 18px;
       display: flex;
       align-items: center;
       margin-left: 2px;
       height: 40px;
     }
+    .topTab {
+      display: flex;
+      align-items: center;
+      margin: 0 20px;
+      height: 80px;
+      background-color: #fff;
+      padding: 0 35px;
+      li {
+        padding: 0 10px 5px;
+        margin-right: 20px;
+        font-weight: 700;
+        cursor: pointer;
+        color: black;
+      }
+      .active {
+        color: #3e5eb3;
+        border-bottom: 2px solid #3e5eb3;
+      }
+    }
   }
   .conten {
     position: relative;
     flex: 1;
     background-color: #fff;
     margin: 0 20px 40px;
-    padding: 35px;
+    padding: 0 35px 35px;
     .info {
       display: flex;
       flex-wrap: wrap;
@@ -217,7 +303,7 @@ export default {
       }
     }
     .table {
-      max-height: 325px;
+      max-height: 410px;
       overflow: auto;
       .smimg {
         // border: 3px solid #ccc;
@@ -246,5 +332,39 @@ export default {
       justify-content: center;
     }
   }
+    .conten2 {
+      .conten2_head{
+      display: flex;
+      border: 1px solid #ccc;
+      border-bottom: none;
+      border-right: none;
+      display: flex;
+      color: black;
+      height: 50px;
+      font-weight: 700;
+      background-color: #d8dff0;
+      &>div {
+        padding-left: 15px;
+        line-height: 49px;
+        height: 100%;
+        border-right: 1px solid #ccc;
+      }
+      &>div:nth-of-type(3) {
+        flex: 1;
+      }
+    }
+    .conten2_con{
+      font-weight: 400;
+      background-color: #fff;
+      height: auto;
+      &>div{
+        height: auto;
+      }
+    }
+      .last{
+        border-bottom: 1px solid #ccc !important;
+      }
+  }
+
 }
 </style>

+ 143 - 61
src/views/holding/holding1.vue

@@ -1,21 +1,26 @@
 <!--  -->
 <template>
   <div class="holding">
-    <TabList :ind='1'/>
+    <TabList :ind="1" />
     <div class="right">
       <div class="top">
         <el-breadcrumb separator="/">
           <el-breadcrumb-item to="">首页</el-breadcrumb-item>
           <el-breadcrumb-item to="">馆藏管理</el-breadcrumb-item>
           <el-breadcrumb-item id="mytitle">入库管理</el-breadcrumb-item>
-
         </el-breadcrumb>
       </div>
       <div class="conten">
-
         <div class="middle">
           <ul class="title">
-            <li :class="{active:stateInd===index}" @click="stateSelect(index)" v-for="(item,index) in stateArr" :key="index">{{item.txt}}({{item.num}})</li>
+            <li
+              :class="{ active: stateInd === index }"
+              @click="stateSelect(index)"
+              v-for="(item, index) in stateArr"
+              :key="index"
+            >
+              {{ item.txt }}({{ item.num }})
+            </li>
           </ul>
           <div class="select">
             <span>登记人:</span>
@@ -33,8 +38,12 @@
               end-placeholder="结束日期"
             >
             </el-date-picker>
-            <el-button style="margin-left: 20px" @click="inquire">查询</el-button>
-            <el-button type="primary" @click="enterBank" v-if="userLimits.edit">申请入库</el-button>
+            <el-button style="margin-left: 20px" @click="inquire"
+              >查询</el-button
+            >
+            <el-button type="primary" @click="enterBank" v-if="userLimits.edit"
+              >申请入库</el-button
+            >
           </div>
           <!--表格 -->
           <div class="table">
@@ -44,24 +53,86 @@
               border
               style="width: 100%"
             >
-              <el-table-column prop="num" label="入库编号" width="180" :resizable="false">
+              <el-table-column
+                prop="num"
+                label="入库编号"
+                width="180"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="realName" label="登记人" width="150" :resizable="false">
+              <el-table-column
+                prop="realName"
+                label="登记人"
+                width="150"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="description" label="入库说明" :resizable="false">
+              <el-table-column
+                prop="description"
+                label="入库说明"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="createTime" label="创建日期" width="180" :resizable="false">
+              <el-table-column
+                prop="createTime"
+                label="创建日期"
+                width="180"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="updateTime" label="完成日期" width="180" :resizable="false">
+              <el-table-column
+                prop="updateTime"
+                label="完成日期"
+                width="180"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="status" label="状态" width="130" :resizable="false">
+              <el-table-column
+                prop="status"
+                label="状态"
+                width="130"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column label="操作" width="195" :resizable="false">
-                <template #default='{row}'>
-                  <el-button type="text" v-if="row.status==='已完成'||row.status==='待入库'||row.status==='审核不通过'" @click="myLook(row)">查看</el-button>
-                  <el-button type="text" v-if="row.status==='待审核'" @click="audit(row)" v-show="userLimits.audit">审核</el-button>
-                  <el-button type="text" v-if="row.status==='待办理'" @click="compile(row)" v-show="userLimits.edit">编辑</el-button>
-                  <el-button type="text" v-if="row.status!=='已完成'" @click="delData(row.id,row.status)" v-show="userLimits.del" style="color:#C94848;">删除</el-button>
+              <el-table-column label="操作" width="200" :resizable="false">
+                <template #default="{ row }">
+                  <el-button
+                    type="text"
+                    v-if="
+                      row.status === '已完成' ||row.status === '主任不通过'||row.status === '馆长不通过'
+                    "
+                    @click="myLook(row)"
+                    >查看</el-button
+                  >
+                  <el-button
+                    type="text"
+                    v-if="row.status === '主任审核中'"
+                    @click="audit(row)"
+                    v-show="userLimits.audit"
+                    >主任审核</el-button
+                  >
+                  <el-button
+                    type="text"
+                    v-if="row.status === '馆长审核中'"
+                    @click="audit(row)"
+                    v-show="userLimits.auditTow"
+                    >馆长审核</el-button
+                  >
+                  <el-button
+                    type="text"
+                    v-if="row.status === '待办理'"
+                    @click="compile(row)"
+                    v-show="userLimits.edit"
+                    >编辑</el-button
+                  >
+                  <el-button
+                    type="text"
+                    v-if="row.status !== '已完成'"
+                    @click="delData(row.id, row.status)"
+                    v-show="userLimits.del"
+                    style="color: #c94848"
+                    >删除</el-button
+                  >
                 </template>
               </el-table-column>
             </el-table>
@@ -95,7 +166,8 @@ export default {
       userLimits: {
         edit: false,
         del: false,
-        audit: false
+        audit: false,
+        auditTow: false
       },
       total: 0,
       myData: {
@@ -181,7 +253,7 @@ export default {
           this.getList(this.myData)
         } else if (index === 3) {
           // 点击已完成
-          this.myData.status = 3
+          this.myData.status = 5
           this.getList(this.myData)
         } else if (index === 4) {
           // 点击审核不通过
@@ -207,30 +279,33 @@ export default {
         confirmButtonText: '删除',
         cancelButtonText: '取消',
         type: 'warning'
-      }).then(async () => {
-        // 发请求删除
-        await delData(id)
-        // 更新顶部数据
-        this.stateArr.forEach(v => {
-          if (v.txt === status) v.num--
-        })
-        this.stateArr[0].num--
-        this.$message({
-          type: 'success',
-          message: '删除成功!'
-        })
-        // 发请求刷新页面
-        this.getList(this.myData)
-        this.$message({
-          type: 'success',
-          message: '删除成功!'
+      })
+        .then(async () => {
+          // 发请求删除
+          await delData(id)
+          // 更新顶部数据
+          if (status === '馆长审核中' || status === '主任审核中') this.stateArr[1].num--
+          if (status === '待办理') this.stateArr[2].num--
+          if (status === '已完成') this.stateArr[3].num--
+          if (status === '主任不通过' || status === '馆长不通过') this.stateArr[4].num--
+          this.stateArr[0].num--
+          this.$message({
+            type: 'success',
+            message: '删除成功!'
+          })
+          // 发请求刷新页面
+          this.getList(this.myData)
+          this.$message({
+            type: 'success',
+            message: '删除成功!'
+          })
         })
-      }).catch(() => {
-        this.$message({
-          type: 'info',
-          message: '已取消.'
+        .catch(() => {
+          this.$message({
+            type: 'info',
+            message: '已取消.'
+          })
         })
-      })
     },
     // 点击编辑
     compile (val) {
@@ -260,7 +335,7 @@ export default {
       this.total = res.data.total
       // console.log(666, res.data.list)
       this.tableData = res.data.list
-      this.tableData.forEach(v => {
+      this.tableData.forEach((v) => {
         v.status = this.myState(v.status)
         // v.updateTime = v.updateTime.slice(0, 10)
         // v.createTime = v.createTime.slice(0, 10)
@@ -273,15 +348,21 @@ export default {
         date.push(this.gettime(e[i]))
       }
       this.myData.startTime = date[0]
-      if (date[1]) this.myData.endTime = date[1].replace('00:00:00', '23:59:59')
+      if (date[1]) { this.myData.endTime = date[1].replace('00:00:00', '23:59:59') }
     },
     gettime (data) {
-      const value = data.getFullYear() + '-' +
-      this.checkTime(data.getMonth() + 1) + '-' +
-      this.checkTime(data.getDate()) + ' ' +
-      this.checkTime(data.getHours()) + ':' +
-      this.checkTime(data.getMinutes()) + ':' +
-      this.checkTime(data.getSeconds())
+      const value =
+        data.getFullYear() +
+        '-' +
+        this.checkTime(data.getMonth() + 1) +
+        '-' +
+        this.checkTime(data.getDate()) +
+        ' ' +
+        this.checkTime(data.getHours()) +
+        ':' +
+        this.checkTime(data.getMinutes()) +
+        ':' +
+        this.checkTime(data.getSeconds())
       return value
     },
     checkTime (i) {
@@ -304,11 +385,11 @@ export default {
     let num2 = 0
     let num3 = 0
     let num4 = 0
-    res.data.list.forEach(v => {
-      if (v.status === 1) num1++
+    res.data.list.forEach((v) => {
+      if (v.status === 1 || v.status === 3) num1++
       if (v.status === 0) num2++
-      if (v.status === 3) num3++
-      if (v.status === 2) num4++
+      if (v.status === 5) num3++
+      if (v.status === 2 || v.status === 4) num4++
     })
     this.stateArr[1].num = num1
     this.stateArr[2].num = num2
@@ -320,6 +401,7 @@ export default {
     this.userLimits.edit = temp2[2].children[0].authority
     this.userLimits.del = temp2[2].children[1].authority
     this.userLimits.audit = temp2[2].children[2].authority
+    this.userLimits.auditTow = temp2[2].children[3].authority
     // console.log(999, temp2[2])
   },
   beforeCreate () {}, // 生命周期 - 创建之前
@@ -333,14 +415,14 @@ export default {
 </script>
 <style lang='less' scoped>
 .holding {
-    /deep/#mytitle>span{
+  /deep/#mytitle > span {
     font-weight: 800;
   }
 
   display: flex;
   .right {
     width: 100%;
-   .top {
+    .top {
       padding-left: 18px;
       display: flex;
       align-items: center;
@@ -352,16 +434,16 @@ export default {
       width: 100%;
       height: 829px;
       .middle {
-        .title{
+        .title {
           height: 60px;
           border-bottom: 1px solid #ccc;
           margin: 0 25px;
           display: flex;
           align-items: center;
           color: black;
-          .active{
-            color: #3E5EB3;
-            border-bottom: 2px solid #3E5EB3;
+          .active {
+            color: #3e5eb3;
+            border-bottom: 2px solid #3e5eb3;
           }
           li {
             height: 60px;
@@ -388,7 +470,7 @@ export default {
           max-width: 1710px;
           // overflow: auto;
           padding: 24px;
-          /deep/.el-table__body-wrapper{
+          /deep/.el-table__body-wrapper {
             max-height: 510px;
             overflow-y: auto;
           }

+ 55 - 5
src/views/holding/holding1_audit.vue

@@ -12,6 +12,11 @@
         </el-breadcrumb>
       </div>
       <div class="conten">
+        <div class="myState">
+          <div class="myStateOne"><span>①</span> 主任审核</div>
+          <span>></span>
+          <div :class="{myStateOne:myData.status==='馆长审核中'}"><span>②</span> 馆长审核</div>
+        </div>
         <div class="info">
           <div>
             <h4>入库编号:</h4>
@@ -73,7 +78,7 @@
             :model="fromData"
             :rules="rules"
             ref="fromData"
-            label-width="100px"
+            label-width="122px"
             class="demo-ruleForm"
           >
             <el-form-item label="审核结果:" prop="result">
@@ -84,7 +89,8 @@
             </el-form-item>
 
             <el-form-item
-              label="审核说明:"
+              v-if="myData.status === '主任审核中'"
+              label="主任审核说明:"
               prop="textarea"
             >
               <el-input
@@ -94,6 +100,18 @@
                 placeholder="请输入"
               ></el-input>
             </el-form-item>
+            <el-form-item
+              v-else
+              label="馆长审核说明:"
+              prop="reasonCurator"
+            >
+              <el-input
+                type="textarea"
+                :rows="3"
+                v-model="fromData.reasonCurator"
+                placeholder="请输入"
+              ></el-input>
+            </el-form-item>
           </el-form>
         </div>
         <!-- 最下面的按钮 -->
@@ -129,12 +147,17 @@ export default {
       isShow: false,
       fromData: {
         textarea: '',
-        result: 3
+        result: 3,
+        reasonCurator: ''
       },
       rules: {
         textarea: [
           { required: true, message: '不能为空', trigger: 'blur' },
           { max: 255, message: '不能超过255个字符', trigger: 'blur' }
+        ],
+        reasonCurator: [
+          { required: true, message: '不能为空', trigger: 'blur' },
+          { max: 255, message: '不能超过255个字符', trigger: 'blur' }
         ]
       },
       auditResult: '',
@@ -159,6 +182,12 @@ export default {
           type: 'warning'
         }).then(async () => {
           const obj = { id: this.myData.id, reason: this.fromData.textarea, status: this.fromData.result }
+          if (this.myData.status === '馆长审核中' && obj.status === 3) obj.status = 5
+          if (this.myData.status === '馆长审核中' && obj.status === 2) obj.status = 4
+          if (this.myData.status === '馆长审核中') {
+            obj.reasonCurator = this.fromData.reasonCurator
+            obj.reason = null
+          }
           const res = await holding1Audit(obj)
           // console.log(6666, res)
           if (res.code === 0) {
@@ -228,6 +257,27 @@ export default {
     }
   }
   .conten {
+    .myState{
+      display: flex;
+      align-items: center;
+      height: 50px;
+      background-color: #f5f7fa;
+      margin: -20px 0 20px;
+      &>div {
+        width: 49%;
+        line-height: 50px;
+        text-align: center;
+        &>span {
+          font-size: 20px;
+        }
+      }
+      &>span {
+        font-size: 20px;
+      }
+      .myStateOne{
+        color: #3e5eb3;
+      }
+    }
     position: relative;
     flex: 1;
     background-color: #fff;
@@ -249,7 +299,7 @@ export default {
     .explain {
       border: 1px solid #ccc;
       color: black;
-      padding: 30px 150px 30px 20px;
+      padding: 10px 20px 10px 20px;
       display: flex;
       flex-wrap: wrap;
       span {
@@ -275,7 +325,7 @@ export default {
           height: 100%;
         }
       }
-      margin-top: 38px;
+      margin-top: 20px;
       border: 1px solid #ccc;
       .title {
         padding-left: 30px;

+ 103 - 15
src/views/holding/holding1_look.vue

@@ -11,7 +11,16 @@
           <el-breadcrumb-item id="mytitle">查看</el-breadcrumb-item>
         </el-breadcrumb>
       </div>
-      <div class="conten">
+      <!-- 后面追加的功能-tab栏切换 -->
+      <ul class="topTab">
+        <li :class="{ active: topTabInd === 0 }" @click="topTabInd = 0">
+          入库信息
+        </li>
+        <li :class="{ active: topTabInd === 1 }" @click="topTabInd = 1">
+          审核信息
+        </li>
+      </ul>
+      <div class="conten" v-if="topTabInd === 0">
         <div class="info">
           <div>
             <h4>入库编号:</h4>
@@ -21,10 +30,6 @@
             <h4>入库人员:</h4>
             <span>{{myData.realName}}</span>
           </div>
-          <div>
-            <h4>审核结果:</h4>
-            <span>{{myData.status}}</span>
-          </div>
         </div>
         <div class="explain">
           <p>
@@ -32,12 +37,6 @@
             >{{myData.description}}
           </p>
         </div>
-        <div class="explain">
-          <p>
-            <span>审核说明:</span
-            >{{myData.reason}}
-          </p>
-        </div>
         <!-- 表格 -->
         <div class="table">
           <div class="title">
@@ -76,7 +75,7 @@
                   ></el-cascader>
                 </template>
               </el-table-column>
-            <el-table-column prop="status" label="入库状态" width="130" :resizable="false">
+            <el-table-column prop="status" label="入库状态" width="130" :resizable="false" v-if="myData.status !== '馆长审核中'">
             </el-table-column>
           </el-table>
         </div>
@@ -85,6 +84,28 @@
               <el-button @click="$router.push('/layout/holding1')">返回</el-button>
           </div>
       </div>
+      <!-- 后面追加的审核信息 -->
+      <div class="conten conten2" v-else>
+        <div class="conten2_head">
+          <div style="width:200px">类型</div>
+          <div  style="width:300px">审核结果</div>
+          <div>审核说明</div>
+        </div>
+        <div class="conten2_head conten2_con">
+          <div style="width:200px">主任审核</div>
+          <div  style="width:300px">{{myData.status1}}</div>
+          <div>{{myData.reason}}</div>
+        </div>
+        <div class="conten2_head conten2_con last">
+          <div style="width:200px">馆长审核</div>
+          <div  style="width:300px">{{myData.status2}}</div>
+          <div>{{myData.reasonCurator?myData.reasonCurator:'-'}}</div>
+        </div>
+        <!-- 最下面的按钮 -->
+          <div class="button">
+              <el-button @click="$router.push('/layout/holding1')">返回</el-button>
+          </div>
+      </div>
     </div>
   </div>
 </template>
@@ -100,6 +121,7 @@ export default {
   data () {
     // 这里存放数据
     return {
+      topTabInd: 0,
       options: [],
       myData: {},
       // 服务器初始地址前缀
@@ -143,6 +165,20 @@ export default {
     this.baseURL = axios.defaults.baseURL
     // 从第一层拿到传过来的数据
     this.myData = this.$route.query
+    if (this.myData.status === '馆长审核中') {
+      this.myData.status1 = '主任通过'
+      this.myData.status2 = '审核中'
+    } else if (this.myData.status === '主任不通过') {
+      this.myData.status1 = '主任不通过'
+      this.myData.status2 = '-'
+    } else if (this.myData.status === '馆长不通过') {
+      this.myData.status1 = '主任通过'
+      this.myData.status2 = '馆长不通过'
+    } else if (this.myData.status === '已完成') {
+      this.myData.status1 = '主任通过'
+      this.myData.status2 = '馆长通过'
+    }
+
     const res = await getDetailById(this.myData.id)
     this.tableData = res.data.goods
     this.tableData.forEach(v => {
@@ -182,13 +218,32 @@ export default {
       margin-left: 2px;
       height: 40px;
     }
+    .topTab {
+      display: flex;
+      align-items: center;
+      margin: 0 20px;
+      height: 80px;
+      background-color: #fff;
+      padding: 0 35px;
+      li {
+        padding: 0 10px 5px;
+        margin-right: 20px;
+        font-weight: 700;
+        cursor: pointer;
+        color: black;
+      }
+      .active {
+        color: #3e5eb3;
+        border-bottom: 2px solid #3e5eb3;
+      }
+    }
   }
   .conten {
     position: relative;
     flex: 1;
     background-color: #fff;
     margin: 0 20px 40px;
-    padding: 35px;
+padding: 0 35px 35px;
     .info {
       display: flex;
       flex-wrap: wrap;
@@ -199,7 +254,7 @@ export default {
         display: flex;
         align-items: center;
         border: 1px solid #ccc;
-        width: 33.33%;
+        width: 50%;
       }
     }
     .explain {
@@ -221,7 +276,7 @@ export default {
       /deep/.el-input__suffix-inner{
         opacity: 0;
       }
-      max-height: 380px;
+      max-height: 480px;
       overflow: auto;
       .smimg {
         // border: 3px solid #ccc;
@@ -250,5 +305,38 @@ export default {
       justify-content: center;
     }
   }
+    .conten2 {
+      .conten2_head{
+      display: flex;
+      border: 1px solid #ccc;
+      border-bottom: none;
+      border-right: none;
+      display: flex;
+      color: black;
+      height: 50px;
+      font-weight: 700;
+      background-color: #d8dff0;
+      &>div {
+        padding-left: 15px;
+        line-height: 49px;
+        height: 100%;
+        border-right: 1px solid #ccc;
+      }
+      &>div:nth-of-type(3) {
+        flex: 1;
+      }
+    }
+    .conten2_con{
+      font-weight: 400;
+      background-color: #fff;
+      height: auto;
+      &>div{
+        height: auto;
+      }
+    }
+      .last{
+        border-bottom: 1px solid #ccc !important;
+      }
+  }
 }
 </style>

+ 159 - 65
src/views/holding/holding2.vue

@@ -1,21 +1,26 @@
 <!--  -->
 <template>
   <div class="holding">
-    <TabList :ind='2'/>
+    <TabList :ind="2" />
     <div class="right">
       <div class="top">
         <el-breadcrumb separator="/">
           <el-breadcrumb-item to="">首页</el-breadcrumb-item>
           <el-breadcrumb-item to="">馆藏管理</el-breadcrumb-item>
           <el-breadcrumb-item id="mytitle">出库管理</el-breadcrumb-item>
-
         </el-breadcrumb>
       </div>
       <div class="conten">
-
         <div class="middle">
           <ul class="title">
-            <li :class="{active:stateInd===index}" @click="stateSelect(index)" v-for="(item,index) in stateArr" :key="index">{{item.txt}}({{item.num}})</li>
+            <li
+              :class="{ active: stateInd === index }"
+              @click="stateSelect(index)"
+              v-for="(item, index) in stateArr"
+              :key="index"
+            >
+              {{ item.txt }}({{ item.num }})
+            </li>
           </ul>
           <div class="select">
             <span>登记人:</span>
@@ -33,8 +38,12 @@
               end-placeholder="结束日期"
             >
             </el-date-picker>
-            <el-button style="margin-left: 20px" @click="inquire">查询</el-button>
-            <el-button type="primary" @click="enterBank" v-if="userLimits.edit">申请出库</el-button>
+            <el-button style="margin-left: 20px" @click="inquire"
+              >查询</el-button
+            >
+            <el-button type="primary" @click="enterBank" v-if="userLimits.edit"
+              >申请出库</el-button
+            >
           </div>
           <!--表格 -->
           <div class="table">
@@ -44,26 +53,97 @@
               border
               style="width: 100%"
             >
-              <el-table-column prop="num" label="出库单号" width="200" :resizable="false">
+              <el-table-column
+                prop="num"
+                label="出库单号"
+                width="200"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="realName" label="登记人" width="100" :resizable="false">
+              <el-table-column
+                prop="realName"
+                label="登记人"
+                width="100"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="type" label="出库类型" width="80" :resizable="false">
+              <el-table-column
+                prop="type"
+                label="出库类型"
+                width="80"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="description" label="出库说明" :resizable="false">
+              <el-table-column
+                prop="description"
+                label="出库说明"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="createTime" label="登记日期" width="180" :resizable="false">
+              <el-table-column
+                prop="createTime"
+                label="登记日期"
+                width="180"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="updateTime" label="出库日期" width="180" :resizable="false">
+              <el-table-column
+                prop="updateTime"
+                label="出库日期"
+                width="180"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="status" label="状态" width="100" :resizable="false">
+              <el-table-column
+                prop="status"
+                label="状态"
+                width="100"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column label="操作" width="140" :resizable="false">
-                <template #default='{row}'>
-                  <el-button type="text" v-if="row.status==='待归还'||row.status==='已归还'||row.status==='审核不通过'" @click="myLook(row)">查看</el-button>
-                  <el-button type="text" v-if="row.status==='待审核'" @click="audit(row)" v-show="userLimits.audit">审核</el-button>
-                  <el-button type="text" v-if="row.status==='待办理'" @click="compile(row)" v-show="userLimits.edit">编辑</el-button>
-                  <el-button type="text" v-if="row.status==='待办理'||row.status==='待审核'||row.status==='审核不通过'" @click="delData(row.id,row.status)" v-show="userLimits.del" style="color:#C94848;">删除</el-button>
+              <el-table-column label="操作" width="200" :resizable="false">
+                <template #default="{ row }">
+                  <el-button
+                    type="text"
+                    v-if="
+                      row.status === '待归还' ||
+                      row.status === '已归还' ||
+                      row.status === '主任不通过'||
+                      row.status === '已完成' ||
+                      row.status === '馆长不通过'
+                    "
+                    @click="myLook(row)"
+                    >查看</el-button
+                  >
+                  <el-button
+                    type="text"
+                    v-if="row.status === '主任审核中'"
+                    @click="audit(row)"
+                    v-show="userLimits.audit"
+                    >主任审核</el-button
+                  >
+                  <el-button
+                    type="text"
+                    v-if="row.status === '馆长审核中'"
+                    @click="audit(row)"
+                    v-show="userLimits.auditTow"
+                    >馆长审核</el-button
+                  >
+                  <el-button
+                    type="text"
+                    v-if="row.status === '待办理'"
+                    @click="compile(row)"
+                    v-show="userLimits.edit"
+                    >编辑</el-button
+                  >
+                  <el-button
+                    type="text"
+                    v-if="row.status !== '待归还'&&row.status !== '已归还'"
+                    @click="delData(row.id, row.status)"
+                    v-show="userLimits.del"
+                    style="color: #c94848"
+                    >删除</el-button
+                  >
                 </template>
               </el-table-column>
             </el-table>
@@ -96,7 +176,8 @@ export default {
       userLimits: {
         edit: false,
         del: false,
-        audit: false
+        audit: false,
+        auditTow: false
       }, // 用户权限数据
       total: 0,
       myData: {
@@ -183,11 +264,11 @@ export default {
           this.getList(this.myData)
         } else if (index === 3) {
           // 点击待归还
-          this.myData.status = 3
+          this.myData.status = 5
           this.getList(this.myData)
         } else if (index === 4) {
           // 点击已归还
-          this.myData.status = 4
+          this.myData.status = 6
           this.getList(this.myData)
         } else if (index === 5) {
           // 点击审核不通过
@@ -213,26 +294,30 @@ export default {
         confirmButtonText: '删除',
         cancelButtonText: '取消',
         type: 'warning'
-      }).then(async () => {
-        // 发请求删除
-        await delData(id)
-        // 发请求刷新页面
-        this.getList(this.myData)
-        // 更新顶部数据
-        this.stateArr.forEach(v => {
-          if (v.txt === status) v.num--
-        })
-        this.stateArr[0].num--
-        this.$message({
-          type: 'success',
-          message: '删除成功!'
+      })
+        .then(async () => {
+          // 发请求删除
+          await delData(id)
+          // 发请求刷新页面
+          this.getList(this.myData)
+          // 更新顶部数据
+          if (status === '馆长审核中' || status === '主任审核中') this.stateArr[1].num--
+          if (status === '待办理') this.stateArr[2].num--
+          if (status === '待归还') this.stateArr[3].num--
+          if (status === '已归还') this.stateArr[4].num--
+          if (status === '主任不通过' || status === '馆长不通过') this.stateArr[5].num--
+          this.stateArr[0].num--
+          this.$message({
+            type: 'success',
+            message: '删除成功!'
+          })
         })
-      }).catch(() => {
-        this.$message({
-          type: 'info',
-          message: '已取消.'
+        .catch(() => {
+          this.$message({
+            type: 'info',
+            message: '已取消.'
+          })
         })
-      })
     },
     // 点击编辑
     compile (val) {
@@ -260,12 +345,14 @@ export default {
     myStateDan (id) {
       const list = [
         { id: 0, name: '待办理' },
-        { id: 1, name: '待审核' },
-        { id: 2, name: '审核不通过' },
-        { id: 3, name: '待归还' },
-        { id: 4, name: '已归还' }
+        { id: 1, name: '主任审核中' },
+        { id: 2, name: '主任不通过' },
+        { id: 3, name: '馆长审核中' },
+        { id: 4, name: '馆长不通过' },
+        { id: 5, name: '待归还' },
+        { id: 6, name: '已归还' }
       ]
-      return list.filter(v => id === v.id)[0].name
+      return list.filter((v) => id === v.id)[0].name
     },
     // 封装获取列表方法
     async getList (data) {
@@ -273,7 +360,7 @@ export default {
       this.total = res.data.total
       // console.log(666, res.data.list)
       this.tableData = res.data.list
-      this.tableData.forEach(v => {
+      this.tableData.forEach((v) => {
         v.status = this.myStateDan(v.status)
         v.type = this.CKtype(v.type)
         // v.updateTime = v.updateTime.slice(0, 10)
@@ -287,15 +374,21 @@ export default {
         date.push(this.gettime(e[i]))
       }
       this.myData.startTime = date[0]
-      if (date[1]) this.myData.endTime = date[1].replace('00:00:00', '23:59:59')
+      if (date[1]) { this.myData.endTime = date[1].replace('00:00:00', '23:59:59') }
     },
     gettime (data) {
-      const value = data.getFullYear() + '-' +
-      this.checkTime(data.getMonth() + 1) + '-' +
-      this.checkTime(data.getDate()) + ' ' +
-      this.checkTime(data.getHours()) + ':' +
-      this.checkTime(data.getMinutes()) + ':' +
-      this.checkTime(data.getSeconds())
+      const value =
+        data.getFullYear() +
+        '-' +
+        this.checkTime(data.getMonth() + 1) +
+        '-' +
+        this.checkTime(data.getDate()) +
+        ' ' +
+        this.checkTime(data.getHours()) +
+        ':' +
+        this.checkTime(data.getMinutes()) +
+        ':' +
+        this.checkTime(data.getSeconds())
       return value
     },
     checkTime (i) {
@@ -319,12 +412,12 @@ export default {
     let num3 = 0
     let num4 = 0
     let num5 = 0
-    res.data.list.forEach(v => {
-      if (v.status === 1) num1++
+    res.data.list.forEach((v) => {
+      if (v.status === 1 || v.status === 3) num1++
       if (v.status === 0) num2++
-      if (v.status === 3) num3++
-      if (v.status === 4) num4++
-      if (v.status === 2) num5++
+      if (v.status === 5) num3++
+      if (v.status === 6) num4++
+      if (v.status === 2 || v.status === 4) num5++
     })
     this.stateArr[1].num = num1
     this.stateArr[2].num = num2
@@ -337,6 +430,7 @@ export default {
     this.userLimits.edit = temp2[3].children[0].authority
     this.userLimits.del = temp2[3].children[1].authority
     this.userLimits.audit = temp2[3].children[2].authority
+    this.userLimits.auditTow = temp2[3].children[3].authority
     // console.log(999, temp2[3])
   },
   beforeCreate () {}, // 生命周期 - 创建之前
@@ -350,14 +444,14 @@ export default {
 </script>
 <style lang='less' scoped>
 .holding {
-    /deep/#mytitle>span{
+  /deep/#mytitle > span {
     font-weight: 800;
   }
 
   display: flex;
   .right {
     width: 100%;
-   .top {
+    .top {
       padding-left: 18px;
       display: flex;
       align-items: center;
@@ -369,16 +463,16 @@ export default {
       width: 100%;
       height: 829px;
       .middle {
-        .title{
+        .title {
           height: 60px;
           border-bottom: 1px solid #ccc;
           margin: 0 25px;
           display: flex;
           align-items: center;
           color: black;
-          .active{
-            color: #3E5EB3;
-            border-bottom: 2px solid #3E5EB3;
+          .active {
+            color: #3e5eb3;
+            border-bottom: 2px solid #3e5eb3;
           }
           li {
             height: 60px;
@@ -405,7 +499,7 @@ export default {
           max-width: 1710px;
           // overflow: auto;
           padding: 24px;
-          /deep/.el-table__body-wrapper{
+          /deep/.el-table__body-wrapper {
             max-height: 510px;
             overflow-y: auto;
           }

+ 65 - 6
src/views/holding/holding2_audit.vue

@@ -12,6 +12,11 @@
         </el-breadcrumb>
       </div>
       <div class="conten">
+        <div class="myState">
+          <div class="myStateOne"><span>①</span> 主任审核</div>
+          <span>></span>
+          <div :class="{myStateOne:myData.status==='馆长审核中'}"><span>②</span> 馆长审核</div>
+        </div>
         <div class="info">
           <div>
             <h4>出库编号:</h4>
@@ -25,7 +30,7 @@
             <h4>出库类型:</h4>
             <span>{{myData.type}}</span>
           </div>
-          <div>
+          <div class="chuKu" :title="myData.description">
             <h4>出库说明:</h4>
             <span>{{myData.description}}</span>
           </div>
@@ -64,7 +69,7 @@
             :model="fromData"
             :rules="rules"
             ref="fromData"
-            label-width="100px"
+            label-width="122px"
             class="demo-ruleForm"
           >
             <el-form-item label="审核结果:" prop="result">
@@ -75,7 +80,8 @@
             </el-form-item>
 
             <el-form-item
-              label="审核说明:"
+              v-if="myData.status === '主任审核中'"
+              label="主任审核说明:"
               prop="textarea"
             >
               <el-input
@@ -85,6 +91,18 @@
                 placeholder="请输入"
               ></el-input>
             </el-form-item>
+            <el-form-item
+              v-else
+              label="馆长审核说明:"
+              prop="reasonCurator"
+            >
+              <el-input
+                type="textarea"
+                :rows="3"
+                v-model="fromData.reasonCurator"
+                placeholder="请输入"
+              ></el-input>
+            </el-form-item>
           </el-form>
         </div>
         <!-- 最下面的按钮 -->
@@ -113,13 +131,18 @@ export default {
       myData: {},
       fromData: {
         textarea: '',
-        result: 3
+        result: 3,
+        reasonCurator: ''
       },
       rules: {
         textarea: [
           { required: true, message: '不能为空', trigger: 'blur' },
           { max: 255, message: '不能超过255个字符', trigger: 'blur' }
         ],
+        reasonCurator: [
+          { required: true, message: '不能为空', trigger: 'blur' },
+          { max: 255, message: '不能超过255个字符', trigger: 'blur' }
+        ],
         result: [
           { required: true, message: '请选择活动区域', trigger: 'change' }
         ]
@@ -146,6 +169,12 @@ export default {
           type: 'warning'
         }).then(async () => {
           const obj = { id: this.myData.id, reason: this.fromData.textarea, status: this.fromData.result }
+          if (this.myData.status === '馆长审核中' && obj.status === 3) obj.status = 5
+          if (this.myData.status === '馆长审核中' && obj.status === 2) obj.status = 4
+          if (this.myData.status === '馆长审核中') {
+            obj.reasonCurator = this.fromData.reasonCurator
+            obj.reason = null
+          }
           const res = await holding1Audit(obj)
           if (res.code === 0) {
             this.$message.success('审核成功')
@@ -208,6 +237,27 @@ export default {
     }
   }
   .conten {
+    .myState{
+      display: flex;
+      align-items: center;
+      height: 50px;
+      background-color: #f5f7fa;
+      margin: -20px 0 20px;
+      &>div {
+        width: 49%;
+        line-height: 50px;
+        text-align: center;
+        &>span {
+          font-size: 20px;
+        }
+      }
+      &>span {
+        font-size: 20px;
+      }
+      .myStateOne{
+        color: #3e5eb3;
+      }
+    }
     position: relative;
     flex: 1;
     background-color: #fff;
@@ -225,9 +275,18 @@ export default {
         border: 1px solid #ccc;
         width: 50%;
       }
+      .chuKu{
+        cursor: pointer;
+        &>span {
+        width: 700px;
+        overflow: hidden;
+        text-overflow: ellipsis;
+        white-space: nowrap;
+        }
+      }
     }
     .table {
-      max-height: 288px;
+      max-height: 330px;
       overflow: auto;
       .smimg {
         // border: 3px solid #ccc;
@@ -237,7 +296,7 @@ export default {
           height: 100%;
         }
       }
-      margin-top: 38px;
+      margin-top: 20px;
       border: 1px solid #ccc;
       .title {
         padding-left: 30px;

+ 118 - 19
src/views/holding/holding2_look.vue

@@ -11,7 +11,16 @@
           <el-breadcrumb-item id="mytitle">查看</el-breadcrumb-item>
         </el-breadcrumb>
       </div>
-      <div class="conten">
+      <!-- 后面追加的功能-tab栏切换 -->
+      <ul class="topTab">
+        <li :class="{ active: topTabInd === 0 }" @click="topTabInd = 0">
+          出库信息
+        </li>
+        <li :class="{ active: topTabInd === 1 }" @click="topTabInd = 1">
+          审核信息
+        </li>
+      </ul>
+      <div class="conten" v-if="topTabInd === 0">
         <div class="info">
           <div>
             <h4>出库编号:</h4>
@@ -21,21 +30,14 @@
             <h4>出库人员:</h4>
             <span>{{ myData.realName }}</span>
           </div>
-          <div>
+          <div style="width:30%">
             <h4>出库类型:</h4>
             <span>{{ myData.type }}</span>
           </div>
-          <div>
-            <h4>审核结果:</h4>
-            <span>{{ myData.status }}</span>
-          </div>
         </div>
         <div class="explain">
           <p><span>出库说明:</span>{{ myData.description }}</p>
         </div>
-        <div class="explain">
-          <p><span>审核说明:</span>{{ myData.reason }}</p>
-        </div>
 
         <!-- 表格 -->
         <div class="table">
@@ -95,6 +97,7 @@
             >
             </el-table-column>
             <el-table-column
+              v-if="myData.status !== '馆长审核中'"
               prop="status"
               label="状态"
               width="180"
@@ -116,6 +119,28 @@
           <el-button @click="$router.push('/layout/holding2')">返回</el-button>
         </div>
       </div>
+      <!-- 后面追加的审核信息 -->
+      <div class="conten conten2" v-else>
+        <div class="conten2_head">
+          <div style="width:200px">类型</div>
+          <div  style="width:300px">审核结果</div>
+          <div>审核说明</div>
+        </div>
+        <div class="conten2_head conten2_con">
+          <div style="width:200px">主任审核</div>
+          <div  style="width:300px">{{myData.status1}}</div>
+          <div>{{myData.reason}}</div>
+        </div>
+        <div class="conten2_head conten2_con last">
+          <div style="width:200px">馆长审核</div>
+          <div  style="width:300px">{{myData.status2}}</div>
+          <div>{{myData.reasonCurator?myData.reasonCurator:'-'}}</div>
+        </div>
+        <!-- 最下面的按钮 -->
+          <div class="button">
+              <el-button @click="$router.push('/layout/holding2')">返回</el-button>
+          </div>
+      </div>
     </div>
         <!-- 点击导出显示的界面 -->
         <div class="export" v-if="isShow">
@@ -129,20 +154,27 @@
                 <h4>出库人员:</h4>
                 <span>{{ myData.realName }}</span>
               </div>
-              <div>
+              <div style="width:30%">
                 <h4>出库类型:</h4>
                 <span>{{ myData.type }}</span>
               </div>
-              <div>
-                <h4>审核结果:</h4>
-                <span>{{ myData.status }}</span>
+              <div style="width:50%">
+                <h4>主任审核结果:</h4>
+                <span>{{ myData.status1 }}</span>
+              </div>
+              <div style="width:50%">
+                <h4>馆长审核结果:</h4>
+                <span>{{ myData.status2 }}</span>
               </div>
             </div>
             <div class="explain">
-              <p><span>出库说明:</span>{{ myData.description }}</p>
+              <p><span>主任审核说明:</span>{{ myData.reason }}</p>
             </div>
             <div class="explain">
-              <p><span>审核说明:</span>{{ myData.reason }}</p>
+              <p><span>馆长审核说明:</span>{{myData.reasonCurator?myData.reasonCurator:'-'}}</p>
+            </div>
+            <div class="explain">
+              <p><span>出库说明:</span>{{myData.description?myData.description:'-'}}</p>
             </div>
             <!-- 表格 -->
             <div class="table">
@@ -196,6 +228,7 @@
                 >
                 </el-table-column>
                 <el-table-column
+                  v-if="myData.status !== '馆长审核中'"
                   prop="status"
                   label="状态"
                   width="180"
@@ -227,6 +260,7 @@ export default {
   data () {
     // 这里存放数据
     return {
+      topTabInd: 0,
       // 用户权限数据
       userLimits: false,
       myData: {},
@@ -341,10 +375,23 @@ export default {
     this.baseURL = axios.defaults.baseURL
     // 从第一层拿到传过来的数据
     this.myData = this.$route.query
+    if (this.myData.status === '馆长审核中') {
+      this.myData.status1 = '主任通过'
+      this.myData.status2 = '审核中'
+    } else if (this.myData.status === '主任不通过') {
+      this.myData.status1 = '主任不通过'
+      this.myData.status2 = '-'
+    } else if (this.myData.status === '馆长不通过') {
+      this.myData.status1 = '主任通过'
+      this.myData.status2 = '馆长不通过'
+    } else if (this.myData.status === '待归还' || this.myData.status === '已归还') {
+      this.myData.status1 = '主任通过'
+      this.myData.status2 = '馆长通过'
+    }
     this.getDetailById()
     let temp2 = localStorage.getItem('daliCK_limits')
     temp2 = JSON.parse(temp2)
-    this.userLimits = temp2[3].children[3].authority
+    this.userLimits = temp2[3].children[4].authority
     // console.log(999, temp2[3])
   },
   beforeCreate () {}, // 生命周期 - 创建之前
@@ -393,7 +440,7 @@ export default {
       display: flex;
       align-items: center;
       border: 1px solid #ccc;
-      width: 50%;
+      width: 35%;
     }
   }
 
@@ -455,6 +502,25 @@ export default {
       margin-left: 2px;
       height: 40px;
     }
+    .topTab {
+      display: flex;
+      align-items: center;
+      margin: 0 20px;
+      height: 80px;
+      background-color: #fff;
+      padding: 0 35px;
+      li {
+        padding: 0 10px 5px;
+        margin-right: 20px;
+        font-weight: 700;
+        cursor: pointer;
+        color: black;
+      }
+      .active {
+        color: #3e5eb3;
+        border-bottom: 2px solid #3e5eb3;
+      }
+    }
   }
   .conten {
     .table {
@@ -462,7 +528,7 @@ export default {
       // overflow: auto;
       /deep/.el-table__body-wrapper {
         // max-width: 1593px;
-        max-height: 300px;
+        max-height: 400px;
         overflow-y: auto;
       }
     }
@@ -470,7 +536,7 @@ export default {
     flex: 1;
     background-color: #fff;
     margin: 0 20px 40px;
-    padding: 35px;
+    padding: 0 35px 35px;
 
     .button {
       position: absolute;
@@ -482,5 +548,38 @@ export default {
       justify-content: center;
     }
   }
+    .conten2 {
+      .conten2_head{
+      display: flex;
+      border: 1px solid #ccc;
+      border-bottom: none;
+      border-right: none;
+      display: flex;
+      color: black;
+      height: 50px;
+      font-weight: 700;
+      background-color: #d8dff0;
+      &>div {
+        padding-left: 15px;
+        line-height: 49px;
+        height: 100%;
+        border-right: 1px solid #ccc;
+      }
+      &>div:nth-of-type(3) {
+        flex: 1;
+      }
+    }
+    .conten2_con{
+      font-weight: 400;
+      background-color: #fff;
+      height: auto;
+      &>div{
+        height: auto;
+      }
+    }
+      .last{
+        border-bottom: 1px solid #ccc !important;
+      }
+  }
 }
 </style>

+ 4 - 4
src/views/holding/holding3_DiaEdit.vue

@@ -150,9 +150,9 @@
           >
             <el-option label="请选择" value=""></el-option>
             <el-option label="已修复" :value="3"></el-option>
-            <el-option label="继续修复" :value="2"></el-option>
-            <el-option label="需要修复" :value="1"></el-option>
-            <el-option label="不需修复" :value="0"></el-option>
+            <el-option label="腐蚀损坏严重,急需修复" :value="2"></el-option>
+            <el-option label="部分损腐,需要修复" :value="1"></el-option>
+            <el-option label="状态稳定,不需修复" :value="0"></el-option>
           </el-select>
         </el-form-item>
       </div>
@@ -370,7 +370,7 @@ export default {
         quality: '', // 具体质量
         qualityScope: '', // 质量范围
         registerNum: '', // 总登记号
-        repair: '', // 保存状态(修复状态), 0:不需修复, 1:需要修复,2:继续修复, 3:已修复
+        repair: '', // 保存状态(修复状态), 0:不需修复, 1:需要修复,2:腐蚀损坏严重,急需修复, 3:已修复
         texture: '', // 质地
         textureCategory: '', // 质地类别
         textureType: '', // 质地类型,前端输入, 0:单一质地, 1:复活质地

+ 20 - 11
src/views/holding/holding3_look.vue

@@ -184,11 +184,16 @@
             </div>
           </div>
           <div class="row">
-            <div><span>入库位置</span><p>{{ rukuTxt ? rukuTxt : "-" }}</p></div>
+            <div><span>入库位置</span>
+            <p v-if="myObj.status !== '待入库'">{{ rukuTxt ? rukuTxt : "-" }}</p>
+            <p v-else>-</p>
+            </div>
           </div>
           <div class="row">
             <div>
-              <span>出库位置</span><p>{{ myObj.outPath ? myObj.outPath : "-" }}</p>
+              <span>出库位置</span>
+              <p v-if="myObj.status === '已出库'">{{ myObj.outPath ? myObj.outPath : "-" }}</p>
+              <p v-else>-</p>
             </div>
           </div>
         </div>
@@ -410,7 +415,7 @@
                 <span>入库位置</span>
                 <el-cascader
                   ref="cascaderAddr"
-                  v-if="myObj.location && myObj.location.length >= 1"
+                  v-if="myObj.location && myObj.location.length >= 1 && myObj.status !== '待入库'"
                   placeholder=""
                   disabled
                   style="width: 80%"
@@ -424,9 +429,8 @@
             <div class="row">
               <div>
                 <span>出库位置</span>
-                <p :title="myObj.outPath">
-                  {{ myObj.outPath ? myObj.outPath : "-" }}
-                </p>
+                <p :title="myObj.outPath" v-if="myObj.status === '已出库'">{{ myObj.outPath ? myObj.outPath : "-" }}</p>
+                <p v-else>-</p>
               </div>
             </div>
           </div>
@@ -724,32 +728,37 @@ export default {
       if (val.moduleType === 'register') {
         temp = '/layout/holding0_result'
         obj = res.data.data
+        obj.status1 = '主任通过'
+        obj.status2 = '馆长通过'
       }
       // 入库
       if (val.moduleType === 'storageIn') {
         temp = '/layout/holding1_look'
         obj = res.data.data.entity
-        obj.status = '已完成'
+        obj.status1 = '主任通过'
+        obj.status2 = '馆长通过'
       }
       // 出库
       if (val.moduleType === 'storageOut') {
         temp = '/layout/holding2_look'
         obj = res.data.data.entity
         obj.type = this.CKtype(obj.type)
-        if (obj.status === 3) obj.status = '待归还'
-        else if (obj.status === 4) obj.status = '已归还'
+        obj.status1 = '主任通过'
+        obj.status2 = '馆长通过'
       }
       // 修改
       if (val.moduleType === 'ledgerEdit') {
         temp = '/layout/holding4_look'
         obj = res.data.data.entity
-        obj.status = '已完成'
+        obj.status1 = '主任通过'
+        obj.status2 = '馆长通过'
       }
       // 移库
       if (val.moduleType === 'ledgerMove') {
         temp = '/layout/statistics2_look'
         obj = res.data.data
-        obj.status = '已完成'
+        obj.status1 = '主任通过'
+        obj.status2 = '馆长通过'
       }
       const { href } = this.$router.resolve({
         path: temp,

+ 118 - 57
src/views/holding/holding4.vue

@@ -1,28 +1,37 @@
 <!--  -->
 <template>
   <div class="holding">
-    <TabList :ind='4'/>
+    <TabList :ind="4" />
     <div class="right">
       <div class="top">
         <el-breadcrumb separator="/">
           <el-breadcrumb-item to="">首页</el-breadcrumb-item>
           <el-breadcrumb-item to="">馆藏管理</el-breadcrumb-item>
           <el-breadcrumb-item id="mytitle">藏品修改</el-breadcrumb-item>
-
         </el-breadcrumb>
       </div>
       <div class="conten">
-
         <div class="middle">
           <ul class="title">
-            <li :class="{active:stateInd===index}" @click="stateSelect(index)" v-for="(item,index) in stateArr" :key="index">{{item.txt}}({{item.num}})</li>
+            <li
+              :class="{ active: stateInd === index }"
+              @click="stateSelect(index)"
+              v-for="(item, index) in stateArr"
+              :key="index"
+            >
+              {{ item.txt }}({{ item.num }})
+            </li>
           </ul>
           <div class="select">
             <span>搜索:</span>
-                <el-select v-model="myData.type" placeholder="请选择" style="width:108px">
-                  <el-option label="藏品名称" value="name"></el-option>
-                  <el-option label="登记人" value="user"></el-option>
-                </el-select>
+            <el-select
+              v-model="myData.type"
+              placeholder="请选择"
+              style="width: 108px"
+            >
+              <el-option label="藏品名称" value="name"></el-option>
+              <el-option label="登记人" value="user"></el-option>
+            </el-select>
 
             <el-input
               v-model="myData.searchKey"
@@ -38,7 +47,9 @@
               end-placeholder="结束日期"
             >
             </el-date-picker>
-            <el-button style="margin-left: 20px" @click="inquire">查询</el-button>
+            <el-button style="margin-left: 20px" @click="inquire"
+              >查询</el-button
+            >
           </div>
           <!--表格 -->
           <div class="table">
@@ -50,19 +61,59 @@
             >
               <el-table-column prop="name" label="藏品名称" :resizable="false">
               </el-table-column>
-              <el-table-column prop="num" label="总登记号"  :resizable="false">
+              <el-table-column prop="num" label="总登记号" :resizable="false">
               </el-table-column>
-              <el-table-column prop="realName" label="登记人" width="150" :resizable="false">
+              <el-table-column
+                prop="realName"
+                label="登记人"
+                width="150"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="updateTime" label="编辑日期" width="200" :resizable="false">
+              <el-table-column
+                prop="updateTime"
+                label="编辑日期"
+                width="200"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="status" label="状态" width="120" :resizable="false">
+              <el-table-column
+                prop="status"
+                label="状态"
+                width="120"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column label="操作" width="150" :resizable="false">
-                <template #default='{row}'>
-                  <el-button type="text"  @click="myLook(row)" v-if="row.status!=='待审核'">查看</el-button>
-                  <el-button type="text"  @click="audit(row)" v-if="row.status==='待审核'" v-show="userLimits.audit">审核</el-button>
-                  <el-button type="text"  @click="delData(row.id,row.status)" v-if="row.status!=='已完成'" v-show="userLimits.del" style="color:#C94848;">删除</el-button>
+              <el-table-column label="操作" width="200" :resizable="false">
+                <template #default="{ row }">
+                  <el-button
+                    type="text"
+                    @click="myLook(row)"
+                    v-if="row.status === '主任不通过'||row.status === '馆长不通过'||row.status === '已完成'"
+                    >查看</el-button
+                  >
+                  <el-button
+                    type="text"
+                    @click="audit(row)"
+                    v-if="row.status === '主任审核中'"
+                    v-show="userLimits.audit"
+                    >主任审核</el-button
+                  >
+                  <el-button
+                    type="text"
+                    @click="audit(row)"
+                    v-if="row.status === '馆长审核中'"
+                    v-show="userLimits.auditTow"
+                    >馆长审核</el-button
+                  >
+                  <el-button
+                    type="text"
+                    @click="delData(row.id, row.status)"
+                    v-if="row.status !== '已完成'"
+                    v-show="userLimits.del"
+                    style="color: #c94848"
+                    >删除</el-button
+                  >
                 </template>
               </el-table-column>
             </el-table>
@@ -94,7 +145,8 @@ export default {
     return {
       userLimits: {
         del: false,
-        audit: false
+        audit: false,
+        auditTow: false
       }, // 用户权限数据
       total: 0,
       myData: {
@@ -177,7 +229,7 @@ export default {
           this.getList(this.myData)
         } else if (index === 2) {
           // 点击已完成
-          this.myData.status = 3
+          this.myData.status = 5
           this.getList(this.myData)
         } else if (index === 3) {
           // 点击审核不通过
@@ -203,26 +255,28 @@ export default {
         confirmButtonText: '删除',
         cancelButtonText: '取消',
         type: 'warning'
-      }).then(async () => {
-        // 发请求删除
-        await delData(id)
-        // 发请求刷新页面
-        this.getList(this.myData)
-        // 更新顶部数据
-        this.stateArr.forEach(v => {
-          if (v.txt === status) v.num--
-        })
-        this.stateArr[0].num--
-        this.$message({
-          type: 'success',
-          message: '删除成功!'
+      })
+        .then(async () => {
+          // 发请求删除
+          await delData(id)
+          // 发请求刷新页面
+          this.getList(this.myData)
+          // 更新顶部数据
+          if (status === '馆长审核中' || status === '主任审核中') this.stateArr[1].num--
+          if (status === '已完成') this.stateArr[2].num--
+          if (status === '主任不通过' || status === '馆长不通过') this.stateArr[3].num--
+          this.stateArr[0].num--
+          this.$message({
+            type: 'success',
+            message: '删除成功!'
+          })
         })
-      }).catch(() => {
-        this.$message({
-          type: 'info',
-          message: '已取消.'
+        .catch(() => {
+          this.$message({
+            type: 'info',
+            message: '已取消.'
+          })
         })
-      })
     },
 
     // 点击审核
@@ -239,7 +293,7 @@ export default {
       this.total = res.data.total
       // console.log(666, res.data.list)
       this.tableData = res.data.list
-      this.tableData.forEach(v => {
+      this.tableData.forEach((v) => {
         v.status = this.myState(v.status)
         // v.updateTime = v.updateTime.slice(0, 10)
         // v.createTime = v.createTime.slice(0, 10)
@@ -252,15 +306,21 @@ export default {
         date.push(this.gettime(e[i]))
       }
       this.myData.startTime = date[0]
-      if (date[1]) this.myData.endTime = date[1].replace('00:00:00', '23:59:59')
+      if (date[1]) { this.myData.endTime = date[1].replace('00:00:00', '23:59:59') }
     },
     gettime (data) {
-      const value = data.getFullYear() + '-' +
-      this.checkTime(data.getMonth() + 1) + '-' +
-      this.checkTime(data.getDate()) + ' ' +
-      this.checkTime(data.getHours()) + ':' +
-      this.checkTime(data.getMinutes()) + ':' +
-      this.checkTime(data.getSeconds())
+      const value =
+        data.getFullYear() +
+        '-' +
+        this.checkTime(data.getMonth() + 1) +
+        '-' +
+        this.checkTime(data.getDate()) +
+        ' ' +
+        this.checkTime(data.getHours()) +
+        ':' +
+        this.checkTime(data.getMinutes()) +
+        ':' +
+        this.checkTime(data.getSeconds())
       return value
     },
     checkTime (i) {
@@ -282,10 +342,10 @@ export default {
     let num1 = 0
     let num2 = 0
     let num3 = 0
-    res.data.list.forEach(v => {
-      if (v.status === 1) num1++
-      if (v.status === 3) num2++
-      if (v.status === 2) num3++
+    res.data.list.forEach((v) => {
+      if (v.status === 1 || v.status === 3) num1++
+      if (v.status === 5) num2++
+      if (v.status === 2 || v.status === 4) num3++
     })
     this.stateArr[1].num = num1
     this.stateArr[2].num = num2
@@ -295,6 +355,7 @@ export default {
     temp2 = JSON.parse(temp2)
     this.userLimits.del = temp2[4].children[0].authority
     this.userLimits.audit = temp2[4].children[1].authority
+    this.userLimits.auditTow = temp2[4].children[2].authority
     // console.log(999, temp2)
   },
   beforeCreate () {}, // 生命周期 - 创建之前
@@ -308,14 +369,14 @@ export default {
 </script>
 <style lang='less' scoped>
 .holding {
-    /deep/#mytitle>span{
+  /deep/#mytitle > span {
     font-weight: 800;
   }
 
   display: flex;
   .right {
     width: 100%;
-   .top {
+    .top {
       padding-left: 18px;
       display: flex;
       align-items: center;
@@ -327,16 +388,16 @@ export default {
       width: 100%;
       height: 829px;
       .middle {
-        .title{
+        .title {
           height: 60px;
           border-bottom: 1px solid #ccc;
           margin: 0 25px;
           display: flex;
           align-items: center;
           color: black;
-          .active{
-            color: #3E5EB3;
-            border-bottom: 2px solid #3E5EB3;
+          .active {
+            color: #3e5eb3;
+            border-bottom: 2px solid #3e5eb3;
           }
           li {
             height: 60px;
@@ -363,7 +424,7 @@ export default {
           max-width: 1710px;
           // overflow: auto;
           padding: 24px;
-          /deep/.el-table__body-wrapper{
+          /deep/.el-table__body-wrapper {
             max-height: 510px;
             overflow-y: auto;
           }

+ 124 - 55
src/views/holding/holding4_audit.vue

@@ -1,7 +1,7 @@
 <!--  -->
 <template>
   <div class="holdingAdd">
-    <TabList :ind='4'/>
+    <TabList :ind="4" />
     <div class="right">
       <div class="top">
         <el-breadcrumb separator="/">
@@ -12,27 +12,35 @@
         </el-breadcrumb>
       </div>
       <div class="conten">
+        <div class="myState">
+          <div class="myStateOne"><span>①</span> 主任审核</div>
+          <span>></span>
+          <div :class="{ myStateOne: myObj.status === '馆长审核中' }">
+            <span>②</span> 馆长审核
+          </div>
+        </div>
         <div class="con_top">
-          <div><span>藏品名称:</span>{{myObj.name}}</div>
-          <div><span>总登记号:</span>{{myObj.num}}</div>
-          <div><span>登记人:</span>{{myObj.realName}}</div>
-          <div><span>编辑时间:</span>{{myObj.updateTime}}</div>
+          <div><span>藏品名称:</span>{{ myObj.name }}</div>
+          <div><span>总登记号:</span>{{ myObj.num }}</div>
+          <div><span>登记人:</span>{{ myObj.realName }}</div>
+          <div><span>编辑时间:</span>{{ myObj.updateTime }}</div>
         </div>
         <div class="con_edit">
-          <div class="title">修改记录
-                        <el-button size="small" @click="look">查 看</el-button>
+          <div class="title">
+            修改记录
+            <el-button size="small" @click="look">查 看</el-button>
           </div>
           <div class="editChange">
-            <div style="width:200px">修改内容</div>
-            <div style="width:650px">修改前</div>
-            <div style="flex: 1;">修改后</div>
+            <div style="width: 200px">修改内容</div>
+            <div style="width: 650px">修改前</div>
+            <div style="flex: 1">修改后</div>
           </div>
           <div class="father">
-          <div class="con_txt" v-for="(item,index) in editData" :key="index">
-            <div style="width:200px">{{item.name}}</div>
-            <div style="width:650px">{{item.qian?item.qian:'-'}}</div>
-            <div style="flex: 1;">{{item.hou?item.hou:'-'}}</div>
-          </div>
+            <div class="con_txt" v-for="(item, index) in editData" :key="index">
+              <div style="width: 200px">{{ item.name }}</div>
+              <div style="width: 650px">{{ item.qian ? item.qian : "-" }}</div>
+              <div style="flex: 1">{{ item.hou ? item.hou : "-" }}</div>
+            </div>
           </div>
         </div>
         <div class="txt">
@@ -40,7 +48,7 @@
             :model="fromData"
             :rules="rules"
             ref="fromData"
-            label-width="100px"
+            label-width="122px"
             class="demo-ruleForm"
           >
             <el-form-item label="审核结果:" prop="status">
@@ -51,7 +59,8 @@
             </el-form-item>
 
             <el-form-item
-              label="审核说明:"
+              v-if="myObj.status === '主任审核中'"
+              label="主任审核说明:"
               prop="reason"
             >
               <el-input
@@ -61,6 +70,14 @@
                 placeholder="请输入"
               ></el-input>
             </el-form-item>
+            <el-form-item v-else label="馆长审核说明:" prop="reasonCurator">
+              <el-input
+                type="textarea"
+                :rows="3"
+                v-model="fromData.reasonCurator"
+                placeholder="请输入"
+              ></el-input>
+            </el-form-item>
           </el-form>
         </div>
         <!-- 最下面的按钮 -->
@@ -70,8 +87,12 @@
         </div>
       </div>
     </div>
-        <!-- 点击查看显示弹窗 -->
-    <Holding4Look :dialogFormVisible.sync='isShow' :myObj='myObjLook'  ref="mylook"/>
+    <!-- 点击查看显示弹窗 -->
+    <Holding4Look
+      :dialogFormVisible.sync="isShow"
+      :myObj="myObjLook"
+      ref="mylook"
+    />
   </div>
 </template>
 
@@ -124,13 +145,18 @@ export default {
       fromData: {
         id: null,
         reason: '',
-        status: 3
+        status: 3,
+        reasonCurator: ''
       },
       rules: {
         reason: [
           { required: true, message: '不能为空', trigger: 'blur' },
           { max: 255, message: '不能超过255个字符', trigger: 'blur' }
         ],
+        reasonCurator: [
+          { required: true, message: '不能为空', trigger: 'blur' },
+          { max: 255, message: '不能超过255个字符', trigger: 'blur' }
+        ],
         status: [
           { required: true, message: '请选择活动区域', trigger: 'change' }
         ]
@@ -155,19 +181,32 @@ export default {
           confirmButtonText: '确定',
           cancelButtonText: '取消',
           type: 'warning'
-        }).then(async () => {
-          const res = await clickAudit(this.fromData)
-          // console.log(99999999, res)
-          if (res.code === 0) {
-            this.$message.success('审核成功')
-            this.$router.push('/layout/holding4')
-          }
-        }).catch(() => {
-          this.$message({
-            type: 'info',
-            message: '已取消提交'
-          })
         })
+          .then(async () => {
+            const obj = {
+              id: this.fromData.id,
+              reason: this.fromData.reason,
+              status: this.fromData.status
+            }
+            if (this.myObj.status === '馆长审核中' && obj.status === 3) { obj.status = 5 }
+            if (this.myObj.status === '馆长审核中' && obj.status === 2) { obj.status = 4 }
+            if (this.myObj.status === '馆长审核中') {
+              obj.reasonCurator = this.fromData.reasonCurator
+              obj.reason = null
+            }
+            const res = await clickAudit(obj)
+            // console.log(99999999, res)
+            if (res.code === 0) {
+              this.$message.success('审核成功')
+              this.$router.push('/layout/holding4')
+            }
+          })
+          .catch(() => {
+            this.$message({
+              type: 'info',
+              message: '已取消提交'
+            })
+          })
       } catch (error) {
         console.log(error)
       }
@@ -211,7 +250,11 @@ export default {
     }
     for (const k in oldObj) {
       if (oldObj[k] !== newObj[k] && this.dictionaries[k]) {
-        this.editData.push({ name: this.dictionaries[k], qian: oldObj[k], hou: newObj[k] })
+        this.editData.push({
+          name: this.dictionaries[k],
+          qian: oldObj[k],
+          hou: newObj[k]
+        })
       }
     }
     // 对比附件
@@ -252,7 +295,10 @@ export default {
     // })
     // console.log(999, oldFujian, newFujian)
     // this.editData附件信息完全相同,直接删掉
-    if (this.editData[this.editData.length - 1].qian === this.editData[this.editData.length - 1].hou) this.editData.pop()
+    if (
+      this.editData[this.editData.length - 1].qian ===
+      this.editData[this.editData.length - 1].hou
+    ) { this.editData.pop() }
   },
   // 生命周期 - 挂载完成(可以访问DOM元素)
   mounted () {},
@@ -268,7 +314,7 @@ export default {
 <style lang='less' scoped>
 //@import url(); 引入公共css类
 .holdingAdd {
-    /deep/#mytitle>span{
+  /deep/#mytitle > span {
     font-weight: 800;
   }
   display: flex;
@@ -276,7 +322,7 @@ export default {
     width: 100%;
     display: flex;
     flex-direction: column;
-   .top {
+    .top {
       padding-left: 18px;
       display: flex;
       align-items: center;
@@ -285,45 +331,69 @@ export default {
     }
   }
   .conten {
+    .myState {
+      display: flex;
+      align-items: center;
+      height: 50px;
+      background-color: #f5f7fa;
+      margin: -20px 0 20px;
+      & > div {
+        width: 49%;
+        line-height: 50px;
+        text-align: center;
+        & > span {
+          font-size: 20px;
+        }
+      }
+      & > span {
+        font-size: 20px;
+      }
+      .myStateOne {
+        color: #3e5eb3;
+      }
+    }
     position: relative;
     flex: 1;
     background-color: #fff;
     margin: 0 20px 40px;
     padding: 24px;
-    .con_top{
+    .con_top {
       color: black;
       height: 80px;
-      &>div {
+      & > div {
         float: left;
         padding-left: 18px;
+        overflow: hidden;
+        text-overflow: ellipsis;
+        white-space: nowrap;
         width: 50%;
         height: 50%;
         line-height: 40px;
         border: 1px solid #ccc;
-        &>span {
+        & > span {
           font-weight: 700;
         }
       }
     }
-    .con_edit{
+    .con_edit {
       color: black;
       margin: 24px 0;
-      max-height: 460px;
+      max-height: 375px;
       // background-color: cadetblue;
-      .title{
+      .title {
         display: flex;
         align-items: center;
         justify-content: space-between;
-        padding:0 38px;
+        padding: 0 38px;
         height: 50px;
         font-weight: 700;
         border: 1px solid #ccc;
       }
-      .editChange{
+      .editChange {
         font-weight: 700;
         height: 40px;
         display: flex;
-        &>div {
+        & > div {
           background-color: #fafafa;
           padding-left: 18px;
           border: 1px solid #ccc;
@@ -331,20 +401,20 @@ export default {
           line-height: 40px;
         }
       }
-      .father{
+      .father {
         max-height: 320px;
         overflow: auto;
       }
-    .con_txt{
-      display: flex;
-      &>div {
-        border: 1px solid #ccc;
-        padding: 8px 0;
-        padding-left: 18px;
+      .con_txt {
+        display: flex;
+        & > div {
+          border: 1px solid #ccc;
+          padding: 8px 0;
+          padding-left: 18px;
+        }
       }
     }
-    }
-        .button {
+    .button {
       position: absolute;
       left: 50%;
       bottom: 20px;
@@ -353,7 +423,6 @@ export default {
       display: flex;
       justify-content: space-between;
     }
-
   }
 }
 </style>

+ 102 - 8
src/views/holding/holding4_look.vue

@@ -11,7 +11,17 @@
           <el-breadcrumb-item id="mytitle">查看</el-breadcrumb-item>
         </el-breadcrumb>
       </div>
-      <div class="conten">
+            <!-- 后面追加的功能-tab栏切换 -->
+      <ul class="topTab">
+        <li :class="{ active: topTabInd === 0 }" @click="topTabInd = 0">
+          修改信息
+        </li>
+        <li :class="{ active: topTabInd === 1 }" @click="topTabInd = 1">
+          审核信息
+        </li>
+      </ul>
+
+      <div class="conten" v-if="topTabInd === 0">
         <div class="info">
           <div class="row">
             <div><span>藏品名称:</span>{{myObj.name}}</div>
@@ -21,12 +31,6 @@
           <div><span>登记人:</span>{{myObj.realName}}</div>
           <div><span>编辑时间:</span>{{myObj.updateTime}}</div>
         </div>
-        <div class="row">
-          <div><span>审核结果:</span>{{myObj.status}}</div>
-        </div>
-        <div class="row">
-          <div><span>审核说明:</span>{{myObj.reason}}</div>
-        </div>
         </div>
         <div class="con_edit">
           <div class="title">修改记录
@@ -50,6 +54,29 @@
           <el-button @click="$router.push('/layout/holding4')">返回</el-button>
         </div>
       </div>
+            <!-- 后面追加的审核信息 -->
+      <div class="conten conten2" v-else>
+        <div class="conten2_head">
+          <div style="width:200px">类型</div>
+          <div  style="width:300px">审核结果</div>
+          <div>审核说明</div>
+        </div>
+        <div class="conten2_head conten2_con">
+          <div style="width:200px">主任审核</div>
+          <div  style="width:300px">{{myObj.status1}}</div>
+          <div>{{myObj.reason}}</div>
+        </div>
+        <div class="conten2_head conten2_con last">
+          <div style="width:200px">馆长审核</div>
+          <div  style="width:300px">{{myObj.status2}}</div>
+          <div>{{myObj.reasonCurator?myObj.reasonCurator:'-'}}</div>
+        </div>
+        <!-- 最下面的按钮 -->
+          <div class="button">
+              <el-button @click="$router.push('/layout/holding4')">返回</el-button>
+          </div>
+      </div>
+
     </div>
         <!-- 点击查看显示弹窗 -->
     <Holding4Look :dialogFormVisible.sync='isShow' :myObj='myObjLook'  ref="mylook"/>
@@ -67,6 +94,7 @@ export default {
   data () {
     // 这里存放数据
     return {
+      topTabInd: 0,
       fujianLook: [],
       myObjLook: {},
       isShow: false,
@@ -112,6 +140,20 @@ export default {
   // 生命周期 - 创建完成(可以访问当前this实例)
   async created () {
     this.myObj = this.$route.query
+    if (this.myObj.status === '馆长审核中') {
+      this.myObj.status1 = '主任通过'
+      this.myObj.status2 = '审核中'
+    } else if (this.myObj.status === '主任不通过') {
+      this.myObj.status1 = '主任不通过'
+      this.myObj.status2 = '-'
+    } else if (this.myObj.status === '馆长不通过') {
+      this.myObj.status1 = '主任通过'
+      this.myObj.status2 = '馆长不通过'
+    } else if (this.myObj.status === '已完成') {
+      this.myObj.status1 = '主任通过'
+      this.myObj.status2 = '馆长通过'
+    }
+
     // 获取上个页面传递的数据
     const res = await getDetailById(this.myObj.id)
     const oldObj = res.data.goods
@@ -219,10 +261,29 @@ export default {
       margin-left: 2px;
       height: 40px;
     }
+    .topTab {
+      display: flex;
+      align-items: center;
+      margin: 0 20px;
+      height: 80px;
+      background-color: #fff;
+      padding: 0 35px;
+      li {
+        padding: 0 10px 5px;
+        margin-right: 20px;
+        font-weight: 700;
+        cursor: pointer;
+        color: black;
+      }
+      .active {
+        color: #3e5eb3;
+        border-bottom: 2px solid #3e5eb3;
+      }
+    }
   }
   .conten {
     position: relative;
-    padding: 24px;
+    padding:0 24px 24px;
     color: black;
     flex: 1;
     background-color: #fff;
@@ -290,5 +351,38 @@ export default {
     }
 
   }
+    .conten2 {
+      .conten2_head{
+      display: flex;
+      border: 1px solid #ccc;
+      border-bottom: none;
+      border-right: none;
+      display: flex;
+      color: black;
+      height: 50px;
+      font-weight: 700;
+      background-color: #d8dff0;
+      &>div {
+        padding-left: 15px;
+        line-height: 49px;
+        height: 100%;
+        border-right: 1px solid #ccc;
+      }
+      &>div:nth-of-type(3) {
+        flex: 1;
+      }
+    }
+    .conten2_con{
+      font-weight: 400;
+      background-color: #fff;
+      height: auto;
+      &>div{
+        height: auto;
+      }
+    }
+      .last{
+        border-bottom: 1px solid #ccc !important;
+      }
+  }
 }
 </style>

+ 148 - 70
src/views/holding/holding5.vue

@@ -12,9 +12,15 @@
       </div>
       <div class="conten">
         <div class="middle">
-
           <ul class="title">
-            <li :class="{active:stateInd===index}" @click="stateSelect(index)" v-for="(item,index) in stateArr" :key="index">{{item.txt}}({{item.num}})</li>
+            <li
+              :class="{ active: stateInd === index }"
+              @click="stateSelect(index)"
+              v-for="(item, index) in stateArr"
+              :key="index"
+            >
+              {{ item.txt }}({{ item.num }})
+            </li>
           </ul>
           <div class="select">
             <span>登记人:</span>
@@ -32,8 +38,11 @@
               end-placeholder="结束日期"
             >
             </el-date-picker>
-            <el-button style="margin-left: 20px" @click="inquire">查询</el-button>
-            <el-button type="primary" @click="cancel" v-if="userLimits.edit">申请注销</el-button
+            <el-button style="margin-left: 20px" @click="inquire"
+              >查询</el-button
+            >
+            <el-button type="primary" @click="cancel" v-if="userLimits.edit"
+              >申请注销</el-button
             >
           </div>
           <!--表格 -->
@@ -44,22 +53,79 @@
               border
               style="width: 100%"
             >
-              <el-table-column prop="num" label="注销单号" width="180" :resizable="false">
+              <el-table-column
+                prop="num"
+                label="注销单号"
+                width="180"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="realName" label="登记人" width="150" :resizable="false">
+              <el-table-column
+                prop="realName"
+                label="登记人"
+                width="150"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="description" label="注销原因" :resizable="false">
+              <el-table-column
+                prop="description"
+                label="注销原因"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="updateTime" label="注销日期" width="180" :resizable="false">
+              <el-table-column
+                prop="updateTime"
+                label="注销日期"
+                width="180"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="status" label="状态" width="130" :resizable="false">
+              <el-table-column
+                prop="status"
+                label="状态"
+                width="130"
+                :resizable="false"
+              >
               </el-table-column>
               <el-table-column label="操作" width="200" :resizable="false">
-                <template #default='{row}'>
-                  <el-button type="text" v-if="row.status==='已完成'||row.status==='审核不通过'" @click="myLook(row)">查看</el-button>
-                  <el-button type="text" v-if="row.status==='待审核'" @click="audit(row)" v-show="userLimits.audit">审核</el-button>
-                  <el-button type="text" v-if="row.status==='待办理'" @click="compile(row)" v-show="userLimits.edit">编辑</el-button>
-                  <el-button type="text" v-if="row.status!=='已完成'" @click="delOne(row.id,row.status)" v-show="userLimits.del" style="color:#C94848;">删除</el-button>
+                <template #default="{ row }">
+                  <el-button
+                    type="text"
+                    v-if="
+                      row.status === '已完成' ||row.status === '主任不通过'||row.status === '馆长不通过'
+                    "
+                    @click="myLook(row)"
+                    >查看</el-button
+                  >
+                  <el-button
+                    type="text"
+                    v-if="row.status === '主任审核中'"
+                    @click="audit(row)"
+                    v-show="userLimits.audit"
+                    >主任审核</el-button
+                  >
+                  <el-button
+                    type="text"
+                    v-if="row.status === '馆长审核中'"
+                    @click="audit(row)"
+                    v-show="userLimits.auditTow"
+                    >馆长审核</el-button
+                  >
+                  <el-button
+                    type="text"
+                    v-if="row.status === '待办理'"
+                    @click="compile(row)"
+                    v-show="userLimits.edit"
+                    >编辑</el-button
+                  >
+                  <el-button
+                    type="text"
+                    v-if="row.status !== '已完成'"
+                    @click="delOne(row.id, row.status)"
+                    v-show="userLimits.del"
+                    style="color: #c94848"
+                    >删除</el-button
+                  >
                 </template>
               </el-table-column>
             </el-table>
@@ -94,7 +160,8 @@ export default {
       userLimits: {
         edit: false,
         del: false,
-        audit: false
+        audit: false,
+        auditTow: false
       }, // 用户权限数据
       total: 0,
       // 选择状态的变量
@@ -157,26 +224,28 @@ export default {
         confirmButtonText: '删除',
         cancelButtonText: '取消',
         type: 'warning'
-      }).then(async () => {
-        // 发请求删除
-        await delData(id)
-        // 更新顶部数据
-        this.stateArr.forEach(v => {
-          if (v.txt === status) v.num--
-        })
-        this.stateArr[0].num--
-        // 发请求刷新页面
-        this.getList(this.myData)
-        this.$message({
-          type: 'success',
-          message: '删除成功!'
+      })
+        .then(async () => {
+          // 发请求删除
+          await delData(id)
+          // 更新顶部数据
+          this.stateArr.forEach((v) => {
+            if (v.txt === status) v.num--
+          })
+          this.stateArr[0].num--
+          // 发请求刷新页面
+          this.getList(this.myData)
+          this.$message({
+            type: 'success',
+            message: '删除成功!'
+          })
         })
-      }).catch(() => {
-        this.$message({
-          type: 'info',
-          message: '已取消.'
+        .catch(() => {
+          this.$message({
+            type: 'info',
+            message: '已取消.'
+          })
         })
-      })
     },
     // 点击注销
     async cancel () {
@@ -236,7 +305,7 @@ export default {
           this.getList(this.myData)
         } else if (index === 3) {
           // 点击已完成
-          this.myData.status = 3
+          this.myData.status = 5
           this.getList(this.myData)
         } else if (index === 4) {
           // 点击审核不通过
@@ -255,7 +324,7 @@ export default {
       const res = await getList(data)
       this.total = res.data.total
       this.tableData = res.data.list
-      this.tableData.forEach(v => {
+      this.tableData.forEach((v) => {
         v.status = this.myStateDan(v.status)
       })
       // console.log(666, res)
@@ -267,15 +336,21 @@ export default {
         date.push(this.gettime(e[i]))
       }
       this.myData.startTime = date[0]
-      if (date[1]) this.myData.endTime = date[1].replace('00:00:00', '23:59:59')
+      if (date[1]) { this.myData.endTime = date[1].replace('00:00:00', '23:59:59') }
     },
     gettime (data) {
-      const value = data.getFullYear() + '-' +
-      this.checkTime(data.getMonth() + 1) + '-' +
-      this.checkTime(data.getDate()) + ' ' +
-      this.checkTime(data.getHours()) + ':' +
-      this.checkTime(data.getMinutes()) + ':' +
-      this.checkTime(data.getSeconds())
+      const value =
+        data.getFullYear() +
+        '-' +
+        this.checkTime(data.getMonth() + 1) +
+        '-' +
+        this.checkTime(data.getDate()) +
+        ' ' +
+        this.checkTime(data.getHours()) +
+        ':' +
+        this.checkTime(data.getMinutes()) +
+        ':' +
+        this.checkTime(data.getSeconds())
       return value
     },
     checkTime (i) {
@@ -288,11 +363,13 @@ export default {
     myStateDan (id) {
       const list = [
         { id: 0, name: '待办理' },
-        { id: 1, name: '待审核' },
-        { id: 2, name: '审核不通过' },
-        { id: 3, name: '已完成' }
+        { id: 1, name: '主任审核中' },
+        { id: 2, name: '主任不通过' },
+        { id: 3, name: '馆长审核中' },
+        { id: 4, name: '馆长不通过' },
+        { id: 5, name: '已完成' }
       ]
-      return list.filter(v => id === v.id)[0].name
+      return list.filter((v) => id === v.id)[0].name
     }
   },
   // 生命周期 - 创建完成(可以访问当前this实例)
@@ -308,11 +385,11 @@ export default {
     let num2 = 0
     let num3 = 0
     let num4 = 0
-    res.data.list.forEach(v => {
-      if (v.status === 1) num1++
+    res.data.list.forEach((v) => {
+      if (v.status === 1 || v.status === 3) num1++
       if (v.status === 0) num2++
-      if (v.status === 3) num3++
-      if (v.status === 2) num4++
+      if (v.status === 5) num3++
+      if (v.status === 2 || v.status === 4) num4++
     })
     this.stateArr[1].num = num1
     this.stateArr[2].num = num2
@@ -324,6 +401,7 @@ export default {
     this.userLimits.edit = temp2[5].children[0].authority
     this.userLimits.del = temp2[5].children[1].authority
     this.userLimits.audit = temp2[5].children[2].authority
+    this.userLimits.auditTow = temp2[5].children[3].authority
     // console.log(999, temp2[5])
   },
   beforeCreate () {}, // 生命周期 - 创建之前
@@ -346,7 +424,7 @@ export default {
     width: 100%;
     display: flex;
     flex-direction: column;
-   .top {
+    .top {
       padding-left: 18px;
       display: flex;
       align-items: center;
@@ -359,26 +437,26 @@ export default {
     background-color: #fff;
     margin: 0 20px 40px;
     .middle {
-              .title{
+      .title {
+        height: 60px;
+        border-bottom: 1px solid #ccc;
+        margin: 0 25px;
+        display: flex;
+        align-items: center;
+        color: black;
+        .active {
+          color: #3e5eb3;
+          border-bottom: 2px solid #3e5eb3;
+        }
+        li {
           height: 60px;
-          border-bottom: 1px solid #ccc;
-          margin: 0 25px;
-          display: flex;
-          align-items: center;
-          color: black;
-          .active{
-            color: #3E5EB3;
-            border-bottom: 2px solid #3E5EB3;
-          }
-          li {
-            height: 60px;
-            line-height: 60px;
-            padding: 0 15px;
-            text-align: center;
-            margin-left: 40px;
-            cursor: pointer;
-          }
+          line-height: 60px;
+          padding: 0 15px;
+          text-align: center;
+          margin-left: 40px;
+          cursor: pointer;
         }
+      }
 
       position: relative;
       width: 100%;
@@ -392,7 +470,7 @@ export default {
         }
       }
       .table {
-        /deep/.el-table__body-wrapper{
+        /deep/.el-table__body-wrapper {
           max-width: 1643px;
           max-height: 510px;
           overflow-y: auto;

+ 64 - 6
src/views/holding/holding5_audit.vue

@@ -12,6 +12,11 @@
         </el-breadcrumb>
       </div>
       <div class="conten">
+        <div class="myState">
+          <div class="myStateOne"><span>①</span> 主任审核</div>
+          <span>></span>
+          <div :class="{myStateOne:myData.status==='馆长审核中'}"><span>②</span> 馆长审核</div>
+        </div>
         <div class="info">
           <div>
             <h4>注销编号:</h4>
@@ -21,7 +26,7 @@
             <h4>登记人:</h4>
             <span>{{myData.realName}}</span>
           </div>
-          <div style="width:100%">
+          <div style="width:100%" class="lastBox">
             <h4>注销说明:</h4>
             <span>{{myData.description}}</span>
           </div>
@@ -65,7 +70,7 @@
             :model="fromData"
             :rules="rules"
             ref="fromData"
-            label-width="100px"
+            label-width="122px"
             class="demo-ruleForm"
           >
             <el-form-item label="审核结果:" prop="result">
@@ -76,7 +81,8 @@
             </el-form-item>
 
             <el-form-item
-              label="审核说明:"
+              v-if="myData.status === '主任审核中'"
+              label="主任审核说明:"
               prop="textarea"
             >
               <el-input
@@ -86,6 +92,18 @@
                 placeholder="请输入"
               ></el-input>
             </el-form-item>
+            <el-form-item
+              v-else
+              label="馆长审核说明:"
+              prop="reasonCurator"
+            >
+              <el-input
+                type="textarea"
+                :rows="3"
+                v-model="fromData.reasonCurator"
+                placeholder="请输入"
+              ></el-input>
+            </el-form-item>
           </el-form>
         </div>
         <!-- 最下面的按钮 -->
@@ -119,13 +137,18 @@ export default {
       myData: {},
       fromData: {
         textarea: '',
-        result: 3
+        result: 3,
+        reasonCurator: ''
       },
       rules: {
         textarea: [
           { required: true, message: '不能为空', trigger: 'blur' },
           { max: 255, message: '不能超过255个字符', trigger: 'blur' }
         ],
+        reasonCurator: [
+          { required: true, message: '不能为空', trigger: 'blur' },
+          { max: 255, message: '不能超过255个字符', trigger: 'blur' }
+        ],
         result: [
           { required: true, message: '请选择活动区域', trigger: 'change' }
         ]
@@ -166,6 +189,12 @@ export default {
           type: 'warning'
         }).then(async () => {
           const obj = { id: this.myData.id, reason: this.fromData.textarea, status: this.fromData.result }
+          if (this.myData.status === '馆长审核中' && obj.status === 3) obj.status = 5
+          if (this.myData.status === '馆长审核中' && obj.status === 2) obj.status = 4
+          if (this.myData.status === '馆长审核中') {
+            obj.reasonCurator = this.fromData.reasonCurator
+            obj.reason = null
+          }
           const res = await holding1Audit(obj)
           if (res.code === 0) {
             this.$message.success('审核成功')
@@ -231,6 +260,27 @@ export default {
     }
   }
   .conten {
+    .myState{
+      display: flex;
+      align-items: center;
+      height: 50px;
+      background-color: #f5f7fa;
+      margin: -20px 0 20px;
+      &>div {
+        width: 49%;
+        line-height: 50px;
+        text-align: center;
+        &>span {
+          font-size: 20px;
+        }
+      }
+      &>span {
+        font-size: 20px;
+      }
+      .myStateOne{
+        color: #3e5eb3;
+      }
+    }
     position: relative;
     flex: 1;
     background-color: #fff;
@@ -242,12 +292,20 @@ export default {
       & > div {
         padding-left: 20px;
         color: black;
-        height: 50px;
+        padding: 10px;
         display: flex;
         align-items: center;
         border: 1px solid #ccc;
         width: 50%;
       }
+      .lastBox{
+        h4 {
+          height: 100%;
+        }
+        span {
+          flex: 1;
+        }
+      }
     }
     .table {
       max-height: 288px;
@@ -260,7 +318,7 @@ export default {
           height: 100%;
         }
       }
-      margin-top: 38px;
+      margin-top: 20px;
       border: 1px solid #ccc;
       .title {
         padding-left: 30px;

+ 100 - 3
src/views/holding/holding5_look.vue

@@ -11,7 +11,16 @@
           <el-breadcrumb-item id="mytitle">查看</el-breadcrumb-item>
         </el-breadcrumb>
       </div>
-      <div class="conten">
+      <!-- 后面追加的功能-tab栏切换 -->
+      <ul class="topTab">
+        <li :class="{ active: topTabInd === 0 }" @click="topTabInd = 0">
+          入库信息
+        </li>
+        <li :class="{ active: topTabInd === 1 }" @click="topTabInd = 1">
+          审核信息
+        </li>
+      </ul>
+      <div class="conten" v-if="topTabInd === 0">
         <div class="info">
           <div>
             <h4>注销编号:</h4>
@@ -77,6 +86,28 @@
               <el-button @click="$router.go(-1)">返回</el-button>
           </div>
       </div>
+      <!-- 后面追加的审核信息 -->
+      <div class="conten conten2" v-else>
+        <div class="conten2_head">
+          <div style="width:200px">类型</div>
+          <div  style="width:300px">审核结果</div>
+          <div>审核说明</div>
+        </div>
+        <div class="conten2_head conten2_con">
+          <div style="width:200px">主任审核</div>
+          <div  style="width:300px">{{myData.status1}}</div>
+          <div>{{myData.reason}}</div>
+        </div>
+        <div class="conten2_head conten2_con last">
+          <div style="width:200px">馆长审核</div>
+          <div  style="width:300px">{{myData.status2}}</div>
+          <div>{{myData.reasonCurator?myData.reasonCurator:'-'}}</div>
+        </div>
+        <!-- 最下面的按钮 -->
+          <div class="button">
+              <el-button @click="$router.push('/layout/holding5')">返回</el-button>
+          </div>
+      </div>
     </div>
      <!-- 点击查看显示弹窗 -->
     <Holding0AuditDia :dialogFormVisible.sync='isShow' :myObj='myObj' ref="mylook"/>
@@ -94,6 +125,7 @@ export default {
   data () {
     // 这里存放数据
     return {
+      topTabInd: 0,
       // 传给弹窗的数据
       myObj: {},
       myData: {},
@@ -149,6 +181,19 @@ export default {
     this.baseURL = axios.defaults.baseURL
     // 从第一层拿到传过来的数据
     this.myData = this.$route.query
+    if (this.myData.status === '馆长审核中') {
+      this.myData.status1 = '主任通过'
+      this.myData.status2 = '审核中'
+    } else if (this.myData.status === '主任不通过') {
+      this.myData.status1 = '主任不通过'
+      this.myData.status2 = '-'
+    } else if (this.myData.status === '馆长不通过') {
+      this.myData.status1 = '主任通过'
+      this.myData.status2 = '馆长不通过'
+    } else if (this.myData.status === '已完成') {
+      this.myData.status1 = '主任通过'
+      this.myData.status2 = '馆长通过'
+    }
     const res = await getDetailById(this.myData.id)
     this.tableData = res.data.goods
     this.tableData.forEach(v => {
@@ -188,13 +233,32 @@ export default {
       margin-left: 2px;
       height: 40px;
     }
+    .topTab {
+      display: flex;
+      align-items: center;
+      margin: 0 20px;
+      height: 80px;
+      background-color: #fff;
+      padding: 0 35px;
+      li {
+        padding: 0 10px 5px;
+        margin-right: 20px;
+        font-weight: 700;
+        cursor: pointer;
+        color: black;
+      }
+      .active {
+        color: #3e5eb3;
+        border-bottom: 2px solid #3e5eb3;
+      }
+    }
   }
   .conten {
     position: relative;
     flex: 1;
     background-color: #fff;
     margin: 0 20px 40px;
-    padding: 35px;
+    padding:0 35px 35px;
     .info {
       display: flex;
       flex-wrap: wrap;
@@ -229,7 +293,7 @@ export default {
           height: 100%;
         }
       }
-      margin-top: 38px;
+      margin-top: 20px;
       border: 1px solid #ccc;
       .title {
         padding-left: 30px;
@@ -248,5 +312,38 @@ export default {
       justify-content: center;
     }
   }
+    .conten2 {
+      .conten2_head{
+      display: flex;
+      border: 1px solid #ccc;
+      border-bottom: none;
+      border-right: none;
+      display: flex;
+      color: black;
+      height: 50px;
+      font-weight: 700;
+      background-color: #d8dff0;
+      &>div {
+        padding-left: 15px;
+        line-height: 49px;
+        height: 100%;
+        border-right: 1px solid #ccc;
+      }
+      &>div:nth-of-type(3) {
+        flex: 1;
+      }
+    }
+    .conten2_con{
+      font-weight: 400;
+      background-color: #fff;
+      height: auto;
+      &>div{
+        height: auto;
+      }
+    }
+      .last{
+        border-bottom: 1px solid #ccc !important;
+      }
+  }
 }
 </style>

+ 6 - 6
src/views/home/index.vue

@@ -216,32 +216,32 @@ export default {
       // 进页面拿数据--藏品登记
       const res = await getList({ pageNum: 1, pageSize: 99999 })
       res.data.list.forEach((v) => {
-        if (v.status === 1 || v.status === 0) this.dingdong[0].inoc++
+        if (v.status === 1 || v.status === 0 || v.status === 3) this.dingdong[0].inoc++
       })
       // 进页面拿数据--入库管理
       const res1 = await getList1({ pageNum: 1, pageSize: 99999 })
       res1.data.list.forEach((v) => {
-        if (v.status === 1 || v.status === 0) this.dingdong[1].inoc++
+        if (v.status === 1 || v.status === 0 || v.status === 3) this.dingdong[1].inoc++
       })
       // 进页面拿数据--出库管理
       const res2 = await getList2({ pageNum: 1, pageSize: 99999 })
       res2.data.list.forEach((v) => {
-        if (v.status === 1 || v.status === 0 || v.status === 3) { this.dingdong[2].inoc++ }
+        if (v.status === 1 || v.status === 0 || v.status === 3 || v.status === 5) { this.dingdong[2].inoc++ }
       })
       // 进页面拿数据--藏品修改
       const res4 = await getList4({ pageNum: 1, pageSize: 99999 })
       res4.data.list.forEach((v) => {
-        if (v.status === 1) this.dingdong[3].inoc++
+        if (v.status === 1 || v.status === 3) this.dingdong[3].inoc++
       })
       // 进页面拿数据--藏品注销
       const res5 = await getList5({ pageNum: 1, pageSize: 99999 })
       res5.data.list.forEach((v) => {
-        if (v.status === 1 || v.status === 0) this.dingdong[4].inoc++
+        if (v.status === 1 || v.status === 0 || v.status === 3) this.dingdong[4].inoc++
       })
       // 进页面拿数据--藏品移库
       const sta2 = await statistics2({ pageNum: 1, pageSize: 99999 })
       sta2.data.list.forEach((v) => {
-        if (v.status === 1) this.dingdong[5].inoc++
+        if (v.status === 1 || v.status === 3) this.dingdong[5].inoc++
       })
     },
     // 快速跳转

+ 8 - 4
src/views/layout/index.vue

@@ -171,7 +171,8 @@ export default {
         newPassword: [
           { required: true, message: '不能为空', trigger: 'blur' }
         ]
-      }
+      },
+      statisticsLim: true
     }
   },
   // 监听属性 类似于data概念
@@ -242,7 +243,8 @@ export default {
     toHome (index) {
       if (index === 0) this.$router.push('/layout/home').catch(() => {})
       if (index === 1) this.$router.push('/layout/holding0').catch(() => {})
-      if (index === 2) this.$router.push('/layout/statistics0').catch(() => {})
+      if (index === 2 && this.statisticsLim) this.$router.push('/layout/statistics0').catch(() => {})
+      if (index === 2 && !this.statisticsLim) this.$router.push('/layout/statistics1').catch(() => {})
       if (index === 3) this.$router.push('/layout/system2').catch(() => {})
     }
   },
@@ -274,8 +276,10 @@ export default {
       } // 不是超级管理员和系统管理员
     }
     // 获取用户权限数据
-    // let temp2 = localStorage.getItem('daliCK_limits')
-    // temp2 = JSON.parse(temp2)
+    let temp3 = localStorage.getItem('daliCK_limits')
+    temp3 = JSON.parse(temp3)
+    this.statisticsLim = temp3[6].authority
+    // console.log(temp3[6].authority)
     // // console.log(666, this.tabList[1].son, this.tabList[2].son)
     // const tempList1 = []
     // const tempList2 = []

+ 4 - 4
src/views/statistics/statistics0.vue

@@ -204,7 +204,7 @@ export default {
       this.popupOne = true
     },
     delOne () {
-      if (!this.arrowsShow) return this.$message.error('未选中库区')
+      if (this.arrowsShow === null) return this.$message.error('未选中库区')
       this.$confirm('确定删除吗?', '提示', {
         confirmButtonText: '确定',
         cancelButtonText: '取消',
@@ -237,7 +237,7 @@ export default {
     },
     async popupOneOK () {
       if (this.popupOneName.trim() === '') return this.$message.error('库区名称不能为空')
-      if (this.popupOneName.length > 8) return this.$message.error('库区名称不能超过15个字')
+      if (this.popupOneName.length > 15) return this.$message.error('库区名称不能超过15个字')
       await addEntrepot({
         level: 1,
         name: this.popupOneName,
@@ -297,9 +297,9 @@ export default {
     },
     async popupTowOK () {
       if (this.popupTowNum.trim() === '') return this.$message.error('仓库编号不能为空')
-      if (this.popupTowNum.length > 8) return this.$message.error('仓库编号不能超过15个字')
+      if (this.popupTowNum.length > 15) return this.$message.error('仓库编号不能超过15个字')
       if (this.popupTowName.trim() === '') return this.$message.error('仓库名称不能为空')
-      if (this.popupTowName.length > 8) return this.$message.error('仓库名称不能超过15个字')
+      if (this.popupTowName.length > 15) return this.$message.error('仓库名称不能超过15个字')
       await addEntrepot({
         level: 2,
         name: this.popupTowName,

+ 123 - 57
src/views/statistics/statistics2.vue

@@ -1,28 +1,37 @@
 <!--  -->
 <template>
   <div class="holding">
-    <TabList :ind='2'/>
+    <TabList :ind="2" />
     <div class="right">
       <div class="top">
         <el-breadcrumb separator="/">
           <el-breadcrumb-item to="">首页</el-breadcrumb-item>
           <el-breadcrumb-item to="">库房管理</el-breadcrumb-item>
           <el-breadcrumb-item id="mytitle">藏品移库</el-breadcrumb-item>
-
         </el-breadcrumb>
       </div>
       <div class="conten">
-
         <div class="middle">
           <ul class="title">
-            <li :class="{active:stateInd===index}" @click="stateSelect(index)" v-for="(item,index) in stateArr" :key="index">{{item.txt}}({{item.num}})</li>
+            <li
+              :class="{ active: stateInd === index }"
+              @click="stateSelect(index)"
+              v-for="(item, index) in stateArr"
+              :key="index"
+            >
+              {{ item.txt }}({{ item.num }})
+            </li>
           </ul>
           <div class="select">
             <span>搜索:</span>
-                <el-select v-model="myData.type" placeholder="请选择" style="width:108px">
-                  <el-option label="藏品名称" value="name"></el-option>
-                  <el-option label="登记人" value="user"></el-option>
-                </el-select>
+            <el-select
+              v-model="myData.type"
+              placeholder="请选择"
+              style="width: 108px"
+            >
+              <el-option label="藏品名称" value="name"></el-option>
+              <el-option label="登记人" value="user"></el-option>
+            </el-select>
 
             <el-input
               v-model="myData.searchKey"
@@ -38,7 +47,9 @@
               end-placeholder="结束日期"
             >
             </el-date-picker>
-            <el-button style="margin-left: 20px" @click="inquire">查询</el-button>
+            <el-button style="margin-left: 20px" @click="inquire"
+              >查询</el-button
+            >
           </div>
           <!--表格 -->
           <div class="table">
@@ -50,19 +61,64 @@
             >
               <el-table-column prop="name" label="藏品名称" :resizable="false">
               </el-table-column>
-              <el-table-column prop="num" label="总登记号" width="280" :resizable="false">
+              <el-table-column
+                prop="num"
+                label="总登记号"
+                width="280"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="realName" label="登记人" width="200" :resizable="false">
+              <el-table-column
+                prop="realName"
+                label="登记人"
+                width="200"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="updateTime" label="编辑日期" width="200" :resizable="false">
+              <el-table-column
+                prop="updateTime"
+                label="编辑日期"
+                width="200"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column prop="status" label="状态" width="230" :resizable="false">
+              <el-table-column
+                prop="status"
+                label="状态"
+                width="230"
+                :resizable="false"
+              >
               </el-table-column>
-              <el-table-column label="操作" width="295" :resizable="false">
-                <template #default='{row}'>
-                  <el-button type="text"  @click="myLook(row)" v-if="row.status!=='待审核'">查看</el-button>
-                  <el-button type="text"  @click="audit(row)" v-if="row.status==='待审核'" v-show="userLimits.audit">审核</el-button>
-                  <el-button type="text"  @click="delData(row.id,row.status)" v-if="row.status!=='已完成'" v-show="userLimits.del" style="color:#C94848;">删除</el-button>
+              <el-table-column label="操作" width="200" :resizable="false">
+                <template #default="{ row }">
+                  <el-button
+                    type="text"
+                    @click="myLook(row)"
+                    v-if="row.status !== '主任审核中'&&row.status !== '馆长审核中'"
+                    >查看</el-button
+                  >
+                  <el-button
+                    type="text"
+                    @click="audit(row)"
+                    v-if="row.status === '主任审核中'"
+                    v-show="userLimits.audit"
+                    >主任审核</el-button
+                  >
+                  <el-button
+                    type="text"
+                    @click="audit(row)"
+                    v-if="row.status === '馆长审核中'"
+                    v-show="userLimits.auditTow"
+                    >馆长审核</el-button
+                  >
+                  <el-button
+                    type="text"
+                    @click="delData(row.id, row.status)"
+                    v-if="row.status !== '已完成'"
+                    v-show="userLimits.del"
+                    style="color: #c94848"
+                    >删除</el-button
+                  >
                 </template>
               </el-table-column>
             </el-table>
@@ -94,7 +150,8 @@ export default {
     return {
       userLimits: {
         del: false,
-        audit: false
+        audit: false,
+        auditTow: false
       }, // 用户权限数据
       total: 0,
       myData: {
@@ -177,7 +234,7 @@ export default {
           this.getList(this.myData)
         } else if (index === 2) {
           // 点击已完成
-          this.myData.status = 3
+          this.myData.status = 5
           this.getList(this.myData)
         } else if (index === 3) {
           // 点击审核不通过
@@ -203,26 +260,28 @@ export default {
         confirmButtonText: '删除',
         cancelButtonText: '取消',
         type: 'warning'
-      }).then(async () => {
-        // 发请求删除
-        await delData(id)
-        // 发请求刷新页面
-        this.getList(this.myData)
-        // 更新顶部数据
-        this.stateArr.forEach(v => {
-          if (v.txt === status) v.num--
-        })
-        this.stateArr[0].num--
-        this.$message({
-          type: 'success',
-          message: '删除成功!'
+      })
+        .then(async () => {
+          // 发请求删除
+          await delData(id)
+          // 发请求刷新页面
+          this.getList(this.myData)
+          // 更新顶部数据
+          if (status === '馆长审核中' || status === '主任审核中') this.stateArr[1].num--
+          if (status === '已完成') this.stateArr[2].num--
+          if (status === '主任不通过' || status === '馆长不通过') this.stateArr[3].num--
+          this.stateArr[0].num--
+          this.$message({
+            type: 'success',
+            message: '删除成功!'
+          })
         })
-      }).catch(() => {
-        this.$message({
-          type: 'info',
-          message: '已取消.'
+        .catch(() => {
+          this.$message({
+            type: 'info',
+            message: '已取消.'
+          })
         })
-      })
     },
 
     // 点击审核
@@ -239,7 +298,7 @@ export default {
       this.total = res.data.total
       // console.log(666, res.data.list)
       this.tableData = res.data.list
-      this.tableData.forEach(v => {
+      this.tableData.forEach((v) => {
         v.status = this.myState(v.status)
         // v.updateTime = v.updateTime.slice(0, 10)
         // v.createTime = v.createTime.slice(0, 10)
@@ -252,15 +311,21 @@ export default {
         date.push(this.gettime(e[i]))
       }
       this.myData.startTime = date[0]
-      if (date[1]) this.myData.endTime = date[1].replace('00:00:00', '23:59:59')
+      if (date[1]) { this.myData.endTime = date[1].replace('00:00:00', '23:59:59') }
     },
     gettime (data) {
-      const value = data.getFullYear() + '-' +
-      this.checkTime(data.getMonth() + 1) + '-' +
-      this.checkTime(data.getDate()) + ' ' +
-      this.checkTime(data.getHours()) + ':' +
-      this.checkTime(data.getMinutes()) + ':' +
-      this.checkTime(data.getSeconds())
+      const value =
+        data.getFullYear() +
+        '-' +
+        this.checkTime(data.getMonth() + 1) +
+        '-' +
+        this.checkTime(data.getDate()) +
+        ' ' +
+        this.checkTime(data.getHours()) +
+        ':' +
+        this.checkTime(data.getMinutes()) +
+        ':' +
+        this.checkTime(data.getSeconds())
       return value
     },
     checkTime (i) {
@@ -282,10 +347,10 @@ export default {
     let num1 = 0
     let num2 = 0
     let num3 = 0
-    res.data.list.forEach(v => {
-      if (v.status === 1) num1++
-      if (v.status === 3) num2++
-      if (v.status === 2) num3++
+    res.data.list.forEach((v) => {
+      if (v.status === 1 || v.status === 3) num1++
+      if (v.status === 5) num2++
+      if (v.status === 2 || v.status === 4) num3++
     })
     this.stateArr[1].num = num1
     this.stateArr[2].num = num2
@@ -295,6 +360,7 @@ export default {
     temp2 = JSON.parse(temp2)
     this.userLimits.del = temp2[7].children[0].authority
     this.userLimits.audit = temp2[7].children[1].authority
+    this.userLimits.auditTow = temp2[7].children[2].authority
     // console.log(999, temp2[7])
   },
   beforeCreate () {}, // 生命周期 - 创建之前
@@ -308,14 +374,14 @@ export default {
 </script>
 <style lang='less' scoped>
 .holding {
-    /deep/#mytitle>span{
+  /deep/#mytitle > span {
     font-weight: 800;
   }
 
   display: flex;
   .right {
     width: 100%;
-   .top {
+    .top {
       padding-left: 18px;
       display: flex;
       align-items: center;
@@ -327,16 +393,16 @@ export default {
       width: 100%;
       height: 829px;
       .middle {
-        .title{
+        .title {
           height: 60px;
           border-bottom: 1px solid #ccc;
           margin: 0 25px;
           display: flex;
           align-items: center;
           color: black;
-          .active{
-            color: #3E5EB3;
-            border-bottom: 2px solid #3E5EB3;
+          .active {
+            color: #3e5eb3;
+            border-bottom: 2px solid #3e5eb3;
           }
           li {
             height: 60px;
@@ -363,7 +429,7 @@ export default {
           max-width: 1710px;
           // overflow: auto;
           padding: 24px;
-          /deep/.el-table__body-wrapper{
+          /deep/.el-table__body-wrapper {
             max-height: 510px;
             overflow-y: auto;
           }

+ 59 - 4
src/views/statistics/statistics2_audit.vue

@@ -12,6 +12,11 @@
         </el-breadcrumb>
       </div>
       <div class="conten">
+        <div class="myState">
+          <div class="myStateOne"><span>①</span> 主任审核</div>
+          <span>></span>
+          <div :class="{myStateOne:myObj.status==='馆长审核中'}"><span>②</span> 馆长审核</div>
+        </div>
         <div class="con_top">
           <div><span>藏品名称:</span>{{myObj.name}}</div>
           <div><span>总登记号:</span>{{myObj.num}}</div>
@@ -54,7 +59,7 @@
             :model="fromData"
             :rules="rules"
             ref="fromData"
-            label-width="100px"
+            label-width="122px"
             class="demo-ruleForm"
           >
             <el-form-item label="审核结果:" prop="status">
@@ -65,7 +70,8 @@
             </el-form-item>
 
             <el-form-item
-              label="审核说明:"
+              v-if="myObj.status === '主任审核中'"
+              label="主任审核说明:"
               prop="reason"
             >
               <el-input
@@ -75,6 +81,18 @@
                 placeholder="请输入"
               ></el-input>
             </el-form-item>
+            <el-form-item
+              v-else
+              label="馆长审核说明:"
+              prop="reasonCurator"
+            >
+              <el-input
+                type="textarea"
+                :rows="3"
+                v-model="fromData.reasonCurator"
+                placeholder="请输入"
+              ></el-input>
+            </el-form-item>
           </el-form>
         </div>
         <!-- 最下面的按钮 -->
@@ -112,13 +130,18 @@ export default {
       fromData: {
         id: null,
         reason: '',
-        status: 3
+        status: 3,
+        reasonCurator: ''
       },
       rules: {
         reason: [
           { required: true, message: '不能为空', trigger: 'blur' },
           { max: 255, message: '不能超过255个字符', trigger: 'blur' }
         ],
+        reasonCurator: [
+          { required: true, message: '不能为空', trigger: 'blur' },
+          { max: 255, message: '不能超过255个字符', trigger: 'blur' }
+        ],
         status: [
           { required: true, message: '请选择审核结果', trigger: 'change' }
         ]
@@ -159,7 +182,18 @@ export default {
           cancelButtonText: '取消',
           type: 'warning'
         }).then(async () => {
-          const res = await clickAudit(this.fromData)
+          const obj = {
+            id: this.fromData.id,
+            reason: this.fromData.reason,
+            status: this.fromData.status
+          }
+          if (this.myObj.status === '馆长审核中' && obj.status === 3) obj.status = 5
+          if (this.myObj.status === '馆长审核中' && obj.status === 2) obj.status = 4
+          if (this.myObj.status === '馆长审核中') {
+            obj.reasonCurator = this.fromData.reasonCurator
+            obj.reason = null
+          }
+          const res = await clickAudit(obj)
           // console.log(99999999, res)
           if (res.code === 0) {
             this.$message.success('审核成功')
@@ -226,6 +260,27 @@ export default {
     }
   }
   .conten {
+    .myState{
+      display: flex;
+      align-items: center;
+      height: 50px;
+      background-color: #f5f7fa;
+      margin: -20px 0 20px;
+      &>div {
+        width: 49%;
+        line-height: 50px;
+        text-align: center;
+        &>span {
+          font-size: 20px;
+        }
+      }
+      &>span {
+        font-size: 20px;
+      }
+      .myStateOne{
+        color: #3e5eb3;
+      }
+    }
     position: relative;
     flex: 1;
     background-color: #fff;

+ 101 - 8
src/views/statistics/statistics2_look.vue

@@ -11,7 +11,16 @@
           <el-breadcrumb-item id="mytitle">查看</el-breadcrumb-item>
         </el-breadcrumb>
       </div>
-      <div class="conten">
+            <!-- 后面追加的功能-tab栏切换 -->
+      <ul class="topTab">
+        <li :class="{ active: topTabInd === 0 }" @click="topTabInd = 0">
+          移库信息
+        </li>
+        <li :class="{ active: topTabInd === 1 }" @click="topTabInd = 1">
+          审核信息
+        </li>
+      </ul>
+      <div class="conten" v-if="topTabInd === 0">
         <div class="info">
           <div class="row">
             <div><span>藏品名称:</span>{{myObj.name}}</div>
@@ -21,12 +30,6 @@
           <div><span>登记人:</span>{{myObj.realName}}</div>
           <div><span>登记时间:</span>{{myObj.updateTime}}</div>
         </div>
-        <div class="row">
-          <div><span>审核结果:</span>{{myObj.status}}</div>
-        </div>
-        <div class="row">
-          <div><span>审核说明:</span>{{myObj.reason}}</div>
-        </div>
         </div>
         <div class="con_edit">
           <div class="title">移库记录
@@ -64,6 +67,29 @@
           <el-button @click="$router.push('/layout/statistics2')">返回</el-button>
         </div>
       </div>
+            <!-- 后面追加的审核信息 -->
+      <div class="conten conten2" v-else>
+        <div class="conten2_head">
+          <div style="width:200px">类型</div>
+          <div  style="width:300px">审核结果</div>
+          <div>审核说明</div>
+        </div>
+        <div class="conten2_head conten2_con">
+          <div style="width:200px">主任审核</div>
+          <div  style="width:300px">{{myObj.status1}}</div>
+          <div>{{myObj.reason}}</div>
+        </div>
+        <div class="conten2_head conten2_con last">
+          <div style="width:200px">馆长审核</div>
+          <div  style="width:300px">{{myObj.status2}}</div>
+          <div>{{myObj.reasonCurator?myObj.reasonCurator:'-'}}</div>
+        </div>
+        <!-- 最下面的按钮 -->
+          <div class="button">
+              <el-button @click="$router.push('/layout/statistics2')">返回</el-button>
+          </div>
+      </div>
+
     </div>
         <!-- 点击查看显示弹窗 -->
     <Statistics2Look :dialogFormVisible.sync='isShow' :myObj='myObjLook'  ref="mylook"/>
@@ -83,6 +109,7 @@ export default {
   data () {
     // 这里存放数据
     return {
+      topTabInd: 0,
       options: [],
       oldLocation: '',
       newLocation: '',
@@ -120,6 +147,20 @@ export default {
   // 生命周期 - 创建完成(可以访问当前this实例)
   async created () {
     this.myObj = this.$route.query
+    if (this.myObj.status === '馆长审核中') {
+      this.myObj.status1 = '主任通过'
+      this.myObj.status2 = '审核中'
+    } else if (this.myObj.status === '主任不通过') {
+      this.myObj.status1 = '主任不通过'
+      this.myObj.status2 = '-'
+    } else if (this.myObj.status === '馆长不通过') {
+      this.myObj.status1 = '主任通过'
+      this.myObj.status2 = '馆长不通过'
+    } else if (this.myObj.status === '已完成') {
+      this.myObj.status1 = '主任通过'
+      this.myObj.status2 = '馆长通过'
+    }
+
     // 获取上个页面传递的数据
     const res = await getDetailById(this.myObj.id)
     this.oldLocation = res.data.storageId.split(',')
@@ -160,10 +201,29 @@ export default {
       margin-left: 2px;
       height: 40px;
     }
+    .topTab {
+      display: flex;
+      align-items: center;
+      margin: 0 20px;
+      height: 80px;
+      background-color: #fff;
+      padding: 0 35px;
+      li {
+        padding: 0 10px 5px;
+        margin-right: 20px;
+        font-weight: 700;
+        cursor: pointer;
+        color: black;
+      }
+      .active {
+        color: #3e5eb3;
+        border-bottom: 2px solid #3e5eb3;
+      }
+    }
   }
   .conten {
     position: relative;
-    padding: 24px;
+    padding:0 24px 24px;
     color: black;
     flex: 1;
     background-color: #fff;
@@ -243,5 +303,38 @@ export default {
     }
 
   }
+    .conten2 {
+      .conten2_head{
+      display: flex;
+      border: 1px solid #ccc;
+      border-bottom: none;
+      border-right: none;
+      display: flex;
+      color: black;
+      height: 50px;
+      font-weight: 700;
+      background-color: #d8dff0;
+      &>div {
+        padding-left: 15px;
+        line-height: 49px;
+        height: 100%;
+        border-right: 1px solid #ccc;
+      }
+      &>div:nth-of-type(3) {
+        flex: 1;
+      }
+    }
+    .conten2_con{
+      font-weight: 400;
+      background-color: #fff;
+      height: auto;
+      &>div{
+        height: auto;
+      }
+    }
+      .last{
+        border-bottom: 1px solid #ccc !important;
+      }
+    }
 }
 </style>

+ 1 - 0
src/views/system/system1.vue

@@ -148,6 +148,7 @@ export default {
   }
 
   .conten {
+    min-height: 760px;
     flex: 1;
     background-color: #fff;
     margin: 0 20px 40px;

+ 1 - 0
src/views/system/system2.vue

@@ -236,6 +236,7 @@ export default {
   }
 
   .conten {
+    min-height: 760px;
     flex: 1;
     background-color: #fff;
     margin: 0 20px 40px;

+ 13 - 8
src/views/system/system3.vue

@@ -145,10 +145,12 @@ export default {
         let temp = null
         if (val === '启用') temp = 0
         else if (val === '停用') temp = 1
-        await editRole(id, temp)
-        // console.log(999, res)
-        this.$message.success('修改成功!')
-        this.getRZList(this.myData)
+        const res = await editRole(id, temp)
+        if (res.code === 0) {
+          // console.log(999, res)
+          this.$message.success('修改成功!')
+          this.getRZList(this.myData)
+        } else this.$message.warning('该角色目前有用户正在使用,不能停用!')
       }).catch(() => {
         this.$message({
           type: 'info',
@@ -163,10 +165,12 @@ export default {
         cancelButtonText: '取消',
         type: 'warning'
       }).then(async () => {
-        await delRole(id)
-        // console.log(999, res)
-        this.$message.success('删除成功!')
-        this.getRZList(this.myData)
+        const res = await delRole(id)
+        if (res.code === 0) {
+          // console.log(999, res)
+          this.$message.success('删除成功!')
+          this.getRZList(this.myData)
+        } else this.$message.warning('该角色目前有用户正在使用,不能删除!')
       }).catch(() => {
         this.$message({
           type: 'info',
@@ -240,6 +244,7 @@ export default {
   }
 
   .conten {
+    min-height: 760px;
     flex: 1;
     background-color: #fff;
     margin: 0 20px 40px;

+ 16 - 10
src/views/system/system3_add.vue

@@ -63,8 +63,9 @@ export default {
           checked: false,
           op: [
             { name: '编辑', checked: false, id: 102 },
-            { name: '删除', checked: false, id: 104 },
-            { name: '审核', checked: false, id: 103 }
+            { name: '删除', checked: false, id: 103 },
+            { name: '主任审核', checked: false, id: 104 },
+            { name: '馆长审核', checked: false, id: 105 }
           ]
         },
         {
@@ -73,7 +74,7 @@ export default {
           checked: false,
           op: [
             { name: '编辑', checked: false, id: 202 },
-            { name: '移库', checked: false, id: 205 }
+            { name: '移库', checked: false, id: 206 }
           ]
         },
         {
@@ -83,7 +84,8 @@ export default {
           op: [
             { name: '编辑', checked: false, id: 302 },
             { name: '删除', checked: false, id: 303 },
-            { name: '审核', checked: false, id: 304 }
+            { name: '主任审核', checked: false, id: 304 },
+            { name: '馆长审核', checked: false, id: 305 }
           ]
         },
         {
@@ -93,8 +95,9 @@ export default {
           op: [
             { name: '编辑', checked: false, id: 402 },
             { name: '删除', checked: false, id: 403 },
-            { name: '审核', checked: false, id: 404 },
-            { name: '归还', checked: false, id: 405 }
+            { name: '主任审核', checked: false, id: 404 },
+            { name: '馆长审核', checked: false, id: 405 },
+            { name: '归还', checked: false, id: 406 }
           ]
         },
         {
@@ -103,7 +106,8 @@ export default {
           checked: false,
           op: [
             { name: '删除', checked: false, id: 503 },
-            { name: '审核', checked: false, id: 504 }
+            { name: '主任审核', checked: false, id: 504 },
+            { name: '馆长审核', checked: false, id: 505 }
           ]
         },
         {
@@ -112,8 +116,9 @@ export default {
           checked: false,
           op: [
             { name: '编辑', checked: false, id: 602 },
-            { name: '删除', checked: false, id: 604 },
-            { name: '审核', checked: false, id: 603 }
+            { name: '删除', checked: false, id: 603 },
+            { name: '主任审核', checked: false, id: 604 },
+            { name: '馆长审核', checked: false, id: 605 }
           ]
         },
         {
@@ -131,7 +136,8 @@ export default {
           checked: false,
           op: [
             { name: '删除', checked: false, id: 803 },
-            { name: '审核', checked: false, id: 804 }
+            { name: '主任审核', checked: false, id: 804 },
+            { name: '馆长审核', checked: false, id: 805 }
           ]
         }
       ],