添加权限管理,测试飞行器管理和载物金额管理

This commit is contained in:
hr121 2025-08-16 21:26:25 +08:00
parent bad36fc706
commit 4b6abbe15d
5 changed files with 47 additions and 16 deletions

View File

@ -12,6 +12,8 @@
type="text"
icon="el-icon-plus"
@click="handleAdd"
v-permission="permission.add"
v-if="checkPer(permission.add)"
>新增保险
</el-button>
</div>
@ -32,10 +34,20 @@
<el-button type="text" size="small" @click="handleView(scope.row)"
>查看详情</el-button
>
<el-button type="text" size="small" @click="handleEdit(scope.row)"
<el-button
type="text"
size="small"
@click="handleEdit(scope.row)"
v-if="checkPer(permission.edit)"
v-permission="permission.edit"
>编辑</el-button
>
<el-button type="text" size="small" @click="handleDelete(scope.row)"
<el-button
type="text"
size="small"
@click="handleDelete(scope.row)"
v-if="checkPer(permission.delete)"
v-permission="permission.delete"
>删除</el-button
>
</template>
@ -165,6 +177,11 @@ export default {
attachments: [],
aircraftId: null
},
permission: {
add: ['admin', 'aircraftDetail:add'],
edit: ['admin', 'aircraftDetail:edit'],
delete: ['admin', 'aircraftDetail:delete']
},
insuranceTypes: [
{ value: 0, label: "三方险" },
{ value: 1, label: "设备险" },

View File

@ -100,7 +100,12 @@
<!-- 生成结算单按钮 -->
<div class="generate-btn-container">
<el-button type="primary" @click="handleGenerate">生成结算单</el-button>
<el-button
type="primary"
@click="handleGenerate"
v-permission="permission.add"
v-if="checkPer(permission.add)"
>生成结算单</el-button>
</div>
<!-- 结算列表弹窗 -->
<el-dialog
@ -160,6 +165,9 @@ export default {
customerId: undefined,
dateRange: [defaultStartDate, defaultEndDate]
},
permission: {
add: ['admin', 'settlementOrder:add'],
},
defaultDateRange: [defaultStartDate, defaultEndDate],
page: {
current: 1,

View File

@ -234,7 +234,6 @@ export default {
item.createBy = pilotResponse.name
//
console.log(this.scenicAreaOptions)
const scenic = this.scenicAreaOptions.find(s => s.value === item.attractionId)
item.scenicName = scenic ? scenic.label : ''
}))

View File

@ -59,7 +59,7 @@
<el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="6" class="mb20">
<el-form-item label="景区" prop="scenicId">
<el-select v-model="form.scenicId" placeholder="请选择景区">
<el-option v-for="item in scenics" :key="item.name"
<el-option v-for="item in scenics" :key="item.name"
:label="item.name" :value="Number(item.id)"/>
</el-select>
</el-form-item>
@ -151,7 +151,7 @@
</el-row>
</div>
</template>
<script>
import crudPilot from '@/api/system/pilot'
import { isvalidPhone } from '@/utils/validate'
@ -164,8 +164,8 @@
import pagination from '@crud/Pagination'
import { mapGetters } from 'vuex'
import { upload } from '@/utils/upload'
const defaultForm = { id: null, username: null, name: null,
phone: null, areaId: null, scenicId: null, roles: null, qualification: null,
const defaultForm = { id: null, username: null, name: null,
phone: null, areaId: null, scenicId: null, roles: null, qualification: null,
qualificationAttachment: null, files: [], userType: null, enabled: 1 }
export default {
name: 'Pilot',
@ -350,7 +350,7 @@
}
}
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
::v-deep .el-upload--picture-card,::v-deep .el-upload-list__item{
width: 110px !important;
@ -365,4 +365,3 @@
}
}
</style>

View File

@ -4,7 +4,7 @@
<div class="filter-container">
<el-input
v-model="query.scenicName"
placeholder="请输入景区名称或区域名称"
placeholder="请输入景区名称"
style="width: 200px"
clearable
/>
@ -16,12 +16,16 @@
<el-table :data="tableData" stripe style="width: 100%">
<el-table-column prop="areaName" label="区域名称" align="left" />
<el-table-column prop="scenicName" label="景区名称" align="left" />
<el-table-column prop="feePerKg" label="金额 / KG" align="center" />
<el-table-column prop="feePerKg" label="金额 / KG" align="center">
<template slot-scope="scope">
<span>{{ scope.row.feePerKg ? scope.row.feePerKg + '元' : "无" }}</span>
</template>
</el-table-column>
<el-table-column label="操作" width="120" align="center" fixed="right">
<template slot-scope="scope">
<el-button type="primary" size="mini" @click="handleSetFee(scope.row)"
>设置金额</el-button
>
<el-button type="primary" v-if="checkPer(permission.edit)" v-permission="permission.edit" size="mini" @click="handleSetFee(scope.row)">
设置金额
</el-button>
</template>
</el-table-column>
</el-table>
@ -62,6 +66,9 @@ export default {
query: {
scenicName: "",
},
permission: {
edit: ["admin", "transport-fee:edit"]
},
//
tableData: [],
//
@ -91,7 +98,7 @@ export default {
id: item.id,
areaName: item.areaName,
scenicName: item.name,
feePerKg: item.price ? item.price + '元' : "无",
feePerKg: item.price,
}));
this.page.total = parseInt(totalElements);
} catch (error) {
@ -99,6 +106,7 @@ export default {
this.$message.error("获取景区数据失败");
}
},
//
handleSearch() {
this.page.current = 1;