|
@@ -2,7 +2,7 @@
|
2
|
2
|
* @Author: ysh
|
3
|
3
|
* @Date: 2024-04-03 16:28:09
|
4
|
4
|
* @LastEditors: Please set LastEditors
|
5
|
|
- * @LastEditTime: 2024-12-30 15:15:58
|
|
5
|
+ * @LastEditTime: 2025-04-03 16:48:33
|
6
|
6
|
-->
|
7
|
7
|
<template>
|
8
|
8
|
<div class="main">
|
|
@@ -72,7 +72,7 @@
|
72
|
72
|
<td style="min-width:50px">单价</td>
|
73
|
73
|
<td style="min-width:50px">单位</td>
|
74
|
74
|
<td style="min-width:50px">系数</td>
|
75
|
|
- <td style="min-width:50px">金额</td>
|
|
75
|
+ <td style="min-width:80px">金额</td>
|
76
|
76
|
<td style="min-width: 150px;">备注</td>
|
77
|
77
|
</tr>
|
78
|
78
|
<tr v-for="work in workList">
|
|
@@ -98,12 +98,12 @@
|
98
|
98
|
<td v-else>
|
99
|
99
|
{{ work.coefficient }}
|
100
|
100
|
</td>
|
101
|
|
- <td>{{ work.settle }}</td>
|
|
101
|
+ <td style="text-align:right;">{{ (work.settle).toFixed(2) }}</td>
|
102
|
102
|
<td>{{ work.remark ? work.remark : '' }}</td>
|
103
|
103
|
</tr>
|
104
|
104
|
<tr>
|
105
|
105
|
<td :colspan="7" class="head">预结算额合计</td>
|
106
|
|
- <td :colspan="1" class="head">{{ budgetForm.settleExpense }}</td>
|
|
106
|
+ <td :colspan="1" class="head" style="text-align:right;">{{ (budgetForm.settleExpense).toFixed(2) }}</td>
|
107
|
107
|
<td></td>
|
108
|
108
|
</tr>
|
109
|
109
|
</table>
|
|
@@ -116,10 +116,11 @@
|
116
|
116
|
<td>基本工资</td>
|
117
|
117
|
<td>岗位工资</td>
|
118
|
118
|
<td>人员成本(天)</td>
|
119
|
|
- <td>预算天数</td>
|
120
|
119
|
<td></td>
|
121
|
|
- <td>金额</td>
|
122
|
|
- <td>备注</td>
|
|
120
|
+ <td></td>
|
|
121
|
+ <td style="min-width:80px">预算天数</td>
|
|
122
|
+ <td></td>
|
|
123
|
+ <td style="min-width:80px">金额</td>
|
123
|
124
|
</tr>
|
124
|
125
|
<tr v-for="user in chooseUser" :key="'user' + user.userId">
|
125
|
126
|
<td>{{ user.user ? user.user.nickName : '' }}</td>
|
|
@@ -136,6 +137,8 @@
|
136
|
137
|
</span>
|
137
|
138
|
<span v-else>/</span>
|
138
|
139
|
</td>
|
|
140
|
+ <td></td>
|
|
141
|
+ <td></td>
|
139
|
142
|
<td v-if="taskName == '分管审核' || taskName == '总经理审核' || taskName == '预算批准'">
|
140
|
143
|
<el-input-number :controls="false" style="width:100px;" v-model="user.days"
|
141
|
144
|
@blur="computedFixCostSettle(user, 'user')"></el-input-number>
|
|
@@ -144,31 +147,34 @@
|
144
|
147
|
{{ user.days }}
|
145
|
148
|
</td>
|
146
|
149
|
<td></td>
|
147
|
|
- <td>{{ user.staffCost }}</td>
|
148
|
|
- <td></td>
|
|
150
|
+ <td style="text-align:right;">{{ (user.staffCost).toFixed(2) }}</td>
|
149
|
151
|
</tr>
|
150
|
152
|
<tr v-if="carLen != 1" style="background-color:#f8f8f9">
|
151
|
153
|
<td :rowspan="carLen">车辆</td>
|
152
|
154
|
<td>车牌号</td>
|
153
|
155
|
<td>油耗(元/km)</td>
|
154
|
|
- <td>总里程</td>
|
|
156
|
+ <td>保险(元/天)</td>
|
|
157
|
+ <td>维修(元/天)</td>
|
155
|
158
|
<td>折旧成本(天)</td>
|
|
159
|
+ <td>总里程</td>
|
156
|
160
|
<td>预算天数</td>
|
157
|
161
|
<td>过路费</td>
|
158
|
162
|
<td>金额</td>
|
159
|
|
- <td>备注</td>
|
160
|
163
|
</tr>
|
161
|
164
|
<tr v-for="car in chooseCar" :key="'car' + car.carId">
|
162
|
165
|
<td>{{ car.car ? car.car.licensePlate : '' }}</td>
|
163
|
|
- <td>{{ car.mileage }}</td>
|
|
166
|
+ <td>{{ car.car ? car.car.fuel : '' }}</td>
|
|
167
|
+ <td>{{ car.car ? car.car.insurance : '' }}</td>
|
|
168
|
+ <td>{{ car.car ? car.car.maintenance : '' }}</td>
|
|
169
|
+ <td>{{ car.car ? car.car.dayCost : '' }}</td>
|
|
170
|
+ <td v-if="taskName != '分管审核' && taskName != '总经理审核'">{{ car.distance }}</td>
|
164
|
171
|
<td v-if="taskName == '分管审核' || taskName == '总经理审核'">
|
165
|
172
|
<el-input-number :controls="false" style="width:100px;" v-model="car.distance"
|
166
|
173
|
@blur="computedFixCostSettle(car, 'car')"></el-input-number>
|
167
|
174
|
</td>
|
168
|
|
- <td v-else>
|
|
175
|
+ <!-- <td v-else>
|
169
|
176
|
{{ car.distance }}
|
170
|
|
- </td>
|
171
|
|
- <td>{{ car.car ? car.car.dayCost : '' }}</td>
|
|
177
|
+ </td> -->
|
172
|
178
|
<td v-if="taskName == '分管审核' || taskName == '总经理审核'">
|
173
|
179
|
<el-input-number :controls="false" style="width:100px;" v-model="car.days"
|
174
|
180
|
@blur="computedFixCostSettle(car, 'car')"></el-input-number>
|
|
@@ -177,7 +183,7 @@
|
177
|
183
|
{{ car.days }}
|
178
|
184
|
</td>
|
179
|
185
|
<td> {{ car.toll }} </td>
|
180
|
|
- <td>{{ car.expense }}</td>
|
|
186
|
+ <td style="text-align:right;">{{ (car.expense).toFixed(2) }}</td>
|
181
|
187
|
</tr>
|
182
|
188
|
<tr v-if="deviceLen != 1" style="background-color:#f8f8f9">
|
183
|
189
|
<td :rowspan="deviceLen">设备</td>
|
|
@@ -185,6 +191,8 @@
|
185
|
191
|
<td>规格型号</td>
|
186
|
192
|
<td>品牌</td>
|
187
|
193
|
<td>折旧成本(天)</td>
|
|
194
|
+ <td></td>
|
|
195
|
+ <td></td>
|
188
|
196
|
<td>预算天数</td>
|
189
|
197
|
<td></td>
|
190
|
198
|
<td>金额</td>
|
|
@@ -194,6 +202,8 @@
|
194
|
202
|
<td>{{ device.device ? device.device.series : '' }}</td>
|
195
|
203
|
<td>{{ device.device ? device.device.brand : '' }}</td>
|
196
|
204
|
<td>{{ device.device ? device.device.dayCost : '' }}</td>
|
|
205
|
+ <td></td>
|
|
206
|
+ <td></td>
|
197
|
207
|
<td v-if="taskName == '分管审核' || taskName == '总经理审核'">
|
198
|
208
|
<el-input-number :controls="false" style="width:100px;" v-model="device.days"
|
199
|
209
|
@blur="computedFixCostSettle(device, 'device')"></el-input-number>
|
|
@@ -202,13 +212,11 @@
|
202
|
212
|
{{ device.days }}
|
203
|
213
|
</td>
|
204
|
214
|
<td></td>
|
205
|
|
- <td>{{ device.depreciation }}</td>
|
206
|
|
- <td></td>
|
|
215
|
+ <td style="text-align:right;">{{ (device.depreciation).toFixed(2) }}</td>
|
207
|
216
|
</tr>
|
208
|
217
|
<tr>
|
209
|
|
- <td :colspan="7" class="head">间接成本合计</td>
|
210
|
|
- <td :colspan="1" class="head">{{ budgetForm.fixCost }}</td>
|
211
|
|
- <td></td>
|
|
218
|
+ <td :colspan="9" class="head">间接成本合计</td>
|
|
219
|
+ <td :colspan="1" class="head" style="text-align:right;">{{ budgetForm.fixCost }}</td>
|
212
|
220
|
</tr>
|
213
|
221
|
</table>
|
214
|
222
|
</el-descriptions-item>
|
|
@@ -277,7 +285,7 @@
|
277
|
285
|
{{ budgetForm.totalBudget }}
|
278
|
286
|
</div>
|
279
|
287
|
<div class="text-center">
|
280
|
|
- (简写:{{ (budgetForm.totalBudget / 10000).toFixed(4) + '万' }})
|
|
288
|
+ <!-- (简写:{{ (budgetForm.totalBudget / 10000).toFixed(4) + '万' }}) -->
|
281
|
289
|
</div>
|
282
|
290
|
</el-descriptions-item>
|
283
|
291
|
<el-descriptions-item label="合同总价约" :span="3" v-if="$store.getters.roles.includes('leader')">
|
|
@@ -285,7 +293,7 @@
|
285
|
293
|
{{ contract.contractId ? contract.amount : '' }}
|
286
|
294
|
</div>
|
287
|
295
|
<div class="text-center">
|
288
|
|
- (简写:{{ contract.contractId ? (contract.amount / 10000).toFixed(4) + '万' : '' }})
|
|
296
|
+ <!-- (简写:{{ contract.contractId ? (contract.amount / 10000).toFixed(4) + '万' : '' }}) -->
|
289
|
297
|
</div>
|
290
|
298
|
</el-descriptions-item>
|
291
|
299
|
<el-descriptions-item label="利润" :span="3" v-if="$store.getters.roles.includes('leader')">
|
|
@@ -293,7 +301,7 @@
|
293
|
301
|
{{ profit.toFixed(2) }}
|
294
|
302
|
</div>
|
295
|
303
|
<div class="text-center">
|
296
|
|
- (简写:{{ (profit / 10000).toFixed(4) + '万' }})
|
|
304
|
+ <!-- (简写:{{ (profit / 10000).toFixed(4) + '万' }}) -->
|
297
|
305
|
</div>
|
298
|
306
|
</el-descriptions-item>
|
299
|
307
|
<el-descriptions-item label="分管审核意见" :span="3">
|
|
@@ -594,7 +602,7 @@ export default {
|
594
|
602
|
this.$set(item, 'staffCost', total);
|
595
|
603
|
this.getCost("staffCost", "staffCost", this.chooseUser);
|
596
|
604
|
} else if (type == 'car') {
|
597
|
|
- let total1 = (Number(item.mileage) || 0) * (Number(item.distance) || 0);
|
|
605
|
+ let total1 = (Number(item.fuel) || 0) * (Number(item.distance) || 0);
|
598
|
606
|
let total2 = (Number(item.car.dayCost) || 0) * (Number(item.days) || 0);
|
599
|
607
|
this.$set(item, "depreciation", total2);
|
600
|
608
|
let sum = (total1 + total2).toFixed(2); // sum 是一个字符串
|