|
@@ -12,7 +12,8 @@
|
12
|
12
|
<div id="print_content">
|
13
|
13
|
<div class="print_main_content">
|
14
|
14
|
<div class="order_title_panl">
|
15
|
|
- <span class="main_title">耗材入库登记单</span>
|
|
15
|
+ <div style="font-size:22px;font-weight:bold;">{{ orgName }}</div>
|
|
16
|
+ <span style="font-weight:500;font-size:18px;">耗材入库登记单</span>
|
16
|
17
|
</div>
|
17
|
18
|
<div style="text-align:right;margin-bottom:20px;font-size: 18px;">
|
18
|
19
|
打印时间:{{time_now}}
|
|
@@ -21,41 +22,40 @@
|
21
|
22
|
<table class="table">
|
22
|
23
|
<thead>
|
23
|
24
|
<tr>
|
24
|
|
- <td width="80">耗材名称</td>
|
25
|
|
- <td width="80">注册证号/批准文号/备案凭证号</td>
|
26
|
|
- <td width="80">规格型号</td>
|
27
|
|
- <td width="80">生产厂商</td>
|
28
|
|
- <td width="80">单位</td>
|
29
|
|
- <td width="80">进货价</td>
|
30
|
|
- <td width="80">入库数量</td>
|
31
|
|
- <td width="80">总价</td>
|
32
|
|
- <td width="80">批号</td>
|
33
|
|
- <td width="80">生产日期</td>
|
34
|
|
- <td width="80">有效日期</td>
|
35
|
|
- <td width="80">质检意见</td>
|
36
|
|
- <td width="80">验收结论</td>
|
|
25
|
+ <td style="line-height:18px;" width="80">耗材<br>名称</td>
|
|
26
|
+ <td style="line-height:18px;" width="80">注册证号/批准文号/备案凭证号</td>
|
|
27
|
+ <td style="line-height:18px;" width="80">规格<br>型号</td>
|
|
28
|
+ <td style="line-height:18px;" width="80">生产<br>厂商</td>
|
|
29
|
+ <td style="line-height:18px;" width="80">单位</td>
|
|
30
|
+ <td style="line-height:18px;" width="80">进货价</td>
|
|
31
|
+ <td style="line-height:18px;" width="80">入库<br>数量</td>
|
|
32
|
+ <td style="line-height:18px;" width="60">总价</td>
|
|
33
|
+ <td style="line-height:18px;" width="80">批号</td>
|
|
34
|
+ <td style="line-height:18px;" width="120">生产日期</td>
|
|
35
|
+ <td style="line-height:18px;" width="120">有效日期</td>
|
|
36
|
+ <td style="line-height:18px;" width="60">质检<br>意见</td>
|
|
37
|
+ <td style="line-height:18px;" width="60">验收<br>结论</td>
|
37
|
38
|
</tr>
|
38
|
39
|
</thead>
|
39
|
40
|
<tbody>
|
40
|
41
|
<tr v-for='(item,index) in WarehouseInfo.warehouseInfoDate' :key="index">
|
41
|
|
- <td><span v-if="item.good_id != 0">{{getTypeNameOne(item.good_id)}}</span></td>
|
42
|
|
- <td>{{ item.remark }}</td>
|
43
|
|
- <td><span v-if="item.good_id != 0">{{getSpecificationName(item.good_id)}}</span></td>
|
44
|
|
- <td>{{ getManufacturer(item.manufacturer) }}</td>
|
45
|
|
- <td><span v-if="item.good_id!=0">{{getUnit(item.good_id)}}</span></td>
|
46
|
|
- <td>{{item.price}}</td>
|
47
|
|
- <td>{{item.warehousing_count}}</td>
|
48
|
|
- <td>{{(item.warehousing_count*item.price).toFixed(2)}}</td>
|
49
|
|
- <td>{{ item.number }}</td>
|
50
|
|
- <td>{{ item.product_date | parseTime("{y}-{m}-{d}") }}</td>
|
51
|
|
- <td>{{ item.expiry_date | parseTime("{y}-{m}-{d}") }}</td>
|
52
|
|
- <td>正常入库</td>
|
53
|
|
- <td>合格</td>
|
|
42
|
+ <td style="line-height:18px;"><span v-if="item.good_id != 0">{{getTypeNameOne(item.good_id)}}</span></td>
|
|
43
|
+ <td style="line-height:18px;">{{ item.remark }}</td>
|
|
44
|
+ <td style="line-height:18px;"><span v-if="item.good_id != 0">{{getSpecificationName(item.good_id)}}</span></td>
|
|
45
|
+ <td style="line-height:18px;">{{ getManufacturer(item.good_id) }}</td>
|
|
46
|
+ <td style="line-height:18px;"><span v-if="item.good_id!=0">{{getUnit(item.good_id)}}</span></td>
|
|
47
|
+ <td style="line-height:18px;">{{item.price}}</td>
|
|
48
|
+ <td style="line-height:18px;">{{item.warehousing_count}}</td>
|
|
49
|
+ <td style="line-height:18px;">{{(item.warehousing_count*item.price).toFixed(2)}}</td>
|
|
50
|
+ <td style="line-height:18px;">{{ item.number }}</td>
|
|
51
|
+ <td style="line-height:18px;">{{ item.product_date | parseTime("{y}-{m}-{d}") }}</td>
|
|
52
|
+ <td style="line-height:18px;">{{ item.expiry_date | parseTime("{y}-{m}-{d}") }}</td>
|
|
53
|
+ <td style="line-height:18px;">正常<br>入库</td>
|
|
54
|
+ <td style="line-height:18px;">合格</td>
|
54
|
55
|
</tr>
|
55
|
56
|
<tr>
|
56
|
57
|
<td>合计</td>
|
57
|
|
- <td colspan="11"></td>
|
58
|
|
- <td>{{allPrice.toFixed(2)}}</td>
|
|
58
|
+ <td colspan="12" style="text-align:right;">{{allPrice.toFixed(2)}}</td>
|
59
|
59
|
</tr>
|
60
|
60
|
</tbody>
|
61
|
61
|
</table>
|
|
@@ -63,9 +63,9 @@
|
63
|
63
|
<div style="display:flex;margin-top:20px;float:right;">
|
64
|
64
|
<div style="width:50px;">审批:</div><div style="width:100px;"></div>
|
65
|
65
|
<div style="width:80px;">药材主任:</div><div style="width:100px;"></div>
|
66
|
|
- <div style="width:50px;">会计:</div><div style="width:100px;"></div>
|
67
|
|
- <div style="width:50px;">审核:</div><div style="width:100px;"></div>
|
68
|
|
- <div style="width:70px;">制单人:</div><div style="width:100px;"></div>
|
|
66
|
+ <div style="width:50px;">会计:</div><div style="width:100px;"><span v-if='orgId == 10024'>徐立琼</span></div>
|
|
67
|
+ <div style="width:50px;">审核:</div><div style="width:100px;"><span v-if='orgId == 10024'>徐立琼</span></div>
|
|
68
|
+ <div style="width:70px;">制单人:</div><div style="width:100px;">{{ getXuserName(this.WarehouseInfo.warehouse.creater) }}</div>
|
69
|
69
|
</div>
|
70
|
70
|
</div>
|
71
|
71
|
</div>
|
|
@@ -81,6 +81,7 @@ import {
|
81
|
81
|
getWarehouseInfoList,
|
82
|
82
|
getGoodInfoList
|
83
|
83
|
} from "@/api/stock";
|
|
84
|
+import { fetchAllAdminUsers } from "@/api/doctor";
|
84
|
85
|
import print from 'print-js'
|
85
|
86
|
const moment = require('moment')
|
86
|
87
|
export default {
|
|
@@ -120,12 +121,15 @@ export default {
|
120
|
121
|
is_use:"",
|
121
|
122
|
good_kind:"",
|
122
|
123
|
is_charge:"",
|
123
|
|
- list:[]
|
|
124
|
+ list:[],
|
|
125
|
+ orgName:'',
|
|
126
|
+ orgId:'',
|
|
127
|
+ adminUserOptions:[]
|
124
|
128
|
}
|
125
|
129
|
},
|
126
|
130
|
methods:{
|
127
|
131
|
printAction: function() {
|
128
|
|
- const style = '@media print { .print_main_content { background-color: white; width:960px; margin:0 auto; padding: 0 0 20px 0; } .order_title_panl { text-align: center; } .main_title { font-size: 18px; line-height: 40px; font-weight: 500; } .table_panel { } .table { width: 100%; border: 1px solid; border-collapse: collapse; padding: 2px; } thead tr td { border: 1px solid; text-align: center; font-size: 16px; padding: 15px 5px; } tbody tr td { border: 1px solid; text-align: center; font-size: 16px; padding: 10px 5px; white-space: pre-line;} .proj { padding: 5px 0; text-align: left; } .proj_title { font-size: 16px; font-weight: 500; line-height: 25px; } .proj_item { font-size: 15px; line-height: 20px; } .zone_name { font-weight: 500; } }'
|
|
132
|
+ const style = '@media print { .print_main_content { background-color: white; width:960px; margin:0 auto; padding: 0 0 20px 0; } .order_title_panl { text-align: center; } .main_title { font-size: 18px; line-height: 40px; font-weight: 500; } .table_panel { } .table { width: 100%; border: 1px solid; border-collapse: collapse; padding: 2px; } thead tr td { border: 1px solid; text-align: center; font-size: 16px; padding: 1px 5px; } tbody tr td { border: 1px solid; text-align: center; font-size: 16px; padding: 10px 5px; white-space: pre-line;} .proj { padding: 5px 0; text-align: left; } .proj_title { font-size: 16px; font-weight: 500; line-height: 25px; } .proj_item { font-size: 15px; line-height: 20px; } .zone_name { font-weight: 500; } }'
|
129
|
133
|
printJS({
|
130
|
134
|
printable: 'print_content',
|
131
|
135
|
type: 'html',
|
|
@@ -145,6 +149,18 @@ export default {
|
145
|
149
|
this.dealer = response.data.data.dealer;
|
146
|
150
|
this.goodInfo = response.data.data.goodInfo;
|
147
|
151
|
this.goodType = response.data.data.goodType;
|
|
152
|
+
|
|
153
|
+ for(let i=0;i<this.goodInfo.length;i++){
|
|
154
|
+ this.goodInfo[i].manufacturer_name = ""
|
|
155
|
+ }
|
|
156
|
+ for(let i=0;i<this.goodInfo.length;i++){
|
|
157
|
+ for(let j=0;j<this.manufacturer.length;j++){
|
|
158
|
+ if(this.goodInfo[i].manufacturer == this.manufacturer[j].id){
|
|
159
|
+ this.goodInfo[i].manufacturer_name = this.manufacturer[j].manufacturer_name
|
|
160
|
+ }
|
|
161
|
+ }
|
|
162
|
+ }
|
|
163
|
+ console.log("商品信息",this.goodInfo)
|
148
|
164
|
}
|
149
|
165
|
});
|
150
|
166
|
},
|
|
@@ -243,19 +259,67 @@ export default {
|
243
|
259
|
}
|
244
|
260
|
return ""
|
245
|
261
|
},
|
246
|
|
- getManufacturer(id){
|
247
|
|
- let name = ''
|
248
|
|
- this.manufacturer.map(item => {
|
249
|
|
- if(item.id == id){
|
250
|
|
- name = item.manufacturer_name
|
|
262
|
+ // getManufacturer(id){
|
|
263
|
+ // let name = ''
|
|
264
|
+ // this.manufacturer.map(item => {
|
|
265
|
+ // if(item.id == id){
|
|
266
|
+ // name = item.manufacturer_name
|
|
267
|
+ // }
|
|
268
|
+ // })
|
|
269
|
+ // return name
|
|
270
|
+ // },
|
|
271
|
+ getManufacturer(id){
|
|
272
|
+ let name = ""
|
|
273
|
+ for(let i=0;i<this.goodInfo.length;i++){
|
|
274
|
+ if(id == this.goodInfo[i].id){
|
|
275
|
+ name =this.goodInfo[i].manufacturer_name
|
|
276
|
+ }
|
|
277
|
+ }
|
|
278
|
+ return name
|
|
279
|
+ },
|
|
280
|
+ fetchAllAdminUsers() {
|
|
281
|
+ fetchAllAdminUsers().then(response => {
|
|
282
|
+ console.log(response);
|
|
283
|
+ if (response.data.state == 1) {
|
|
284
|
+ this.adminUserOptions = response.data.data.users;
|
|
285
|
+ var alen = this.adminUserOptions.length;
|
|
286
|
+ for (let index = 0; index < alen; index++) {
|
|
287
|
+ if (this.adminUserOptions[index].user_type == 2) {
|
|
288
|
+ // this.doctorOptions.push(this.adminUserOptions[index]);
|
|
289
|
+ }
|
|
290
|
+ }
|
251
|
291
|
}
|
252
|
|
- })
|
253
|
|
- return name
|
254
|
|
- }
|
|
292
|
+ });
|
|
293
|
+ },
|
|
294
|
+ getXuserName(id) {
|
|
295
|
+ if (id <= 0) {
|
|
296
|
+ return "";
|
|
297
|
+ }
|
|
298
|
+ var name = "";
|
|
299
|
+ if (
|
|
300
|
+ this.adminUserOptions == null ||
|
|
301
|
+ typeof this.adminUserOptions.length === "undefined"
|
|
302
|
+ ) {
|
|
303
|
+ return name;
|
|
304
|
+ }
|
|
305
|
+ var leng = this.adminUserOptions.length;
|
|
306
|
+ if (leng == 0) {
|
|
307
|
+ return name;
|
|
308
|
+ }
|
|
309
|
+ for (let index = 0; index < leng; index++) {
|
|
310
|
+ if (this.adminUserOptions[index].id == id) {
|
|
311
|
+ name = this.adminUserOptions[index].name;
|
|
312
|
+ break;
|
|
313
|
+ }
|
|
314
|
+ }
|
|
315
|
+ return name;
|
|
316
|
+ },
|
255
|
317
|
},
|
256
|
318
|
created(){
|
257
|
|
-
|
|
319
|
+ this.orgName = this.$store.getters.xt_user.org.org_name;
|
|
320
|
+ this.orgId = this.$store.getters.xt_user.org.id;
|
258
|
321
|
const order_id = this.$route.query.id;
|
|
322
|
+ this.fetchAllAdminUsers()
|
259
|
323
|
this.GetConfigInfo();
|
260
|
324
|
this.GetOrderDetail(order_id);
|
261
|
325
|
this.getList()
|
|
@@ -294,7 +358,7 @@ export default {
|
294
|
358
|
border: 1px solid;
|
295
|
359
|
text-align: center;
|
296
|
360
|
font-size: 18px;
|
297
|
|
- padding: 15px 5px;
|
|
361
|
+ padding: 1px 5px;
|
298
|
362
|
}
|
299
|
363
|
}
|
300
|
364
|
}
|