doctor-admin-components 1.0.14-beta.2 → 1.0.14-beta.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -1
- package/package.json +1 -1
- package/packages/index.js +0 -1
- package/packages/src/utils/zip.js +29 -11
- package/packages/src/views/biz/bizFileInfo/contract.vue +482 -361
- package/packages/src/views/biz/bizFileInfo/contractFile/BillOfLadingNoTab.vue +9 -7
- package/packages/src/views/biz/bizFileInfo/contractFile/IMGPreviewCheckBox.vue +22 -6
- package/packages/src/views/biz/bizFileInfo/contractFile/SectionSlot.vue +11 -3
- package/packages/src/views/biz/bizFileInfo/fileShow.vue +11 -3
- package/packages/src/views/biz/bizShipment/add.vue +21 -10
- package/packages/src/views/biz/contractTracing/companyBanks.vue +15 -5
- package/packages/src/views/biz/contractTracing/contractPdf.vue +2 -7
- package/packages/src/views/biz/contractTracing/contractTracingDetail.vue +5 -77
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
-->
|
|
9
9
|
<template>
|
|
10
10
|
<div class="bill-no-root" :style="open ? 'height:max-content': ''">
|
|
11
|
-
<div :class="'bill-no'" :style="shipmentIndex == shipBillNo ? { color: progressInfo.bgcolor } : ''" v-for="(
|
|
11
|
+
<div :class="'bill-no'" :style="shipmentIndex == shipBillNo ? { color:'white', fontSize: '16px', backgroundColor: progressInfo.bgcolor, border: '0' } : { color: '#231F20', fontSize: '14px', border: '1px solid #231F20', backgroundColor:'transparent' }" v-for="(
|
|
12
12
|
shipmentFileInfo, shipmentIndex
|
|
13
13
|
) in contractFileInfoData.shipmentFileInfoList" :key="shipmentIndex" @click="changeShipBillNo(shipmentIndex)">
|
|
14
14
|
|
|
@@ -81,10 +81,9 @@ export default {
|
|
|
81
81
|
.bill-no-root {
|
|
82
82
|
display: flex;
|
|
83
83
|
flex-wrap: wrap;
|
|
84
|
-
padding:0 20px;
|
|
85
84
|
width:100%;
|
|
86
85
|
position:relative;
|
|
87
|
-
height:
|
|
86
|
+
height:55px;
|
|
88
87
|
overflow:hidden;
|
|
89
88
|
|
|
90
89
|
.billOfLadingNo-more {
|
|
@@ -99,11 +98,14 @@ export default {
|
|
|
99
98
|
}
|
|
100
99
|
|
|
101
100
|
.bill-no {
|
|
102
|
-
width:23%;
|
|
103
101
|
font-size: 14px;
|
|
104
|
-
color: #
|
|
105
|
-
padding:
|
|
106
|
-
|
|
102
|
+
color: #231F20;
|
|
103
|
+
padding: 0 10px;
|
|
104
|
+
height: 40px;
|
|
105
|
+
align-content: center;
|
|
106
|
+
border-radius: 8px;
|
|
107
|
+
margin-right: 30px;
|
|
108
|
+
margin-bottom: 15px;
|
|
107
109
|
}
|
|
108
110
|
|
|
109
111
|
.bill-no-active {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author: zhangpengwei@1338418459736990.onaliyun.com zhangpengwei@1338418459736990.onaliyun.com
|
|
3
3
|
* @Date: 2024-02-26 10:03:01
|
|
4
4
|
* @LastEditors: zhangpengwei@1338418459736990.onaliyun.com zhangpengwei@1338418459736990.onaliyun.com
|
|
5
|
-
* @LastEditTime: 2024-
|
|
5
|
+
* @LastEditTime: 2024-07-25 18:37:49
|
|
6
6
|
* @FilePath: /doctor-admin-components 公共组件/packages/src/views/biz/bizFileInfo/IMGPreviewCheckBox.vue
|
|
7
7
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
|
8
8
|
-->
|
|
@@ -64,7 +64,8 @@ export default {
|
|
|
64
64
|
imgList: [],
|
|
65
65
|
srcList:[],
|
|
66
66
|
loadingInstance: null,
|
|
67
|
-
timer: null
|
|
67
|
+
timer: null,
|
|
68
|
+
hasClicked: false,
|
|
68
69
|
};
|
|
69
70
|
},
|
|
70
71
|
|
|
@@ -87,6 +88,17 @@ export default {
|
|
|
87
88
|
checkClick(index) {
|
|
88
89
|
this.imgList[index].checked = !this.imgList[index].checked;
|
|
89
90
|
},
|
|
91
|
+
clickSelectAll() {
|
|
92
|
+
this.hasClicked = !this.hasClicked
|
|
93
|
+
if (this.hasClicked) {
|
|
94
|
+
this.checkAll1()
|
|
95
|
+
} else {
|
|
96
|
+
this.cancelAll1()
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
hasSelectAll() {
|
|
100
|
+
return !this.hasClicked
|
|
101
|
+
},
|
|
90
102
|
checkAll1() {
|
|
91
103
|
this.imgList.forEach((item) => {
|
|
92
104
|
item.checked = true;
|
|
@@ -192,9 +204,9 @@ export default {
|
|
|
192
204
|
watch: {
|
|
193
205
|
imgArr: {
|
|
194
206
|
handler(val) {
|
|
207
|
+
this.imgList = [];
|
|
208
|
+
this.srcList = [];
|
|
195
209
|
if(val.length) {
|
|
196
|
-
this.imgList = [];
|
|
197
|
-
this.srcList = [];
|
|
198
210
|
val.forEach((item) => {
|
|
199
211
|
let coverUrl = this.othersFile(item.url)
|
|
200
212
|
this.imgList.push({
|
|
@@ -204,6 +216,9 @@ export default {
|
|
|
204
216
|
});
|
|
205
217
|
this.srcList.push(coverUrl);
|
|
206
218
|
});
|
|
219
|
+
} else {
|
|
220
|
+
this.imgList = []
|
|
221
|
+
this.srcList = []
|
|
207
222
|
}
|
|
208
223
|
},
|
|
209
224
|
deep: true,
|
|
@@ -288,7 +303,7 @@ export default {
|
|
|
288
303
|
.batch-download {
|
|
289
304
|
position: absolute;
|
|
290
305
|
top: -41px;
|
|
291
|
-
left:
|
|
306
|
+
left: 650px;
|
|
292
307
|
min-width: 80px;
|
|
293
308
|
width:max-content;
|
|
294
309
|
padding:0 10px;
|
|
@@ -297,11 +312,12 @@ export default {
|
|
|
297
312
|
text-align: center;
|
|
298
313
|
border-radius: 10px;
|
|
299
314
|
background-color: #54B8FF;
|
|
315
|
+
color: white;
|
|
300
316
|
cursor: pointer;
|
|
301
317
|
font-size:12px;
|
|
302
318
|
}
|
|
303
319
|
.batch-delete {
|
|
304
|
-
left:
|
|
320
|
+
left: 740px;
|
|
305
321
|
}
|
|
306
322
|
}
|
|
307
323
|
|
|
@@ -8,14 +8,14 @@
|
|
|
8
8
|
-->
|
|
9
9
|
<template>
|
|
10
10
|
<div>
|
|
11
|
-
<div>
|
|
11
|
+
<div @click="clickOpen">
|
|
12
12
|
<slot name="header"></slot>
|
|
13
13
|
</div>
|
|
14
14
|
<div class="slot-content-root" :style="{backgroundColor:info.bgcolor}">
|
|
15
15
|
<div :style="open ? 'height:max-content' : 'height:0;overflow:hidden'">
|
|
16
16
|
<slot name="content"></slot>
|
|
17
17
|
</div>
|
|
18
|
-
<div class="arrow" @click="
|
|
18
|
+
<div class="arrow" @click="clickOpen">
|
|
19
19
|
<i v-if="open" class="el-icon-arrow-up"></i>
|
|
20
20
|
<i v-else class="el-icon-arrow-down"></i>
|
|
21
21
|
</div>
|
|
@@ -46,7 +46,14 @@ export default {
|
|
|
46
46
|
},
|
|
47
47
|
|
|
48
48
|
methods: {
|
|
49
|
-
|
|
49
|
+
// 设置状态
|
|
50
|
+
setOpen(isOpen) {
|
|
51
|
+
this.open = isOpen
|
|
52
|
+
},
|
|
53
|
+
clickOpen() {
|
|
54
|
+
this.open = !this.open
|
|
55
|
+
this.$emit('updateOpen', this.open)
|
|
56
|
+
}
|
|
50
57
|
},
|
|
51
58
|
watch: {
|
|
52
59
|
infoPro: {
|
|
@@ -64,6 +71,7 @@ export default {
|
|
|
64
71
|
|
|
65
72
|
.slot-content-root {
|
|
66
73
|
padding-bottom:25px;
|
|
74
|
+
margin-bottom: 30px;
|
|
67
75
|
background-color: #fff;
|
|
68
76
|
position: relative;
|
|
69
77
|
.arrow {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="file-info" v-if="fileInfo.url">
|
|
3
3
|
<div class="main">
|
|
4
|
-
<el-checkbox v-if="!this.hiddenOperation" label="" class="checkbox-position" @change="handleCheck" v-model="checkFlag">
|
|
4
|
+
<el-checkbox v-if="!this.hiddenOperation && !hiddenSelect" label="" class="checkbox-position" @change="handleCheck" v-model="checkFlag">
|
|
5
5
|
</el-checkbox>
|
|
6
6
|
<div class="area">
|
|
7
7
|
<div class="area-info">
|
|
@@ -109,10 +109,18 @@ export default {
|
|
|
109
109
|
type: Boolean,
|
|
110
110
|
default: false,
|
|
111
111
|
},
|
|
112
|
+
hiddenSelect: {
|
|
113
|
+
type: Boolean,
|
|
114
|
+
default: false,
|
|
115
|
+
},
|
|
112
116
|
type: {
|
|
113
117
|
type: String,
|
|
114
118
|
default: '',
|
|
115
119
|
},
|
|
120
|
+
deleteTips: {
|
|
121
|
+
type: String,
|
|
122
|
+
default: null,
|
|
123
|
+
},
|
|
116
124
|
},
|
|
117
125
|
data() {
|
|
118
126
|
return {
|
|
@@ -129,7 +137,7 @@ export default {
|
|
|
129
137
|
form: {},
|
|
130
138
|
//上传表单
|
|
131
139
|
uploadForm: {},
|
|
132
|
-
checkFlag: false
|
|
140
|
+
checkFlag: false,
|
|
133
141
|
}
|
|
134
142
|
},
|
|
135
143
|
computed: {
|
|
@@ -203,7 +211,7 @@ export default {
|
|
|
203
211
|
handleDelete(row) {
|
|
204
212
|
const fileIds = row.fileId || this.ids
|
|
205
213
|
this.$modal
|
|
206
|
-
.confirm('是否确认删除该文件?')
|
|
214
|
+
.confirm(this.deleteTips || '是否确认删除该文件?')
|
|
207
215
|
.then(function () {
|
|
208
216
|
return delBizFileInfo(fileIds)
|
|
209
217
|
})
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
<!-- 添加或修改装运对话框 -->
|
|
4
4
|
<el-dialog :visible.sync="open" z-index="1000" width="80%" :before-close="handleClose" :title="title">
|
|
5
5
|
<slot name="">
|
|
6
|
+
<span v-if="isDraft" style="color: red">提示: 当前打开了【{{ form.lastUpdateUserName }}】在【{{ form.updateTime }}】保存的装运草稿</span>
|
|
6
7
|
<span v-if="voidInvoiceList" style="color: red">【快捷转卖】:系统检测到此销售合同关联的采购合同存在【已作废】的装运,</span>
|
|
7
8
|
<el-button v-if="voidInvoiceList" @click="handleReference" size="mini" type="text">点击这里直接复制并引用</el-button>
|
|
8
9
|
</slot>
|
|
@@ -244,7 +245,13 @@
|
|
|
244
245
|
:rules="rules.packageNetWeight"
|
|
245
246
|
:prop="'containerList.' + index + '.containerDetailList.' + scope1.$index + '.packageList.' + scope2.$index + '.packageNetWeight'"
|
|
246
247
|
>
|
|
247
|
-
<el-input
|
|
248
|
+
<el-input
|
|
249
|
+
v-model="scope2.row.packageNetWeight"
|
|
250
|
+
placeholder="请输入净重"
|
|
251
|
+
size="mini"
|
|
252
|
+
type="number"
|
|
253
|
+
@input="limitDecimalPlaces(index, scope1.$index, scope2.$index, scope2.row, 'packageNetWeight')"
|
|
254
|
+
></el-input>
|
|
248
255
|
</el-form-item>
|
|
249
256
|
</template>
|
|
250
257
|
</el-table-column>
|
|
@@ -384,7 +391,7 @@
|
|
|
384
391
|
</el-row>
|
|
385
392
|
</el-form>
|
|
386
393
|
<div slot="footer" class="dialog-footer">
|
|
387
|
-
<el-button type="warning" @click="onSaveDraft" style="margin-right: 10px">保存草稿</el-button>
|
|
394
|
+
<el-button type="warning" @click="onSaveDraft" style="margin-right: 10px" v-if="title === '生成装运'">保存草稿</el-button>
|
|
388
395
|
<el-button type="primary" @click="submitShipment" style="margin-right: 10px">{{ title == '生成装运' ? '仅生成装运' : '保存草稿' }}</el-button>
|
|
389
396
|
<el-dropdown @command="(command) => handleTemplate(command)" trigger="click" v-if="title == '生成装运'" style="margin-right: 10px">
|
|
390
397
|
<el-button type="primary">{{ '装运并下载' }}</el-button>
|
|
@@ -547,7 +554,8 @@ export default {
|
|
|
547
554
|
//编辑开关
|
|
548
555
|
editSwitch: false,
|
|
549
556
|
//
|
|
550
|
-
currentRow: null
|
|
557
|
+
currentRow: null,
|
|
558
|
+
isDraft: false
|
|
551
559
|
}
|
|
552
560
|
},
|
|
553
561
|
props: {
|
|
@@ -674,15 +682,15 @@ export default {
|
|
|
674
682
|
},
|
|
675
683
|
|
|
676
684
|
limitDecimalPlaces(index, scope1Index, scope2Index, data, type) {
|
|
677
|
-
let value = data[type]
|
|
678
|
-
const decimalPlaces = 3
|
|
685
|
+
let value = data[type]
|
|
686
|
+
const decimalPlaces = 3
|
|
679
687
|
if (!isNaN(value)) {
|
|
680
|
-
value = parseFloat(value).toFixed(decimalPlaces)
|
|
681
|
-
value = parseFloat(value).toString()
|
|
682
|
-
data[type] = value
|
|
688
|
+
value = parseFloat(value).toFixed(decimalPlaces)
|
|
689
|
+
value = parseFloat(value).toString()
|
|
690
|
+
data[type] = value
|
|
683
691
|
}
|
|
684
692
|
if (type == 'packageGrossWeight') {
|
|
685
|
-
this.changePackageGrossWeight(index, scope1Index, scope2Index)
|
|
693
|
+
this.changePackageGrossWeight(index, scope1Index, scope2Index)
|
|
686
694
|
} else if (type == 'packageTareWeight') {
|
|
687
695
|
this.changePackageTareWeight(index, scope1Index, scope2Index)
|
|
688
696
|
} else if (type == 'packageNetWeight') {
|
|
@@ -1299,11 +1307,14 @@ export default {
|
|
|
1299
1307
|
}
|
|
1300
1308
|
},
|
|
1301
1309
|
async onGetDraft() {
|
|
1302
|
-
if(this.form.contractIds) {
|
|
1310
|
+
if (this.form.contractIds) {
|
|
1303
1311
|
const contractId = this.form.contractIds[0]
|
|
1304
1312
|
const res = await getDraft(contractId)
|
|
1305
1313
|
if (res.data) {
|
|
1314
|
+
this.isDraft = true
|
|
1306
1315
|
this.form = res.data
|
|
1316
|
+
} else {
|
|
1317
|
+
this.isDraft = false
|
|
1307
1318
|
}
|
|
1308
1319
|
}
|
|
1309
1320
|
}
|
|
@@ -34,15 +34,18 @@
|
|
|
34
34
|
<el-col :span="24">
|
|
35
35
|
<div class="bank-item">Beneficiary Address:{{ bankData.beneficiaryAddress }}</div>
|
|
36
36
|
</el-col>
|
|
37
|
+
<el-col :span="24">
|
|
38
|
+
<div class="bank-item" style="display:flex;"><p>Remark:</p><p style="white-space: pre-wrap;">{{ bankData.remark }}</p></div>
|
|
39
|
+
</el-col>
|
|
37
40
|
</el-row>
|
|
38
41
|
</div>
|
|
39
42
|
<!-- 添加入口 -->
|
|
40
43
|
<div v-if="!bankList || bankList.length == 0" style="padding-left: 30px; padding-top: 10px">
|
|
41
44
|
<span>未添加收款账户信息,</span>
|
|
42
|
-
<el-button type="text" size="mini" @click="clickAdd">去添加</el-button>
|
|
45
|
+
<el-button type="text" size="mini" v-hasPermi="['biz:company:payment:account:add']" @click="clickAdd">去添加</el-button>
|
|
43
46
|
</div>
|
|
44
47
|
<div v-else-if="bankList && bankList.length < 3" style="padding-left: 30px; padding-top: 10px">
|
|
45
|
-
<el-button type="text" size="mini" @click="clickAdd">去添加</el-button>
|
|
48
|
+
<el-button type="text" size="mini" @click="clickAdd" v-hasPermi="['biz:company:payment:account:add']">去添加</el-button>
|
|
46
49
|
<span>收款账户信息</span>
|
|
47
50
|
</div>
|
|
48
51
|
<!-- 添加收款账户弹框 -->
|
|
@@ -79,6 +82,11 @@
|
|
|
79
82
|
<el-input maxlength="500" v-model="form.beneficiaryAddress" placeholder="请输入内容" />
|
|
80
83
|
</el-form-item>
|
|
81
84
|
</el-col>
|
|
85
|
+
<el-col :span="18">
|
|
86
|
+
<el-form-item label="Remark" label-width="150px">
|
|
87
|
+
<el-input maxlength="500" type="textarea" rows="4" v-model="form.remark" placeholder="请输入内容" />
|
|
88
|
+
</el-form-item>
|
|
89
|
+
</el-col>
|
|
82
90
|
</el-row>
|
|
83
91
|
</el-form>
|
|
84
92
|
<div slot="footer" class="dialog-footer">
|
|
@@ -137,7 +145,8 @@ export default {
|
|
|
137
145
|
bankAddress: null,
|
|
138
146
|
beneficiaryAccount: null,
|
|
139
147
|
beneficiary: null,
|
|
140
|
-
beneficiaryAddress: null
|
|
148
|
+
beneficiaryAddress: null,
|
|
149
|
+
remark: null,
|
|
141
150
|
},
|
|
142
151
|
rules: {}
|
|
143
152
|
}
|
|
@@ -154,7 +163,8 @@ export default {
|
|
|
154
163
|
bankAddress: null,
|
|
155
164
|
beneficiaryAccount: null,
|
|
156
165
|
beneficiary: null,
|
|
157
|
-
beneficiaryAddress: null
|
|
166
|
+
beneficiaryAddress: null,
|
|
167
|
+
remark: null,
|
|
158
168
|
}
|
|
159
169
|
},
|
|
160
170
|
handleCaclSelectIndex() {
|
|
@@ -194,7 +204,7 @@ export default {
|
|
|
194
204
|
},
|
|
195
205
|
clickConfirm() {
|
|
196
206
|
let e = this.form
|
|
197
|
-
if (!(e.swiftCode || e.bankName || e.bankAddress || e.beneficiaryAccount || e.beneficiary || e.beneficiaryAddress)) {
|
|
207
|
+
if (!(e.swiftCode || e.bankName || e.bankAddress || e.beneficiaryAccount || e.beneficiary || e.beneficiaryAddress || e.remark)) {
|
|
198
208
|
this.$modal.msgError('请输入内容')
|
|
199
209
|
return
|
|
200
210
|
}
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
{{ contract.contractType == 'sale' ? 'Sales Order #:' : 'Purchase Order' }}
|
|
12
12
|
</el-col>
|
|
13
13
|
<el-col :span="7">{{ contract.contractNo }}</el-col>
|
|
14
|
-
<el-col :span="5">
|
|
14
|
+
<el-col :span="5">Reference#: {{ contract.reference }}</el-col>
|
|
15
15
|
<el-col :span="7"></el-col>
|
|
16
16
|
</el-row>
|
|
17
17
|
<div>
|
|
@@ -109,12 +109,7 @@
|
|
|
109
109
|
<el-descriptions-item label="Service Fee">{{ contract.serviceFee }}</el-descriptions-item>
|
|
110
110
|
<el-descriptions-item label="Freight Terms">{{ contract.freightTerms }}</el-descriptions-item>
|
|
111
111
|
<el-descriptions-item label="Payment Terms">
|
|
112
|
-
|
|
113
|
-
<span v-if="contract.deposit"> Deposit ratio {{ contract.deposit }}% {{ contract.depositDays }} days {{ contract.depositPaymentForm }} and </span>
|
|
114
|
-
{{ contract.balance }}% balance {{ contract.balancePaymentType }} paid {{ contract.balanceDays }} days {{ contract.balancePaymentForm }}
|
|
115
|
-
{{ contract.otherPaymentTerm }}
|
|
116
|
-
</div>
|
|
117
|
-
<div v-else>{{ contract.otherPaymentTerm }}</div>
|
|
112
|
+
{{ contract.paymentTermFullText }}
|
|
118
113
|
</el-descriptions-item>
|
|
119
114
|
<el-descriptions-item label="Price Fixing Option">
|
|
120
115
|
<div v-if="contract.livePriceSwitch">
|
|
@@ -12,31 +12,22 @@
|
|
|
12
12
|
<div class="app-container-left">
|
|
13
13
|
<div class="contract-number">
|
|
14
14
|
<div>{{ $t('contractDetail.Contract_No') }}</div>
|
|
15
|
-
<div>{{ contract.contractNo }}</div>
|
|
15
|
+
<div style="word-wrap: break-word;">{{ contract.contractNo }}</div>
|
|
16
16
|
</div>
|
|
17
17
|
<div class="contract-number">
|
|
18
18
|
<div>
|
|
19
19
|
<span>{{$t('contractDetail.Reference_No')}}</span>
|
|
20
20
|
<el-button size="mini" type="text" icon="el-icon-edit" @click="clickEditReference"></el-button>
|
|
21
21
|
</div>
|
|
22
|
-
<div>{{ contract.reference || '--' }}</div>
|
|
22
|
+
<div style="word-wrap: break-word;">{{ contract.reference || '--' }}</div>
|
|
23
23
|
</div>
|
|
24
24
|
<div class="tab-root">
|
|
25
25
|
<div :class="['tab', activeName == tabsItem.name ? 'active' : '']" v-for="tabsItem in saleTabsArr" :key="tabsItem.id" @click="changeTabs(tabsItem)">
|
|
26
26
|
{{ tabsItem.label }}
|
|
27
27
|
</div>
|
|
28
28
|
</div>
|
|
29
|
-
<div>
|
|
30
|
-
<!-- 选择项 -->
|
|
31
|
-
<div class="selection-root">
|
|
32
|
-
<span>{{ $t('contractDetail.Selected') }} {{ selectFileList.length }} {{ $t('contractDetail.item') }}</span>
|
|
33
|
-
<div class="border-button" @click.stop="downLoadAll">{{ $t('contractDetail.Download_All') }}</div>
|
|
34
|
-
<div class="border-button" @click.stop="deleteAll">{{ $t('contractDetail.Delete_All') }}</div>
|
|
35
|
-
<div class="border-button" @click.stop="cancelAll">{{ $t('contractDetail.Deselect') }}</div>
|
|
36
|
-
</div>
|
|
37
|
-
</div>
|
|
38
29
|
</div>
|
|
39
|
-
<div class="app-container-right">
|
|
30
|
+
<div class="app-container-right" :style="activeName == 'fourth' ? 'overflow:visible' : 'overflow:auto'">
|
|
40
31
|
<contract-summary v-if="activeName == 'first'" :channel="channel"></contract-summary>
|
|
41
32
|
<contract-info v-if="activeName == 'second'" :channel="channel"></contract-info>
|
|
42
33
|
<!-- 提单指令 -->
|
|
@@ -54,7 +45,6 @@
|
|
|
54
45
|
:contract="contract"
|
|
55
46
|
:channel="channel"
|
|
56
47
|
:buyerFlag="buyerFlag"
|
|
57
|
-
:selectFileListProp="selectFileList"
|
|
58
48
|
ref="contractFileRef"
|
|
59
49
|
></contract-file>
|
|
60
50
|
</div>
|
|
@@ -106,7 +96,6 @@ import ContractSummary from './contractSummary.vue'
|
|
|
106
96
|
import BillInfo from './billInfo.vue'
|
|
107
97
|
import ContractFile from '../bizFileInfo/contract.vue'
|
|
108
98
|
import ContractInfo from './contractInfo.vue'
|
|
109
|
-
import { delBizFileInfo } from '../../../api/biz/bizFileInfo'
|
|
110
99
|
|
|
111
100
|
export default {
|
|
112
101
|
name: 'ContractTracingDetail',
|
|
@@ -165,7 +154,6 @@ export default {
|
|
|
165
154
|
}
|
|
166
155
|
],
|
|
167
156
|
|
|
168
|
-
selectFileList: [],
|
|
169
157
|
// 提单指令列表
|
|
170
158
|
blList: null,
|
|
171
159
|
activeBillIndex: null
|
|
@@ -205,46 +193,7 @@ export default {
|
|
|
205
193
|
console.log(e)
|
|
206
194
|
})
|
|
207
195
|
},
|
|
208
|
-
|
|
209
|
-
* @description: 取消全部选择
|
|
210
|
-
* @return {*}
|
|
211
|
-
*/
|
|
212
|
-
cancelAll() {
|
|
213
|
-
this.$refs.contractFileRef.cancelAllSelectFileList()
|
|
214
|
-
},
|
|
215
|
-
|
|
216
|
-
/**
|
|
217
|
-
* @description: 全部下载
|
|
218
|
-
* @return {*}
|
|
219
|
-
*/
|
|
220
|
-
downLoadAll() {
|
|
221
|
-
if (this.selectFileList.length == 0) {
|
|
222
|
-
return this.$message.warning(this.$t('contractDetail.please_select_file'))
|
|
223
|
-
}
|
|
224
|
-
this.$refs.contractFileRef.downloadZip()
|
|
225
|
-
},
|
|
226
|
-
deleteAll() {
|
|
227
|
-
console.log('==delBizFileInfo==', this.selectFileList)
|
|
228
|
-
if (this.selectFileList.length == 0) {
|
|
229
|
-
return this.$message.warning(this.$t('contractDetail.please_select_file'))
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
this.$confirm('是否删除选中文件', '提示', {
|
|
233
|
-
confirmButtonText: '确定',
|
|
234
|
-
cancelButtonText: '取消',
|
|
235
|
-
type: 'warning'
|
|
236
|
-
})
|
|
237
|
-
.then(() => {
|
|
238
|
-
const ids = this.selectFileList.map((item) => item.fileId)
|
|
239
|
-
delBizFileInfo(ids).then(() => {
|
|
240
|
-
this.$message.success('删除成功')
|
|
241
|
-
this.$refs.contractFileRef.handleRefresh()
|
|
242
|
-
})
|
|
243
|
-
})
|
|
244
|
-
.catch(() => {
|
|
245
|
-
this.$message.info('已取消删除')
|
|
246
|
-
})
|
|
247
|
-
},
|
|
196
|
+
|
|
248
197
|
/**
|
|
249
198
|
* @description: 切换tab
|
|
250
199
|
* @param {*} tab
|
|
@@ -329,29 +278,8 @@ export default {
|
|
|
329
278
|
height: 100%;
|
|
330
279
|
overflow: auto;
|
|
331
280
|
}
|
|
281
|
+
|
|
332
282
|
}
|
|
333
283
|
}
|
|
334
284
|
|
|
335
|
-
.selection-root {
|
|
336
|
-
margin-top: 26px;
|
|
337
|
-
display: flex;
|
|
338
|
-
flex-direction: column;
|
|
339
|
-
justify-content: center;
|
|
340
|
-
align-items: center;
|
|
341
|
-
margin-bottom: 20px;
|
|
342
|
-
}
|
|
343
|
-
|
|
344
|
-
.border-button {
|
|
345
|
-
margin-top: 10px;
|
|
346
|
-
padding: 0 10px;
|
|
347
|
-
width: max-content;
|
|
348
|
-
height: 21px;
|
|
349
|
-
text-align: center;
|
|
350
|
-
line-height: 17px;
|
|
351
|
-
background: #ffffff;
|
|
352
|
-
border-radius: 11px;
|
|
353
|
-
font-size: 12px;
|
|
354
|
-
border: 2px solid #d1d3d4;
|
|
355
|
-
cursor: pointer;
|
|
356
|
-
}
|
|
357
285
|
</style>
|