doctor-admin-components 1.0.13-beta.9 → 1.0.13-beta.90
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 +28 -9
- package/package.json +1 -1
- package/packages/index.js +10 -0
- package/packages/src/api/biz/bizContract.js +996 -1
- package/packages/src/api/biz/bizContractCompany.js +1 -1
- package/packages/src/api/biz/bizFileInfo.js +16 -0
- package/packages/src/api/biz/bizInvoice.js +1 -1
- package/packages/src/api/biz/bizShipment.js +18 -0
- package/packages/src/assets/images/click-show-table.png +0 -0
- package/packages/src/assets/images/more.png +0 -0
- package/packages/src/assets/images/pdf-new.png +0 -0
- package/packages/src/components/DictTag/index.vue +12 -2
- package/packages/src/components/FileUpload/contract-drag-new.vue +99 -10
- package/packages/src/i18n/en/message.json +305 -0
- package/packages/src/i18n/index.js +38 -0
- package/packages/src/i18n/zh-CN/message.json +305 -0
- package/packages/src/index.js +13 -1
- package/packages/src/utils/index.js +35 -0
- package/packages/src/utils/request.js +120 -146
- package/packages/src/views/biz/bizFileInfo/PAYMENT_VOUCHER(/"payment_voucher/", /"/344/273/230/346/254/276/345/207/255/350/257/201.ini" +222 -0
- package/packages/src/views/biz/bizFileInfo/contract copy.vue +1711 -0
- package/packages/src/views/biz/bizFileInfo/contract.vue +1781 -986
- package/packages/src/views/biz/bizFileInfo/contractFile/BillOfLadingNoTab.vue +114 -0
- package/packages/src/views/biz/bizFileInfo/contractFile/ContentTitle.vue +102 -0
- package/packages/src/views/biz/bizFileInfo/contractFile/IMGPreviewCheckBox.vue +308 -0
- package/packages/src/views/biz/bizFileInfo/contractFile/Progress.vue +85 -0
- package/packages/src/views/biz/bizFileInfo/contractFile/ProgressDetail.vue +123 -0
- package/packages/src/views/biz/bizFileInfo/contractFile/SectionSlot.vue +83 -0
- package/packages/src/views/biz/bizFileInfo/contractFile/ShowAndHide.vue +178 -0
- package/packages/src/views/biz/bizFileInfo/fileShow copy.vue +321 -0
- package/packages/src/views/biz/bizFileInfo/fileShow.vue +143 -47
- package/packages/src/views/biz/bizFileInfo/fileShowClaim.vue +1 -1
- package/packages/src/views/biz/bizShipment/add.vue +223 -75
- package/packages/src/views/biz/bizShipment/referenceAlert.vue +168 -0
- package/packages/src/views/biz/contractTracing/addSubCompany.vue +106 -169
- package/packages/src/views/biz/contractTracing/billInfo.vue +191 -332
- package/packages/src/views/biz/contractTracing/companyBanks.vue +228 -0
- package/packages/src/views/biz/contractTracing/contractInfo.vue +1 -1
- package/packages/src/views/biz/contractTracing/contractPdf.vue +7 -4
- package/packages/src/views/biz/contractTracing/contractSummary.vue +20 -7
- package/packages/src/views/biz/contractTracing/contractTracingDetail copy.vue +107 -0
- package/packages/src/views/biz/contractTracing/contractTracingDetail.vue +229 -9
- package/packages/src/views/biz/contractTracing/editBill.vue +236 -363
- package/packages/src/views/biz/contractTracing/purchaseInvoiceUpload.vue +153 -7
- package/packages/src/views/biz/contractTracing/shipmentPurchaseAmount.vue +8 -2
- package/packages/src/views/biz/contractTracing/subCompanyDialog.vue +202 -176
- package/packages/src/views/components/RegionPicker/Distpicker.vue +459 -0
- package/packages/src/views/components/RegionPicker/districts.js +4641 -0
- package/packages/src/views/test.vue +3 -3
- package/packages/src/views/biz/contractTracing/association.vue +0 -189
- package/packages/src/views/biz/contractTracing/chargingDialog.vue +0 -84
- package/packages/src/views/biz/contractTracing/contract.vue +0 -1276
- package/packages/src/views/biz/contractTracing/disputeRecord.vue +0 -311
- package/packages/src/views/biz/contractTracing/edit.vue +0 -205
- package/packages/src/views/biz/contractTracing/sendDrafEmail.vue +0 -120
- package/packages/src/views/biz/contractTracing/shipment.vue +0 -601
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="bank-view-container">
|
|
3
|
+
<!-- 收款账户信息-展示(业务场景:生成收付款、收付款票据) -->
|
|
4
|
+
<el-row style="padding-top: 15px; padding-left: 10px">
|
|
5
|
+
<div style="font-size: 16px; color: #222222">收款账号信息</div>
|
|
6
|
+
<div style="padding-left: 30px; padding-top: 2px">
|
|
7
|
+
选择的收款账户信息会提供给财务进行打款/对账
|
|
8
|
+
</div>
|
|
9
|
+
</el-row>
|
|
10
|
+
<!-- 列表数据 -->
|
|
11
|
+
<div
|
|
12
|
+
v-for="(bankData, i) in bankList"
|
|
13
|
+
:key="i"
|
|
14
|
+
class="bank-container"
|
|
15
|
+
:class="{ 'bank-container-select': !disableSelect && sellectIndex == i, 'bank-container-unselect': disableSelect || sellectIndex != i }"
|
|
16
|
+
@click="clickSelct(i)"
|
|
17
|
+
>
|
|
18
|
+
<el-row style="padding-bottom: 20px">
|
|
19
|
+
<el-col :span="24">
|
|
20
|
+
<div class="bank-item" style="padding-top: 5px">Swift Code:{{ bankData.swiftCode }}</div>
|
|
21
|
+
</el-col>
|
|
22
|
+
<el-col :span="24">
|
|
23
|
+
<div class="bank-item">Bank Name:{{ bankData.bankName }}</div>
|
|
24
|
+
</el-col>
|
|
25
|
+
<el-col :span="24">
|
|
26
|
+
<div class="bank-item" style="padding-bottom: 20px">Bank Address:{{ bankData.bankAddress }}</div>
|
|
27
|
+
</el-col>
|
|
28
|
+
<el-col :span="24">
|
|
29
|
+
<div class="bank-item">Beneficiary Account:{{ bankData.beneficiaryAccount }}</div>
|
|
30
|
+
</el-col>
|
|
31
|
+
<el-col :span="24">
|
|
32
|
+
<div class="bank-item">Beneficiary:{{ bankData.beneficiary }}</div>
|
|
33
|
+
</el-col>
|
|
34
|
+
<el-col :span="24">
|
|
35
|
+
<div class="bank-item">Beneficiary Address:{{ bankData.beneficiaryAddress }}</div>
|
|
36
|
+
</el-col>
|
|
37
|
+
</el-row>
|
|
38
|
+
</div>
|
|
39
|
+
<!-- 添加入口 -->
|
|
40
|
+
<div v-if="!bankList || bankList.length == 0" style="padding-left: 30px; padding-top: 10px">
|
|
41
|
+
<span>未添加收款账户信息,</span>
|
|
42
|
+
<el-button type="text" size="mini" @click="clickAdd">去添加</el-button>
|
|
43
|
+
</div>
|
|
44
|
+
<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>
|
|
46
|
+
<span>收款账户信息</span>
|
|
47
|
+
</div>
|
|
48
|
+
<!-- 添加收款账户弹框 -->
|
|
49
|
+
<el-dialog title="添加收款账户" :visible.sync="open" width="800px" append-to-body :close-on-click-modal="false">
|
|
50
|
+
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
|
|
51
|
+
<el-row>
|
|
52
|
+
<el-col :span="18">
|
|
53
|
+
<el-form-item label="Swift Code" label-width="150px">
|
|
54
|
+
<el-input maxlength="500" v-model="form.swiftCode" placeholder="请输入内容" />
|
|
55
|
+
</el-form-item>
|
|
56
|
+
</el-col>
|
|
57
|
+
<el-col :span="18">
|
|
58
|
+
<el-form-item label="Bank Name" label-width="150px">
|
|
59
|
+
<el-input maxlength="500" v-model="form.bankName" placeholder="请输入内容" />
|
|
60
|
+
</el-form-item>
|
|
61
|
+
</el-col>
|
|
62
|
+
<el-col :span="18">
|
|
63
|
+
<el-form-item label="Bank Address" label-width="150px">
|
|
64
|
+
<el-input maxlength="500" v-model="form.bankAddress" placeholder="请输入内容" />
|
|
65
|
+
</el-form-item>
|
|
66
|
+
</el-col>
|
|
67
|
+
<el-col :span="18">
|
|
68
|
+
<el-form-item label="Beneficiary Account" label-width="150px">
|
|
69
|
+
<el-input maxlength="500" v-model="form.beneficiaryAccount" placeholder="请输入内容" />
|
|
70
|
+
</el-form-item>
|
|
71
|
+
</el-col>
|
|
72
|
+
<el-col :span="18">
|
|
73
|
+
<el-form-item label="Beneficiary" label-width="150px">
|
|
74
|
+
<el-input maxlength="500" v-model="form.beneficiary" placeholder="请输入内容" />
|
|
75
|
+
</el-form-item>
|
|
76
|
+
</el-col>
|
|
77
|
+
<el-col :span="18">
|
|
78
|
+
<el-form-item label="Beneficiary Address" label-width="150px">
|
|
79
|
+
<el-input maxlength="500" v-model="form.beneficiaryAddress" placeholder="请输入内容" />
|
|
80
|
+
</el-form-item>
|
|
81
|
+
</el-col>
|
|
82
|
+
</el-row>
|
|
83
|
+
</el-form>
|
|
84
|
+
<div slot="footer" class="dialog-footer">
|
|
85
|
+
<el-button @click="clickCancel">取 消</el-button>
|
|
86
|
+
<el-button type="primary" @click="clickConfirm">确 定</el-button>
|
|
87
|
+
</div>
|
|
88
|
+
</el-dialog>
|
|
89
|
+
</div>
|
|
90
|
+
</template>
|
|
91
|
+
|
|
92
|
+
<script>
|
|
93
|
+
import { insertCompanyBank, getCompanyBanks } from '../../../api/biz/bizContract'
|
|
94
|
+
|
|
95
|
+
export default {
|
|
96
|
+
name: 'CompanyBanks',
|
|
97
|
+
props: {
|
|
98
|
+
// 收款账户的公司id(目前是合同contractId)
|
|
99
|
+
companyId: {
|
|
100
|
+
type: String | Number,
|
|
101
|
+
default: null
|
|
102
|
+
},
|
|
103
|
+
// 是否禁止选择功能
|
|
104
|
+
disableSelect: {
|
|
105
|
+
type: Boolean,
|
|
106
|
+
default: false
|
|
107
|
+
},
|
|
108
|
+
// 之前选择的id
|
|
109
|
+
accountId: {
|
|
110
|
+
type: String | Number,
|
|
111
|
+
default: null
|
|
112
|
+
}
|
|
113
|
+
},
|
|
114
|
+
watch: {
|
|
115
|
+
companyId: {
|
|
116
|
+
handler(newVal, oldVal) {
|
|
117
|
+
console.log('companyId changed:', newVal)
|
|
118
|
+
this.sellectIndex = -1
|
|
119
|
+
this.getBankList()
|
|
120
|
+
}
|
|
121
|
+
},
|
|
122
|
+
accountId: {
|
|
123
|
+
handler(newVal, oldVal) {
|
|
124
|
+
console.log('accountId changed:', newVal)
|
|
125
|
+
this.handleCaclSelectIndex()
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
},
|
|
129
|
+
data() {
|
|
130
|
+
return {
|
|
131
|
+
open: false,
|
|
132
|
+
sellectIndex: -1,
|
|
133
|
+
bankList: null,
|
|
134
|
+
form: {
|
|
135
|
+
swiftCode: null,
|
|
136
|
+
bankName: null,
|
|
137
|
+
bankAddress: null,
|
|
138
|
+
beneficiaryAccount: null,
|
|
139
|
+
beneficiary: null,
|
|
140
|
+
beneficiaryAddress: null
|
|
141
|
+
},
|
|
142
|
+
rules: {}
|
|
143
|
+
}
|
|
144
|
+
},
|
|
145
|
+
created() {
|
|
146
|
+
// 获取收款账户信息
|
|
147
|
+
this.getBankList()
|
|
148
|
+
},
|
|
149
|
+
methods: {
|
|
150
|
+
restForm() {
|
|
151
|
+
this.form = {
|
|
152
|
+
swiftCode: null,
|
|
153
|
+
bankName: null,
|
|
154
|
+
bankAddress: null,
|
|
155
|
+
beneficiaryAccount: null,
|
|
156
|
+
beneficiary: null,
|
|
157
|
+
beneficiaryAddress: null
|
|
158
|
+
}
|
|
159
|
+
},
|
|
160
|
+
handleCaclSelectIndex() {
|
|
161
|
+
if (!this.disableSelect && this.accountId) {
|
|
162
|
+
this.sellectIndex = this.bankList.findIndex((item) => item.accountId == this.accountId)
|
|
163
|
+
if (this.sellectIndex == -1) {
|
|
164
|
+
console.log('pre accountId invalide')
|
|
165
|
+
this.$emit('selectBank', null)
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
},
|
|
169
|
+
getBankList() {
|
|
170
|
+
if (!this.companyId) {
|
|
171
|
+
return
|
|
172
|
+
}
|
|
173
|
+
getCompanyBanks(this.companyId).then((res) => {
|
|
174
|
+
this.bankList = res.data?.paymentAccountList
|
|
175
|
+
this.handleCaclSelectIndex()
|
|
176
|
+
})
|
|
177
|
+
},
|
|
178
|
+
clickAdd() {
|
|
179
|
+
this.restForm()
|
|
180
|
+
this.open = true
|
|
181
|
+
},
|
|
182
|
+
clickSelct(index) {
|
|
183
|
+
if (this.disableSelect) {
|
|
184
|
+
console.log('disableSelect')
|
|
185
|
+
return
|
|
186
|
+
}
|
|
187
|
+
this.sellectIndex = index
|
|
188
|
+
let data = this.bankList[index]
|
|
189
|
+
console.log('select data', data)
|
|
190
|
+
this.$emit('selectBank', data)
|
|
191
|
+
},
|
|
192
|
+
clickCancel() {
|
|
193
|
+
this.open = false
|
|
194
|
+
},
|
|
195
|
+
clickConfirm() {
|
|
196
|
+
let e = this.form
|
|
197
|
+
if (!(e.swiftCode || e.bankName || e.bankAddress || e.beneficiaryAccount || e.beneficiary || e.beneficiaryAddress)) {
|
|
198
|
+
this.$modal.msgError('请输入内容')
|
|
199
|
+
return
|
|
200
|
+
}
|
|
201
|
+
insertCompanyBank({
|
|
202
|
+
contractId: this.companyId,
|
|
203
|
+
paymentAccountList: [e]
|
|
204
|
+
}).then((res) => {
|
|
205
|
+
this.getBankList()
|
|
206
|
+
this.open = false
|
|
207
|
+
})
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
</script>
|
|
212
|
+
|
|
213
|
+
<style scoped lang="scss">
|
|
214
|
+
.bank-container {
|
|
215
|
+
background-color: rgb(240, 240, 240);
|
|
216
|
+
padding: 20px 10px 5px;
|
|
217
|
+
margin-top: 10px;
|
|
218
|
+
}
|
|
219
|
+
.bank-container-select {
|
|
220
|
+
border: 1px solid blue;
|
|
221
|
+
}
|
|
222
|
+
.bank-container-unselect {
|
|
223
|
+
border: 1px solid rgb(240, 240, 240);
|
|
224
|
+
}
|
|
225
|
+
.bank-item {
|
|
226
|
+
padding: 2px 40px 2px;
|
|
227
|
+
}
|
|
228
|
+
</style>
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
</el-table-column>
|
|
64
64
|
</el-table>
|
|
65
65
|
</el-form-item>
|
|
66
|
-
<el-button type="text" size="small" @click="handleChangeLog">历史记录</el-button>
|
|
66
|
+
<el-button type="text" v-if="channel !== 'official-website'" size="small" @click="handleChangeLog">历史记录</el-button>
|
|
67
67
|
<contract-pdf :contract="contract" :dynamicTags="dynamicTags" :customClause="customClause"></contract-pdf>
|
|
68
68
|
</el-form>
|
|
69
69
|
<contract-change-log ref="contractChangeLog"></contract-change-log>
|
|
@@ -117,14 +117,17 @@
|
|
|
117
117
|
<div v-else>{{ contract.otherPaymentTerm }}</div>
|
|
118
118
|
</el-descriptions-item>
|
|
119
119
|
<el-descriptions-item label="Price Fixing Option">
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
120
|
+
<div v-if="contract.livePriceSwitch">
|
|
121
|
+
{{ contract.livePriceDays }} Days {{ contract.livePriceForm }} cargo arrives at POD in
|
|
122
|
+
{{ contract.livePriceUsertype }}
|
|
123
|
+
{{ contract.livePriceType }}'s option
|
|
124
|
+
</div>
|
|
123
125
|
</el-descriptions-item>
|
|
124
126
|
|
|
125
127
|
<el-descriptions-item label="Origin Country/Region">{{ contract.originCountry }}</el-descriptions-item>
|
|
126
128
|
<el-descriptions-item label="Loading Country/Region">{{ contract.loadingCountry }}</el-descriptions-item>
|
|
127
|
-
<el-descriptions-item label="Destination">{{ contract.destination }}</el-descriptions-item>
|
|
129
|
+
<el-descriptions-item v-if="contract.freightTerms != 'EXW'" label="Destination">{{ contract.destination }}</el-descriptions-item>
|
|
130
|
+
<el-descriptions-item v-else label="EXW Address">{{ contract.exw }}</el-descriptions-item>
|
|
128
131
|
<el-descriptions-item label="Special Instructions">
|
|
129
132
|
{{ contract.numberOfContainersForTwenty }}x 20' Container
|
|
130
133
|
<br />
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author: zhangpengwei 15038779532@163.com
|
|
3
3
|
* @Date: 2023-08-28 19:04:39
|
|
4
4
|
* @LastEditors: zhangpengwei@1338418459736990.onaliyun.com zhangpengwei@1338418459736990.onaliyun.com
|
|
5
|
-
* @LastEditTime:
|
|
5
|
+
* @LastEditTime: 2024-05-24 10:26:37
|
|
6
6
|
* @FilePath: /doctor-admin-components/packages/src/views/biz/contractTracing/contractSummary.vue
|
|
7
7
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
|
8
8
|
-->
|
|
@@ -101,7 +101,8 @@
|
|
|
101
101
|
<el-form-item :label="$t('contractDetail.paymentType')">{{ dealRecord.paymentType }}</el-form-item>
|
|
102
102
|
</el-col>
|
|
103
103
|
<el-col :span="8">
|
|
104
|
-
<el-form-item :label="$t('contractDetail.destination')">{{ dealRecord.buyerDestination }}</el-form-item>
|
|
104
|
+
<el-form-item v-if="dealRecord.paymentType != 'EXW'" :label="$t('contractDetail.destination')">{{ dealRecord.buyerDestination }}</el-form-item>
|
|
105
|
+
<el-form-item v-else label="EXW">{{ dealRecord.exw }}</el-form-item>
|
|
105
106
|
</el-col>
|
|
106
107
|
</el-row>
|
|
107
108
|
<el-row>
|
|
@@ -221,7 +222,7 @@
|
|
|
221
222
|
<el-table-column v-if="channel !== 'official-website'" label="总金额" align="center" prop="amount" width="100" />
|
|
222
223
|
|
|
223
224
|
<!-- 官网 -->
|
|
224
|
-
<el-table-column v-if="channel == 'official-website'" :label="$t('contract.Payable_Amount')" align="center" prop="amount" width="
|
|
225
|
+
<el-table-column v-if="channel == 'official-website'" :label="$t('contract.Payable_Amount')" align="center" prop="amount" width="140" />
|
|
225
226
|
<el-table-column v-if="channel == 'official-website'" :label="$t('contract.Amount_Paid')" align="center" prop="amount" width="100">
|
|
226
227
|
<template slot-scope="{ row }">{{ row.amount - row.remainingAmount }}</template>
|
|
227
228
|
</el-table-column>
|
|
@@ -338,9 +339,9 @@
|
|
|
338
339
|
>
|
|
339
340
|
<!-- v-if="channel == 'official-website' && scope.row.showFallbackQuality" -->
|
|
340
341
|
<el-button
|
|
341
|
-
v-if="channel == 'official-website'
|
|
342
|
+
v-if="channel == 'official-website'"
|
|
342
343
|
size="mini"
|
|
343
|
-
type="primary"
|
|
344
|
+
:type="scope.row.showFallbackQuality ? 'primary' : 'info'"
|
|
344
345
|
style="padding-left: 5px; padding-right: 5px"
|
|
345
346
|
@click.stop="qualityFeedback(scope.row)"
|
|
346
347
|
>{{ $t('contract.Quality_Feedback') }}</el-button
|
|
@@ -534,6 +535,11 @@ export default {
|
|
|
534
535
|
code: 3,
|
|
535
536
|
en: 'Completed',
|
|
536
537
|
cn: '已结束'
|
|
538
|
+
},
|
|
539
|
+
4: {
|
|
540
|
+
code: 4,
|
|
541
|
+
en: 'Obsoleted',
|
|
542
|
+
cn: '已作废'
|
|
537
543
|
}
|
|
538
544
|
}
|
|
539
545
|
const obj = claimTypeMap[type || '1']
|
|
@@ -547,6 +553,10 @@ export default {
|
|
|
547
553
|
*/
|
|
548
554
|
qualityFeedback(row) {
|
|
549
555
|
this.$buryingPoint({ data: { funcKey: 'click_feedback' } })
|
|
556
|
+
if (!row.showFallbackQuality) {
|
|
557
|
+
this.$message.warning(this.$t('contract.No_quality_feedback'))
|
|
558
|
+
return
|
|
559
|
+
}
|
|
550
560
|
|
|
551
561
|
this.$store.commit('setBillNoInfo', {
|
|
552
562
|
eta: row.eta,
|
|
@@ -820,11 +830,14 @@ ${invoiceNoTitleZh}:${invoiceNo}
|
|
|
820
830
|
}
|
|
821
831
|
})
|
|
822
832
|
listBizInvoice({
|
|
823
|
-
contractId: this.contractId
|
|
833
|
+
contractId: this.contractId,
|
|
834
|
+
voidFlagSearch: this.channel == 'official-website' ? [0] : []
|
|
824
835
|
}).then((response) => {
|
|
825
836
|
this.invoiceList = response.rows
|
|
826
837
|
})
|
|
827
|
-
var queryParams = {
|
|
838
|
+
var queryParams = {
|
|
839
|
+
voidStatus: this.channel == 'official-website' ? 0 : null
|
|
840
|
+
}
|
|
828
841
|
if (this.contract.contractType == 'sale') {
|
|
829
842
|
queryParams.saleContractId = this.contractId
|
|
830
843
|
} else {
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
* @Author: zhangpengwei 15038779532@163.com
|
|
3
|
+
* @Date: 2023-07-20 17:13:54
|
|
4
|
+
* @LastEditors: zhangpengwei@1338418459736990.onaliyun.com zhangpengwei@1338418459736990.onaliyun.com
|
|
5
|
+
* @LastEditTime: 2024-01-19 13:54:56
|
|
6
|
+
* @FilePath: /recycle-vue-ui再生博士后台管理/src/views/biz/contractTracing/contractTracingDetail.vue
|
|
7
|
+
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
|
8
|
+
-->
|
|
9
|
+
<template>
|
|
10
|
+
<div class="app-container">
|
|
11
|
+
<div style="position: relative">
|
|
12
|
+
<el-tabs v-model="activeName" type="card" @tab-click="handleClick">
|
|
13
|
+
<el-tab-pane :label="$t('contractDetail.summary')" name="first">
|
|
14
|
+
<contract-summary v-if="activeName == 'first'" :channel="channel"></contract-summary>
|
|
15
|
+
</el-tab-pane>
|
|
16
|
+
<el-tab-pane :label="$t('contractDetail.info')" name="second">
|
|
17
|
+
<contract-info v-if="activeName == 'second'" :channel="channel"></contract-info>
|
|
18
|
+
</el-tab-pane>
|
|
19
|
+
<el-tab-pane
|
|
20
|
+
v-if="contract.contractType == 'sale'"
|
|
21
|
+
:label="$t('contractDetail.blInfo')"
|
|
22
|
+
name="third"
|
|
23
|
+
>
|
|
24
|
+
<bill-info :contract="contract" v-if="activeName == 'third'"
|
|
25
|
+
:channel="channel"
|
|
26
|
+
></bill-info>
|
|
27
|
+
</el-tab-pane>
|
|
28
|
+
<el-tab-pane :label="$t('contractDetail.fileManage')" name="fourth">
|
|
29
|
+
<contract-file
|
|
30
|
+
v-if="activeName == 'fourth'"
|
|
31
|
+
:contract="contract"
|
|
32
|
+
:channel="channel"
|
|
33
|
+
:buyerFlag="buyerFlag"
|
|
34
|
+
></contract-file>
|
|
35
|
+
</el-tab-pane>
|
|
36
|
+
</el-tabs>
|
|
37
|
+
|
|
38
|
+
<!-- 这里添加合同编号的显示 -->
|
|
39
|
+
<div
|
|
40
|
+
style="
|
|
41
|
+
position: absolute;
|
|
42
|
+
right: 10px;
|
|
43
|
+
top: 5px;
|
|
44
|
+
margin-top: 10px;
|
|
45
|
+
font-weight: bold;
|
|
46
|
+
"
|
|
47
|
+
>{{$t('contractDetail.Contract_No')}}:{{ contract.contractNo }}</div>
|
|
48
|
+
</div>
|
|
49
|
+
</div>
|
|
50
|
+
</template>
|
|
51
|
+
|
|
52
|
+
<script>
|
|
53
|
+
import { getBizContract } from '../../../api/biz/bizContract';
|
|
54
|
+
import ContractSummary from './contractSummary.vue';
|
|
55
|
+
import BillInfo from './billInfo.vue';
|
|
56
|
+
import ContractFile from '../bizFileInfo/contract.vue';
|
|
57
|
+
import ContractInfo from './contractInfo.vue';
|
|
58
|
+
|
|
59
|
+
export default {
|
|
60
|
+
name: 'ContractTracingDetail',
|
|
61
|
+
mixins: [],
|
|
62
|
+
components: {
|
|
63
|
+
ContractSummary,
|
|
64
|
+
BillInfo,
|
|
65
|
+
ContractFile,
|
|
66
|
+
ContractInfo,
|
|
67
|
+
},
|
|
68
|
+
props: {
|
|
69
|
+
channel: '',
|
|
70
|
+
},
|
|
71
|
+
data() {
|
|
72
|
+
return {
|
|
73
|
+
activeName: 'first',
|
|
74
|
+
contract: {},
|
|
75
|
+
buyerFlag: true,
|
|
76
|
+
};
|
|
77
|
+
},
|
|
78
|
+
computed: {},
|
|
79
|
+
watch: {},
|
|
80
|
+
created() {
|
|
81
|
+
const contractId = this.$route.params && this.$route.params.contractId;
|
|
82
|
+
this.getContract(contractId);
|
|
83
|
+
const activeName = this.$route.query && this.$route.query.activeName;
|
|
84
|
+
this.activeName = activeName || 'first';
|
|
85
|
+
localStorage.setItem('contractDetail', location.href);
|
|
86
|
+
location.href;
|
|
87
|
+
},
|
|
88
|
+
mounted() {},
|
|
89
|
+
methods: {
|
|
90
|
+
getContract(contractId) {
|
|
91
|
+
getBizContract(contractId).then((res) => {
|
|
92
|
+
this.contract = res.data;
|
|
93
|
+
// Debit note是给卖家的,要放在 ARS 下
|
|
94
|
+
// Credit note是给买家的,要放在 ARP 下
|
|
95
|
+
this.buyerFlag = this.contract?.contractNo
|
|
96
|
+
?.toLowerCase()
|
|
97
|
+
?.includes('arp');
|
|
98
|
+
});
|
|
99
|
+
},
|
|
100
|
+
handleClick(tab, event) {
|
|
101
|
+
console.log(tab, event);
|
|
102
|
+
},
|
|
103
|
+
},
|
|
104
|
+
};
|
|
105
|
+
</script>
|
|
106
|
+
|
|
107
|
+
<style scoped lang="scss"></style>
|