zjxpcyc 6 jaren geleden
bovenliggende
commit
f063214a17

+ 18
- 16
src/pages/system/library/books/list.vue Bestand weergeven

13
           </el-select>
13
           </el-select>
14
         </el-form-item>
14
         </el-form-item>
15
         <el-form-item label="条码">
15
         <el-form-item label="条码">
16
-          <el-input v-model="bookBarcode"></el-input>
16
+          <el-input v-model="formData.bookBarcode"></el-input>
17
         </el-form-item>
17
         </el-form-item>
18
         <el-form-item label="书名">
18
         <el-form-item label="书名">
19
-          <el-input v-model="bookName"></el-input>
19
+          <el-input v-model="formData.bookName"></el-input>
20
         </el-form-item>
20
         </el-form-item>
21
         <el-form-item :style="{ float: 'right' }">
21
         <el-form-item :style="{ float: 'right' }">
22
           <el-button type="primary" size="medium" @click="filterList">搜索</el-button>
22
           <el-button type="primary" size="medium" @click="filterList">搜索</el-button>
30
         <el-table :data="list" border style="width: 100%">
30
         <el-table :data="list" border style="width: 100%">
31
           <el-table-column label="图片" width="128">
31
           <el-table-column label="图片" width="128">
32
             <template slot-scope="scope">
32
             <template slot-scope="scope">
33
-              <img width="64" :src="scope.row.BookImg" alt>
33
+              <img width="64" :src="scope.row.BookImg + '?x-oss-process=style/compress-rotate'" alt>
34
             </template>
34
             </template>
35
           </el-table-column>
35
           </el-table-column>
36
           <el-table-column prop="BookBarcode" label="条码"></el-table-column>
36
           <el-table-column prop="BookBarcode" label="条码"></el-table-column>
110
   name: 'bookList',
110
   name: 'bookList',
111
   data() {
111
   data() {
112
     return {
112
     return {
113
-      caseId: '',
114
-      bookBarcode: '',
115
-      bookName: '',
113
+      formData: {
114
+        caseId: '',
115
+        bookBarcode: '',
116
+        bookName: '',
117
+      },
116
       inputRef: window.document.createElement('input'),
118
       inputRef: window.document.createElement('input'),
117
       showDialog: false,
119
       showDialog: false,
118
     }
120
     }
128
       page: s => s.page,
130
       page: s => s.page,
129
       pagenum: s => s.pagenum,
131
       pagenum: s => s.pagenum,
130
       types: s => s.type.list
132
       types: s => s.type.list
131
-    })
132
-  },
133
-  watch: {
134
-    defaultCase(nv) {
135
-      if (nv && !this.caseId) {
136
-        this.caseId = nv
137
-        this.filterList()
133
+    }),
134
+    caseId: {
135
+      get() {
136
+        return this.formData.caseId || this.defaultCase
137
+      },
138
+      set(nv) {
139
+        this.formData.caseId = nv
138
       }
140
       }
139
     },
141
     },
140
   },
142
   },
