doctor-admin-components 1.0.13-beta.62 → 1.0.13-beta.64
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/package.json +1 -1
- package/packages/index.js +4 -1
- package/packages/src/api/biz/bizContract.js +17 -0
- package/packages/src/api/biz/bizInvoice.js +1 -1
- package/packages/src/i18n/en/message.json +8 -7
- package/packages/src/i18n/zh-CN/message.json +7 -6
- package/packages/src/index.js +6 -0
- package/packages/src/views/biz/bizFileInfo/contract.vue +10 -2
- package/packages/src/views/biz/bizShipment/add.vue +5 -0
- package/packages/src/views/biz/contractTracing/companyBanks.vue +228 -0
- package/packages/src/views/biz/contractTracing/contractTracingDetail.vue +5 -1
- package/packages/src/views/biz/contractTracing/purchaseInvoiceUpload.vue +65 -5
package/package.json
CHANGED
package/packages/index.js
CHANGED
|
@@ -52,6 +52,7 @@ import {
|
|
|
52
52
|
BizShipmentAdd,
|
|
53
53
|
ContractChangeLog,
|
|
54
54
|
EditBill,
|
|
55
|
+
CompanyBanks,
|
|
55
56
|
} from "./src";
|
|
56
57
|
// 组件列表
|
|
57
58
|
const components = [
|
|
@@ -62,6 +63,7 @@ const components = [
|
|
|
62
63
|
BizShipmentAdd,
|
|
63
64
|
ContractChangeLog,
|
|
64
65
|
EditBill,
|
|
66
|
+
CompanyBanks,
|
|
65
67
|
];
|
|
66
68
|
|
|
67
69
|
// 定义 install 方法,接收 Vue 作为参数。如果使用 use 注册插件,那么所有的组件都会被注册
|
|
@@ -130,5 +132,6 @@ export default {
|
|
|
130
132
|
ContractChangeLog,
|
|
131
133
|
EditBill,
|
|
132
134
|
en_JSON,
|
|
133
|
-
zh_JSON
|
|
135
|
+
zh_JSON,
|
|
136
|
+
CompanyBanks,
|
|
134
137
|
};
|
|
@@ -1088,3 +1088,20 @@ export function shipmentConfirmDraftBl({shipmentId}) {
|
|
|
1088
1088
|
});
|
|
1089
1089
|
}
|
|
1090
1090
|
|
|
1091
|
+
// 根据合同号,添加收款账号
|
|
1092
|
+
export function insertCompanyBank(data) {
|
|
1093
|
+
return request({
|
|
1094
|
+
url: "biz/contract/company/savePaymentByContract",
|
|
1095
|
+
method: "post",
|
|
1096
|
+
data: data,
|
|
1097
|
+
});
|
|
1098
|
+
}
|
|
1099
|
+
|
|
1100
|
+
// 根据合同号,获取收款账号
|
|
1101
|
+
export function getCompanyBanks(contractId) {
|
|
1102
|
+
return request({
|
|
1103
|
+
url: `biz/contract/company/paymentAccount/${contractId}`,
|
|
1104
|
+
method: "get",
|
|
1105
|
+
params: {},
|
|
1106
|
+
});
|
|
1107
|
+
}
|
|
@@ -83,6 +83,7 @@
|
|
|
83
83
|
"remarkTip": "Please enter a note"
|
|
84
84
|
},
|
|
85
85
|
"contractDetail": {
|
|
86
|
+
"Reference_No": "Reference No.",
|
|
86
87
|
"Deposit_invoice_to_be_provided":"Deposit invoice to be uploaded",
|
|
87
88
|
"tip":"Tip",
|
|
88
89
|
"Waiting_for_the_seller_to_ship":"Waiting for the seller to ship",
|
|
@@ -101,9 +102,9 @@
|
|
|
101
102
|
"rename":"Rename",
|
|
102
103
|
"tip15": "Drag and drop the files to upload",
|
|
103
104
|
"Final_payment_unpaid":"Final Payment Unpaid",
|
|
104
|
-
"Final_payment_voucher":"
|
|
105
|
+
"Final_payment_voucher":"Remittance Voucher/Swift",
|
|
105
106
|
"final_payment_warning":"The system automatically calculates the reference final payment based on the weight x unit price minus deposit, which can be used to verify the invoice. Click on the blue font to view the system's data source details and modify the automatically calculated deduction deposit.",
|
|
106
|
-
"Copy_of_formal_bill_of_lading":"
|
|
107
|
+
"Copy_of_formal_bill_of_lading":"BL copy",
|
|
107
108
|
"Formal_bill_of_lading_copy_to_be_updated": "Formal bill of lading copy to be updated",
|
|
108
109
|
"Draft_bill_to_be_confirmed": "Draft bill of lading information to be confirmed",
|
|
109
110
|
"identify":"identify",
|
|
@@ -187,10 +188,10 @@
|
|
|
187
188
|
"BL_info_confirmed": "BL information confirmed",
|
|
188
189
|
"bl_draft_confirm": "Confirmed BL Draft",
|
|
189
190
|
"editBLInformation": "Edit BL information",
|
|
190
|
-
"fileManage": "
|
|
191
|
+
"fileManage": "Docs Management",
|
|
191
192
|
"fileNmae": "file name",
|
|
192
193
|
"finalPaymentMemo": "Final Payment Remittance Receipt",
|
|
193
|
-
"finallyInvoice": "Final
|
|
194
|
+
"finallyInvoice": "Final invoice",
|
|
194
195
|
"info": "Contract Details",
|
|
195
196
|
"invoiceDate": "Invoice Date",
|
|
196
197
|
"invoiceInfo": "Invoice Information",
|
|
@@ -257,8 +258,8 @@
|
|
|
257
258
|
"balancePartPaid_false": "Balance Invoice to be paid",
|
|
258
259
|
"balancePaid_true": "Final Payment paid",
|
|
259
260
|
"balancePaid_false": "Balance Invoice to be paid",
|
|
260
|
-
"releasedTelex_true": "
|
|
261
|
-
"releasedTelex_false": "
|
|
261
|
+
"releasedTelex_true": "Bill of Lading release",
|
|
262
|
+
"releasedTelex_false": "Bill of Lading release to be done",
|
|
262
263
|
"claiming": "Claiming",
|
|
263
264
|
"claiming_update": "Claiming-CN/DN issued",
|
|
264
265
|
"claiming_closed": "Claim closed",
|
|
@@ -276,7 +277,7 @@
|
|
|
276
277
|
"add_success": "Successfully added",
|
|
277
278
|
"has_copy": "Copied to clipboard",
|
|
278
279
|
"subCategory": "SubCategory",
|
|
279
|
-
"summary": "Order
|
|
280
|
+
"summary": "Order Review",
|
|
280
281
|
"swift": "swift",
|
|
281
282
|
"tip1": "Delivery within ",
|
|
282
283
|
"tip2": " days after transaction",
|
|
@@ -83,6 +83,7 @@
|
|
|
83
83
|
"remarkTip": "请输入备注"
|
|
84
84
|
},
|
|
85
85
|
"contractDetail": {
|
|
86
|
+
"Reference_No": "合同参考号",
|
|
86
87
|
"Deposit_invoice_to_be_provided":"定金发票待提供",
|
|
87
88
|
"tip":"提示",
|
|
88
89
|
"Waiting_for_the_seller_to_ship":"等待卖家发货",
|
|
@@ -113,8 +114,8 @@
|
|
|
113
114
|
"please_select_file":"请选择文件",
|
|
114
115
|
"Selected":"已选择",
|
|
115
116
|
"item":"项",
|
|
116
|
-
"Download_All":"
|
|
117
|
-
"Delete_All":"
|
|
117
|
+
"Download_All":"批量下载",
|
|
118
|
+
"Delete_All":"批量删除",
|
|
118
119
|
"Deselect":"取消选择",
|
|
119
120
|
"BLCopy": "正式提单",
|
|
120
121
|
"loading": "请稍候",
|
|
@@ -228,7 +229,7 @@
|
|
|
228
229
|
"shipping": "装运",
|
|
229
230
|
"shipment": "装运",
|
|
230
231
|
"contract": "合同",
|
|
231
|
-
"receiving": "
|
|
232
|
+
"receiving": "提单赎单",
|
|
232
233
|
"progress": "进度",
|
|
233
234
|
"drag_and_upload": "将文件拖拽到此处上传",
|
|
234
235
|
"no_files": "暂无文件",
|
|
@@ -259,8 +260,8 @@
|
|
|
259
260
|
"balancePartPaid_false": "尾款待买家支付",
|
|
260
261
|
"balancePaid_true": "尾款已支付",
|
|
261
262
|
"balancePaid_false": "尾款待买家支付",
|
|
262
|
-
"releasedTelex_true": "
|
|
263
|
-
"releasedTelex_false": "
|
|
263
|
+
"releasedTelex_true": "提单赎单已提供",
|
|
264
|
+
"releasedTelex_false": "提单赎单待提供",
|
|
264
265
|
"claiming": "索赔中",
|
|
265
266
|
"claiming_update": "文件已更新",
|
|
266
267
|
"claiming_closed": "索赔已关闭",
|
|
@@ -284,7 +285,7 @@
|
|
|
284
285
|
"tip4": "是否包退运",
|
|
285
286
|
"tip5": "装运发货",
|
|
286
287
|
"tip6": "电放提单或其他凭证",
|
|
287
|
-
"tip7": "
|
|
288
|
+
"tip7": "提单赎单",
|
|
288
289
|
"tip8": "合同履约完成",
|
|
289
290
|
"totalQuote": "总价/MT",
|
|
290
291
|
"viewPaymentInfo": "查看付款信息",
|
package/packages/src/index.js
CHANGED
|
@@ -19,6 +19,7 @@ import PurchaseInvoiceUpload from "./views/biz/contractTracing/purchaseInvoiceUp
|
|
|
19
19
|
import BizShipmentAdd from "./views/biz/bizShipment/add.vue";
|
|
20
20
|
import ContractChangeLog from "./views/biz/contractTracing/contractChangeLog.vue";
|
|
21
21
|
import EditBill from "./views/biz/contractTracing/editBill.vue";
|
|
22
|
+
import CompanyBanks from "./views/biz/contractTracing/companyBanks.vue";
|
|
22
23
|
|
|
23
24
|
// 为组件提供 install 安装方法,供按需引入
|
|
24
25
|
|
|
@@ -46,6 +47,10 @@ EditBill.install = function (Vue) {
|
|
|
46
47
|
Vue.component(EditBill.name, EditBill);
|
|
47
48
|
};
|
|
48
49
|
|
|
50
|
+
CompanyBanks.install = function (Vue) {
|
|
51
|
+
Vue.component(CompanyBanks.name, CompanyBanks);
|
|
52
|
+
};
|
|
53
|
+
|
|
49
54
|
// 导出组件
|
|
50
55
|
export {
|
|
51
56
|
EditBill,
|
|
@@ -54,4 +59,5 @@ export {
|
|
|
54
59
|
PurchaseInvoiceUpload,
|
|
55
60
|
BizShipmentAdd,
|
|
56
61
|
ContractChangeLog,
|
|
62
|
+
CompanyBanks,
|
|
57
63
|
};
|
|
@@ -1206,7 +1206,9 @@
|
|
|
1206
1206
|
|
|
1207
1207
|
<gen-shipment ref="genShipment" @refresh="handleRefresh" />
|
|
1208
1208
|
|
|
1209
|
-
<purchase-invoice-upload ref="purchaseInvoice"
|
|
1209
|
+
<purchase-invoice-upload ref="purchaseInvoice"
|
|
1210
|
+
:companyId="contract.contractId"
|
|
1211
|
+
@refresh="handleRefresh"
|
|
1210
1212
|
:purchaseBalanceMoneyProp="purchaseBalanceMoney"
|
|
1211
1213
|
:getShipmentPurchaseFun="getShipmentPurchase"
|
|
1212
1214
|
></purchase-invoice-upload>
|
|
@@ -1764,17 +1766,23 @@ export default {
|
|
|
1764
1766
|
},
|
|
1765
1767
|
//定金发票
|
|
1766
1768
|
getDepositInvoice() {
|
|
1769
|
+
console.log('contract:', this.contract)
|
|
1767
1770
|
if (this.contract.contractType == 'sale') {
|
|
1771
|
+
// 生成定金发票(销售)
|
|
1772
|
+
console.log('生成定金发票')
|
|
1768
1773
|
getDepositInvoice(this.contract).then((response) => {
|
|
1769
1774
|
const data = response.data;
|
|
1770
1775
|
this.$refs.depositInvoice.handleShow(data);
|
|
1771
1776
|
});
|
|
1772
1777
|
} else {
|
|
1778
|
+
// 上传定金发票(采购)
|
|
1779
|
+
console.log('上传定金发票')
|
|
1773
1780
|
this.$refs.purchaseInvoice.handleUpload(this.contract, 'deposit');
|
|
1774
1781
|
}
|
|
1775
1782
|
},
|
|
1776
1783
|
//上传尾款发票
|
|
1777
1784
|
uploadFinalInvoice(type, shipmentId) {
|
|
1785
|
+
console.log('上传尾款发票')
|
|
1778
1786
|
this.$refs.purchaseInvoice.handleUpload(this.contract, type, shipmentId);
|
|
1779
1787
|
},
|
|
1780
1788
|
//设置进度
|
|
@@ -2146,7 +2154,7 @@ export default {
|
|
|
2146
2154
|
let shipmentFileInfo = this.shipmentItemData
|
|
2147
2155
|
if(shipmentFileInfo?.shipmentId) {
|
|
2148
2156
|
getPurchaseAmount(shipmentFileInfo.shipmentId).then((res) => {
|
|
2149
|
-
this.purchaseBalanceMoney = (res.data
|
|
2157
|
+
this.purchaseBalanceMoney = (res.data?.totalPurchaseAmount - res.data?.purchaseDepositAmount).toFixed(2)
|
|
2150
2158
|
this.shipmentPurchaseAmountMessage =
|
|
2151
2159
|
`${this.$t('contractDetail.reference_invince')}$` + this.purchaseBalanceMoney
|
|
2152
2160
|
;
|
|
@@ -93,6 +93,11 @@
|
|
|
93
93
|
</el-select>
|
|
94
94
|
</el-form-item>
|
|
95
95
|
</el-col>
|
|
96
|
+
<el-col :span="8">
|
|
97
|
+
<el-form-item label="ETA更新" prop="etaUpdateOn" label-width="100">
|
|
98
|
+
<el-switch v-model="form.etaUpdateOn" active-text="自动" inactive-text="手动"> </el-switch>
|
|
99
|
+
</el-form-item>
|
|
100
|
+
</el-col>
|
|
96
101
|
</el-row>
|
|
97
102
|
<el-table stripe :data="contractDetailList" border>
|
|
98
103
|
<el-table-column label="序号" type="index" align="center"></el-table-column>
|
|
@@ -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>
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author: zhangpengwei 15038779532@163.com
|
|
3
3
|
* @Date: 2023-07-20 17:13:54
|
|
4
4
|
* @LastEditors: zhangpengwei@1338418459736990.onaliyun.com zhangpengwei@1338418459736990.onaliyun.com
|
|
5
|
-
* @LastEditTime: 2024-04-
|
|
5
|
+
* @LastEditTime: 2024-04-19 18:10:17
|
|
6
6
|
* @FilePath: /recycle-vue-ui再生博士后台管理/src/views/biz/contractTracing/contractTracingDetail.vue
|
|
7
7
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
|
8
8
|
-->
|
|
@@ -14,6 +14,10 @@
|
|
|
14
14
|
<div>{{$t('contractDetail.Contract_No')}}</div>
|
|
15
15
|
<div>{{ contract.contractNo }}</div>
|
|
16
16
|
</div>
|
|
17
|
+
<div class="contract-number">
|
|
18
|
+
<div>{{$t('contractDetail.Reference_No')}}</div>
|
|
19
|
+
<div>{{ contract.reference || '--' }}</div>
|
|
20
|
+
</div>
|
|
17
21
|
<div class="tab-root">
|
|
18
22
|
<div :class="['tab', activeName == tabsItem.name ? 'active' : '']" v-for="tabsItem in (contract.contractType == 'sale' ? saleTabsArr : purchaseTabsArr) " :key="tabsItem.id" @click="changeTabs(tabsItem)">
|
|
19
23
|
{{ tabsItem.label }}
|
|
@@ -65,7 +65,23 @@
|
|
|
65
65
|
</el-date-picker>
|
|
66
66
|
</el-form-item>
|
|
67
67
|
<el-form-item
|
|
68
|
-
label="
|
|
68
|
+
label="发票金额($)"
|
|
69
|
+
:prop="'proFormInvoiceList.' + index + '.invoiceAmount'"
|
|
70
|
+
:rules="[
|
|
71
|
+
{ required: true, message: '不能为空' },
|
|
72
|
+
{ type: 'number', message: '必须为数字值' },
|
|
73
|
+
]"
|
|
74
|
+
>
|
|
75
|
+
<el-input
|
|
76
|
+
v-model.number="dt.invoiceAmount"
|
|
77
|
+
clearable
|
|
78
|
+
size="small"
|
|
79
|
+
placeholder="请输入票面金额"
|
|
80
|
+
type="number"
|
|
81
|
+
/>
|
|
82
|
+
</el-form-item>
|
|
83
|
+
<el-form-item
|
|
84
|
+
label="应付金额($)"
|
|
69
85
|
:prop="'proFormInvoiceList.' + index + '.amount'"
|
|
70
86
|
:rules="[
|
|
71
87
|
{ required: true, message: '不能为空' },
|
|
@@ -95,6 +111,7 @@
|
|
|
95
111
|
<upload-invoice v-model="dt.invoiceFileList" :limit="20" />
|
|
96
112
|
</el-form-item>
|
|
97
113
|
</el-row>
|
|
114
|
+
<company-banks ref="companyBanks" :companyId="companyId" @selectBank="(data) => selectBank(index, 'ProForma', data)"></company-banks>
|
|
98
115
|
</el-row>
|
|
99
116
|
</el-card>
|
|
100
117
|
<el-row />
|
|
@@ -168,7 +185,23 @@
|
|
|
168
185
|
</el-form-item>
|
|
169
186
|
<el-row>
|
|
170
187
|
<el-form-item
|
|
171
|
-
label="
|
|
188
|
+
label="发票金额($)"
|
|
189
|
+
:prop="'fixedInvoiceList.' + index + '.invoiceAmount'"
|
|
190
|
+
:rules="[
|
|
191
|
+
{ required: true, message: '不能为空' },
|
|
192
|
+
{ type: 'number', message: '必须为数字值' },
|
|
193
|
+
]"
|
|
194
|
+
>
|
|
195
|
+
<el-input
|
|
196
|
+
v-model.number="item.invoiceAmount"
|
|
197
|
+
clearable
|
|
198
|
+
size="small"
|
|
199
|
+
placeholder="请填写票面金额"
|
|
200
|
+
type="number"
|
|
201
|
+
/>
|
|
202
|
+
</el-form-item>
|
|
203
|
+
<el-form-item
|
|
204
|
+
label="应付金额($)"
|
|
172
205
|
:prop="'fixedInvoiceList.' + index + '.amount'"
|
|
173
206
|
:rules="[
|
|
174
207
|
{ required: true, message: '不能为空' },
|
|
@@ -207,6 +240,7 @@
|
|
|
207
240
|
</el-form-item>
|
|
208
241
|
</el-row>
|
|
209
242
|
<el-divider></el-divider>
|
|
243
|
+
<company-banks ref="companyBanks" :companyId="companyId" @selectBank="(data) => selectBank(index, 'Fixed', data)"></company-banks>
|
|
210
244
|
</el-row>
|
|
211
245
|
</el-card>
|
|
212
246
|
</el-form>
|
|
@@ -252,13 +286,20 @@ import {
|
|
|
252
286
|
getInvoiceListByShipmentId,
|
|
253
287
|
} from "../../../api/biz/bizInvoice";
|
|
254
288
|
import { getByContractId } from "../../../api/biz/bizShipment";
|
|
289
|
+
import CompanyBanks from './companyBanks.vue';
|
|
255
290
|
|
|
256
291
|
export default {
|
|
257
292
|
name: "PurchaseInvoiceUpload",
|
|
258
293
|
components: {
|
|
259
|
-
UploadInvoice
|
|
294
|
+
UploadInvoice,
|
|
295
|
+
CompanyBanks
|
|
260
296
|
},
|
|
261
297
|
props: {
|
|
298
|
+
// 合同公司id(目前是合同id)
|
|
299
|
+
companyId: {
|
|
300
|
+
type: String | Number,
|
|
301
|
+
default: null,
|
|
302
|
+
},
|
|
262
303
|
purchaseBalanceMoneyProp: {
|
|
263
304
|
type: Number | String,
|
|
264
305
|
default: '',
|
|
@@ -277,7 +318,10 @@ export default {
|
|
|
277
318
|
// 是否显示弹出层
|
|
278
319
|
open: false,
|
|
279
320
|
// 表单参数
|
|
280
|
-
form: {
|
|
321
|
+
form: {
|
|
322
|
+
proFormInvoiceList: [],
|
|
323
|
+
fixedInvoiceList: [],
|
|
324
|
+
},
|
|
281
325
|
//销售合同选项表
|
|
282
326
|
saleContractList: [],
|
|
283
327
|
//采购合同选项表
|
|
@@ -288,7 +332,9 @@ export default {
|
|
|
288
332
|
purchaseBalanceMoney: '',
|
|
289
333
|
};
|
|
290
334
|
},
|
|
291
|
-
created() {
|
|
335
|
+
created() {
|
|
336
|
+
console.log('companyId:', this.companyId)
|
|
337
|
+
},
|
|
292
338
|
methods: {
|
|
293
339
|
dialogVisibleCancel() {
|
|
294
340
|
this.submitForm(false);
|
|
@@ -306,6 +352,16 @@ export default {
|
|
|
306
352
|
handleClose() {
|
|
307
353
|
this.dialogVisible = false;
|
|
308
354
|
},
|
|
355
|
+
// 选择收款账户
|
|
356
|
+
selectBank(index, fixed, data) {
|
|
357
|
+
console.log('proFormInvoiceList', this.form.proFormInvoiceList);
|
|
358
|
+
console.log('fixedInvoiceList', this.form.fixedInvoiceList);
|
|
359
|
+
if (fixed == 'ProForma') {
|
|
360
|
+
this.form.proFormInvoiceList[index].accountId = data?.accountId
|
|
361
|
+
} else {
|
|
362
|
+
this.form.fixedInvoiceList[index].accountId = data?.accountId
|
|
363
|
+
}
|
|
364
|
+
},
|
|
309
365
|
//上传并生成
|
|
310
366
|
uploadAndGenerate() {
|
|
311
367
|
this.$refs["form"].validate((valid) => {
|
|
@@ -365,9 +421,13 @@ export default {
|
|
|
365
421
|
},
|
|
366
422
|
/** 展示按钮操作 */
|
|
367
423
|
handleUpload(row, type, shipmentId) {
|
|
424
|
+
console.log('row:', row)
|
|
368
425
|
this.reset();
|
|
369
426
|
this.type = type;
|
|
370
427
|
this.shipmentId = shipmentId;
|
|
428
|
+
if (!this.companyId) {
|
|
429
|
+
this.companyId = row.contractId
|
|
430
|
+
}
|
|
371
431
|
if (type == "finally") {
|
|
372
432
|
getInvoiceListByShipmentId(shipmentId)
|
|
373
433
|
.then((response) => {
|