余思翰 1 год назад
Родитель
Сommit
b828f0ec55

+ 69
- 21
oa-ui/src/views/oa/budget/addBudget.vue Просмотреть файл

2
  * @Author: ysh
2
  * @Author: ysh
3
  * @Date: 2024-03-25 15:05:59
3
  * @Date: 2024-03-25 15:05:59
4
  * @LastEditors: Please set LastEditors
4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-03-28 17:49:30
6
--->
7
-<!--
8
- * @Author: ysh
9
- * @Date: 2024-03-25 15:05:59
10
- * @LastEditors: Please set LastEditors
11
- * @LastEditTime: 2024-03-27 17:37:37
5
+ * @LastEditTime: 2024-03-29 16:51:06
12
 -->
6
 -->
13
 <template>
7
 <template>
14
   <div>
8
   <div>
137
                 <td>{{ user.salary.salary }}</td>
131
                 <td>{{ user.salary.salary }}</td>
138
                 <td>{{ parseFloat(user.salary.salary / 31).toFixed(2) }}</td>
132
                 <td>{{ parseFloat(user.salary.salary / 31).toFixed(2) }}</td>
139
                 <td>
133
                 <td>
140
-                  <el-input v-model="user.inOutPrice" placeholder="请输入进出场单价"></el-input>
134
+                  <el-input v-model="user.inOutPrice" placeholder="请输入进出场单价" @change="calculateUserTotal(user)"></el-input>
141
                 </td>
135
                 </td>
142
                 <td>
136
                 <td>
143
-                  <el-input v-model="user.days" placeholder="请输入天数"></el-input>
137
+                  <el-input v-model="user.days" placeholder="请输入天数" @change="calculateUserTotal(user)"
138
+                  ></el-input>
144
                 </td>
139
                 </td>
145
                 <td class="staffCost">{{ user.staffCost }}</td>
140
                 <td class="staffCost">{{ user.staffCost }}</td>
146
                 <td>
141
                 <td>
147
-                  <el-button type="text" @click="calculateUserTotal(user)">计算</el-button>
142
+                  <!-- <el-button type="text" @click="calculateUserTotal(user)">计算</el-button> -->
148
                 </td>
143
                 </td>
149
               </tr>
144
               </tr>
150
               <tr>
145
               <tr>
180
               <tr v-for="car in chooseCar" :key="car.carId">
175
               <tr v-for="car in chooseCar" :key="car.carId">
181
                 <td>{{ car.licensePlate }}</td>
176
                 <td>{{ car.licensePlate }}</td>
182
                 <td>
177
                 <td>
183
-                  <el-input v-model="car.mileage" placeholder="请输入油耗"></el-input>
178
+                  <el-input v-model="car.mileage" placeholder="请输入油耗" @change="calculateCarTotal(car)"></el-input>
184
                 </td>
179
                 </td>
185
                 <td>
180
                 <td>
186
-                  <el-input v-model="car.distance" placeholder="请输入总里程"></el-input>
181
+                  <el-input v-model="car.distance" placeholder="请输入总里程" @change="calculateCarTotal(car)"></el-input>
187
                 </td>
182
                 </td>
188
                 <td>
183
                 <td>
189
                   {{ car.dayCost }}
184
                   {{ car.dayCost }}
190
                 </td>
185
                 </td>
191
                 <td>
186
                 <td>
192
-                  <el-input v-model="car.days" placeholder="请输入天数"></el-input>
187
+                  <el-input v-model="car.days" placeholder="请输入天数" @change="calculateCarTotal(car)"></el-input>
193
                 </td>
188
                 </td>
194
                 <td class="carCost">{{ car.expense }}</td>
189
                 <td class="carCost">{{ car.expense }}</td>
195
                 <td>
190
                 <td>
196
-                  <el-button type="text" @click="calculateCarTotal(car)">计算</el-button>
191
+                  <!-- <el-button type="text" @click="calculateCarTotal(car)">计算</el-button> -->
197
                 </td>
192
                 </td>
198
               </tr>
193
               </tr>
199
               <tr>
194
               <tr>