179
       this.getList({
181
       this.getList({
180
         page,
182
         page,
181
         caseid: caseId,
183
         caseid: caseId,
182
-        barcode: this.bookBarcode,
183
-        name: this.bookName
184
+        barcode: this.formData.bookBarcode,
185
+        name: this.formData.bookName
184
       }).catch(err => {
186
       }).catch(err => {
185
         this.$message({
187
         this.$message({
186
           showClose: true,
188
           showClose: true,
232
     // 设为/取消推荐
234
     // 设为/取消推荐
233
     setRecommend(book) {
235
     setRecommend(book) {
234
       const tipMsg = book.IsRecommend === 1 ? '确定取消推荐?' : '确认设置为推荐?'
236
       const tipMsg = book.IsRecommend === 1 ? '确定取消推荐?' : '确认设置为推荐?'
235
-      book.IsRecommend = Math.abs(book.IsRecommend - 1)
236
 
237
 
237
       this.$confirm(tipMsg, '提示', {
238
       this.$confirm(tipMsg, '提示', {
238
         confirmButtonText: '是',
239
         confirmButtonText: '是',
240
         type: 'warning'
241
         type: 'warning'
241
       })
242
       })
242
         .then(() => {
243
         .then(() => {
244
+          book.IsRecommend = Math.abs(book.IsRecommend - 1)
243
           this.setBookRecommend(book)
245
           this.setBookRecommend(book)
244
             .then(() => {
246
             .then(() => {
245
               this.$message({
247
               this.$message({

+ 20
- 13
src/pages/system/library/books/types/list.vue Bestand weergeven

23
         <el-table :data="list" border style="width: 100%">
23
         <el-table :data="list" border style="width: 100%">
24
           <el-table-column label="图片" width="128">
24
           <el-table-column label="图片" width="128">
25
             <template slot-scope="scope">
25
             <template slot-scope="scope">
26
-              <img width="64" :src="scope.row.BookTypeImg" alt>
26
+              <img width="64" :src="scope.row.BookTypeImg + '?x-oss-process=style/compress-rotate'" alt>
27
             </template>
27
             </template>
28
           </el-table-column>
28
           </el-table-column>
29
           <el-table-column prop="BookTypeName" label="名称"></el-table-column>
29
           <el-table-column prop="BookTypeName" label="名称"></el-table-column>
64
   name: 'bookTypeList',
64
   name: 'bookTypeList',
65
   data() {
65
   data() {
66
     return {
66
     return {
67
-      caseId: ''
67
+      formData: { caseid: '' },
68
     }
68
     }
69
   },
69
   },
70
   computed: {
70
   computed: {
77
       list: s => s.type.list,
77
       list: s => s.type.list,
78
       page: s => s.type.page,
78
       page: s => s.type.page,
79
       pagenum: s => s.type.pagenum,
79
       pagenum: s => s.type.pagenum,
80
-    })
81
-  },
82
-  watch: {
83
-    defaultCase(nv) {
84
-      if (nv && !this.caseId) {
85
-        this.caseId = nv
86
-        this.filterList()
87
-      }
88
-    },
80
+    }),
81
+    caseId: {
82
+      get() {
83
+        return this.formData.caseid || this.defaultCase
84
+      },
85
+      set(nv) {
86
+        this.formData.caseid = nv
87
+      },
88
+    }
89
   },
89
   },
90
   beforeRouteLeave (to, from, next) {
90
   beforeRouteLeave (to, from, next) {
91
     this.resetStore('type.list')
91
     this.resetStore('type.list')
101
     }),
101
     }),
102
 
102
 
103
     filterList({ page = 0 } = {}) {
103
     filterList({ page = 0 } = {}) {
104
-      const caseId = this.caseId || this.defaultCase
105
-      if (!caseId) return
104
+      const caseId = this.formData.caseId || this.defaultCase
105
+      if (!caseId) {
106
+        this.$message({
107
+          showClose: true,
108
+          message: '请选择案场',
109
+          type: 'error'
110
+        })
111
+        return
112
+      }
106
 
113
 
107
       this.getList({
114
       this.getList({
108
         page,
115
         page,

+ 10
- 3
src/pages/system/library/borrow/appointmentList.vue Bestand weergeven

37
         <el-table-column label="案场">
37
         <el-table-column label="案场">
38
           <template slot-scope="scope">{{returnCaseName(scope.row.CaseId)}}</template>
38
           <template slot-scope="scope">{{returnCaseName(scope.row.CaseId)}}</template>
39
         </el-table-column>
39
         </el-table-column>
40
-        <el-table-column label="图片" width="300">
40
+        <el-table-column label="图片" width="128">
41
           <template slot-scope="scope">
41
           <template slot-scope="scope">
42
-            <img :src="scope.row.BookImg" style="height: 150px;">
42
+            <img :src="scope.row.BookImg + '?x-oss-process=style/compress-rotate'" style="height: 64px;">
43
           </template>
43
           </template>
44
         </el-table-column>
44
         </el-table-column>
45
         <el-table-column prop="BookBarcode" label="条形码"></el-table-column>
45
         <el-table-column prop="BookBarcode" label="条形码"></el-table-column>
71
 
71
 
72
 <script>
72
 <script>
73
 import { createNamespacedHelpers, mapState } from 'vuex'
73
 import { createNamespacedHelpers, mapState } from 'vuex'
74
-const { mapState: mapLibSate, mapActions: mapLibActions } = createNamespacedHelpers('library')
74
+const { mapState: mapLibSate, mapActions: mapLibActions, mapMutations } = createNamespacedHelpers('library')
75
 export default {
75
 export default {
76
   name: 'borrowList',
76
   name: 'borrowList',
77
   data () {
77
   data () {
99
       this.total = res.pagenum
99
       this.total = res.pagenum
100
     })
100
     })
101
   },
101
   },
102
+  beforeRouteLeave (to, from, next) {
103
+    this.resetStore('borrow.list')
104
+    next()
105
+  },
102
   computed: {
106
   computed: {
103
     ...mapState({
107
     ...mapState({
104
       cases: x => x.app.cases.list,
108
       cases: x => x.app.cases.list,
118
     }
122
     }
119
   },
123
   },
120
   methods: {
124
   methods: {
125
+    ...mapMutations({
126
+      resetStore: 'clearData',
127
+    }),
121
     ...mapLibActions(['getBorrowList', 'cancelBorrow']),
128
     ...mapLibActions(['getBorrowList', 'cancelBorrow']),
122
     cancel (id) {
129
     cancel (id) {
123
       this.$confirm('确认取消预约?', '提示', {
130
       this.$confirm('确认取消预约?', '提示', {

+ 1
- 1
src/pages/system/library/borrow/bookreturn.vue Bestand weergeven

81
       orgid: x => x.app.user.OrgId
81
       orgid: x => x.app.user.OrgId
82
     }),
82
     }),
83
     ...mapLibSate({
83
     ...mapLibSate({
84
-      list: s => s.list,
84
+      list: s => s.bookReturn.list,
85
       borrowHistory: s => s.borrow.history
85
       borrowHistory: s => s.borrow.history
86
     })
86
     })
87
   },
87
   },

+ 14
- 9
src/pages/system/library/borrow/borrow.vue Bestand weergeven

36
       <!-- 过滤条件 -->
36
       <!-- 过滤条件 -->
37
       <el-form inline>
37
       <el-form inline>
38
         <el-form-item label="案场">
38
         <el-form-item label="案场">
39
-          <el-select v-model="formData.caseid" size="medium" placeholder="请选择案场">
39
+          <el-select v-model="caseId" size="medium" placeholder="请选择案场">
40
             <el-option
40
             <el-option
41
               v-for="item in cases"
41
               v-for="item in cases"
42
               :key="item.CaseId"
42
               :key="item.CaseId"
105
       list: s => s.list,
105
       list: s => s.list,
106
       borrowHistory: s => s.borrow.history,
106
       borrowHistory: s => s.borrow.history,
107
     }),
107
     }),
108
-  },
109
-  watch: {
110
-    defaultCase(nv) {
111
-      if (nv && !this.formData.caseid) {
112
-        this.formData.caseid = nv
113
-      }
114
-    }
108
+    caseId: {
109
+      get() {
110
+        return this.formData.caseid || this.defaultCase
111
+      },
112
+      set(val) {
113
+        this.formData.caseid = val
114
+      },
115
+    },
115
   },
116
   },
116
   methods: {
117
   methods: {
117
     ...mapActions({
118
     ...mapActions({
143
 
144
 
144
     search() {
145
     search() {
145
       // 必须选案场
146
       // 必须选案场
146
-      if (!this.formData.caseid) {
147
+      if (!this.formData.caseid && !this.defaultCase) {
147
         this.$message({
148
         this.$message({
148
           showClose: true,
149
           showClose: true,
149
           message: '请选择案场',
150
           message: '请选择案场',
153
         return
154
         return
154
       }
155
       }
155
 
156
 
157
+      if (!this.formData.caseid) {
158
+        this.formData.caseid = this.defaultCase
159
+      }
160
+
156
       // 先扫码或者输入图书名称
161
       // 先扫码或者输入图书名称
157
       if (!this.formData.barcode && !this.formData.name) {
162
       if (!this.formData.barcode && !this.formData.name) {
158
         this.$message({
163
         this.$message({

+ 10
- 3
src/pages/system/library/borrow/borrowList.vue Bestand weergeven

47
         <el-table-column label="案场">
47
         <el-table-column label="案场">
48
           <template slot-scope="scope">{{returnCaseName(scope.row.CaseId)}}</template>
48
           <template slot-scope="scope">{{returnCaseName(scope.row.CaseId)}}</template>
49
         </el-table-column>
49
         </el-table-column>
50
-        <el-table-column label="图片" width="300">
50
+        <el-table-column label="图片" width="128">
51
           <template slot-scope="scope">
51
           <template slot-scope="scope">
52
-            <img :src="scope.row.BookImg" style="height: 150px;">
52
+            <img :src="scope.row.BookImg + '?x-oss-process=style/compress-rotate'" style="height: 64px;">
53
           </template>
53
           </template>
54
         </el-table-column>
54
         </el-table-column>
55
         <el-table-column prop="BookBarcode" label="条形码"></el-table-column>
55
         <el-table-column prop="BookBarcode" label="条形码"></el-table-column>
82
 
82
 
83
 <script>
83
 <script>
84
 import { createNamespacedHelpers, mapState } from 'vuex'
84
 import { createNamespacedHelpers, mapState } from 'vuex'
85
-const { mapState: mapLibSate, mapActions: mapLibActions } = createNamespacedHelpers('library')
85
+const { mapState: mapLibSate, mapActions: mapLibActions, mapMutations } = createNamespacedHelpers('library')
86
 export default {
86
 export default {
87
   name: 'borrowList',
87
   name: 'borrowList',
88
   data () {
88
   data () {
140
       }
140
       }
141
     }
141
     }
142
   },
142
   },
143
+  beforeRouteLeave (to, from, next) {
144
+    this.resetStore('borrow.list')
145
+    next()
146
+  },
143
   methods: {
147
   methods: {
148
+    ...mapMutations({
149
+      resetStore: 'clearData',
150
+    }),
144
     ...mapLibActions(['getBorrowList']),
151
     ...mapLibActions(['getBorrowList']),
145
     search () {
152
     search () {
146
       this.page = 1
153
       this.page = 1