doctor-admin-components 1.0.14-beta.4 → 1.0.14-beta.40
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 +4 -1
- package/package.json +1 -1
- package/packages/index.js +7 -4
- package/packages/src/api/biz/bizContract.js +10 -0
- package/packages/src/api/biz/bizShipment.js +30 -1
- package/packages/src/i18n/zh-CN/message.json +1 -1
- package/packages/src/index.js +9 -2
- package/packages/src/utils/zip.js +29 -11
- package/packages/src/views/biz/bizFileInfo/contract.vue +489 -361
- package/packages/src/views/biz/bizFileInfo/contractFile/BillOfLadingNoTab.vue +9 -7
- package/packages/src/views/biz/bizFileInfo/contractFile/IMGPreviewCheckBox.vue +24 -6
- package/packages/src/views/biz/bizFileInfo/contractFile/SectionSlot.vue +11 -3
- package/packages/src/views/biz/bizFileInfo/fileShow.vue +16 -6
- package/packages/src/views/biz/bizShipment/add.vue +82 -42
- package/packages/src/views/biz/contractTracing/billInfo.vue +15 -7
- package/packages/src/views/biz/contractTracing/changrLogList.vue +67 -0
- 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/contractSummary.vue +101 -73
- package/packages/src/views/biz/contractTracing/contractTracingDetail.vue +5 -77
- package/packages/src/views/biz/contractTracing/editBill.vue +18 -10
- package/packages/src/views/biz/contractTracing/queryDeductionRecords.vue +103 -0
- package/packages/src/views/biz/contractTracing/shipmentPurchaseAmount.vue +359 -79
- package/packages/src/views/biz/contractTracing/shipmentPurchaseAmountEditDialog.vue +176 -0
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
* @Author: zhangpengwei@1338418459736990.onaliyun.com zhangpengwei@1338418459736990.onaliyun.com
|
|
3
|
+
* @Date: 2024-08-20 10:37:30
|
|
4
|
+
* @LastEditors: zhangpengwei@1338418459736990.onaliyun.com zhangpengwei@1338418459736990.onaliyun.com
|
|
5
|
+
* @LastEditTime: 2024-08-23 13:49:18
|
|
6
|
+
* @FilePath: /doctor-admin-components 公共组件/packages/src/views/biz/contractTracing/queryDeductionRecords.vue
|
|
7
|
+
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
|
8
|
+
-->
|
|
9
|
+
<template>
|
|
10
|
+
<el-dialog
|
|
11
|
+
title="定金扣减记录"
|
|
12
|
+
:visible.sync="dialogVisible"
|
|
13
|
+
width="1200px"
|
|
14
|
+
:modal="false"
|
|
15
|
+
>
|
|
16
|
+
<el-table
|
|
17
|
+
:data="tableList"
|
|
18
|
+
:cell-style="{'text-align': 'center'}"
|
|
19
|
+
:header-cell-style="{'text-align': 'center'}"
|
|
20
|
+
>
|
|
21
|
+
<el-table-column
|
|
22
|
+
prop="billOfLadingNo"
|
|
23
|
+
label="提单号"
|
|
24
|
+
width="180">
|
|
25
|
+
</el-table-column>
|
|
26
|
+
<el-table-column
|
|
27
|
+
prop="containerNumber"
|
|
28
|
+
label="柜数"
|
|
29
|
+
width="180">
|
|
30
|
+
</el-table-column>
|
|
31
|
+
<el-table-column
|
|
32
|
+
prop="purchaseDepositTotalAmount"
|
|
33
|
+
label="定金总额">
|
|
34
|
+
<template slot-scope="{ row }">
|
|
35
|
+
{{ row.purchaseDepositTotalAmount ? "$" + $formatNumber(row.purchaseDepositTotalAmount, 2) : '0' }}
|
|
36
|
+
</template>
|
|
37
|
+
</el-table-column>
|
|
38
|
+
<el-table-column
|
|
39
|
+
prop="purchaseDepositBalance"
|
|
40
|
+
label="上次剩余定金">
|
|
41
|
+
<template slot-scope="{ row }">
|
|
42
|
+
{{ row.purchaseDepositBalance ? "$" + $formatNumber(row.purchaseDepositBalance,2) : '0' }}
|
|
43
|
+
</template>
|
|
44
|
+
</el-table-column>
|
|
45
|
+
<el-table-column
|
|
46
|
+
prop="purchaseDepositAmount"
|
|
47
|
+
label="扣减定金">
|
|
48
|
+
<template slot-scope="{ row }">
|
|
49
|
+
<span class="edit-style" v-if="row.purchaseDepositAmount" @click.stop="jumpFileManage(row)">{{ row.purchaseDepositAmount ? "$" + $formatNumber(row.purchaseDepositAmount, 2) : '0' }}</span>
|
|
50
|
+
<span v-else>0</span>
|
|
51
|
+
</template>
|
|
52
|
+
</el-table-column>
|
|
53
|
+
<el-table-column
|
|
54
|
+
prop="purchaseDepositRemainAmount"
|
|
55
|
+
label="定金余额">
|
|
56
|
+
<template slot-scope="{ row }">
|
|
57
|
+
{{ row.purchaseDepositRemainAmount ? "$" + $formatNumber(row.purchaseDepositRemainAmount, 2) : '0' }}
|
|
58
|
+
</template>
|
|
59
|
+
</el-table-column>
|
|
60
|
+
</el-table>
|
|
61
|
+
</el-dialog>
|
|
62
|
+
</template>
|
|
63
|
+
|
|
64
|
+
<script>
|
|
65
|
+
import { deductionRecords } from '../../../api/biz/bizShipment'
|
|
66
|
+
|
|
67
|
+
export default {
|
|
68
|
+
name: 'DoctorAdminComponentsQueryDeductionRecords',
|
|
69
|
+
|
|
70
|
+
data() {
|
|
71
|
+
return {
|
|
72
|
+
tableList:[],
|
|
73
|
+
dialogVisible: false
|
|
74
|
+
};
|
|
75
|
+
},
|
|
76
|
+
|
|
77
|
+
mounted() {
|
|
78
|
+
|
|
79
|
+
},
|
|
80
|
+
|
|
81
|
+
methods: {
|
|
82
|
+
handlerOpen(shipmentId) {
|
|
83
|
+
this.dialogVisible = true
|
|
84
|
+
deductionRecords({shipmentId}).then((res) => {
|
|
85
|
+
this.tableList = res.rows
|
|
86
|
+
})
|
|
87
|
+
},
|
|
88
|
+
jumpFileManage(row) {
|
|
89
|
+
window.open(`/contract/tracing/detail/${row.purchaseContractId}?activeName=fourth&deductionRecordsShipmentId=${row.shipmentId}`)
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
},
|
|
94
|
+
};
|
|
95
|
+
</script>
|
|
96
|
+
|
|
97
|
+
<style lang="scss" scoped>
|
|
98
|
+
.edit-style {
|
|
99
|
+
cursor: pointer;
|
|
100
|
+
color: #409eff;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
</style>
|
|
@@ -2,115 +2,262 @@
|
|
|
2
2
|
* @Author: zhangpengwei 15038779532@163.com
|
|
3
3
|
* @Date: 2023-07-31 17:40:56
|
|
4
4
|
* @LastEditors: zhangpengwei@1338418459736990.onaliyun.com zhangpengwei@1338418459736990.onaliyun.com
|
|
5
|
-
* @LastEditTime: 2024-
|
|
5
|
+
* @LastEditTime: 2024-08-26 15:40:49
|
|
6
6
|
* @FilePath: /doctor-admin-components/packages/src/views/biz/contractTracing/chargingDialog.vue
|
|
7
7
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
|
8
8
|
-->
|
|
9
9
|
<template>
|
|
10
10
|
<div class="app-container">
|
|
11
11
|
<!-- 合同争议详情对话框 -->
|
|
12
|
-
<el-dialog :title="title" :visible.sync="open" width="
|
|
12
|
+
<el-dialog :title="title" :visible.sync="open" width="1200px" append-to-body>
|
|
13
13
|
<el-form :model="form">
|
|
14
|
-
<el-
|
|
15
|
-
<el-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
14
|
+
<el-table :data="form.containerPurchaseAmountRespList" :cell-style="{ padding: '10px 0' }" :header-cell-style="{ padding: '10px 0' }">
|
|
15
|
+
<el-table-column align="center" prop="containerNo" width="150" label="柜号"></el-table-column>
|
|
16
|
+
<el-table-column align="center" label="货物名称" width="150">
|
|
17
|
+
<template slot-scope="{ row }">
|
|
18
|
+
<div style="white-space: pre-line !important" v-for="(item, index) in getColumnPropArray(row)" :key="index">{{ item.askName }};</div>
|
|
19
|
+
</template>
|
|
20
|
+
</el-table-column>
|
|
21
|
+
<el-table-column align="center" label="净重(MT)" prop="goodsNetWeight">
|
|
22
|
+
<template slot-scope="{ row }">
|
|
23
|
+
<div style="white-space: pre-line !important" v-for="(item, index) in getColumnPropArray(row)" :key="index">
|
|
24
|
+
<span :style="item.goodsNetWeight != item.purchaseActualNetWeight ? 'color:red' : ''">{{ $formatNumber(item.goodsNetWeight, 3) }};</span>
|
|
25
|
+
</div>
|
|
26
|
+
</template>
|
|
27
|
+
</el-table-column>
|
|
28
|
+
<el-table-column align="center" label="单价($)" width="100" prop="purchasePriceResult">
|
|
29
|
+
<template slot-scope="{ row }">
|
|
30
|
+
<div style="white-space: pre-line !important" v-for="(item, index) in getColumnPropArray(row)" :key="index">
|
|
31
|
+
<el-tooltip v-if="getPurchaseAmountTip(item, row)" class="ml10" effect="dark" placement="top">
|
|
32
|
+
<template slot="content">
|
|
33
|
+
{{ getPurchaseAmountTip(item, row) }}
|
|
34
|
+
</template>
|
|
35
|
+
<span>
|
|
36
|
+
<span :style="item.purchasePriceResult != item.purchaseActualUnitPrice ? 'color:red' : ''">
|
|
37
|
+
{{ item.purchasePriceResult ? $formatNumber(item.purchasePriceResult, 2) : item.purchaseUnitPriceFormula || getPrice(item) }}
|
|
23
38
|
</span>
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
<
|
|
29
|
-
|
|
30
|
-
|
|
39
|
+
<i class="el-icon-question"></i>
|
|
40
|
+
;</span
|
|
41
|
+
>
|
|
42
|
+
</el-tooltip>
|
|
43
|
+
<span v-else :style="item.purchasePriceResult != item.purchaseActualUnitPrice ? 'color:red' : ''">
|
|
44
|
+
{{ item.purchasePriceResult ? $formatNumber(item.purchasePriceResult, 2) : item.purchaseUnitPriceFormula || getPrice(item) }};
|
|
45
|
+
</span>
|
|
46
|
+
</div>
|
|
47
|
+
</template>
|
|
48
|
+
</el-table-column>
|
|
49
|
+
<el-table-column align="center" label="修正净重(MT)" width="130" prop="purchaseActualNetWeight">
|
|
50
|
+
<template slot-scope="{ row }">
|
|
51
|
+
<div style="white-space: pre-line !important" v-for="(item, index) in getColumnPropArray(row)" :key="index">
|
|
52
|
+
<span :style="item.goodsNetWeight != item.purchaseActualNetWeight ? 'color:red' : ''">{{ $formatNumber(item.purchaseActualNetWeight, 3) }}</span>
|
|
53
|
+
<i class="el-icon-edit-outline edit-style" @click.stop="editInfo(item, 'purchaseActualNetWeight', '1')" />
|
|
54
|
+
</div>
|
|
55
|
+
</template>
|
|
56
|
+
</el-table-column>
|
|
57
|
+
<el-table-column align="center" label="修正单价($)" width="130" prop="purchaseActualUnitPrice">
|
|
58
|
+
<template slot-scope="{ row }">
|
|
59
|
+
<div style="white-space: pre-line !important" v-for="(item, index) in getColumnPropArray(row)" :key="index">
|
|
60
|
+
<span :style="item.purchasePriceResult != item.purchaseActualUnitPrice ? 'color:red' : ''"> {{ $formatNumber(item.purchaseActualUnitPrice, 2) }}</span>
|
|
61
|
+
<i class="el-icon-edit-outline edit-style" @click.stop="editInfo(item, 'purchaseActualUnitPrice', '1')" />
|
|
62
|
+
</div>
|
|
63
|
+
</template>
|
|
64
|
+
</el-table-column>
|
|
65
|
+
<el-table-column align="center" prop="amount" label="采购金额($)" width="130">
|
|
66
|
+
<template slot-scope="{ row }">{{ $formatNumber(row.amount, 2) }}</template>
|
|
67
|
+
</el-table-column>
|
|
68
|
+
<el-table-column align="center" prop="purchaseDepositAmount" label="扣减定金($)" width="130">
|
|
69
|
+
<template slot-scope="{ row }">{{ $formatNumber(row.purchaseDepositAmount, 2) }}</template>
|
|
70
|
+
</el-table-column>
|
|
71
|
+
<el-table-column align="center" label="尾款">
|
|
72
|
+
<template slot-scope="{ row }">{{ $formatNumber(row.amount - row.purchaseDepositAmount, 2) }}</template>
|
|
73
|
+
</el-table-column>
|
|
74
|
+
</el-table>
|
|
75
|
+
<div class="my-footer">
|
|
76
|
+
<div class="footer-item" style="width: 150px; text-align: center">总计</div>
|
|
77
|
+
<div class="footer-item" style="width: 150px; text-align: center">
|
|
78
|
+
柜数:{{ form && form.containerPurchaseAmountRespList && form.containerPurchaseAmountRespList.length }}柜
|
|
79
|
+
</div>
|
|
80
|
+
<div class="footer-item">装运总净重:<br />{{ $formatNumber(form.totalNetWeight || 0, 3) + 'MT' }}</div>
|
|
81
|
+
<div style="width: 100px"></div>
|
|
82
|
+
<div class="footer-item">装运总修正净重:<br />{{ $formatNumber(form.actualTotalNetWeight || 0, 3) + 'MT' }}</div>
|
|
83
|
+
<div style="width: 135px"></div>
|
|
84
|
+
<div class="footer-item">
|
|
85
|
+
采购总金额:
|
|
86
|
+
<i class="el-icon-edit-outline edit-style" @click.stop="editInfo(form, 'purchaseActualTotalAmount', '2')" />
|
|
87
|
+
<br />$ {{ $formatNumber(form.totalPurchaseAmount, 2) }}
|
|
88
|
+
</div>
|
|
89
|
+
<div class="footer-item">
|
|
90
|
+
本次扣减定金:
|
|
91
|
+
<i class="el-icon-edit-outline edit-style" @click.stop="editInfo(form, 'purchaseDepositAmount', '2')" />
|
|
92
|
+
<br />$ {{ $formatNumber(form.purchaseDepositAmount, 2) }}
|
|
93
|
+
</div>
|
|
94
|
+
<div class="footer-item">采购总尾款:<br />$ {{ $formatNumber(form.totalPurchaseAmount - form.purchaseDepositAmount, 2) }}</div>
|
|
95
|
+
</div>
|
|
96
|
+
<!-- 自定义合并行 -->
|
|
97
|
+
<div></div>
|
|
98
|
+
<el-row style="margin-top: 20px">
|
|
99
|
+
<el-col :span="8">
|
|
100
|
+
<el-form-item label="本次装运总修正净重:">
|
|
101
|
+
<el-tooltip class="ml10" effect="dark" content="本次一共装了多少吨的货(取修正重量汇总)" placement="top">
|
|
102
|
+
<span>
|
|
103
|
+
{{ $formatNumber(form.actualTotalNetWeight || 0) + 'MT' }}
|
|
104
|
+
<i class="el-icon-question"></i>
|
|
105
|
+
</span>
|
|
106
|
+
</el-tooltip>
|
|
107
|
+
</el-form-item>
|
|
31
108
|
</el-col>
|
|
32
109
|
<el-col :span="8">
|
|
33
|
-
<el-form-item label="
|
|
34
|
-
|
|
35
|
-
<el-tooltip class="item" effect="dark" content="还剩多少定金可抵扣,可为负数" placement="top-start">
|
|
110
|
+
<el-form-item label="本次装运柜数:">
|
|
111
|
+
<el-tooltip class="ml10" effect="dark" content="当前装运装了多少柜" placement="top">
|
|
36
112
|
<span>
|
|
37
|
-
|
|
113
|
+
{{ form && form.containerPurchaseAmountRespList && form.containerPurchaseAmountRespList.length }}柜
|
|
114
|
+
<i class="el-icon-question"></i>
|
|
38
115
|
</span>
|
|
39
116
|
</el-tooltip>
|
|
40
117
|
</el-form-item>
|
|
41
118
|
</el-col>
|
|
42
119
|
<el-col :span="8">
|
|
43
|
-
<el-form-item label="定金总额:"
|
|
44
|
-
|
|
45
|
-
<el-tooltip class="item" effect="dark" content="定金发票一共有多少" placement="top-start">
|
|
120
|
+
<el-form-item label="定金总额:">
|
|
121
|
+
<el-tooltip class="ml10" effect="dark" content="采购定金发票一共已付多少金额" placement="top">
|
|
46
122
|
<span>
|
|
47
|
-
|
|
123
|
+
$ {{ $formatNumber(form.totalPurchaseDepositAmount || 0, 2) }}
|
|
124
|
+
<i class="el-icon-question"></i>
|
|
48
125
|
</span>
|
|
49
126
|
</el-tooltip>
|
|
50
127
|
</el-form-item>
|
|
51
128
|
</el-col>
|
|
52
|
-
</el-row>
|
|
53
|
-
<el-row>
|
|
54
129
|
<el-col :span="8">
|
|
55
|
-
<el-form-item label="
|
|
130
|
+
<el-form-item label="总已装运净重:">
|
|
131
|
+
<el-tooltip class="ml10" effect="dark" content="该采购合同一共装了多少吨的货" placement="top">
|
|
132
|
+
<span>
|
|
133
|
+
{{ $formatNumber(form.totalNetWeight, 3) + 'MT' }}
|
|
134
|
+
<i class="el-icon-question"></i>
|
|
135
|
+
</span>
|
|
136
|
+
</el-tooltip>
|
|
137
|
+
</el-form-item>
|
|
56
138
|
</el-col>
|
|
57
139
|
<el-col :span="8">
|
|
58
|
-
<el-form-item label="
|
|
140
|
+
<el-form-item label="总已装运柜数:">
|
|
141
|
+
<el-tooltip class="ml10" effect="dark" content="此采购合同一共已经装了多少柜(根据最新的装运数据实时刷新)" placement="top">
|
|
142
|
+
<span>
|
|
143
|
+
{{ form.loadedContainerNumber + '柜' }}
|
|
144
|
+
<i class="el-icon-question"></i>
|
|
145
|
+
</span>
|
|
146
|
+
</el-tooltip>
|
|
147
|
+
</el-form-item>
|
|
59
148
|
</el-col>
|
|
60
|
-
</el-row>
|
|
61
|
-
<el-row>
|
|
62
149
|
<el-col :span="8">
|
|
63
|
-
<el-form-item label="
|
|
150
|
+
<el-form-item label="上次剩余定金:">
|
|
151
|
+
<el-tooltip class="ml10" effect="dark" content="创建时间在此之前的装运还剩多少定金可以抵扣,不会随着上次的抵扣金额中途变更而刷新,可为负数" placement="top">
|
|
152
|
+
<span>
|
|
153
|
+
<span v-if="form.purchaseDepositBalance == null">$0</span>
|
|
154
|
+
<span v-else>
|
|
155
|
+
$ {{ $formatNumber(form.purchaseDepositBalance, 2) }}
|
|
156
|
+
<span @click.stop="queryDeductionRecords" class="edit-style">点击查询扣减记录</span>
|
|
157
|
+
</span>
|
|
158
|
+
<i class="el-icon-question"></i>
|
|
159
|
+
</span>
|
|
160
|
+
</el-tooltip>
|
|
161
|
+
</el-form-item>
|
|
64
162
|
</el-col>
|
|
65
163
|
<el-col :span="8">
|
|
66
|
-
<el-form-item label="
|
|
164
|
+
<el-form-item label="签约总净重:">
|
|
165
|
+
<el-tooltip class="ml10" effect="dark" content="该采购合同一共签了多少吨的货(实时刷新合同的签约重量)" placement="top">
|
|
166
|
+
<span>
|
|
167
|
+
{{ $formatNumber(form.signedContractWeight || 0, 3) + 'MT' }}
|
|
168
|
+
<i class="el-icon-question"></i>
|
|
169
|
+
</span>
|
|
170
|
+
</el-tooltip>
|
|
171
|
+
</el-form-item>
|
|
67
172
|
</el-col>
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
173
|
+
<el-col :span="8">
|
|
174
|
+
<el-form-item label="本次扣减定金基于总柜数:">
|
|
175
|
+
<el-tooltip class="ml10" effect="dark" content="生成此装运时,采购合同签了多少柜(在此装运后再修改合同不刷新该数据)" placement="top">
|
|
176
|
+
<span>
|
|
177
|
+
{{ (form.purchaseDepositContainerNumber || 0) + '柜' }}
|
|
178
|
+
<i class="el-icon-question"></i>
|
|
179
|
+
<span class="edit-style" @click.stop="editInfo(form, 'purchaseDepositContainerNumber', '2')">编辑</span>
|
|
180
|
+
</span>
|
|
181
|
+
</el-tooltip>
|
|
182
|
+
</el-form-item>
|
|
183
|
+
</el-col>
|
|
184
|
+
<el-col :span="8">
|
|
185
|
+
<el-form-item label="本次扣减定金:">
|
|
186
|
+
<el-tooltip class="ml10" effect="dark" content="当前装运抵扣了多少定金" placement="top">
|
|
187
|
+
<span>
|
|
188
|
+
<span v-if="form.purchaseDepositAmount == null">$0</span>
|
|
189
|
+
<span v-else> $ {{ $formatNumber(form.purchaseDepositAmount || 0, 2) }} </span>
|
|
190
|
+
<i class="el-icon-question"></i>
|
|
191
|
+
</span>
|
|
192
|
+
</el-tooltip>
|
|
193
|
+
</el-form-item>
|
|
194
|
+
</el-col>
|
|
195
|
+
<el-col :span="8">
|
|
196
|
+
<span style="color: #fff">--</span>
|
|
197
|
+
</el-col>
|
|
198
|
+
<el-col :span="8">
|
|
199
|
+
<el-form-item label="签约总柜:">
|
|
200
|
+
<el-tooltip class="ml10" effect="dark" content="采购合同签了多少柜(根据最新的合同数据实时刷新)" placement="top">
|
|
201
|
+
<span>
|
|
202
|
+
{{ (form.signedContainerNumber || 0) + '柜' }}
|
|
203
|
+
<i class="el-icon-question"></i>
|
|
204
|
+
</span>
|
|
205
|
+
</el-tooltip>
|
|
206
|
+
</el-form-item>
|
|
207
|
+
</el-col>
|
|
208
|
+
<el-col :span="8">
|
|
209
|
+
<el-form-item label="总剩余定金:">
|
|
210
|
+
<el-tooltip class="ml10" effect="dark" content="当前时间该合同还剩余多少定金可以用于抵扣,随着每次的抵扣行为实时刷新,可为负数" placement="top">
|
|
211
|
+
<span>
|
|
212
|
+
<span v-if="form.purchaseDepositBalanceAmount == null">$0</span>
|
|
213
|
+
<span v-else> $ {{ $formatNumber(form.purchaseDepositBalanceAmount || 0, 2) }} </span>
|
|
214
|
+
<i class="el-icon-question"></i>
|
|
215
|
+
</span>
|
|
216
|
+
</el-tooltip>
|
|
217
|
+
</el-form-item>
|
|
218
|
+
</el-col>
|
|
219
|
+
<el-col :span="8">
|
|
220
|
+
<span style="color: #fff">--</span>
|
|
221
|
+
</el-col>
|
|
222
|
+
<el-col :span="8">
|
|
223
|
+
<span style="color: #fff">--</span>
|
|
224
|
+
</el-col>
|
|
225
|
+
<el-col :span="8">
|
|
226
|
+
<div style="width: 66%"></div>
|
|
227
|
+
<el-form-item label="本次剩余定金:">
|
|
228
|
+
<el-tooltip class="ml10" effect="dark" content="本次还剩多少定金可供下次抵扣,不会随着下次的抵扣行为刷新,可为负数" placement="top">
|
|
229
|
+
<span>
|
|
230
|
+
<span v-if="form.thisRemainingDeposit == null">$0</span>
|
|
231
|
+
<span v-else> $ {{ $formatNumber(form.thisRemainingDeposit || 0, 2) }} </span>
|
|
232
|
+
<i class="el-icon-question"></i>
|
|
233
|
+
</span>
|
|
234
|
+
</el-tooltip>
|
|
235
|
+
</el-form-item>
|
|
236
|
+
</el-col>
|
|
237
|
+
<el-col :span="24">
|
|
238
|
+
<el-form-item>
|
|
239
|
+
<div>
|
|
240
|
+
<span style="font-weight: bold; margin-right: 5px">备注:</span>
|
|
241
|
+
<el-button size="mini" v-if="!remarkEditable" type="primary" @click.stop="remarkEditable = true">编辑备注</el-button>
|
|
242
|
+
<el-button size="mini" v-else type="success" @click.stop="editRemark">保存备注</el-button>
|
|
98
243
|
</div>
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
<el-table-column align="center" label="单柜尾款">
|
|
104
|
-
<template slot-scope="{ row }">{{ (row.amount - row.purchaseDepositAmount).toFixed(2) }}</template>
|
|
105
|
-
</el-table-column>
|
|
106
|
-
</el-table>
|
|
244
|
+
<el-input type="textarea" :rows="2" v-model="form.remark" :disabled="!remarkEditable" />
|
|
245
|
+
</el-form-item>
|
|
246
|
+
</el-col>
|
|
247
|
+
</el-row>
|
|
107
248
|
</el-form>
|
|
249
|
+
<ShipmentPurchaseAmountEditDialog ref="ShipmentPurchaseAmountEditDialog" @refresh="refresh"></ShipmentPurchaseAmountEditDialog>
|
|
250
|
+
<ChangrLogList :list="form.changeLogList"></ChangrLogList>
|
|
251
|
+
<QueryDeductionRecords ref="QueryDeductionRecords"></QueryDeductionRecords>
|
|
108
252
|
</el-dialog>
|
|
109
253
|
</div>
|
|
110
254
|
</template>
|
|
111
255
|
|
|
112
256
|
<script>
|
|
113
257
|
import { getPurchaseAmount, updateBizShipment } from '../../../api/biz/bizShipment'
|
|
258
|
+
import ShipmentPurchaseAmountEditDialog from './shipmentPurchaseAmountEditDialog.vue'
|
|
259
|
+
import ChangrLogList from './changrLogList.vue'
|
|
260
|
+
import QueryDeductionRecords from './queryDeductionRecords.vue'
|
|
114
261
|
|
|
115
262
|
export default {
|
|
116
263
|
name: 'ShipmentPurchaseAmount',
|
|
@@ -119,19 +266,28 @@ export default {
|
|
|
119
266
|
// 遮罩层
|
|
120
267
|
loading: true,
|
|
121
268
|
// 弹出层标题
|
|
122
|
-
title: '',
|
|
269
|
+
title: '尾款计算明细',
|
|
123
270
|
// 是否显示弹出层
|
|
124
271
|
open: false,
|
|
125
272
|
// 表单参数
|
|
126
|
-
form: {
|
|
273
|
+
form: {
|
|
274
|
+
changrLogList: []
|
|
275
|
+
},
|
|
127
276
|
// 非单个禁用
|
|
128
277
|
single: true,
|
|
129
278
|
// 非多个禁用
|
|
130
279
|
multiple: true,
|
|
131
280
|
//
|
|
132
|
-
contract: null
|
|
281
|
+
contract: null,
|
|
282
|
+
remarkEditable: false,
|
|
283
|
+
tableList: []
|
|
133
284
|
}
|
|
134
285
|
},
|
|
286
|
+
components: {
|
|
287
|
+
ShipmentPurchaseAmountEditDialog,
|
|
288
|
+
ChangrLogList,
|
|
289
|
+
QueryDeductionRecords
|
|
290
|
+
},
|
|
135
291
|
props: {
|
|
136
292
|
getContractFileInfoCallback: {
|
|
137
293
|
type: Function
|
|
@@ -140,6 +296,96 @@ export default {
|
|
|
140
296
|
created() {},
|
|
141
297
|
mounted() {},
|
|
142
298
|
methods: {
|
|
299
|
+
/**
|
|
300
|
+
* @description: 查询扣减记录
|
|
301
|
+
* @return {*}
|
|
302
|
+
*/
|
|
303
|
+
queryDeductionRecords() {
|
|
304
|
+
if (!this.form.shipmentId) {
|
|
305
|
+
this.$message.error('shipmentId不能为空')
|
|
306
|
+
return
|
|
307
|
+
}
|
|
308
|
+
this.$refs.QueryDeductionRecords.handlerOpen(this.form.shipmentId)
|
|
309
|
+
},
|
|
310
|
+
/**
|
|
311
|
+
* @description: 编辑备注
|
|
312
|
+
* @return {*}
|
|
313
|
+
*/
|
|
314
|
+
editRemark() {
|
|
315
|
+
updateBizShipment({
|
|
316
|
+
shipmentId: this.form.shipmentId,
|
|
317
|
+
remark: this.form.remark
|
|
318
|
+
}).then(() => {
|
|
319
|
+
this.$message({
|
|
320
|
+
type: 'success',
|
|
321
|
+
message: '修改成功'
|
|
322
|
+
})
|
|
323
|
+
this.refresh()
|
|
324
|
+
this.remarkEditable = false
|
|
325
|
+
})
|
|
326
|
+
},
|
|
327
|
+
// 编辑信息
|
|
328
|
+
editInfo(detail, prop, type) {
|
|
329
|
+
this.remarkEditable = false
|
|
330
|
+
let textInfo = {}
|
|
331
|
+
let info = {}
|
|
332
|
+
if (type == 1) {
|
|
333
|
+
info = {
|
|
334
|
+
containerId: detail.containerId,
|
|
335
|
+
containerDetailId: detail.containerDetailId,
|
|
336
|
+
purchaseActualNetWeight: detail.purchaseActualNetWeight,
|
|
337
|
+
purchaseActualUnitPrice: detail.purchaseActualUnitPrice
|
|
338
|
+
}
|
|
339
|
+
// 修改表格净重
|
|
340
|
+
if (prop == 'purchaseActualNetWeight') {
|
|
341
|
+
textInfo = {
|
|
342
|
+
title: `请输入柜号${detail.containerNo}的修正净重`,
|
|
343
|
+
label: detail.askName,
|
|
344
|
+
unit: 'MT'
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
// 修改表格单价
|
|
348
|
+
if (prop == 'purchaseActualUnitPrice') {
|
|
349
|
+
textInfo = {
|
|
350
|
+
title: `请输入柜号${detail.containerNo}的修正单价`,
|
|
351
|
+
label: detail.askName,
|
|
352
|
+
unit: '$'
|
|
353
|
+
}
|
|
354
|
+
}
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
if (type == 2) {
|
|
358
|
+
info = {
|
|
359
|
+
shipmentId: detail.shipmentId,
|
|
360
|
+
purchaseDepositContainerNumber: detail.purchaseDepositContainerNumber,
|
|
361
|
+
purchaseActualTotalAmount: detail.totalPurchaseAmount,
|
|
362
|
+
purchaseDepositAmount: detail.purchaseDepositAmount
|
|
363
|
+
}
|
|
364
|
+
if (prop == 'purchaseDepositContainerNumber') {
|
|
365
|
+
textInfo = {
|
|
366
|
+
title: `请输入本次扣减定金基于总柜数`,
|
|
367
|
+
label: '本次扣减定金基于总柜数',
|
|
368
|
+
unit: '柜'
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
if (prop == 'purchaseActualTotalAmount') {
|
|
372
|
+
textInfo = {
|
|
373
|
+
title: `直接修改采购总金额`,
|
|
374
|
+
label: '',
|
|
375
|
+
unit: '$'
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
if (prop == 'purchaseDepositAmount') {
|
|
380
|
+
textInfo = {
|
|
381
|
+
title: `请输入本次扣减定金`,
|
|
382
|
+
label: '本次扣减定金',
|
|
383
|
+
unit: '$'
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
this.$refs.ShipmentPurchaseAmountEditDialog.handlerOpen(info, type, textInfo, prop)
|
|
388
|
+
},
|
|
143
389
|
//更新装运采购定金
|
|
144
390
|
updateShipmentDepositAmount(shipmentId, purchaseDepositAmount) {
|
|
145
391
|
this.$prompt('本次扣减定金$', '请输入本次扣减定金', {
|
|
@@ -171,12 +417,21 @@ export default {
|
|
|
171
417
|
})
|
|
172
418
|
},
|
|
173
419
|
getPurchaseAmountTip(item, row) {
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
msg =
|
|
420
|
+
if (item.quoteType == 'FIXED' || !item.pointDate) {
|
|
421
|
+
return ''
|
|
422
|
+
}
|
|
423
|
+
let msg = '成交单价为'
|
|
424
|
+
msg = msg + this.getPrice(item)
|
|
425
|
+
msg = msg + ', ' + row.pointDate + '点到的期货价格为$' + row.pointPrice
|
|
178
426
|
return msg
|
|
179
427
|
},
|
|
428
|
+
getPrice(item) {
|
|
429
|
+
return item.quoteType.includes('CMX')
|
|
430
|
+
? item.quoteType + '-' + item.purchaseUnitPrice
|
|
431
|
+
: item.quoteType.includes('LME')
|
|
432
|
+
? item.purchaseUnitPrice + '%' + item.quoteType
|
|
433
|
+
: ''
|
|
434
|
+
},
|
|
180
435
|
getColumnProp(row, type) {
|
|
181
436
|
var list = []
|
|
182
437
|
row?.containerDetailPurchaseAmountRespList?.forEach((containerDetail) => {
|
|
@@ -203,7 +458,32 @@ export default {
|
|
|
203
458
|
this.form = res.data
|
|
204
459
|
this.open = true
|
|
205
460
|
})
|
|
461
|
+
},
|
|
462
|
+
refresh() {
|
|
463
|
+
this.handleShow(this.form.shipmentId)
|
|
464
|
+
this.getContractFileInfoCallback && this.getContractFileInfoCallback()
|
|
206
465
|
}
|
|
207
466
|
}
|
|
208
467
|
}
|
|
209
468
|
</script>
|
|
469
|
+
<style scoped lang="scss">
|
|
470
|
+
.edit-style {
|
|
471
|
+
cursor: pointer;
|
|
472
|
+
color: #409eff;
|
|
473
|
+
}
|
|
474
|
+
.my-footer {
|
|
475
|
+
display: flex;
|
|
476
|
+
justify-content: space-between;
|
|
477
|
+
background-color: #f5f7fa;
|
|
478
|
+
padding: 10px;
|
|
479
|
+
font-weight: bold;
|
|
480
|
+
.footer-item {
|
|
481
|
+
text-align: center;
|
|
482
|
+
width: 130px;
|
|
483
|
+
}
|
|
484
|
+
}
|
|
485
|
+
::v-deep .cell {
|
|
486
|
+
padding: 0;
|
|
487
|
+
word-break: break-word;
|
|
488
|
+
}
|
|
489
|
+
</style>
|