Commit b0bd4a2f authored by XieZhiXiong's avatar XieZhiXiong

feat: 添加会员引入、会员拜访、会员等级管理按钮权限相关

parent eab42381
......@@ -5,23 +5,23 @@ export const AuthUrl = (btnCode: string) => {
const { pathname } = new URL(window.location.href);
const RoutesAuth = auth.filter((item: any) => item?.u === pathname)
// 默认 让所以按钮权限 打开
return true;
// return true;
// 先把全部按钮打开
// if (btnCode === 'DevTest') return true
// // 本地开发时传的特殊标识,直接开放权限
// if (RoutesAuth.length > 0) {
// const { b } = RoutesAuth[0];
// // 本地开发时传的特殊标识,直接开放权限
// for (let i = 0; i < b.length; i++) {
// if (btnCode) {
// // 是否有页面标识
// // 找到该页面标识的按钮权限数据,并匹配权限按钮是否勾选
// if (b[i] === btnCode) {
// return true
// }
// }
// continue
// }
// return false
// }
if (btnCode === 'DevTest') return true
// 本地开发时传的特殊标识,直接开放权限
if (RoutesAuth.length > 0) {
const { b } = RoutesAuth[0];
// 本地开发时传的特殊标识,直接开放权限
for (let i = 0; i < b.length; i++) {
if (btnCode) {
// 是否有页面标识
// 找到该页面标识的按钮权限数据,并匹配权限按钮是否勾选
if (b[i] === btnCode) {
return true
}
}
continue
}
return false
}
}
......@@ -25,24 +25,24 @@ const AuthButton = (props: AuthButtonProps) => {
const RoutesAuth = auth.filter((item: any) => item?.u === pathname)
const _authorityBtn = () => {
// 本地开发时传的特殊标识,直接开放权限
return true
// return true
// 全部按钮打开
// if (btnCode === 'DevTest') return true
// if (RoutesAuth.length > 0) {
// const { b } = RoutesAuth[0];
// console.log(RoutesAuth.length, RoutesAuth)
// for (let i = 0; i < b.length; i++) {
// if (btnCode) {
// // 是否有页面标识
// // 找到该页面标识的按钮权限数据,并匹配权限按钮是否勾选
// if (b[i] === btnCode) {
// return true
// }
// }
// continue
// }
// return false
// }
if (btnCode === 'DevTest') return true
if (RoutesAuth.length > 0) {
const { b } = RoutesAuth[0];
console.log(RoutesAuth.length, RoutesAuth)
for (let i = 0; i < b.length; i++) {
if (btnCode) {
// 是否有页面标识
// 找到该页面标识的按钮权限数据,并匹配权限按钮是否勾选
if (b[i] === btnCode) {
return true
}
}
continue
}
return false
}
}
return _authorityBtn() ? children : null
}
......
# btnCode 是pass 平台配置唯一表示
# btnCode 是pass 平台配置唯一表示
......@@ -94,6 +94,7 @@
memberImport.del 会员导入-删除 会员导入-删除-按钮
memberImport.add 会员导入-新曾 会员导入-新曾-按钮
memberImport.commit 会员导入-提交平台审核 会员导入-提交平台审核-按钮
memberImport.introduce 会员导入-会员引入 会员导入-会员引入-按钮
1.2 会员信息
memberMaintain.see 会员信息-查看 会员信息-查看-按钮
memberMaintain.freeze 会员信息-冻结 会员信息-冻结-按钮
......@@ -192,7 +193,11 @@
- 7 会员规则配置
7.1 会员等级
level.see 会员等级-查看 会员等级-查看-按钮
level.set 会员等级-设置 会员等级-设置-按钮
level.set 会员等级-设置权益与升级阀值 会员等级-设置权益与升级阀值-按钮
level.add 会员等级-新增 会员等级-新增-按钮
level.edit 会员等级-编辑 会员等级-编辑-按钮
level.del 会员等级-删除 会员等级-删除-按钮
level.rebuild 会员等级-初始化会员等级与权益 会员等级-初始化会员等级与权益-按钮
7.2 会员升级规则
upgradeRule.submit 会员升级规则-保存 会员升级规则-保存-按钮
7.3 会员管理流程规则配置
......@@ -216,11 +221,18 @@
8.3 会员考评结果管理
8.4
8.4 投诉建议管理
rectificationQuery.submitComplaintSuggest 投诉建议管理-提交投诉建议 投诉建议管理-提交投诉建议-按钮
rectificationQuery.edit 投诉建议管理-修改 投诉建议管理-修改-按钮
rectificationQuery.del 投诉建议管理-删除 投诉建议管理-删除-按钮
rectificationQuery.add 投诉建议管理-新曾 投诉建议管理-新曾-按钮
- 9 会员拜访
memberVisitManage.add 会员拜访管理-新增 会员拜访管理-新增-按钮
memberVisitManage.edit 会员拜访管理-编辑 会员拜访管理-编辑-按钮
memberVisitManage.del 会员拜访管理-删除 会员拜访管理-删除-按钮
memberVisitManage.see 会员拜访管理-查看 会员拜访管理-查看-按钮
# 店铺-shopAbility (已完成)
- 1.创建店铺
- shopAbility.Submit 创建店铺-保存 创建店铺-保存-按钮
......
......@@ -327,12 +327,14 @@ const MemberMaintain: React.FC<[]> = () => {
>
更多
</Dropdown.Button> */}
<Button
type="primary"
onClick={() => handleVisibleIntroduceDrewer(true)}
>
会员引入
</Button>
<AuthButton btnCode="memberImport.introduce" >
<Button
type="primary"
onClick={() => handleVisibleIntroduceDrewer(true)}
>
会员引入
</Button>
</AuthButton>
</Space>
</>
);
......
......@@ -13,6 +13,8 @@ import { FORM_FILTER_PATH } from '@/formSchema/const';
import EyePreview from '@/components/EyePreview';
import PolymericTable, { FetchParamsType, NormalTableRefHandleType } from '@/components/PolymericTable';
import StatusSwitch from '@/components/StatusSwitch';
import AuthButton from '@/components/AuthButton';
import { AuthUrl } from '@/components/AuthButton/AuthUrl';
import { querySchema } from './querySchema';
const { confirm } = Modal;
......@@ -103,6 +105,7 @@ const PlatformMemberLevelIndexIndex: React.FC<{}> = props => {
<>
<EyePreview
url={`/memberCenter/memberAbility/ruleConfiguration/memberLevel/details?id=${record.levelId}`}
type={AuthUrl('level.see') ? 'link' : 'button'}
>
{text}
</EyePreview>
......@@ -159,32 +162,38 @@ const PlatformMemberLevelIndexIndex: React.FC<{}> = props => {
width: 200,
render: (text: any, record) => (
<>
<Button
type="link"
onClick={() => handleJumpFormPage(record)}
disabled={record.status === 1}
>
{intl.formatMessage({ id: 'member.memberLevel.modify' }, { default: '编辑' })}
</Button>
<Popconfirm
title={intl.formatMessage({ id: 'member.memberLevel.delete.confirm.title' }, { default: '是否确认删除该会员等级?' })}
onConfirm={() => handleDeleteMemberLevel(record)}
okText={intl.formatMessage({ id: 'common.button.yes' }, { default: '确认' })}
cancelText={intl.formatMessage({ id: 'common.button.no' }, { default: '取消' })}
>
<AuthButton btnCode="level.edit">
<Button
type="link"
loading={record.levelId === deleteLoadingKey}
onClick={() => handleJumpFormPage(record)}
disabled={record.status === 1}
>
{intl.formatMessage({ id: 'member.memberLevel.delete' }, { default: '删除' })}
{intl.formatMessage({ id: 'member.memberLevel.modify' }, { default: '编辑' })}
</Button>
</Popconfirm>
<Button
type="link"
onClick={() => handleJumpSetMemberLevelRight(record)}
>
{intl.formatMessage({ id: 'member.memberLevel.setRights' }, { default: '设置权益与升级阀值' })}
</Button>
</AuthButton>
<AuthButton btnCode="level.del">
<Popconfirm
title={intl.formatMessage({ id: 'member.memberLevel.delete.confirm.title' }, { default: '是否确认删除该会员等级?' })}
onConfirm={() => handleDeleteMemberLevel(record)}
okText={intl.formatMessage({ id: 'common.button.yes' }, { default: '确认' })}
cancelText={intl.formatMessage({ id: 'common.button.no' }, { default: '取消' })}
>
<Button
type="link"
loading={record.levelId === deleteLoadingKey}
>
{intl.formatMessage({ id: 'member.memberLevel.delete' }, { default: '删除' })}
</Button>
</Popconfirm>
</AuthButton>
<AuthButton btnCode="level.set">
<Button
type="link"
onClick={() => handleJumpSetMemberLevelRight(record)}
>
{intl.formatMessage({ id: 'member.memberLevel.setRights' }, { default: '设置权益与升级阀值' })}
</Button>
</AuthButton>
</>
),
},
......@@ -220,19 +229,23 @@ const PlatformMemberLevelIndexIndex: React.FC<{}> = props => {
const RoleRuleConfigCtl = () => (
<Space>
<Button
type="primary"
onClick={() => handleJumpFormPage()}
icon={<PlusOutlined />}
>
{intl.formatMessage({ id: 'member.memberLevel.add' }, { default: '新增' })}
</Button>
<Button
type="primary"
onClick={() => handleInitial()}
>
{intl.formatMessage({ id: 'member.memberLevel.rebuild' }, { default: '初始化会员等级与权益' })}
</Button>
<AuthButton btnCode="level.add">
<Button
type="primary"
onClick={() => handleJumpFormPage()}
icon={<PlusOutlined />}
>
{intl.formatMessage({ id: 'member.memberLevel.add' }, { default: '新增' })}
</Button>
</AuthButton>
<AuthButton btnCode="level.rebuild">
<Button
type="primary"
onClick={() => handleInitial()}
>
{intl.formatMessage({ id: 'member.memberLevel.rebuild' }, { default: '初始化会员等级与权益' })}
</Button>
</AuthButton>
</Space>
);
......
......@@ -19,6 +19,8 @@ import { useStateFilterSearchLinkageEffect } from '@/formSchema/effects/useFilte
import { FORM_FILTER_PATH } from '@/formSchema/const';
import EyePreview from '@/components/EyePreview';
import PolymericTable, { FetchParamsType, NormalTableRefHandleType } from '@/components/PolymericTable';
import AuthButton from '@/components/AuthButton';
import { AuthUrl } from '@/components/AuthButton/AuthUrl';
import { querySchema } from './querySchema';
const queryFormActions = createFormActions();
......@@ -81,6 +83,7 @@ const MemberVisitManageIndex: React.FC<{}> = props => {
<>
<EyePreview
url={`/memberCenter/memberAbility/memberVisitManage/details?id=${record.id}`}
type={AuthUrl('memberVisitManage.see') ? 'link' : 'button'}
>
{text}
</EyePreview>
......@@ -126,25 +129,29 @@ const MemberVisitManageIndex: React.FC<{}> = props => {
width: 200,
render: (text: any, record) => (
<>
<Button
type="link"
onClick={() => handleJumpFormPage(record)}
>
{intl.formatMessage({ id: 'member.memberVisitManage.modify' }, { default: '编辑' })}
</Button>
<Popconfirm
title={intl.formatMessage({ id: 'member.memberVisitManage.modify' }, { default: '是否确认删除该拜访信息?' })}
onConfirm={() => handleDeleteMemberVisitRecord(record)}
okText={intl.formatMessage({ id: 'common.button.yes' }, { default: '确认' })}
cancelText={intl.formatMessage({ id: 'common.button.no' }, { default: '取消' })}
>
<AuthButton btnCode="memberVisitManage.edit">
<Button
type="link"
loading={record.id === deleteLoadingKey}
onClick={() => handleJumpFormPage(record)}
>
{intl.formatMessage({ id: 'member.memberVisitManage.delete' }, { default: '删除' })}
{intl.formatMessage({ id: 'member.memberVisitManage.modify' }, { default: '编辑' })}
</Button>
</Popconfirm>
</AuthButton>
<AuthButton btnCode="memberVisitManage.del">
<Popconfirm
title={intl.formatMessage({ id: 'member.memberVisitManage.modify' }, { default: '是否确认删除该拜访信息?' })}
onConfirm={() => handleDeleteMemberVisitRecord(record)}
okText={intl.formatMessage({ id: 'common.button.yes' }, { default: '确认' })}
cancelText={intl.formatMessage({ id: 'common.button.no' }, { default: '取消' })}
>
<Button
type="link"
loading={record.id === deleteLoadingKey}
>
{intl.formatMessage({ id: 'member.memberVisitManage.delete' }, { default: '删除' })}
</Button>
</Popconfirm>
</AuthButton>
</>
),
},
......@@ -166,13 +173,15 @@ const MemberVisitManageIndex: React.FC<{}> = props => {
const RoleRuleConfigCtl = () => (
<Space>
<Button
type="primary"
onClick={() => handleJumpFormPage()}
icon={<PlusOutlined />}
>
{intl.formatMessage({ id: 'member.memberVisitManage.add' }, { default: '新增' })}
</Button>
<AuthButton btnCode="memberVisitManage.add">
<Button
type="primary"
onClick={() => handleJumpFormPage()}
icon={<PlusOutlined />}
>
{intl.formatMessage({ id: 'member.memberVisitManage.add' }, { default: '新增' })}
</Button>
</AuthButton>
</Space>
);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment