From a944d1d90465386b8c47913c3f0945e759b1910a Mon Sep 17 00:00:00 2001 From: 董国庆 <364620639@qq.com> Date: 星期五, 21 三月 2025 14:25:51 +0800 Subject: [PATCH] 安置申请表调试 --- src/views/applicationBatchList/components/ApprovalDialog.vue | 519 ++++++++++++++++++++++++++++++-------------------------- 1 files changed, 278 insertions(+), 241 deletions(-) diff --git a/src/views/applicationBatchList/components/ApprovalDialog.vue b/src/views/applicationBatchList/components/ApprovalDialog.vue index d44afd1..4c0da69 100644 --- a/src/views/applicationBatchList/components/ApprovalDialog.vue +++ b/src/views/applicationBatchList/components/ApprovalDialog.vue @@ -4,13 +4,23 @@ <div class="approval-content"> <!-- 左侧表格区域 --> <div class="table-container"> - <el-table :data="tableData" border style="width: 100%" :row-class-name="tableRowClassName"> + <el-table + v-loading="loading" + element-loading-text="加载中..." + element-loading-spinner="el-icon-loading" + element-loading-background="rgba(255, 255, 255, 0.8)" + :data="tableData" + border + style="width: 100%" + :row-class-name="tableRowClassName" + height="400" + > <el-table-column type="index" label="序号" width="50" align="center" /> - <el-table-column prop="town" label="镇(街道)" align="center" width="80"> + <el-table-column prop="street" label="镇(街道)" align="center" width="80"> <template slot-scope="scope"> - {{ scope.row.town }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.town" placement="top"> - <div slot="content">{{ scope.row.errors.town }}</div> + {{ scope.row.street }} + <el-tooltip v-if="scope.row.streetWarn" placement="top"> + <div slot="content">{{ scope.row.streetWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> @@ -18,35 +28,35 @@ <el-table-column prop="projectName" label="拆迁项目名称" align="center" width="150"> <template slot-scope="scope"> {{ scope.row.projectName }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.projectName" placement="top"> - <div slot="content">{{ scope.row.errors.projectName }}</div> + <el-tooltip v-if="scope.row.projectNameWarn" placement="top"> + <div slot="content">{{ scope.row.projectNameWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> </el-table-column> - <el-table-column prop="village" label="所在村(社区)" align="center" width="100"> + <el-table-column prop="community" label="所在村(社区)" align="center" width="100"> <template slot-scope="scope"> - {{ scope.row.village }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.village" placement="top"> - <div slot="content">{{ scope.row.errors.village }}</div> + {{ scope.row.community }} + <el-tooltip v-if="scope.row.communityWarn" placement="top"> + <div slot="content">{{ scope.row.communityWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> </el-table-column> - <el-table-column prop="time" label="拆迁时间" align="center" width="100"> + <el-table-column prop="demolitionTime" label="拆迁时间" align="center" width="100"> <template slot-scope="scope"> - {{ scope.row.time }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.time" placement="top"> - <div slot="content">{{ scope.row.errors.time }}</div> + {{ scope.row.demolitionTime }} + <el-tooltip v-if="scope.row.demolitionTimeWarn" placement="top"> + <div slot="content">{{ scope.row.demolitionTimeWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> </el-table-column> - <el-table-column prop="owner" label="产主姓名" align="center" width="80"> + <el-table-column prop="householdHead" label="户主名称" align="center" width="80"> <template slot-scope="scope"> - {{ scope.row.owner }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.owner" placement="top"> - <div slot="content">{{ scope.row.errors.owner }}</div> + {{ scope.row.householdHead }} + <el-tooltip v-if="scope.row.householdHeadWarn" placement="top"> + <div slot="content">{{ scope.row.householdHeadWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> @@ -54,126 +64,124 @@ <el-table-column prop="idCard" label="身份证号" align="center" width="180"> <template slot-scope="scope"> {{ scope.row.idCard }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.idCard" placement="top"> - <div slot="content">{{ scope.row.errors.idCard }}</div> + <el-tooltip v-if="scope.row.idCardExistsWarn == 1" placement="top"> + <div slot="content">{{ "身份证不在安置库" }}</div> + <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> + </el-tooltip> + <el-tooltip v-if="scope.row.idCardNoWarn == 1" placement="top"> + <div slot="content">{{ "身份证重复" }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> </el-table-column> - <el-table-column prop="contact" label="联系电话" align="center" width="120"> + <el-table-column prop="mobile" label="联系电话" align="center" width="120"> <template slot-scope="scope"> - {{ scope.row.contact }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.contact" placement="top"> - <div slot="content">{{ scope.row.errors.contact }}</div> + {{ scope.row.mobile }} + <el-tooltip v-if="scope.row.mobileWarn" placement="top"> + <div slot="content">{{ scope.row.mobileWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> </el-table-column> - <el-table-column label="家庭安置人数(人)" align="center"> - <el-table-column prop="resettlementPeople" label="集体经济组织成员" align="center" width="120"> + <el-table-column label="本次安置人数(人)" align="center"> + <el-table-column prop="currentCollectiveNum" label="集体经济组织成员" align="center" width="120"> <template slot-scope="scope"> - {{ scope.row.resettlementPeople }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.resettlementPeople" placement="top"> - <div slot="content"> - {{ scope.row.errors.resettlementPeople }} - </div> + {{ scope.row.currentCollectiveNum }} + <el-tooltip v-if="scope.row.currentCollectiveNumWarn" placement="top"> + <div slot="content">{{ scope.row.currentCollectiveNumWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> </el-table-column> - <el-table-column prop="additionalPeople" label="非集体经济组织成员" align="center" width="120"> + <el-table-column prop="currentNoCollectiveNum" label="非集体经济组织成员" align="center" width="120"> <template slot-scope="scope"> - {{ scope.row.additionalPeople }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.additionalPeople" placement="top"> - <div slot="content"> - {{ scope.row.errors.additionalPeople }} - </div> + {{ scope.row.currentNoCollectiveNum }} + <el-tooltip v-if="scope.row.currentNoCollectiveNumWarn" placement="top"> + <div slot="content">{{ scope.row.currentNoCollectiveNumWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> </el-table-column> - <el-table-column prop="totalPeople" label="合计" align="center" width="60"> + <el-table-column prop="currentCount" label="合计" align="center" width="60"> <template slot-scope="scope"> - {{ scope.row.totalPeople }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.totalPeople" placement="top"> - <div slot="content">{{ scope.row.errors.totalPeople }}</div> + {{ scope.row.currentCount }} + <el-tooltip v-if="scope.row.currentCountWarn" placement="top"> + <div slot="content">{{ scope.row.currentCountWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> </el-table-column> </el-table-column> - <el-table-column prop="houseName" label="待安置家庭成员姓名" align="center" width="120"> + <el-table-column prop="waitFamilyNames" label="待安置家庭成员姓名" align="center" width="120"> <template slot-scope="scope"> - {{ scope.row.houseName }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.houseName" placement="top"> - <div slot="content">{{ scope.row.errors.houseName }}</div> + {{ scope.row.waitFamilyNames }} + <el-tooltip v-if="scope.row.waitFamilyNamesWarn" placement="top"> + <div slot="content">{{ scope.row.waitFamilyNamesWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> </el-table-column> - <el-table-column prop="area" label="待安置人员应安置面积合计(㎡)" align="center" width="120"> + <el-table-column prop="waitFamilyArea" label="待安置人员应安置面积合计(㎡)" align="center" width="120"> <template slot-scope="scope"> - {{ scope.row.area }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.area" placement="top"> - <div slot="content">{{ scope.row.errors.area }}</div> + {{ scope.row.waitFamilyArea }} + <el-tooltip v-if="scope.row.waitFamilyAreaWarn" placement="top"> + <div slot="content">{{ scope.row.waitFamilyAreaWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> </el-table-column> <el-table-column label="补偿金额(万元)" align="center"> - <el-table-column prop="firstPayment" label="新建商品住房、商业用房、停车位" align="center" width="100"> + <el-table-column prop="compensationNewAmount" label="新建商品住房、商业用房、停车位" align="center" width="100"> <template slot-scope="scope"> - {{ scope.row.firstPayment }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.firstPayment" placement="top"> - <div slot="content">{{ scope.row.errors.firstPayment }}</div> + {{ scope.row.compensationNewAmount }} + <el-tooltip v-if="scope.row.compensationNewAmountWarn" placement="top"> + <div slot="content">{{ scope.row.compensationNewAmountWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> </el-table-column> - <el-table-column prop="secondPayment" label="二手住房" align="center" width="80"> + <el-table-column prop="compensationOldAmount" label="二手住房" align="center" width="80"> <template slot-scope="scope"> - {{ scope.row.secondPayment }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.secondPayment" placement="top"> - <div slot="content">{{ scope.row.errors.secondPayment }}</div> + {{ scope.row.compensationOldAmount }} + <el-tooltip v-if="scope.row.compensationOldAmountWarn" placement="top"> + <div slot="content">{{ scope.row.compensationOldAmountWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> </el-table-column> - <el-table-column prop="totalPayment" label="合计" align="center" width="60"> + <el-table-column prop="compensationSum" label="合计" align="center" width="60"> <template slot-scope="scope"> - {{ scope.row.totalPayment }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.totalPayment" placement="top"> - <div slot="content">{{ scope.row.errors.totalPayment }}</div> + {{ scope.row.compensationSum }} + <el-tooltip v-if="scope.row.compensationSumWarn" placement="top"> + <div slot="content">{{ scope.row.compensationSumWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> </el-table-column> </el-table-column> - <el-table-column prop="monthlyPayment" label="25%首付款(万元)" align="center" width="130"> + <el-table-column prop="downPaymentAmount" label="25%首付款(万元)" align="center" width="130"> <template slot-scope="scope"> - {{ scope.row.monthlyPayment }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.monthlyPayment" placement="top"> - <div slot="content">{{ scope.row.errors.monthlyPayment }}</div> + {{ scope.row.downPaymentAmount }} + <el-tooltip v-if="scope.row.downPaymentAmountWarn" placement="top"> + <div slot="content">{{ scope.row.downPaymentAmountWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> </el-table-column> - <el-table-column prop="remainingPayment" label="每季度需支付款项(万元)" align="center" width="120"> + <el-table-column prop="quarterPayAmount" label="每季度需支付款项(万元)" align="center" width="120"> <template slot-scope="scope"> - {{ scope.row.remainingPayment }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.remainingPayment" placement="top"> - <div slot="content"> - {{ scope.row.errors.remainingPayment }} - </div> + {{ scope.row.quarterPayAmount }} + <el-tooltip v-if="scope.row.quarterPayAmountWarn" placement="top"> + <div slot="content">{{ scope.row.quarterPayAmountWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> </el-table-column> - <el-table-column prop="totalPaid" label="过渡补贴(万元)" align="center" width="60"> + <el-table-column prop="subsidyAmount" label="过渡补贴(万元)" align="center" width="60"> <template slot-scope="scope"> - {{ scope.row.totalPaid }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.totalPaid" placement="top"> - <div slot="content">{{ scope.row.errors.totalPaid }}</div> + {{ scope.row.subsidyAmount }} + <el-tooltip v-if="scope.row.subsidyAmountWarn" placement="top"> + <div slot="content">{{ scope.row.subsidyAmountWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> @@ -181,17 +189,17 @@ <el-table-column prop="remark" label="备注" align="center" width="60"> <template slot-scope="scope"> {{ scope.row.remark }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.remark" placement="top"> - <div slot="content">{{ scope.row.errors.remark }}</div> + <el-tooltip v-if="scope.row.remarkWarn" placement="top"> + <div slot="content">{{ scope.row.remarkWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> </el-table-column> - <el-table-column prop="difference" label="购房差异情况" align="center" width="60"> + <el-table-column prop="situation" label="购房差异情况" align="center" width="60"> <template slot-scope="scope"> - {{ scope.row.difference }} - <el-tooltip v-if="scope.row.errors && scope.row.errors.difference" placement="top"> - <div slot="content">{{ scope.row.errors.difference }}</div> + {{ scope.row.situation }} + <el-tooltip v-if="scope.row.situationWarn" placement="top"> + <div slot="content">{{ scope.row.situationWarn }}</div> <i class="el-icon-warning" style="color: #e6a23c; margin-left: 5px"></i> </el-tooltip> </template> @@ -211,12 +219,12 @@ <div class="timeline-content info-box"> <div class="info-line"> <div class="approver-info"> - <div class="approver-title">审批人:</div> - <div class="approver-name">{{ approver }}</div> + <div class="approver-title">提交人:</div> + <div class="approver-name">{{ approvalInfo.createUser }}</div> </div> <div class="approval-time-info"> - <div class="approval-time-title">审批时间:</div> - <div class="approval-time">{{ approvalTime }}</div> + <div class="approval-time-title">提交时间:</div> + <div class="approval-time">{{ approvalInfo.createTime }}</div> </div> </div> </div> @@ -240,12 +248,12 @@ <div class="timeline-content info-box"> <div class="info-line"> <div class="approver-info"> - <div class="approver-title">经办人:</div> - <div class="approver-name">{{ operatorName }}</div> + <div class="approver-title">提交人:</div> + <div class="approver-name">{{ approvalInfo.createUser }}</div> </div> <div class="approval-time-info"> <div class="approval-time-title">提交时间:</div> - <div class="approval-time">{{ submitTime }}</div> + <div class="approval-time">{{ approvalInfo.createTime }}</div> </div> </div> </div> @@ -259,11 +267,11 @@ <div class="info-line"> <div class="approver-info"> <div class="approver-title">审核人:</div> - <div class="approver-name">{{ auditorName }}</div> + <div class="approver-name">{{ approvalInfo.approveName }}</div> </div> <div class="approval-time-info"> <div class="approval-time-title">审核时间:</div> - <div class="approval-time">{{ auditTime }}</div> + <div class="approval-time">{{ approvalInfo.approveTime }}</div> </div> </div> </div> @@ -282,20 +290,33 @@ <!-- 审核结果区域 --> <div class="audit-section"> - <div class="audit-result" v-if="type === 'audit'"> - <div class="result-title">审核结果</div> + <div class="audit-result"> + <div class="result-label">审核结果</div> <div class="result-options"> - <el-radio-group v-model="form.auditResult"> - <el-radio label="pass">通过</el-radio> - <el-radio label="reject">驳回</el-radio> - </el-radio-group> + <el-button-group> + <el-button + :disabled="type === 'detail'" + :type="form.auditResult === '通过' ? 'primary' : ''" + @click="form.auditResult = '通过'" + >通过</el-button> + <el-button + :disabled="type === 'detail'" + :type="form.auditResult === '驳回' ? 'primary' : ''" + @click="form.auditResult = '驳回'" + >驳回</el-button> + </el-button-group> </div> </div> <div class="audit-comment"> - <div class="comment-title">审批意见</div> - <el-input type="textarea" :rows="4" placeholder="请输入审批意见" v-model="form.auditComment" - :disabled="type === 'detail'"></el-input> + <div class="comment-label">审批意见</div> + <el-input + type="textarea" + :rows="4" + placeholder="请输入审批意见" + v-model="form.auditComment" + :disabled="type === 'detail'" + ></el-input> </div> </div> @@ -308,6 +329,7 @@ </template> <script> +import { geDetailTabletList,approve } from "@/api/application-batch" export default { name: "ApprovalDialog", props: { @@ -322,148 +344,73 @@ return ["audit", "detail"].indexOf(value) !== -1; }, }, - rowData: { - type: Object, - default: () => ({}), - }, + id: { + type: [Number], + required: true, + default: 0 + } }, data() { return { + loading: false, dialogVisible: false, - hasWarning: true, - approver: "李四", - approvalTime: "2025-1-17 09:35:24", - operatorName: "张三", - submitTime: "2025-1-17 09:35:24", - auditorName: "王五", - auditTime: "2025-1-17 09:35:24", - approvalStatus: "", // 'passed', 'rejected', '' + hasWarning: false, + tableData: [], form: { - auditResult: "pass", + auditResult: "通过", auditComment: "", }, - tableData: [ - { - town: "松花社区", - projectName: "李家窑水库工程征地拆迁", - village: "松花社区", - time: "", - owner: "陈向荣", - idCard: "220102198512345678", - contact: "", - resettlementPeople: 1, - additionalPeople: 2, - totalPeople: 3, - houseName: "陈向荣、李辉", - ownerName: "", - area: "160", - totalCompensation: "54", - firstPayment: "10", - secondPayment: "46", - totalPayment: "30", - monthlyPayment: "38", - remainingPayment: "69", - totalPaid: "", - hasError: false, - }, - { - town: "松花社区", - projectName: "李家窑水库工程征地拆迁", - village: "松花社区", - time: "", - owner: "席娟", - idCard: "330105197803120987", - contact: "", - resettlementPeople: 1, - additionalPeople: 1, - totalPeople: 2, - houseName: "周吉彬", - ownerName: "", - area: "215", - totalCompensation: "43", - firstPayment: "14", - secondPayment: "2", - totalPayment: "81", - monthlyPayment: "41", - remainingPayment: "17", - totalPaid: "", - hasError: true, - errors: { - idCard: "身份证号不合法", - totalPayment: "金额计算异常", - }, - }, - { - town: "清泉村", - projectName: - "成都绿道二环线生态区公园工程(含川师)征地拆迁及前期公示", - village: "清泉村", - time: "", - owner: "周忠心", - idCard: "440203199000999876", - contact: "", - resettlementPeople: 1, - additionalPeople: 1, - totalPeople: 2, - houseName: "周忠心、杨春云", - ownerName: "", - area: "103", - totalCompensation: "88", - firstPayment: "42", - secondPayment: "14", - totalPayment: "61", - monthlyPayment: "35", - remainingPayment: "26", - totalPaid: "", - hasError: false, - }, - { - town: "清泉村", - projectName: - "成都绿道二环线生态区公园工程(含川师)征地拆迁及前期公示", - village: "清泉村", - time: "", - owner: "李辉", - idCard: "440203199000999876", - contact: "", - resettlementPeople: 2, - additionalPeople: 1, - totalPeople: 3, - houseName: "王强", - ownerName: "", - area: "302", - totalCompensation: "49", - firstPayment: "28", - secondPayment: "10", - totalPayment: "56", - monthlyPayment: "29", - remainingPayment: "4", - totalPaid: "", - hasError: false, - }, - ], + // 审批信息 + approvalInfo: { + approver: "", + approvalTime: "", + operatorName: "", + submitTime: "", + auditorName: "", + auditTime: "" + } }; }, watch: { visible(val) { this.dialogVisible = val; + if (val) { + this.getTableData(); + } }, dialogVisible(val) { this.$emit("update:visible", val); - }, - rowData: { - handler(newVal) { - if (newVal && Object.keys(newVal).length > 0) { - // 如果有传入数据,可以在这里处理 - } - }, - immediate: true, - }, + } }, methods: { - tableRowClassName({ row, rowIndex }) { + async getTableData() { + this.loading = true; + try { + const res = await geDetailTabletList({ + applyId: this.id, + pageNum: 1, + pageSize: 999 + }); + if (res.code === 200) { + this.tableData = res.data.records.map(item => ({ + ...item, + hasError: Object.keys(item).some(key => key.endsWith('Warn') && item[key]) + })); + this.hasWarning = this.tableData.some(item => item.hasError); + this.approvalInfo = {...res.data.placementApply}; + this.form.auditResult = this.approvalInfo.status === 1 ? '通过' : '驳回'; + this.form.auditComment = this.approvalInfo.reason; + } + } catch (error) { + console.error('获取表格数据失败:', error); + this.$message.error('获取数据失败,请稍后重试'); + } finally { + this.loading = false; + } + }, + tableRowClassName({ row }) { if (row.hasError) { - return "error-row"; + return "warning-row"; } return ""; }, @@ -471,18 +418,36 @@ this.dialogVisible = false; this.resetForm(); }, - submitAudit() { - // 提交审核 - this.$emit("audit-submit", { - result: this.form.auditResult, - comment: this.form.auditComment, - }); - this.dialogVisible = false; - this.resetForm(); + async submitAudit() { + if (!this.form.auditComment.trim()) { + this.$message.warning("请输入审批意见"); + return; + } + + const params = { + applyId: Number(this.id), // 确保是数字类型 + reason: this.form.auditComment.trim(), + status: Number(this.form.auditResult === '通过' ? 1 : 2) // 确保是数字类型 + }; + + try { + const res = await approve(params); + if (res.code === 200) { + this.$message.success("审批成功"); + this.$emit("refresh"); + this.dialogVisible = false; + this.resetForm(); + } else { + this.$message.error(res.msg || "审批失败"); + } + } catch (error) { + console.error('审批失败:', error); + this.$message.error(error?.response?.data?.message || "审批失败"); + } }, resetForm() { this.form = { - auditResult: "pass", + auditResult: "通过", auditComment: "", }; }, @@ -499,7 +464,8 @@ .table-container { flex: 1; margin-right: 20px; - overflow-x: auto; + overflow: hidden; + position: relative; } .approval-info { @@ -594,26 +560,97 @@ .audit-section { margin-top: 20px; + padding: 0 20px; + display: flex; + /* align-items: center; */ + width: 100%; + margin-top: 20px; } .audit-result { - margin-bottom: 15px; + margin-bottom: 20px; + display: flex; + /* align-items: center; */ } -.result-title, -.comment-title { - font-weight: bold; - margin-bottom: 10px; +.result-label, +.comment-label { + font-size: 14px; + color: #606266; + margin-right: 15px; + min-width: 70px; +} + +.result-options { + flex: 1; +} + +.result-options .el-button { + width: 80px; +} + +.audit-comment { + display: flex; + align-items: flex-start; + flex:1; + padding-left: 60px; +} + +.audit-comment .el-textarea { + flex: 1; +} + +.el-button-group { + display: inline-block; +} + +.el-button-group .el-button { + margin-right: 0; +} + +.el-button-group .el-button:first-child { + border-right: 1px solid #DCDFE6; } .dialog-footer { text-align: right; } + +/* 自定义滚动条样式 */ +.el-table { + max-height: 400px; +} + +.el-table__body-wrapper::-webkit-scrollbar { + width: 8px; + height: 8px; +} + +.el-table__body-wrapper::-webkit-scrollbar-thumb { + background-color: #dcdfe6; + border-radius: 4px; +} + +.el-table__body-wrapper::-webkit-scrollbar-track { + background-color: #f5f7fa; +} + +/* loading样式优化 */ +::v-deep .el-loading-spinner .el-icon-loading { + font-size: 30px; + color: #409EFF; +} + +::v-deep .el-loading-spinner .el-loading-text { + font-size: 14px; + margin-top: 8px; + color: #409EFF; +} </style> <style> /* 全局样式 */ -.error-row { - background-color: #ffecec !important; +.warning-row { + background-color: #faa2a2 !important; } </style> \ No newline at end of file -- Gitblit v1.7.1