234
                   {{ device.dayCost }}
229
                   {{ device.dayCost }}
235
                 </td>
230
                 </td>
236
                 <td>
231
                 <td>
237
-                  <el-input v-model="device.days" placeholder="请输入天数"></el-input>
232
+                  <el-input v-model="device.days" placeholder="请输入天数" @change="calculateDeviceTotal(device)"></el-input>
238
                 </td>
233
                 </td>
239
                 <td class="deviceCost">{{ device.depreciation }}</td>
234
                 <td class="deviceCost">{{ device.depreciation }}</td>
240
                 <td>
235
                 <td>
241
-                  <el-button type="text" @click="calculateDeviceTotal(device)">计算</el-button>
236
+                  <!-- <el-button type="text" @click="calculateDeviceTotal(device)">计算</el-button> -->
242
                 </td>
237
                 </td>
243
               </tr>
238
               </tr>
244
               <tr>
239
               <tr>
269
           <el-breadcrumb-item>固定成本小计</el-breadcrumb-item>
264
           <el-breadcrumb-item>固定成本小计</el-breadcrumb-item>
270
           <el-breadcrumb-item>¥ {{ budgetForm.fixCost }}</el-breadcrumb-item>
265
           <el-breadcrumb-item>¥ {{ budgetForm.fixCost }}</el-breadcrumb-item>
271
         </el-breadcrumb>
266
         </el-breadcrumb>
272
-        <choose-money :workList="workList" @getSettle="getSettle"></choose-money>
267
+        <el-form>
268
+          <choose-money :workList="workList" @getSettle="getSettle"></choose-money>
269
+          <el-form-item label="外协费用:">
270
+            <el-input-number v-model="budgetForm.outExpense" style="width:400px;"></el-input-number>
271
+          </el-form-item>
272
+          <el-form-item label="商务费用:">
273
+            <el-input-number v-model="budgetForm.businessExpense" style="width:400px;"></el-input-number>
274
+          </el-form-item>
275
+          <el-form-item label="车船租赁:">
276
+            <el-input-number v-model="budgetForm.rentExpense" style="width:400px;"></el-input-number>
277
+          </el-form-item>
278
+          <el-form-item label="其他费用:">
279
+            <el-input-number v-model="budgetForm.otherExpense" style="width:400px;"></el-input-number>
280
+          </el-form-item>
281
+          <el-form-item label="直接成本小计:">
282
+            {{ budgetForm.directExpense }}
283
+            <el-button type="success" style="margin-left:30px;" @click="getDirectExpense(budgetForm)">计算</el-button>
284
+          </el-form-item>
285
+
286
+        </el-form>
287
+      </div>
288
+
289
+      <!-- 生成预算表 -->
290
+      <div class="finish" v-if="activeStep == 3">
291
+        <el-breadcrumb separator-class="el-icon-arrow-right">
292
+          <el-breadcrumb-item>选择项目</el-breadcrumb-item>
293
+          <el-breadcrumb-item>{{ projectForm.projectNumber }}</el-breadcrumb-item>
294
+          <el-breadcrumb-item>{{ projectForm.projectName }}</el-breadcrumb-item>
295
+          <el-breadcrumb-item>{{ projectForm.projectLeader }}</el-breadcrumb-item>
296
+        </el-breadcrumb>
297
+        <el-breadcrumb separator-class="el-icon-arrow-right" style="margin:15px 0">
298
+          <el-breadcrumb-item>固定成本小计</el-breadcrumb-item>
299
+          <el-breadcrumb-item>¥ {{ budgetForm.fixCost }}</el-breadcrumb-item>
300
+        </el-breadcrumb>
301
+        <el-breadcrumb separator-class="el-icon-arrow-right" style="margin:15px 0">
302
+          <el-breadcrumb-item>直接成本小计</el-breadcrumb-item>
303
+          <el-breadcrumb-item>¥ {{ budgetForm.directExpense }}</el-breadcrumb-item>
304
+        </el-breadcrumb>
305
+        <budget-table :budgetForm="budgetForm" :projectForm="projectForm" ></budget-table>
273
       </div>
