From 8a1613834b555b1f7572f7031a9917b8ee1a3591 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A3=B7=E5=8F=B6?= <14103883+leaf-phos@user.noreply.gitee.com> Date: Sun, 27 Apr 2025 18:08:50 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BF=90=E8=90=A5=E5=8C=BA=E8=AF=A6=E6=83=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/router/index.js | 6 +++++ src/views/bst/agreement/index.vue | 16 ++++++++++-- src/views/bst/area/index.vue | 10 +++++++ src/views/bst/areaJoin/index.vue | 26 ++++++++++++++----- src/views/bst/areaSub/index.vue | 12 ++++++++- src/views/bst/customerService/index.vue | 6 ++++- src/views/bst/device/index.vue | 10 ++++--- .../order/components/OrderRefundDialog.vue | 4 +-- src/views/bst/order/index.vue | 6 +++-- src/views/system/user/index.vue | 12 +++++---- src/views/system/user/view/view.vue | 4 ++- 11 files changed, 88 insertions(+), 24 deletions(-) diff --git a/src/router/index.js b/src/router/index.js index 5b6b676..442ed66 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -121,6 +121,12 @@ export const constantRoutes = [ component: () => import('@/views/system/user/view/view.vue'), name: 'UserView', meta: { title: '用户详情' } + }, + { + path: 'area/:id?', + component: () => import('@/views/bst/area/view/view.vue'), + name: 'AreaView', + meta: { title: '运营区详情' } } ] }, diff --git a/src/views/bst/agreement/index.vue b/src/views/bst/agreement/index.vue index 346225a..c537ab8 100644 --- a/src/views/bst/agreement/index.vue +++ b/src/views/bst/agreement/index.vue @@ -76,7 +76,11 @@ - + + + + + @@ -192,6 +196,7 @@ import Editor from "@/components/Editor/index.vue"; import AreaRemoteSelect from "@/components/Business/Area/AreaRemoteSelect.vue"; import UserLink from "@/components/Business/User/UserLink.vue"; import {isSysAdmin} from "@/utils/permission"; +import AreaLink from '@/components/Business/Area/AreaLink.vue' // 默认排序字段 const defaultSort = { @@ -203,7 +208,13 @@ export default { name: "Agreement", mixins: [$showColumns], dicts: ['agreement_type', 'agreement_content_type'], - components: {FormCol, Editor, AreaRemoteSelect, UserLink}, + components: {FormCol, Editor, AreaRemoteSelect, UserLink, AreaLink}, + props: { + query: { + type: Object, + default: () => ({}) + }, + }, data() { return { span: 24, @@ -326,6 +337,7 @@ export default { }, }, created() { + Object.assign(this.queryParams, this.query); this.getList(); }, methods: { diff --git a/src/views/bst/area/index.vue b/src/views/bst/area/index.vue index 2a9fbe0..83275f9 100644 --- a/src/views/bst/area/index.vue +++ b/src/views/bst/area/index.vue @@ -131,6 +131,13 @@ + 详情 + + + {{d.row[column.key]}} @@ -149,7 +152,7 @@ :id="editId" :init-data="initData" @success="getList" - :types="types" + :types="queryParams.types" /> @@ -160,7 +163,8 @@ import { $showColumns } from '@/utils/mixins'; import AreaJoinEditDialog from './components/AreaJoinEditDialog'; import UserLink from '@/components/Business/User/UserLink.vue'; import AreaRemoteSelect from '@/components/Business/Area/AreaRemoteSelect.vue'; - +import { isEmpty } from '@/utils'; +import AreaLink from '@/components/Business/Area/AreaLink.vue'; // 默认排序字段 const defaultSort = { prop: "createTime", @@ -171,7 +175,13 @@ export default { name: "AreaJoin", mixins: [$showColumns], dicts: ['area_join_type', 'area_join_permission'], - components: { AreaJoinEditDialog, UserLink, AreaRemoteSelect }, + components: { AreaJoinEditDialog, UserLink, AreaRemoteSelect, AreaLink }, + props: { + query: { + type: Object, + default: null + }, + }, data() { return { // 字段列表 @@ -218,14 +228,18 @@ export default { areaId: null, userId: null, remark: null, - createId: null + createId: null, + types: [] }, - types: [], // 类型列表 }; }, created() { this.types = this.$route.query?.types?.split(',') || []; + if (!isEmpty(this.propTypes)) { + this.types = this.propTypes; + } this.queryParams.types = this.types; + Object.assign(this.queryParams, this.query); this.getList(); }, methods: { diff --git a/src/views/bst/areaSub/index.vue b/src/views/bst/areaSub/index.vue index 85e2afa..e826da2 100644 --- a/src/views/bst/areaSub/index.vue +++ b/src/views/bst/areaSub/index.vue @@ -198,6 +198,12 @@ export default { mixins: [$showColumns], dicts: ['area_sub_type', 'area_sub_status'], components: {FormCol, AreaMap, AreaSubEditDialog}, + props: { + areaId: { + type: String, + default: null + } + }, data() { return { AreaSubStatus, @@ -271,7 +277,11 @@ export default { }; }, created() { - this.queryParams.areaId = this.$route.params.areaId; + if (this.areaId) { + this.queryParams.areaId = this.areaId; + } else { + this.queryParams.areaId = this.$route.params.areaId; + } this.getArea(); this.getList(); }, diff --git a/src/views/bst/customerService/index.vue b/src/views/bst/customerService/index.vue index 69bc4e5..0ecdfe4 100644 --- a/src/views/bst/customerService/index.vue +++ b/src/views/bst/customerService/index.vue @@ -88,6 +88,9 @@ {{d.row[column.key]}} + + + - {{d.row.areaName | dv}} + + @@ -244,9 +245,9 @@ {{d.row.remainEndurance | dv}} KM - - {{d.row.vehicleNum | dv}} + {{d.row.vehicleNum | dv}} + {{d.row.modelName | dv}} @@ -412,6 +413,7 @@ import DeviceSn from '@/views/bst/device/components/DeviceSn.vue'; import UserLink from '@/components/Business/User/UserLink.vue'; import DeviceLink from '@/components/Business/Device/DeviceLink.vue'; import AreaRemoteSelect from '@/components/Business/Area/AreaRemoteSelect.vue'; +import AreaLink from '@/components/Business/Area/AreaLink.vue'; // 默认排序字段 const defaultSort = { @@ -423,7 +425,7 @@ export default { name: "Device", mixins: [$showColumns, $device], dicts: ['device_status', 'device_lock_status', 'device_iot_status', 'device_online_status', 'device_quality', 'device_music'], - components: {FormCol, DeviceEditDialog, BooleanTag, DeviceTransferDialog, DeviceSn, UserLink, DeviceLink, AreaRemoteSelect}, + components: {FormCol, DeviceEditDialog, BooleanTag, DeviceTransferDialog, DeviceSn, UserLink, DeviceLink, AreaRemoteSelect, AreaLink}, props: { query: { type: Object, diff --git a/src/views/bst/order/components/OrderRefundDialog.vue b/src/views/bst/order/components/OrderRefundDialog.vue index ae8fb5b..089bd41 100644 --- a/src/views/bst/order/components/OrderRefundDialog.vue +++ b/src/views/bst/order/components/OrderRefundDialog.vue @@ -59,10 +59,10 @@ export default { }, // 可退款金额 canRefundAmount() { - let payAmount = this.detail.payAmount || 0; + let payedAmount = this.detail.payedAmount || 0; let payRefunded = this.detail.payRefunded || 0; let payRefunding = this.detail.payRefunding || 0; - return payAmount - payRefunded - payRefunding; + return payedAmount - payRefunded - payRefunding; } }, methods: { diff --git a/src/views/bst/order/index.vue b/src/views/bst/order/index.vue index 3e96f5e..5bea195 100644 --- a/src/views/bst/order/index.vue +++ b/src/views/bst/order/index.vue @@ -212,7 +212,8 @@ - {{d.row.areaName | dv}} + + @@ -283,6 +284,7 @@ import { toDescriptionFromSecond } from '@/utils/date'; import UserLink from '@/components/Business/User/UserLink.vue'; import DeviceLink from '@/components/Business/Device/DeviceLink.vue' import OrderLink from '@/components/Business/Order/OrderLink.vue' +import AreaLink from '@/components/Business/Area/AreaLink.vue'; // 默认排序字段 const defaultSort = { @@ -294,7 +296,7 @@ export default { name: "Order", mixins: [$showColumns], dicts: ['order_status', 'suit_type', 'order_return_type', 'order_return_mode', 'suit_rental_unit', 'suit_riding_rule'], - components: {FormCol, OrderRefundDialog, OrderVerifyDialog, UserLink, DeviceLink, OrderLink}, + components: {FormCol, OrderRefundDialog, OrderVerifyDialog, UserLink, DeviceLink, OrderLink, AreaLink}, props: { query: { type: Object, diff --git a/src/views/system/user/index.vue b/src/views/system/user/index.vue index 394e2a4..c390b8a 100644 --- a/src/views/system/user/index.vue +++ b/src/views/system/user/index.vue @@ -145,8 +145,10 @@ {{role.roleName}} - - + + + + @@ -239,6 +241,7 @@ import BooleanTag from '@/components/BooleanTag/index.vue' import UserLink from '@/components/Business/User/UserLink.vue' import RoleSelect from '@/components/Business/Role/RoleSelect.vue' import UserShowPasswordDialog from '@/views/system/user/components/UserShowPasswordDialog.vue' +import Avatar from '@/components/Avatar/index.vue' // 默认排序字段 const defaultSort = { @@ -250,7 +253,7 @@ export default { name: "User", mixins: [$showColumns], dicts: ['user_status', 'sys_user_sex', 'user_employ_status', 'withdraw_service_type'], - components: {UserFormDialog, FormCol, DeptSelect, BooleanTag, UserLink, RoleSelect, UserShowPasswordDialog}, + components: {UserFormDialog, FormCol, DeptSelect, BooleanTag, UserLink, RoleSelect, UserShowPasswordDialog, Avatar}, data() { return { WithdrawServiceType, @@ -300,8 +303,7 @@ export default { // 列信息 columns: [ {key: 'userId', visible: false, label: 'ID', minWidth: null, sortable: true, overflow: false, align: 'center', width: null}, - {key: 'nickName', visible: true, label: '姓名', minWidth: null, sortable: true, overflow: false, align: 'center', width: null}, - {key: 'userName', visible: true, label: '账号', minWidth: null, sortable: true, overflow: false, align: 'center', width: null}, + {key: 'nickName', visible: true, label: '姓名', minWidth: null, sortable: true, overflow: false, align: 'left', width: "150"}, {key: 'roles', visible: true, label: '角色', minWidth: null, sortable: true, overflow: false, align: 'center', width: null}, {key: 'point', visible: true, label: '分成比例', minWidth: null, sortable: true, overflow: false, align: 'center', width: null}, {key: 'withdrawServiceValue', visible: true, label: '提现服务费', minWidth: null, sortable: true, overflow: false, align: 'center', width: null}, diff --git a/src/views/system/user/view/view.vue b/src/views/system/user/view/view.vue index 99eaa40..1ffcea0 100644 --- a/src/views/system/user/view/view.vue +++ b/src/views/system/user/view/view.vue @@ -15,7 +15,6 @@ {{ detail.roles.map(role => role.roleName).join(',') }} - {{ detail.point | fix2 | dv }} % @@ -61,6 +60,9 @@ + + +