|
@@ -1,16 +1,16 @@
|
|
|
<template>
|
|
|
<HcTable ui="no-border" is-new :column="tableColumn" :datas="tableData" :loading="tableLoading" :is-index="false">
|
|
|
- <template #key3="{ row }">
|
|
|
+ <template #integralityDeduction="{ row }">
|
|
|
<div v-if="row.isEdit" class="table-score-input-box">
|
|
|
- <el-input v-model="row.key3" placeholder="" />
|
|
|
+ <el-input v-model="row.integralityDeduction" placeholder="" />
|
|
|
</div>
|
|
|
- <span v-else>{{ row.key3 || '-' }}</span>
|
|
|
+ <span v-else>{{ row.integralityDeduction || '-' }}</span>
|
|
|
</template>
|
|
|
- <template #key5="{ row }">
|
|
|
+ <template #normativeDeduction="{ row }">
|
|
|
<div v-if="row.isEdit" class="table-score-input-box">
|
|
|
- <el-input v-model="row.key5" placeholder="" />
|
|
|
+ <el-input v-model="row.normativeDeduction" placeholder="" />
|
|
|
</div>
|
|
|
- <span v-else>{{ row.key5 || '-' }}</span>
|
|
|
+ <span v-else>{{ row.normativeDeduction || '-' }}</span>
|
|
|
</template>
|
|
|
<template #action="{ row }">
|
|
|
<el-button v-if="row.isEdit" type="success" size="small" @click="saveClick(row)">
|
|
@@ -26,6 +26,7 @@
|
|
|
<script setup>
|
|
|
import { onMounted, ref, watch } from 'vue'
|
|
|
import { getArrValue } from 'js-fast-way'
|
|
|
+import writeApi from '~api/transfer/write-conclusion'
|
|
|
|
|
|
|
|
|
//参数
|
|
@@ -54,66 +55,58 @@ watch(() => [
|
|
|
props.type,
|
|
|
], ([type]) => {
|
|
|
typeId.value = type
|
|
|
+ getTotalData()
|
|
|
})
|
|
|
|
|
|
//渲染完成
|
|
|
onMounted(() => {
|
|
|
-
|
|
|
+ getTotalData()
|
|
|
})
|
|
|
|
|
|
//表格数据
|
|
|
const tableColumn = ref([
|
|
|
- { key:'key1', name: '项目' },
|
|
|
- { key:'key2', name: '完整性', width: 80, align: 'center' },
|
|
|
- { key:'key3', name: '扣分', width: 80, align: 'center' },
|
|
|
- { key:'key4', name: '规范性', width: 80, align: 'center' },
|
|
|
- { key:'key5', name: '扣分', width: 80, align: 'center' },
|
|
|
+ { key:'scoreItem', name: '项目' },
|
|
|
+ { key:'integrality', name: '完整性', width: 80, align: 'center' },
|
|
|
+ { key:'integralityDeduction', name: '扣分', width: 80, align: 'center' },
|
|
|
+ { key:'normative', name: '规范性', width: 80, align: 'center' },
|
|
|
+ { key:'normativeDeduction', name: '扣分', width: 80, align: 'center' },
|
|
|
{ key:'action', name: '操作', width: 80, align: 'center' },
|
|
|
])
|
|
|
const tableData = ref([
|
|
|
- {
|
|
|
- id: 1,
|
|
|
- key1: '设计变更及竣工图',
|
|
|
- key2: '',
|
|
|
- key3: '',
|
|
|
- key4: '',
|
|
|
- key5: '',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 2,
|
|
|
- key1: '施工准备文件',
|
|
|
- key2: '',
|
|
|
- key3: '',
|
|
|
- key4: '',
|
|
|
- key5: '',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 3,
|
|
|
- key1: '试验资料(含工地试验室资质证书、仪器标定证书等)',
|
|
|
- key2: '',
|
|
|
- key3: '',
|
|
|
- key4: '',
|
|
|
- key5: '',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 4,
|
|
|
- key1: '安全生产、文明施工资料',
|
|
|
- key2: '',
|
|
|
- key3: '',
|
|
|
- key4: '',
|
|
|
- key5: '',
|
|
|
- },
|
|
|
+
|
|
|
])
|
|
|
|
|
|
const tableLoading = ref(false)
|
|
|
-
|
|
|
+const getTotalData = async ()=>{
|
|
|
+ tableLoading.value = true
|
|
|
+ const { error, code, data } = await writeApi.getItemByUnit({
|
|
|
+ projectId: projectId.value,
|
|
|
+ unitType:typeId.value,
|
|
|
+ })
|
|
|
+ tableLoading.value = false
|
|
|
+ if (!error && code === 200) {
|
|
|
+ tableData.value = getArrValue(data)
|
|
|
+
|
|
|
+ } else {
|
|
|
+ tableData.value = []
|
|
|
+
|
|
|
+ }
|
|
|
+}
|
|
|
//编辑
|
|
|
const editClick = (row) => {
|
|
|
row.isEdit = true
|
|
|
}
|
|
|
//保存
|
|
|
-const saveClick = (row) => {
|
|
|
- row.isEdit = false
|
|
|
+const saveClick = async (row) => {
|
|
|
+
|
|
|
+ const { error, code, msg } = await writeApi.updateExpertScore({
|
|
|
+ ...row,
|
|
|
+ })
|
|
|
+ if (!error && code === 200) {
|
|
|
+ window.$message.success(msg)
|
|
|
+ row.isEdit = false
|
|
|
+
|
|
|
+ }
|
|
|
}
|
|
|
</script>
|
|
|
|