306
       </div>
274
       <el-divider></el-divider>
307
       <el-divider></el-divider>
275
       <div class="btn">
308
       <div class="btn">
340
 import chooseCar from "./components/chooseCar.vue";
373
 import chooseCar from "./components/chooseCar.vue";
341
 import chooseDevice from "./components/chooseDevice.vue";
374
 import chooseDevice from "./components/chooseDevice.vue";
342
 import chooseMoney from "./components/chooseMoney.vue";
375
 import chooseMoney from "./components/chooseMoney.vue";
376
+import budgetTable from './components/budgetTable.vue';
343
 export default {
377
 export default {
344
   components: {
378
   components: {
345
-    choosePeople, chooseCar, chooseDevice, chooseMoney
379
+    choosePeople, chooseCar, chooseDevice, chooseMoney, budgetTable
346
   },
380
   },
347
   data() {
381
   data() {
348
     return {
382
     return {
425
       this.openProject = false;
459
       this.openProject = false;
426
     },
460
     },
427
     confirmStep() {
461
     confirmStep() {
462
+        debugger
428
       if (this.activeStep == 0) {
463
       if (this.activeStep == 0) {
429
         if (this.projectForm.projectNumber == undefined) {
464
         if (this.projectForm.projectNumber == undefined) {
430
           this.activeStep = 0;
465
           this.activeStep = 0;
432
         } else {
467
         } else {
433
           this.activeStep += 1;
468
           this.activeStep += 1;
434
         }
469
         }
435
-      } else {
470
+      }else if(this.activeStep == 2){
471
+        this.budgetForm.chooseUser = this.chooseUser;
472
+        this.budgetForm.chooseCar = this.chooseCar;
473
+        this.budgetForm.chooseDevice = this.chooseDevice;
474
+        this.activeStep += 1;
475
+      }
476
+      else {
436
         this.activeStep += 1;
477
         this.activeStep += 1;
437
       }
478
       }
438
     },
479
     },
453
         return res.data.salary;
494
         return res.data.salary;
454
       });
495
       });
455
     },
496
     },
456
-    getSettle(val){
497
+    getSettle(val) {
457
       console.log(val);
498
       console.log(val);
458
       console.log(this.budgetForm);
499
       console.log(this.budgetForm);
459
       this.budgetForm.settleExpense = val.settle;
500
       this.budgetForm.settleExpense = val.settle;
495
     getFixCost() {
536
     getFixCost() {
496
       let total = Number(this.budgetForm.staffCost) + Number(this.budgetForm.carCost) + Number(this.budgetForm.deviceCost)
537
       let total = Number(this.budgetForm.staffCost) + Number(this.budgetForm.carCost) + Number(this.budgetForm.deviceCost)
497
       this.budgetForm.fixCost = total.toFixed(2)
538
       this.budgetForm.fixCost = total.toFixed(2)
539
+    },
540
+    // 获取直接成本
541
+    getDirectExpense(form) {
542
+      console.log(this.budgetForm);
543
+      let sum = Number(form.settleExpense) + form.outExpense + form.rentExpense + form.businessExpense + form.otherExpense
544
+      this.budgetForm.directExpense = sum.toFixed(2)
498
     }
545
     }
499
   },
546
   },
500
 };
547
 };
540
   }
587
   }
541
 
588
 
542
   .staff,
589
   .staff,
