Merge branch 'master' of http://47.109.37.87:3000/by2025/admin-vben5
Some checks failed
/ Explore-Gitea-Actions (push) Failing after 5m23s

This commit is contained in:
FLL 2025-08-22 14:31:43 +08:00
commit b153c88cd5
7 changed files with 54 additions and 29 deletions

View File

@ -179,7 +179,7 @@ function handleDownloadExcel() {
<template #action="{ row }"> <template #action="{ row }">
<Space> <Space>
<ghost-button <ghost-button
v-access:code="['domain:procurementApplication:audit']" v-access:code="['domain:procurementApplication:edit']"
:disabled="row.state === '1' || row.state === '2'" :disabled="row.state === '1' || row.state === '2'"
type="primary" type="primary"
@click.stop="handleAudit(row)" @click.stop="handleAudit(row)"
@ -187,7 +187,7 @@ function handleDownloadExcel() {
审核 审核
</ghost-button> </ghost-button>
<ghost-button <ghost-button
v-access:code="['domain:procurementApplication:detail']" v-access:code="['domain:procurementApplication:query']"
@click.stop="handleDetail(row)" @click.stop="handleDetail(row)"
> >
详情 详情

View File

@ -155,7 +155,7 @@ const { hasAccessByCodes } = useAccess();
:unCheckedValue="0" :unCheckedValue="0"
v-model:value="row.state" v-model:value="row.state"
:api="() => suppliersUpdate(row)" :api="() => suppliersUpdate(row)"
:disabled="!hasAccessByCodes(['property:suppliers:update'])" :disabled="!hasAccessByCodes(['property:suppliers:edit'])"
@reload="() => tableApi.query()" @reload="() => tableApi.query()"
/> />
</template> </template>

View File

@ -187,7 +187,7 @@ function handleDownloadExcel() {
:unCheckedValue="0" :unCheckedValue="0"
v-model:value="row.status" v-model:value="row.status"
:api="() => groupUpdate(row)" :api="() => groupUpdate(row)"
:disabled="!hasAccessByCodes(['property:depot:edit'])" :disabled="!hasAccessByCodes(['Property:group:edit'])"
@reload="() => tableApi.query()" @reload="() => tableApi.query()"
/> />
</template> </template>

View File

@ -276,7 +276,7 @@ defineExpose({
</div> </div>
</div> </div>
<div> <div>
<Button type="primary" @click="handleAdd">新增排班</Button> <Button type="primary" @click="handleAdd" v-access:code="['Property:arrangement:add']">新增排班</Button>
</div> </div>
</div> </div>
<div class="flex-1 p-1"> <div class="flex-1 p-1">
@ -295,12 +295,16 @@ defineExpose({
<a <a
style="margin-left: 4px; color: #1890ff; cursor: pointer" style="margin-left: 4px; color: #1890ff; cursor: pointer"
@click.stop="handleEdit(item.item, current)" @click.stop="handleEdit(item.item, current)"
v-access:code="['Property:arrangement:edit']"
> >
编辑 编辑
</a> </a>
<a <a
style="margin-left: 4px; color: #ff4d4f; cursor: pointer" style="margin-left: 4px; color: #ff4d4f; cursor: pointer"
@click.stop="handleDelete(item.item)" @click.stop="handleDelete(item.item)"
v-access:code="['Property:arrangement:remove']"
> >
删除 删除
</a> </a>
@ -311,6 +315,7 @@ defineExpose({
v-if="getListData2(current).length > 0" v-if="getListData2(current).length > 0"
style="margin-left: 4px; color: #1890ff; cursor: pointer" style="margin-left: 4px; color: #1890ff; cursor: pointer"
@click.stop="handleViewDateDetails(current)" @click.stop="handleViewDateDetails(current)"
v-access:code="['Property:userGroup:queryScheduleView']"
> >
详情 详情
</a> </a>

View File

@ -6,7 +6,7 @@ import { $t } from '@vben/locales';
import { import {
useVbenVxeGrid, useVbenVxeGrid,
vxeCheckboxChecked, vxeCheckboxChecked,
type VxeGridProps type VxeGridProps,
} from '#/adapter/vxe-table'; } from '#/adapter/vxe-table';
import { import {
orderChargeList, orderChargeList,
@ -51,7 +51,7 @@ const gridOptions: VxeGridProps = {
rowConfig: { rowConfig: {
keyField: 'id', keyField: 'id',
}, },
id: 'property-orderCharge-index' id: 'property-orderCharge-index',
}; };
const [BasicTable, tableApi] = useVbenVxeGrid({ const [BasicTable, tableApi] = useVbenVxeGrid({
@ -112,7 +112,8 @@ function handleMultiDelete() {
danger danger
type="primary" type="primary"
v-access:code="['property:orderCharge:remove']" v-access:code="['property:orderCharge:remove']"
@click="handleMultiDelete"> @click="handleMultiDelete"
>
{{ $t('pages.common.delete') }} {{ $t('pages.common.delete') }}
</a-button> </a-button>
<a-button <a-button
@ -128,6 +129,7 @@ function handleMultiDelete() {
<Space> <Space>
<ghost-button <ghost-button
@click.stop="handleInfo(row)" @click.stop="handleInfo(row)"
v-access:code="['property:orderCharge:query']"
> >
{{ $t('pages.common.info') }} {{ $t('pages.common.info') }}
</ghost-button> </ghost-button>
@ -155,6 +157,6 @@ function handleMultiDelete() {
</template> </template>
</BasicTable> </BasicTable>
<OrderChargeModal @reload="tableApi.query()" /> <OrderChargeModal @reload="tableApi.query()" />
<orderChargeDetailModal/> <orderChargeDetailModal />
</Page> </Page>
</template> </template>

View File

@ -6,13 +6,13 @@ import { ref } from 'vue';
import { Page, useVbenModal, type VbenFormProps } from '@vben/common-ui'; import { Page, useVbenModal, type VbenFormProps } from '@vben/common-ui';
import { getVxePopupContainer } from '@vben/utils'; import { getVxePopupContainer } from '@vben/utils';
import { Modal, Popconfirm, Space,Tag } from 'ant-design-vue'; import { Modal, Popconfirm, Space, Tag } from 'ant-design-vue';
import dayjs from 'dayjs'; import dayjs from 'dayjs';
import { import {
useVbenVxeGrid, useVbenVxeGrid,
vxeCheckboxChecked, vxeCheckboxChecked,
type VxeGridProps type VxeGridProps,
} from '#/adapter/vxe-table'; } from '#/adapter/vxe-table';
import { import {
@ -76,7 +76,7 @@ const gridOptions: VxeGridProps = {
keyField: 'id', keyField: 'id',
}, },
// //
id: 'property-rentalPlan-index' id: 'property-rentalPlan-index',
}; };
const [BasicTable, tableApi] = useVbenVxeGrid({ const [BasicTable, tableApi] = useVbenVxeGrid({
@ -103,7 +103,7 @@ async function handleDelete(row: Required<RentalPlanForm>) {
await tableApi.query(); await tableApi.query();
} }
async function handleView(row: Required<RentalPlanForm>) { async function handleView(row: Required<RentalPlanForm>) {
modalApi.setData({ id: row.id, readonly: true,}); modalApi.setData({ id: row.id, readonly: true });
modalApi.open(); modalApi.open();
} }
function handleMultiDelete() { function handleMultiDelete() {
@ -121,11 +121,15 @@ function handleMultiDelete() {
} }
function handleDownloadExcel() { function handleDownloadExcel() {
commonDownloadExcel(rentalPlanExport, '绿植租赁-租赁方案数据', tableApi.formApi.form.values, { commonDownloadExcel(
fieldMappingTime: formOptions.fieldMappingTime, rentalPlanExport,
}); '绿植租赁-租赁方案数据',
tableApi.formApi.form.values,
{
fieldMappingTime: formOptions.fieldMappingTime,
},
);
} }
</script> </script>
<template> <template>
@ -144,7 +148,8 @@ function handleDownloadExcel() {
danger danger
type="primary" type="primary"
v-access:code="['property:rentalPlan:remove']" v-access:code="['property:rentalPlan:remove']"
@click="handleMultiDelete"> @click="handleMultiDelete"
>
{{ $t('pages.common.delete') }} {{ $t('pages.common.delete') }}
</a-button> </a-button>
<a-button <a-button
@ -158,7 +163,9 @@ function handleDownloadExcel() {
</template> </template>
<template #rentalPeriod="{ row }"> <template #rentalPeriod="{ row }">
<div> <div>
{{ row.rentalPeriod == 0?'月':row.rentalPeriod == 1 ? '季度':'年' }} {{
row.rentalPeriod == 0 ? '月' : row.rentalPeriod == 1 ? '季度' : '年'
}}
</div> </div>
</template> </template>
<template #state="{ row }"> <template #state="{ row }">
@ -167,7 +174,12 @@ function handleDownloadExcel() {
</template> </template>
<template #action="{ row }"> <template #action="{ row }">
<Space> <Space>
<ghost-button @click.stop="handleView(row)"> 查看 </ghost-button> <ghost-button
@click.stop="handleView(row)"
v-access:code="['property:rentalPlan:query']"
>
查看
</ghost-button>
<ghost-button <ghost-button
v-access:code="['property:rentalPlan:edit']" v-access:code="['property:rentalPlan:edit']"
@click.stop="handleEdit(row)" @click.stop="handleEdit(row)"

View File

@ -1,5 +1,4 @@
<script setup lang="ts"> <script setup lang="ts">
import { Page, useVbenModal, type VbenFormProps } from '@vben/common-ui'; import { Page, useVbenModal, type VbenFormProps } from '@vben/common-ui';
import { getVxePopupContainer } from '@vben/utils'; import { getVxePopupContainer } from '@vben/utils';
@ -8,7 +7,7 @@ import { Modal, Popconfirm, Space } from 'ant-design-vue';
import { import {
useVbenVxeGrid, useVbenVxeGrid,
vxeCheckboxChecked, vxeCheckboxChecked,
type VxeGridProps type VxeGridProps,
} from '#/adapter/vxe-table'; } from '#/adapter/vxe-table';
import { import {
@ -62,7 +61,7 @@ const gridOptions: VxeGridProps = {
keyField: 'id', keyField: 'id',
}, },
// //
id: 'property-rentalOrder-index' id: 'property-rentalOrder-index',
}; };
const [BasicTable, tableApi] = useVbenVxeGrid({ const [BasicTable, tableApi] = useVbenVxeGrid({
@ -108,9 +107,14 @@ function handleMultiDelete() {
} }
function handleDownloadExcel() { function handleDownloadExcel() {
commonDownloadExcel(rentalOrderExport, '绿植租赁-订单管理数据', tableApi.formApi.form.values, { commonDownloadExcel(
fieldMappingTime: formOptions.fieldMappingTime, rentalOrderExport,
}); '绿植租赁-订单管理数据',
tableApi.formApi.form.values,
{
fieldMappingTime: formOptions.fieldMappingTime,
},
);
} }
</script> </script>
@ -130,7 +134,8 @@ function handleDownloadExcel() {
danger danger
type="primary" type="primary"
v-access:code="['property:rentalOrder:remove']" v-access:code="['property:rentalOrder:remove']"
@click="handleMultiDelete"> @click="handleMultiDelete"
>
{{ $t('pages.common.delete') }} {{ $t('pages.common.delete') }}
</a-button> </a-button>
<a-button <a-button
@ -146,11 +151,12 @@ function handleDownloadExcel() {
<Space> <Space>
<ghost-button <ghost-button
v-access:code="['property:rentalOrder:query']" v-access:code="['property:rentalOrder:query']"
@click.stop="handleInfo(row)"> @click.stop="handleInfo(row)"
>
{{ $t('pages.common.info') }} {{ $t('pages.common.info') }}
</ghost-button> </ghost-button>
<Popconfirm <Popconfirm
:disabled="row.paymentStatus==1&&row.contractStatus==1" :disabled="row.paymentStatus == 1 && row.contractStatus == 1"
:get-popup-container="getVxePopupContainer" :get-popup-container="getVxePopupContainer"
placement="left" placement="left"
title="确认删除?" title="确认删除?"