543
-  .other {
590
+  .other,
591
+  .finish {
544
     width: 1200px;
592
     width: 1200px;
545
     margin: 0 auto;
593
     margin: 0 auto;
546
     padding-top: 50px;
594
     padding-top: 50px;

+ 171
- 0
oa-ui/src/views/oa/budget/components/budgetTable.vue Просмотреть файл

1
+<template>
2
+  <div>
3
+    <h2 style="text-align:center;">项目直接生产成本预算表</h2>
4
+    <table border="1" class="table">
5
+      <tr>
6
+        <td class="head">项目名称</td>
7
+        <td colspan="3">{{ projectForm.projectName }}</td>
8
+        <td>项目编号</td>
9
+        <td colspan="2">{{ projectForm.projectNumber }}</td>
10
+      </tr>
11
+      <tr>
12
+        <td :rowspan="userLen">人员</td>
13
+        <td>姓名</td>
14
+        <td>岗位工资</td>
15
+        <td>人员成本(天)</td>
16
+        <td>进出场单价</td>
17
+        <td>预算天数</td>
18
+        <td>金额</td>
19
+      </tr>
20
+      <tr v-for="user in budgetForm.chooseUser" :key="user.userId">
21
+        <td>{{ user.nickName }}</td>
22
+        <td>{{ user.salary.salary }}</td>
23
+        <td>{{ parseFloat(user.salary.salary / 31).toFixed(2) }}</td>
24
+        <td>{{ user.inOutPrice }}</td>
25
+        <td>{{ user.days }}</td>
26
+        <td>{{ user.staffCost }}</td>
27
+      </tr>
28
+      <tr>
29
+        <td :rowspan="carLen">车辆</td>
30
+        <td>车牌号</td>
31
+        <td>油耗</td>
32
+        <td>总里程</td>
33
+        <td>折旧成天(天)</td>
34
+        <td>预算天数</td>
35
+        <td>金额</td>
36
+      </tr>
37
+      <tr v-for="car in budgetForm.chooseCar" :key="car.carId">
38
+        <td>{{ car.licensePlate }}</td>
39
+        <td>{{ car.mileage }}</td>
40
+        <td>{{ car.distance }}</td>
41
+        <td>{{ car.dayCost }}</td>
42
+        <td>{{ car.days }}</td>
43
+        <td>{{ car.expense }}</td>
44
+      </tr>
45
+      <tr>
46
+        <td :rowspan="deviceLen">设备</td>
47
+        <td>设备名称</td>
48
+        <td>规格型号</td>
49
+        <td>品牌</td>
50
+        <td>折旧成本(天)</td>
51
+        <td>预算天数</td>
52
+        <td>金额</td>
53
+      </tr>
54
+      <tr v-for="device in budgetForm.chooseDevice" :key="device.deviceId">
55
+        <td>{{ device.name }}</td>
56
+        <td>{{ device.series }}</td>
57
+        <td>{{ device.brand }}</td>
58
+        <td>{{ device.dayCost }}</td>
59
+        <td>{{ device.days }}</td>
60
+        <td>{{ device.depreciation }}</td>
61
+      </tr>
62
+      <tr>
63
+        <td colspan="6">固定成本小计</td>
64
+        <td>{{ budgetForm.fixCost }}</td>
65
+      </tr>
66
+      <tr>
67
+        <td :rowspan="workLen">预计结算金额</td>
68
+        <td>工作内容</td>
69
+        <td>比例尺</td>
70
+        <td>总工作量</td>
71
+        <td>单价</td>
72
+        <td>系数</td>
73
+        <td>金额</td>
74
+      </tr>
75
+      <tr v-for="(work, index) in budgetForm.workList" :key="'work' + index">
76
+        <td>{{ work.content }}</td>
77
+        <td>{{ work.scale }}</td>
78
+        <td>{{ work.workLoad }}</td>
79
+        <td>{{ work.price }}</td>
80
+        <td>{{ work.coefficient }}</td>
81
+        <td>{{ work.total }}</td>
82
+      </tr>
83
+      <tr>
84
+        <td colspan="5">外协费用</td>
85
+        <td>{{ budgetForm.outExpense }}</td>
86
+      </tr>
87
+      <tr>
88
+        <td colspan="5">商务费用</td>
89
+        <td>{{ budgetForm.businessExpense }}</td>
90
+      </tr>
91
+      <tr>
92
+        <td colspan="5">车船租赁</td>
93
+        <td>{{ budgetForm.rentExpense }}</td>
94
+      </tr>
95
+      <tr>
96
+        <td colspan="5">其他费用</td>
97
+        <td>{{ budgetForm.otherExpense }}</td>
98
+      </tr>
99
+      <tr>
100
+        <td colspan="6">直接成本小计</td>
101
+        <td>{{ budgetForm.directExpense }}</td>
102
+      </tr>
103
+      <tr>
104
+        <td colspan="6">总成本=(固定成本+直接成本)*120%</td>
105
+        <td>{{ totalCost }}</td>
106
+      </tr>
107
+      <tr>
108
+        <td>编制人</td>
109
+        <td colspan="2"></td>
110
+        <td>审核人</td>
111
+        <td colspan="3"></td>
112
+      </tr>
113
+    </table>
114
+  </div>
115
+</template>
116
+
117
+<script>
118
+export default {
119
+  props: {
120
+    budgetForm: {
121
+      type: Object,
122
+      require: true
123
+    },
124
+    projectForm: {
125
+      type: Object,
126
+      require: true
127
+    }
128
+  },
129
+  data() {
130
+    return {
131
+      userLen: 1,
132
+      carLen: 1,
133
+      deviceLen: 1,
134
+      workLen: 1,
135
+      totalCost: 0
136
+    }
137
+  },
138
+  created() {
139
+    console.log(this.budgetForm);
140
+    this.userLen = this.budgetForm.chooseUser.length + 1;
141
+    this.carLen = this.budgetForm.chooseCar.length + 1;
142
+    this.deviceLen = this.budgetForm.chooseDevice.length + 1;
143
+    this.workLen = this.budgetForm.workList.length + 5;
144
+  },
145
+  methods: {
146
+
147
+  },
148
+}
149
+</script>
150
+
151
+<style lang="scss" scoped>
152
+.table {
153
+  /*居中*/
154
+  // margin: 0 auto;
155
+  /*边框*/
156
+  /* border: 1px solid black; */
157
+  text-align: center;
158
+  border-collapse: collapse;
159
+  margin: 0 auto;
160
+  /*设置背景颜色*/
161
+  /* background-color: #bfa; */
162
+  td {
163
+    padding: 5px;
164
+    height: 40px;
165
+  }
166
+}
167
+
168
+.head {
169
+  background-color: var(--primary-color);
170
+}
171
+</style>

+ 104
- 106
oa-ui/src/views/oa/budget/components/chooseMoney.vue Просмотреть файл

1
 <template>
1
 <template>
2
   <div>
2
   <div>
3
-    <el-form>
4
-      <el-form-item label="项目概况:">
5
-        <table border="1">
6
-          <tr>
7
-            <td style="width: 250px">工作内容</td>
8
-            <td>等级或比例尺</td>
9
-            <td>单位</td>
10
-            <td>工作量</td>
11
-            <td style="width: 100px">要求完成时间</td>
12
-            <td>备注</td>
13
-          </tr>
14
-          <tr v-for="(work, index) in workList" :key="index">
15
-            <td>
16
-              {{ work.content }}
17
-            </td>
18
-            <td>
19
-              {{ work.scale }}
20
-            </td>
21
-            <td>
22
-              {{ work.unit }}
23
-            </td>
24
-            <td>
25
-              {{ work.workLoad }}
26
-            </td>
27
-            <td>
28
-              {{ work.deadline }}
29
-            </td>
30
-            <td>
31
-              {{ work.remark }}
32
-            </td>
33
-          </tr>
34
-        </table>
35
-      </el-form-item>
36
-      <el-form-item label="预结算:">
37
-        <table border="1">
38
-          <tr>
39
-            <td style="width: 100px">工作内容</td>
40
-            <td>工作类别</td>
41
-            <td>工作项目</td>
42
-            <!-- <td>项目细项</td> -->
43
-            <td>比例尺</td>
44
-            <td>地类类型</td>
45
-            <td style="width:90px;">单价</td>
46
-            <td style="width:90px;">总工作量</td>
47
-            <td style="width:70px;">系数</td>
48
-            <td>总额</td>
49
-          </tr>
50
-          <tr v-for="(work, index) in workList" :key="index">
51
-            <td>
52
-              {{ work.content }}
53
-            </td>
54
-            <td>
55
-              <el-select v-model="work.workType" :style="{ width: '100%' }" :loading="work.workSelect.workTypeLoading"
56
-                @change="getWorkItemList(work, work.workType)">
57
-                <el-option v-for="item in work.workSelect.workTypeList" :key="item.value" :label="item.label"
58
-                  :value="item.value">
59
-                </el-option>
60
-              </el-select>
61
-            </td>
62
-            <td>
63
-              <el-select v-model="work.workItem" :style="{ width: '100%' }" :remote="true"
64
-                @change="getScaleGradeList(work, work.workItem)">
65
-                <el-option v-for="item in work.workSelect.workItemList" :key="item.value" :label="item.label"
66
-                  :value="item.value">
67
-                </el-option>
68
-              </el-select>
69
-            </td>
70
-            <!-- <td>
3
+    <el-form-item label="项目概况:">
4
+      <table border="1">
5
+        <tr>
6
+          <td style="width: 250px">工作内容</td>
7
+          <td>等级或比例尺</td>
8
+          <td>单位</td>
9
+          <td>工作量</td>
10
+          <td style="width: 100px">要求完成时间</td>
11
+          <td>备注</td>
12
+        </tr>
13
+        <tr v-for="(work, index) in workList" :key="index">
14
+          <td>
15
+            {{ work.content }}
16
+          </td>
17
+          <td>
18
+            {{ work.scale }}
19
+          </td>
20
+          <td>
21
+            {{ work.unit }}
22
+          </td>
23
+          <td>
24
+            {{ work.workLoad }}
25
+          </td>
26
+          <td>
27
+            {{ work.deadline }}
28
+          </td>
29
+          <td>
30
+            {{ work.remark }}
31
+          </td>
32
+        </tr>
33
+      </table>
34
+    </el-form-item>
35
+    <el-form-item label="预结算:">
36
+      <table border="1">
37
+        <tr>
38
+          <td style="width: 100px">工作内容</td>
39
+          <td>工作类别</td>
40
+          <td>工作项目</td>
41
+          <!-- <td>项目细项</td> -->
42
+          <td>比例尺</td>
43
+          <td>地类类型</td>
44
+          <td style="width:90px;">单价</td>
45
+          <td style="width:90px;">总工作量</td>
46
+          <td style="width:70px;">系数</td>
47
+          <td style="min-width:70px;">总额</td>
48
+        </tr>
49
+        <tr v-for="(work, index) in workList" :key="index">
50
+          <td>
51
+            {{ work.content }}
52
+          </td>
53
+          <td>
54
+            <el-select v-model="work.workType" :style="{ width: '100%' }" :loading="work.workSelect.workTypeLoading"
55
+              @change="getWorkItemList(work, work.workType)">
56
+              <el-option v-for="item in work.workSelect.workTypeList" :key="item.value" :label="item.label"
57
+                :value="item.value">
58
+              </el-option>
59
+            </el-select>
60
+          </td>
61
+          <td>
62
+            <el-select v-model="work.workItem" :style="{ width: '100%' }" :remote="true"
63
+              @change="getScaleGradeList(work, work.workItem)">
64
+              <el-option v-for="item in work.workSelect.workItemList" :key="item.value" :label="item.label"
65
+                :value="item.value">
66
+              </el-option>
67
+            </el-select>
68
+          </td>
69
+          <!-- <td>
71
               <el-select v-model="work.subItem" :style="{ width: '100%' }"
70
               <el-select v-model="work.subItem" :style="{ width: '100%' }"
72
                 @change="getUnitPrice(work, work.workItem, work.subItem, work.scaleGrade, work.groundType)">
71
                 @change="getUnitPrice(work, work.workItem, work.subItem, work.scaleGrade, work.groundType)">
73
                 <el-option v-for="item in work.workSelect.subItemList" :key="item.value" :label="item.label"
72
                 <el-option v-for="item in work.workSelect.subItemList" :key="item.value" :label="item.label"
75
                 </el-option>
74
                 </el-option>
76
               </el-select>
75
               </el-select>
77
             </td> -->
76
             </td> -->
78
-            <td>
79
-              <el-select v-model="work.scaleGrade" :style="{ width: '100%' }"
80
-                @change="getUnitPrice(work, work.workItem, work.subItem, work.scaleGrade, work.groundType)">
81
-                <el-option v-for="item in work.workSelect.scaleGradeList" :key="item.value" :label="item.label"
82
-                  :value="item.value">
83
-                </el-option>
84
-              </el-select>
85
-            </td>
86
-            <td>
87
-              <el-select v-model="work.groundType" :style="{ width: '100%' }"
88
-                @change="getUnitPrice(work, work.workItem, work.subItem, work.scaleGrade, work.groundType)">
89
-                <el-option key="一般地类" label="一般地类" value="一般地类">
90
-                </el-option>
91
-                <el-option key="复杂地类" label="复杂地类" value="复杂地类">
92
-                </el-option>
93
-              </el-select>
94
-            </td>
95
-            <td>
96
-              {{ work.price }} / {{ work.unit }}
97
-            </td>
98
-            <td>
99
-              {{ work.workLoad }}
100
-            </td>
101
-            <td>
102
-              <el-input v-model="work.coefficient" placeholder="请输入系数" @blur="getTotal(work)"></el-input>
103
-            </td>
104
-            <td class="workTotal">
105
-              {{ work.total }}
106
-            </td>
107
-          </tr>
108
-        </table>
109
-        <div style="color:red">tips:预结算表中的系数为:困难系统和调整系数相乘的值(1分制)。例如:困难系数1,调整系数0.8,最终系数为0.8</div>
110
-      </el-form-item>
111
-      <el-form-item label="预结算合计:">
112
-        {{ settle }}<el-button @click="getSettle()" type="success" style="margin-left:30px;">计算</el-button>
113
-      </el-form-item>
114
-    </el-form>
77
+          <td>
78
+            <el-select v-model="work.scaleGrade" :style="{ width: '100%' }"
79
+              @change="getUnitPrice(work, work.workItem, work.subItem, work.scaleGrade, work.groundType)">
80
+              <el-option v-for="item in work.workSelect.scaleGradeList" :key="item.value" :label="item.label"
81
+                :value="item.value">
82
+              </el-option>
83
+            </el-select>
84
+          </td>
85
+          <td>
86
+            <el-select v-model="work.groundType" :style="{ width: '100%' }"
87
+              @change="getUnitPrice(work, work.workItem, work.subItem, work.scaleGrade, work.groundType)">
88
+              <el-option key="一般地类" label="一般地类" value="一般地类">
89
+              </el-option>
90
+              <el-option key="复杂地类" label="复杂地类" value="复杂地类">
91
+              </el-option>
92
+            </el-select>
93
+          </td>
94
+          <td>
95
+            {{ work.price }} / {{ work.unit }}
96
+          </td>
97
+          <td>
98
+            {{ work.workLoad }}
99
+          </td>
100
+          <td>
101
+            <el-input v-model="work.coefficient" placeholder="请输入系数" @blur="getTotal(work)"></el-input>
102
+          </td>
103
+          <td class="workTotal">
104
+            {{ work.total }}
105
+          </td>
106
+        </tr>
107
+      </table>
108
+      <div style="color:red">tips:预结算表中的系数为:困难系统和调整系数相乘的值(1分制)。例如:困难系数1,调整系数0.8,最终系数为0.8</div>
109
+    </el-form-item>
110
+    <el-form-item label="预结算合计:">
111
+      {{ settle }}<el-button @click="getSettle()" type="success" style="margin-left:30px;">计算</el-button>
112
+    </el-form-item>
115
   </div>
113
   </div>
116
 </template>
114
 </template>
117
 
115
 
249
       obj.workList = this.workList;
247
       obj.workList = this.workList;
250
       obj.settle = this.settle;
248
       obj.settle = this.settle;
251
       console.log(this.workList);
249
       console.log(this.workList);
252
-      this.$emit('getSettle',obj)
250
+      this.$emit('getSettle', obj)
253
     },
251
     },
254
     //数组去重
252
     //数组去重
255
     setArray(arr) {
253
     setArray(arr) {

Загрузка…
Отмена
Сохранить