Commit e0e5b296 authored by xiexiuxing's avatar xiexiuxing

恢复原本代码

parent 72d50875
// 这里是处理比较特殊的url 跳转的
import userBtn from "../../../config/router.config.json"
export const AuthUrl = (btnCode: string, menuCode: string) => {
// const userBtn = require('../../../config/router.config.json')
const AuthRoutes = userBtn.find((item: any) => item?.relationParentCode === menuCode);
let AuthCode: any = [];
if (AuthRoutes) {
for (let i = 0; i < AuthRoutes.routes.length; i++) {
const pathList = AuthRoutes.routes[i];
if (pathList.routes) {
for (let j = 0; j < pathList.routes.length; j++) {
// console.log(pathList.routes[j].path)
if (pathList.routes[j].path === location.pathname) {
AuthCode = pathList.routes[j].btns
break;
}
}
} else {
if (AuthRoutes.routes[i].path === location.pathname) {
AuthCode = AuthRoutes.routes[i].btns
break;
}
}
}
}
console.log(AuthCode, 'AuthCode')
// 本地开发时传的特殊标识,直接开放权限
if (btnCode === 'DevTest') return true
for (let i = 0; i < AuthCode.length; i++) {
if (btnCode) {
// 是否有页面标识
// 找到该页面标识的按钮权限数据,并匹配权限按钮是否勾选
if (AuthCode[i].buttonCode === btnCode) {
return true
}
}
continue
}
return false
}
export interface AuthButtonProps {
btnCode: string
menuCode: string
children: any,
}
/**
* 按钮权限
* @param {String} menuCode 页面标识
* @param {String} btnCode 按钮标识
*/
import userBtn from "../../../config/router.config.json"
const AuthButton = (props: AuthButtonProps) => {
const {
children,
btnCode, // 按钮标识
menuCode, // 按钮页面标识
} = props
// const userBtn = require('../../../config/router.config.json')
const AuthRoutes = userBtn.find((item: any) => item?.relationParentCode === menuCode);
let AuthCode: any = [];
if (AuthRoutes) {
for (let i = 0; i < AuthRoutes.routes.length; i++) {
const pathList = AuthRoutes.routes[i];
if (pathList.routes) {
for (let j = 0; j < pathList.routes.length; j++) {
// console.log(pathList.routes[j].path)
if (pathList.routes[j].path === location.pathname) {
AuthCode = pathList.routes[j].btns
break;
}
}
} else {
if (AuthRoutes.routes[i].path === location.pathname) {
AuthCode = AuthRoutes.routes[i].btns
break;
}
}
}
}
// console.log(AuthCode, 'AuthCode')
const _authorityBtn = () => {
// 本地开发时传的特殊标识,直接开放权限
if (btnCode === 'DevTest') return true
for (let i = 0; i < AuthCode.length; i++) {
if (btnCode) {
// 是否有页面标识
// 找到该页面标识的按钮权限数据,并匹配权限按钮是否勾选
if (AuthCode[i].buttonCode === btnCode) {
return true
}
}
continue
}
return false
}
return _authorityBtn() ? children : null
}
export default AuthButton;
This diff is collapsed.
......@@ -2,7 +2,7 @@ import React from 'react'
import { Button, Dropdown, Menu } from 'antd'
import { CaretDownOutlined } from '@ant-design/icons'
import { getIntl } from 'umi';
import AuthButton from '@/components/AuthButton'
const intl = getIntl();
......@@ -36,18 +36,18 @@ const TableOperation: React.FC<TableOperationProps> = (props) => {
Object.values(buttonTextFieldMap).filter(Boolean).length > 2
?
<>
<AuthButton btnCode={buttonPermissionsMap ? buttonPermissionsMap[keyNames[0]] : 'DevTest'} menuCode={menuCode}>
<Button type='link' onClick={operationHandler[keyNames[0]]}>{keyNames[0]}</Button>
</AuthButton>
<Button type='link' onClick={operationHandler[keyNames[0]]}>{keyNames[0]}</Button>
<Dropdown overlay={
<Menu>
{
keyNames.slice(1, keyNames.length).map((item, i) => buttonTextFieldMap[item] ? (
<Menu.Item key={`menuItem${i}`}>
<AuthButton btnCode={buttonPermissionsMap ? buttonPermissionsMap[item] : 'DevTest'} menuCode={menuCode}>
<Button type='link' onClick={operationHandler[item]}>{item}</Button>
</AuthButton>
<Button type='link' onClick={operationHandler[item]}>{item}</Button>
</Menu.Item>
) : null)
}
......@@ -59,7 +59,7 @@ const TableOperation: React.FC<TableOperationProps> = (props) => {
</Dropdown>
</>
:
keyNames.map((item, i) => (buttonTextFieldMap[item] ? <AuthButton btnCode={buttonPermissionsMap ? buttonPermissionsMap[item] : 'DevTest'} menuCode={menuCode}><Button key={`btnItem${i}`} type='link' onClick={operationHandler[item]}>{item}</Button></AuthButton> : null))
keyNames.map((item, i) => (buttonTextFieldMap[item] ? <Button key={`btnItem${i}`} type='link' onClick={operationHandler[item]}>{item}</Button> : null))
}
</>)
}
......
......@@ -25,8 +25,6 @@ import { clearModalParams } from '@/utils'
import { useRowSelectionTable } from '@/hooks/useRowSelectionTable'
import { getProductCustomerGetCustomerAttributeList, getProductPlatformGetAttributeList, postProductCustomerDeleteCustomerAttribute, postProductCustomerSyncAttribute, postProductCustomerUpdateCustomerAttributeStatus } from '@/services/ProductV2Api'
// import styles from './index.less'
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const formActions = createFormActions();
......@@ -162,29 +160,27 @@ const Attribute: React.FC<{}> = () => {
title: intl.formatMessage({ id: 'classAndProperty.attribute.columns.option' }),
dataIndex: 'option',
render: (text: any, record: any) => record.isEnable ? '' : <>
<AuthButton btnCode='attribute.edit' menuCode='commodityAbility'>
<Button type='link' onClick={() => handleEdit(record)}>{intl.formatMessage({ id: 'classAndProperty.attribute.columns.option.linke.1' })}</Button>
</AuthButton>
<AuthButton btnCode='attribute.del' menuCode='commodityAbility'>
<Popconfirm
title={intl.formatMessage({ id: 'classAndProperty.attribute.columns.option.title' })}
onConfirm={() => clickDelete(record)}
onCancel={cancel}
okText={intl.formatMessage({ id: 'classAndProperty.attribute.columns.option.okText' })}
cancelText={intl.formatMessage({ id: 'classAndProperty.attribute.columns.option.cancelText' })}
>
<Button type='link'>{intl.formatMessage({ id: 'classAndProperty.attribute.columns.option.linke.2' })}</Button>
</Popconfirm>
</AuthButton>
<Button type='link' onClick={() => handleEdit(record)}>{intl.formatMessage({ id: 'classAndProperty.attribute.columns.option.linke.1' })}</Button>
<Popconfirm
title={intl.formatMessage({ id: 'classAndProperty.attribute.columns.option.title' })}
onConfirm={() => clickDelete(record)}
onCancel={cancel}
okText={intl.formatMessage({ id: 'classAndProperty.attribute.columns.option.okText' })}
cancelText={intl.formatMessage({ id: 'classAndProperty.attribute.columns.option.cancelText' })}
>
<Button type='link'>{intl.formatMessage({ id: 'classAndProperty.attribute.columns.option.linke.2' })}</Button>
</Popconfirm>
</>
}
];
const handleSee = (record: any) => {
if (AuthUrl('attribute.see', 'commodityAbility')) {
history.push(`/memberCenter/commodityAbility/classAndProperty/attribute/detail?id=${record.id}&isSee=true`)
}
history.push(`/memberCenter/commodityAbility/classAndProperty/attribute/detail?id=${record.id}&isSee=true`)
}
const confirm = (record: any) => {
......@@ -245,21 +241,15 @@ const Attribute: React.FC<{}> = () => {
const Actions = (
<Space>
<AuthButton btnCode='attribute.add' menuCode='commodityAbility'>
<Button type="primary" icon={<PlusOutlined />} onClick={() => { history.push('/memberCenter/commodityAbility/classAndProperty/attribute/add') }}>
{intl.formatMessage({ id: 'classAndProperty.attribute.actions.button.1' })}
</Button>
</AuthButton>
<AuthButton btnCode='attribute.synchronization' menuCode='commodityAbility'>
<span>
<Button type="default" style={{ marginLeft: 16 }} onClick={syncAttribute}>{intl.formatMessage({ id: 'classAndProperty.attribute.actions.button.2' })}</Button>
<Tooltip title={intl.formatMessage({ id: 'classAndProperty.attribute.actions.tooltip' })}>
&nbsp;<QuestionCircleOutlined />
</Tooltip>
</span>
</AuthButton>
<Button type="primary" icon={<PlusOutlined />} onClick={() => { history.push('/memberCenter/commodityAbility/classAndProperty/attribute/add') }}>
{intl.formatMessage({ id: 'classAndProperty.attribute.actions.button.1' })}
</Button>
<span>
<Button type="default" style={{ marginLeft: 16 }} onClick={syncAttribute}>{intl.formatMessage({ id: 'classAndProperty.attribute.actions.button.2' })}</Button>
<Tooltip title={intl.formatMessage({ id: 'classAndProperty.attribute.actions.tooltip' })}>
&nbsp;<QuestionCircleOutlined />
</Tooltip>
</span>
</Space>
);
......
......@@ -18,8 +18,6 @@ import Search from '@/components/NiceForm/components/Search'
import { useStateFilterSearchLinkageEffect } from '@/formSchema/effects/useFilterSearch'
import Submit from '@/components/NiceForm/components/Submit'
import { getProductCustomerGetCustomerCategoryAttributeList, getProductCustomerGetCustomerCategoryTree, postProductCustomerDeleteCustomerCategoryAttribute, postProductCustomerSaveCustomerCategoryAttribute } from '@/services/ProductV2Api';
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const fetchCategoryTreeData = async (params?) => {
const res = await getProductCustomerGetCustomerCategoryTree()
......@@ -165,17 +163,14 @@ const CategoryAttributes: React.FC<{}> = () => {
render: (text: any, record: any) => {
return (
<>
<AuthButton btnCode='categoryAttributes.edit' menuCode='commodityAbility'>
<Popconfirm
title={intl.formatMessage({ id: 'classAndProperty.categoryAttributes.columns.popconfirm' })}
onConfirm={() => clickRelief(record.id)}
okText={intl.formatMessage({ id: 'classAndProperty.categoryAttributes.columns.okText' })}
cancelText={intl.formatMessage({ id: 'classAndProperty.categoryAttributes.columns.cancelText' })}
>
<Button type='link'>{intl.formatMessage({ id: 'classAndProperty.categoryAttributes.columns.button' })}</Button>
</Popconfirm>
</AuthButton>
<Popconfirm
title={intl.formatMessage({ id: 'classAndProperty.categoryAttributes.columns.popconfirm' })}
onConfirm={() => clickRelief(record.id)}
okText={intl.formatMessage({ id: 'classAndProperty.categoryAttributes.columns.okText' })}
cancelText={intl.formatMessage({ id: 'classAndProperty.categoryAttributes.columns.cancelText' })}
>
<Button type='link'>{intl.formatMessage({ id: 'classAndProperty.categoryAttributes.columns.button' })}</Button>
</Popconfirm>
</>
)
}
......@@ -311,12 +306,9 @@ const CategoryAttributes: React.FC<{}> = () => {
},
children: (
<>
<AuthButton btnCode='categoryAttributes.add' menuCode='commodityAbility'>
<Button type="primary" icon={<PlusOutlined />} onClick={handleNewLink}>
{intl.formatMessage({ id: 'classAndProperty.categoryAttributes.formilyChilds.button' })}
</Button>
</AuthButton>
<Button type="primary" icon={<PlusOutlined />} onClick={handleNewLink}>
{intl.formatMessage({ id: 'classAndProperty.categoryAttributes.formilyChilds.button' })}
</Button>
</>
)
}}
......
......@@ -12,8 +12,6 @@ import { classSchema } from './schema'
import { useTreeTabs } from '@/hooks/useTreeTabs';
import NiceForm from '@/components/NiceForm';
import { getProductCustomerGetCustomerCategory, getProductCustomerGetCustomerCategoryTree, getProductPlatformGetCategoryTree, postProductCustomerDeleteCustomerCategory, postProductCustomerSaveOrUpdateCustomerCategory, postProductCustomerSyncCategory } from '@/services/ProductV2Api';
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const { ON_FORM_INPUT_CHANGE } = LifeCycleTypes
......@@ -194,11 +192,7 @@ const ClassProperty: React.FC<{}> = () => {
<p style={{ display: 'flex', justifyContent: 'space-between' }}>
<h3 className="mb-30">{intl.formatMessage({ id: 'classAndProperty.class.h3' })}</h3>
<p>
<AuthButton btnCode='class.synchronization' menuCode='commodityAbility'>
<Button type="default" onClick={asyncClass}>{intl.formatMessage({ id: 'classAndProperty.class.h3.button' })}</Button>
</AuthButton>
<Button type="default" onClick={asyncClass}>{intl.formatMessage({ id: 'classAndProperty.class.h3.button' })}</Button>
<Tooltip title={intl.formatMessage({ id: 'classAndProperty.class.h3.tooltip' })}>
&nbsp;<QuestionCircleOutlined />
</Tooltip>
......@@ -250,21 +244,17 @@ const ClassProperty: React.FC<{}> = () => {
}}
>
<FormButtonGroup>
<AuthButton btnCode='class.synchronization' menuCode='commodityAbility'>
<Button loading={finshLoading} htmlType='submit' type="primary" style={{ marginTop: 32, marginBottom: 16, marginRight: 24 }}>
{intl.formatMessage({ id: 'classAndProperty.class.h3.formButtonGroup.button.1' })}
</Button>
</AuthButton>
<AuthButton btnCode='class.del' menuCode='commodityAbility'>
<Popconfirm title={intl.formatMessage({ id: 'classAndProperty.class.h3.formButtonGroup.popconfirm' })} okText={intl.formatMessage({ id: 'classAndProperty.class.h3.formButtonGroup.okText' })} cancelText={intl.formatMessage({ id: 'classAndProperty.class.h3.formButtonGroup.cancelText' })} onConfirm={handleDeleteMenu}>
{
treeStatus !== FormState.ADD && <Button style={{ marginTop: 32, marginBottom: 16 }}>
{intl.formatMessage({ id: 'classAndProperty.class.h3.formButtonGroup.button.2' })}
</Button>
}
</Popconfirm>
</AuthButton>
<Button loading={finshLoading} htmlType='submit' type="primary" style={{ marginTop: 32, marginBottom: 16, marginRight: 24 }}>
{intl.formatMessage({ id: 'classAndProperty.class.h3.formButtonGroup.button.1' })}
</Button>
<Popconfirm title={intl.formatMessage({ id: 'classAndProperty.class.h3.formButtonGroup.popconfirm' })} okText={intl.formatMessage({ id: 'classAndProperty.class.h3.formButtonGroup.okText' })} cancelText={intl.formatMessage({ id: 'classAndProperty.class.h3.formButtonGroup.cancelText' })} onConfirm={handleDeleteMenu}>
{
treeStatus !== FormState.ADD && <Button style={{ marginTop: 32, marginBottom: 16 }}>
{intl.formatMessage({ id: 'classAndProperty.class.h3.formButtonGroup.button.2' })}
</Button>
}
</Popconfirm>
</FormButtonGroup>
</NiceForm>
</Col>
......
......@@ -22,8 +22,6 @@ import { ISchema } from '@formily/antd';
import { clearModalParams } from '@/utils';
import { useRowSelectionTable } from '@/hooks/useRowSelectionTable';
import { getProductCustomerGetCustomerAttributeTree, getProductCustomerGetCustomerAttributeValueList, getProductPlatformGetSyncAttributeValueList, postProductCustomerDeleteCustomerAttributeValue, postProductCustomerSyncAttributeValue, postProductCustomerUpdateCustomerAttributeValueStatus } from '@/services/ProductV2Api';
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const treeActions = createTreeActions()
......@@ -164,9 +162,7 @@ const PropertyValue: React.FC<{}> = () => {
}
const handleSee = (record: any) => {
if (AuthUrl('propertyValue.see', 'commodityAbility')) {
history.push(`/memberCenter/commodityAbility/classAndProperty/propertyValue/detail?attrId=${selectKey}&attrName=${record.customerAttribute.name}&attrValueId=${record.id}&isSee=true&type=${record.type}`)
}
history.push(`/memberCenter/commodityAbility/classAndProperty/propertyValue/detail?attrId=${selectKey}&attrName=${record.customerAttribute.name}&attrValueId=${record.id}&isSee=true&type=${record.type}`)
}
const columns: ColumnType<any>[] = [
......@@ -191,22 +187,19 @@ const PropertyValue: React.FC<{}> = () => {
render: (text: any, record: any) => {
let component: ReactNode = null
component = (
<AuthButton btnCode='propertyValue.state' menuCode='commodityAbility'>
<Popconfirm
title={intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.popconfirm.title' })}
onConfirm={() => confirm(record)}
onCancel={cancel}
okText={intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.popconfirm.okText' })}
cancelText={intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.popconfirm.cancelText' })}
>
<Button
type="link"
style={record.isEnable ? { color: '#00B37A' } : { color: 'red' }}>
{record.isEnable ? <>{intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.popconfirm.button.1' })} <PlayCircleOutlined /></> : <>{intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.popconfirm.button.2' })} <PauseCircleOutlined /></>}
</Button>
</Popconfirm>
</AuthButton>
<Popconfirm
title={intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.popconfirm.title' })}
onConfirm={() => confirm(record)}
onCancel={cancel}
okText={intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.popconfirm.okText' })}
cancelText={intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.popconfirm.cancelText' })}
>
<Button
type="link"
style={record.isEnable ? { color: '#00B37A' } : { color: 'red' }}>
{record.isEnable ? <>{intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.popconfirm.button.1' })} <PlayCircleOutlined /></> : <>{intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.popconfirm.button.2' })} <PauseCircleOutlined /></>}
</Button>
</Popconfirm>
)
return component
}
......@@ -220,26 +213,21 @@ const PropertyValue: React.FC<{}> = () => {
<>
{
record.isEnable ? '' : <>
<AuthButton btnCode='propertyValue.edit' menuCode='commodityAbility'>
<Button
type='link'
onClick={() => history.push(`/memberCenter/commodityAbility/classAndProperty/propertyValue/edit?attrId=${selectKey}&attrName=${record.customerAttribute.name}&attrValueId=${record.id}`)}
>
{intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.option.button.1' })}
</Button>
</AuthButton>
<AuthButton btnCode='propertyValue.del' menuCode='commodityAbility'>
<Popconfirm
title={intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.button.2.popconfirm.title' })}
onConfirm={() => clickDelete(record)}
onCancel={cancel}
okText={intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.button.2.popconfirm.okText' })}
cancelText={intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.button.2.popconfirm.cancelText' })}
>
<Button type='link'>{intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.button.2' })}</Button>
</Popconfirm>
</AuthButton>
<Button
type='link'
onClick={() => history.push(`/memberCenter/commodityAbility/classAndProperty/propertyValue/edit?attrId=${selectKey}&attrName=${record.customerAttribute.name}&attrValueId=${record.id}`)}
>
{intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.option.button.1' })}
</Button>
<Popconfirm
title={intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.button.2.popconfirm.title' })}
onConfirm={() => clickDelete(record)}
onCancel={cancel}
okText={intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.button.2.popconfirm.okText' })}
cancelText={intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.button.2.popconfirm.cancelText' })}
>
<Button type='link'>{intl.formatMessage({ id: 'classAndProperty.propertyValue.columns.button.2' })}</Button>
</Popconfirm>
</>
}
</>
......@@ -400,18 +388,15 @@ const PropertyValue: React.FC<{}> = () => {
},
children: (
<>
<AuthButton btnCode='propertyValue.add' menuCode='commodityAbility'>
<Button
type="primary"
icon={<PlusOutlined />}
onClick={() => {
history.push(`/memberCenter/commodityAbility/classAndProperty/propertyValue/add?attrId=${selectKey || history.location.query.attrId}&attrName=${selectNode?._title || history.location.query.attrName}&type=${selectNode?.type || history.location.query.type}`)
}}
>
{intl.formatMessage({ id: 'classAndProperty.propertyValue.standardTable.formilyChilds.button' })}
</Button>
</AuthButton>
<Button
type="primary"
icon={<PlusOutlined />}
onClick={() => {
history.push(`/memberCenter/commodityAbility/classAndProperty/propertyValue/add?attrId=${selectKey || history.location.query.attrId}&attrName=${selectNode?._title || history.location.query.attrName}&type=${selectNode?.type || history.location.query.type}`)
}}
>
{intl.formatMessage({ id: 'classAndProperty.propertyValue.standardTable.formilyChilds.button' })}
</Button>
</>
)
}}
......
......@@ -23,8 +23,6 @@ import { goodsSchema } from './schema'
import { FORM_FILTER_PATH } from '@/formSchema/const'
import { searchBrandOptionEffect, searchCustomerCategoryOptionEffect } from './effect'
import { getProductGoodsGetGoodsList, postProductGoodsDeleteBatchGoods } from '@/services/ProductV2Api'
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const { Option } = Select;
const { confirm } = Modal
......@@ -109,20 +107,16 @@ const Goods: React.FC<{}> = () => {
render: (text: any, record: any) => {
return (
<>
<AuthButton btnCode='goods.edit' menuCode='commodityAbility'>
<Button type='link' onClick={() => history.push(`/memberCenter/commodityAbility/commodity/goods/edit?id=${record.id}`)}>{intl.formatMessage({ id: 'commodity.goods.columns.option.button.1' })}</Button>
</AuthButton>
<AuthButton btnCode='goods.del' menuCode='commodityAbility'>
<Popconfirm
title={intl.formatMessage({ id: 'commodity.goods.columns.option.button.2.popconfirm.title' })}
onConfirm={() => handleSingleDelete(record)}
onCancel={() => console.log('取消')}
okText={intl.formatMessage({ id: 'commodity.goods.columns.option.button.2.popconfirm.okText' })}
cancelText={intl.formatMessage({ id: 'commodity.goods.columns.option.button.2.popconfirm.cancelText' })}
>
<Button type='link'>{intl.formatMessage({ id: 'commodity.goods.columns.option.button.2' })}</Button>
</Popconfirm>
</AuthButton>
<Button type='link' onClick={() => history.push(`/memberCenter/commodityAbility/commodity/goods/edit?id=${record.id}`)}>{intl.formatMessage({ id: 'commodity.goods.columns.option.button.1' })}</Button>
<Popconfirm
title={intl.formatMessage({ id: 'commodity.goods.columns.option.button.2.popconfirm.title' })}
onConfirm={() => handleSingleDelete(record)}
onCancel={() => console.log('取消')}
okText={intl.formatMessage({ id: 'commodity.goods.columns.option.button.2.popconfirm.okText' })}
cancelText={intl.formatMessage({ id: 'commodity.goods.columns.option.button.2.popconfirm.cancelText' })}
>
<Button type='link'>{intl.formatMessage({ id: 'commodity.goods.columns.option.button.2' })}</Button>
</Popconfirm>
</>
)
}
......@@ -310,23 +304,18 @@ const Goods: React.FC<{}> = () => {
const controllerBtns = (
<Space>
<AuthButton btnCode='goods.add' menuCode='commodityAbility'>
<Button
type='primary'
onClick={() => history.push('/memberCenter/commodityAbility/commodity/goods/add')}
>
<PlusOutlined />{intl.formatMessage({ id: 'commodity.goods.controllerBtns.button.1' })}
</Button>
</AuthButton>
<Button
type='primary'
onClick={() => history.push('/memberCenter/commodityAbility/commodity/goods/add')}
>
<PlusOutlined />{intl.formatMessage({ id: 'commodity.goods.controllerBtns.button.1' })}
</Button>
{/* <Button style={{ margin: '0 16px' }} onClick={() => setImportModal(true)}>导入数据</Button> */}
<AuthButton btnCode='goods.batch' menuCode='commodityAbility'>
<Dropdown overlay={menuMore} trigger={['click']}>
<Button>
{intl.formatMessage({ id: 'commodity.goods.controllerBtns.button.2' })} <DownOutlined />
</Button>
</Dropdown>
</AuthButton>
<Dropdown overlay={menuMore} trigger={['click']}>
<Button>
{intl.formatMessage({ id: 'commodity.goods.controllerBtns.button.2' })} <DownOutlined />
</Button>
</Dropdown>
</Space>
);
......
......@@ -27,7 +27,7 @@ const CheckProduct: React.FC<{}> = () => {
key: 'id',
},
{
title: intl.formatMessage({id: 'commodity.checkProduct.name'}),
title: intl.formatMessage({ id: 'commodity.checkProduct.name' }),
dataIndex: 'name',
key: 'name',
className: 'commonPickColor',
......@@ -38,47 +38,47 @@ const CheckProduct: React.FC<{}> = () => {
</EyePreview>
},
{
title: intl.formatMessage({id: 'commodity.checkProduct.memberName'}),
title: intl.formatMessage({ id: 'commodity.checkProduct.memberName' }),
dataIndex: 'memberName',
key: 'memberName',
},
{
title: intl.formatMessage({id: 'commodity.checkProduct.customerCategory.name'}),
title: intl.formatMessage({ id: 'commodity.checkProduct.customerCategory.name' }),
dataIndex: ['customerCategory', 'name'],
key: 'customerCategory.name',
},
{
title: intl.formatMessage({id: 'commodity.checkProduct.customerCategory.category.name'}),
title: intl.formatMessage({ id: 'commodity.checkProduct.customerCategory.category.name' }),
dataIndex: ['customerCategory', 'category', 'name'],
key: 'customerCategory.category.name',
},
{
title: intl.formatMessage({id: 'commodity.checkProduct.brand.name'}),
title: intl.formatMessage({ id: 'commodity.checkProduct.brand.name' }),
dataIndex: ['brand', 'name'],
key: 'brand.name',
},
{
title: intl.formatMessage({id: 'commodity.checkProduct.unitName'}),
title: intl.formatMessage({ id: 'commodity.checkProduct.unitName' }),
dataIndex: 'unitName',
key: 'unitName',
},
{
title: intl.formatMessage({id: 'commodity.checkProduct.priceType'}),
title: intl.formatMessage({ id: 'commodity.checkProduct.priceType' }),
dataIndex: 'priceType',
key: 'priceType',
render: (text) => {
if (text === 1)
return intl.formatMessage({id: 'commodity.checkProduct.priceType.1'})
return intl.formatMessage({ id: 'commodity.checkProduct.priceType.1' })
else if (text === 2)
return intl.formatMessage({id: 'commodity.checkProduct.priceType.2'})
return intl.formatMessage({ id: 'commodity.checkProduct.priceType.2' })
else if (text === 3)
return intl.formatMessage({id: 'commodity.checkProduct.priceType.3'})
return intl.formatMessage({ id: 'commodity.checkProduct.priceType.3' })
else if (text === 4)
return intl.formatMessage({id: 'commodity.checkProduct.priceType.4'})
return intl.formatMessage({ id: 'commodity.checkProduct.priceType.4' })
},
},
{
title: intl.formatMessage({id: 'commodity.checkProduct.min'}),
title: intl.formatMessage({ id: 'commodity.checkProduct.min' }),
dataIndex: 'min',
key: 'min',
render: (text, reocrd) => {
......@@ -99,7 +99,7 @@ const CheckProduct: React.FC<{}> = () => {
}
},
{
title: intl.formatMessage({id: 'commodity.checkProduct.applyTime'}),
title: intl.formatMessage({ id: 'commodity.checkProduct.applyTime' }),
dataIndex: 'applyTime',
key: 'applyTime',
render: (text) => text && moment(text).format('YYYY-MM-DD HH:mm:ss'),
......@@ -107,35 +107,33 @@ const CheckProduct: React.FC<{}> = () => {
sorter: (a, b) => a.applyTime - b.applyTime,
},
{
title: intl.formatMessage({id: 'commodity.checkProduct.status'}),
title: intl.formatMessage({ id: 'commodity.checkProduct.status' }),
dataIndex: 'status',
key: 'status',
render: (text, record) => {
let component: ReactNode = null
if (record.status === 1)
component = (<><span className="commonStatusStop"></span>{intl.formatMessage({id: 'commodity.checkProduct.status.1'})}</>)
component = (<><span className="commonStatusStop"></span>{intl.formatMessage({ id: 'commodity.checkProduct.status.1' })}</>)
else if (record.status === 2)
component = (<><span className="commonStatusModify"></span>{intl.formatMessage({id: 'commodity.checkProduct.status.2'})}</>)
component = (<><span className="commonStatusModify"></span>{intl.formatMessage({ id: 'commodity.checkProduct.status.2' })}</>)
else if (record.status === 3)
component = (<><span className="commonStatusValid"></span>{intl.formatMessage({id: 'commodity.checkProduct.status.3'})}</>)
component = (<><span className="commonStatusValid"></span>{intl.formatMessage({ id: 'commodity.checkProduct.status.3' })}</>)
else if (record.status === 4)
component = (<><span className="commonStatusInvalid"></span>{intl.formatMessage({id: 'commodity.checkProduct.status.4'})}</>)
component = (<><span className="commonStatusInvalid"></span>{intl.formatMessage({ id: 'commodity.checkProduct.status.4' })}</>)
else if (record.status === 5)
component = (<span style={{ color: '#00B37A', padding: '2px 5px', background: 'rgba(235,247,242,1)', borderRadius: '4px' }}>{intl.formatMessage({id: 'commodity.checkProduct.status.5'})}</span>)
component = (<span style={{ color: '#00B37A', padding: '2px 5px', background: 'rgba(235,247,242,1)', borderRadius: '4px' }}>{intl.formatMessage({ id: 'commodity.checkProduct.status.5' })}</span>)
else if (record.status === 6)
component = (<span style={{ padding: '2px 5px', background: 'rgba(244,245,247,1)', borderRadius: '4px' }}>{intl.formatMessage({id: 'commodity.checkProduct.status.6'})}</span>)
component = (<span style={{ padding: '2px 5px', background: 'rgba(244,245,247,1)', borderRadius: '4px' }}>{intl.formatMessage({ id: 'commodity.checkProduct.status.6' })}</span>)
return component
},
},
{
title: intl.formatMessage({id: 'commodity.checkProduct.option'}),
title: intl.formatMessage({ id: 'commodity.checkProduct.option' }),
dataIndex: 'option',
render: (text, record) => {
return (
<>
{/* <AuthButton menuCode={MENU_NODE} btnCode="DevTest"> */}
<Button type='link' onClick={() => history.push(`/memberCenter/commodityAbility/commodity/checkProduct/detail?id=${record.id}`)}>{intl.formatMessage({id: 'commodity.checkProduct.check'})}</Button>
{/* </AuthButton> */}
<Button type='link' onClick={() => history.push(`/memberCenter/commodityAbility/commodity/checkProduct/detail?id=${record.id}`)}>{intl.formatMessage({ id: 'commodity.checkProduct.check' })}</Button>
</>
)
}
......
......@@ -26,8 +26,6 @@ import { productStatusColor, productStatusLabel } from './constant'
import { getProductChannelCommodityGetChannelCommodityList, getProductChannelCommodityGetShop, getProductChannelCommodityGetShopBatch, GetProductChannelCommodityGetShopResponse, postProductChannelCommodityBatchOffPublishCommodity, postProductChannelCommodityBatchPublishCommodity, postProductChannelCommodityDeleteBatchChannelCommodity, postProductChannelCommodityPublishCommodity } from '@/services/ProductV2Api'
import { getTemplateWebMemberChannelWebFindCurrMemberChannel } from '@/services/TemplateV2Api'
import { useRowSelectionTable } from '@/hooks/useRowSelectionTable'
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const { confirm } = Modal;
const formActions = createFormActions();
......@@ -146,15 +144,15 @@ const DirectChannel: React.FC<{}> = () => {
return (
<>
{(record.status === 5) ?
<AuthButton btnCode='directChannel.state' menuCode='commodityAbility' >
<Button type='link' onClick={() => clickUp(0, record.id)}>{intl.formatMessage({ id: 'commodity.products.directChannel.columns.option.button.1' })}</Button>
</AuthButton>
<Button type='link' onClick={() => clickUp(0, record.id)}>{intl.formatMessage({ id: 'commodity.products.directChannel.columns.option.button.1' })}</Button>
: ''}
{(record.status === 6) ?
<>
<AuthButton btnCode='directChannel.state' menuCode='commodityAbility' >
<Button type='link' onClick={() => clickUp(1, record.id)}>{intl.formatMessage({ id: 'commodity.products.directChannel.columns.option.button.2' })}</Button>
</AuthButton>
<Button type='link' onClick={() => clickUp(1, record.id)}>{intl.formatMessage({ id: 'commodity.products.directChannel.columns.option.button.2' })}</Button>
<Button type='link' onClick={() => clickModify(record)}>{intl.formatMessage({ id: 'commodity.products.directChannel.columns.option.button.3' })}</Button>
</>
......@@ -164,13 +162,8 @@ const DirectChannel: React.FC<{}> = () => {
<Button type='link' onClick={() => clickUp(1, record.id)}>{intl.formatMessage({ id: 'commodity.products.directChannel.columns.option.button.2' })}</Button>
<Dropdown overlay={
<Menu>
<AuthButton btnCode='directChannel.edit' menuCode='commodityAbility' >
<Menu.Item><Button type='link' onClick={() => clickModify(record)}>{intl.formatMessage({ id: 'commodity.products.directChannel.columns.option.button.3' })}</Button></Menu.Item>
</AuthButton>
<AuthButton btnCode='directChannel.del' menuCode='commodityAbility' >
<Menu.Item><Button type='link' onClick={() => clickDelete(record.id)}>{intl.formatMessage({ id: 'commodity.products.directChannel.columns.option.button.4' })}</Button></Menu.Item>
</AuthButton>
<Menu.Item><Button type='link' onClick={() => clickModify(record)}>{intl.formatMessage({ id: 'commodity.products.directChannel.columns.option.button.3' })}</Button></Menu.Item>
<Menu.Item><Button type='link' onClick={() => clickDelete(record.id)}>{intl.formatMessage({ id: 'commodity.products.directChannel.columns.option.button.4' })}</Button></Menu.Item>
</Menu>
}>
<a className="ant-dropdown-link" onClick={e => e.preventDefault()}>
......@@ -364,22 +357,17 @@ const DirectChannel: React.FC<{}> = () => {
const controllerBtns = (
<Space>
<AuthButton btnCode='directChannel.add' menuCode='commodityAbility' >
<Button
type='primary'
onClick={() => history.push('/memberCenter/commodityAbility/commodity/products/directChannel/add')}
>
<PlusOutlined />{intl.formatMessage({ id: 'commodity.products.directChannel.controllerBtns.button.1' })}
<Button
type='primary'
onClick={() => history.push('/memberCenter/commodityAbility/commodity/products/directChannel/add')}
>
<PlusOutlined />{intl.formatMessage({ id: 'commodity.products.directChannel.controllerBtns.button.1' })}
</Button>
<Dropdown overlay={menuMore} trigger={['click']}>
<Button>
{intl.formatMessage({ id: 'commodity.products.directChannel.controllerBtns.button.2' })} <DownOutlined />
</Button>
</AuthButton>
<AuthButton btnCode='directChannel.batch' menuCode='commodityAbility' >
<Dropdown overlay={menuMore} trigger={['click']}>
<Button>
{intl.formatMessage({ id: 'commodity.products.directChannel.controllerBtns.button.2' })} <DownOutlined />
</Button>
</Dropdown>
</AuthButton>
</Dropdown>
</Space>
);
......
......@@ -18,8 +18,7 @@ import { fastSchema } from './schema/productSchema'
import { FORM_FILTER_PATH } from '@/formSchema/const'
import { priceTypeLabel, productStatusColor, productStatusLabel, validatorNumberRange } from './constant'
import { getProductCommodityGetCommodityDetailList, getProductCommodityGetCommodityPrice, postProductCommodityUpdateCommodityPrice } from '@/services/ProductV2Api'
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const formActions = createFormActions();
......@@ -49,9 +48,7 @@ const FastModifyPrice: React.FC<{}> = () => {
dataIndex: 'name',
key: 'name',
className: 'commonPickColor',
render: (text: any, record: any) => <EyePreview
type={AuthUrl('fastModifyPrice.see', 'commodityAbility') ? 'link' : 'button'}
url={`/memberCenter/commodityAbility/commodity/products/detail?id=${record.commodityId}`}
render: (text: any, record: any) => <EyePreview url={`/memberCenter/commodityAbility/commodity/products/detail?id=${record.commodityId}`}
>
{text}
</EyePreview>
......@@ -117,9 +114,8 @@ const FastModifyPrice: React.FC<{}> = () => {
render: (text: any, record: any) => {
return (
<>
<AuthButton btnCode='fastModifyPrice.edit' menuCode='commodityAbility'>
<Button type='link' className="padLeft0" onClick={() => handleModify(record)}>{record.priceType === 3 ? intl.formatMessage({ id: 'commodity.products.fastModifyPrice.columns.option.1' }) : intl.formatMessage({ id: 'commodity.products.fastModifyPrice.columns.option.2' })}</Button>
</AuthButton>
<Button type='link' className="padLeft0" onClick={() => handleModify(record)}>{record.priceType === 3 ? intl.formatMessage({ id: 'commodity.products.fastModifyPrice.columns.option.1' }) : intl.formatMessage({ id: 'commodity.products.fastModifyPrice.columns.option.2' })}</Button>
</>
)
......
......@@ -34,8 +34,7 @@ import { getProductCommodityGetCommodityList, getProductCommodityGetShop, GetPro
import { getTemplateWebMemberShopWebFindCurrMemberShop } from '@/services/TemplateV2Api'
import PutawayGuide from './components/putawayGuide'
import { useRowSelectionTable, useRowSelectionTableCtl } from '@/hooks/useRowSelectionTable'
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
import allRouters from '../../../../config/router.config.json'
const { confirm } = Modal;
......@@ -636,24 +635,20 @@ const Products: React.FC<{}> = () => {
const controllerBtns = (
<Space>
<AuthButton btnCode='products.add' menuCode='commodityAbility'>
<Button
type='primary'
onClick={() => history.push('/memberCenter/commodityAbility/commodity/products/add')}
>
<PlusOutlined />{intl.formatMessage({ id: 'commodity.products.controllerBtns.button.1' })}
</Button>
</AuthButton>
<Button
type='primary'
onClick={() => history.push('/memberCenter/commodityAbility/commodity/products/add')}
>
<PlusOutlined />{intl.formatMessage({ id: 'commodity.products.controllerBtns.button.1' })}
</Button>
{/* <Button style={{margin:'0 16px'}} onClick={()=>setImportModal(true)}>导入数据</Button> */}
<AuthButton btnCode='products.batch' menuCode='commodityAbility'>
<Dropdown overlay={menuMore} trigger={['click']}>
<Button>
{intl.formatMessage({ id: 'commodity.products.controllerBtns.button.2' })} <DownOutlined />
</Button>
</Dropdown>
</AuthButton>
<Dropdown overlay={menuMore} trigger={['click']}>
<Button>
{intl.formatMessage({ id: 'commodity.products.controllerBtns.button.2' })} <DownOutlined />
</Button>
</Dropdown>
</Space>
);
......
......@@ -15,8 +15,7 @@ import { PageHeaderWrapper } from '@ant-design/pro-layout'
import { schema } from './schema';
import { ANNOUNCE_COLUMN_TYPE } from '../utils/utils';
import { getManageMemberNoticePage, postManageMemberNoticeDelete, postManageMemberNoticeUpdateStatus } from '@/services/ManageV2Api';
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const actions = createFormActions();
......@@ -31,14 +30,14 @@ const CAN_MODIFY = [1, 3];
const controllerBtns = <Row>
<Col span={6}>
<AuthButton btnCode='contentAbility.add' menuCode='contentAbility'>
<Button
onClick={() => history.push('/memberCenter/contentAbility/announcements/add')}
type="primary"
>
{getIntl().formatMessage({ id: 'common.button.add' })}
</Button>
</AuthButton>
<Button
onClick={() => history.push('/memberCenter/contentAbility/announcements/add')}
type="primary"
>
{getIntl().formatMessage({ id: 'common.button.add' })}
</Button>
</Col>
</Row>
......@@ -72,7 +71,6 @@ const Announcements = () => {
dataIndex: 'title',
render: (text: string, record: any) => (
<EyePreview
type={AuthUrl('contentAbility.see', 'contentAbility') ? 'link' : 'button'}
url={`/memberCenter/contentAbility/infomations/detail?id=${record.id}&preview=1`}
>
{text}
......@@ -109,36 +107,32 @@ const Announcements = () => {
render: (val, record) => {
const menu = (
<Menu>
<AuthButton btnCode='contentAbility.edit' menuCode='contentAbility'>
<Menu.Item key='edit'>
<Link to={`/memberCenter/contentAbility/announcements/detail?id=${record.id}`}>
{intl.formatMessage({ id: 'common.button.edit' })}
</Link>
</Menu.Item>
</AuthButton>
<AuthButton btnCode='contentAbility.del' menuCode='contentAbility'>
<Menu.Item key='delete' onClick={() => handleDelete(record.id)}>
<a>
{intl.formatMessage({ id: 'common.button.delete' })}
</a>
</Menu.Item>
</AuthButton>
<Menu.Item key='edit'>
<Link to={`/memberCenter/contentAbility/announcements/detail?id=${record.id}`}>
{intl.formatMessage({ id: 'common.button.edit' })}
</Link>
</Menu.Item>
<Menu.Item key='delete' onClick={() => handleDelete(record.id)}>
<a>
{intl.formatMessage({ id: 'common.button.delete' })}
</a>
</Menu.Item>
</Menu>
)
return (
<Space>
<AuthButton btnCode='contentAbility.state' menuCode='contentAbility'>
<Popconfirm
title={intl.formatMessage({ id: 'common.tip.option.confirm' })}
onConfirm={() => handleUpdateStatus(record.id, STATUS_LIST[record.status] == intl.formatMessage({ id: 'content.common.up' }) ? 2 : 3)}
okText={intl.formatMessage({ id: 'common.button.yes' })}
cancelText={intl.formatMessage({ id: 'common.button.no' })}
>
<a href="#">{STATUS_LIST[record.status]}</a>
</Popconfirm>
</AuthButton>
<Popconfirm
title={intl.formatMessage({ id: 'common.tip.option.confirm' })}
onConfirm={() => handleUpdateStatus(record.id, STATUS_LIST[record.status] == intl.formatMessage({ id: 'content.common.up' }) ? 2 : 3)}
okText={intl.formatMessage({ id: 'common.button.yes' })}
cancelText={intl.formatMessage({ id: 'common.button.no' })}
>
<a href="#">{STATUS_LIST[record.status]}</a>
</Popconfirm>
{
CAN_MODIFY.includes(record.status)
? (
......
......@@ -10,8 +10,7 @@ import NiceForm from '@/components/NiceForm';
import styles from './index.less';
import { QuestionCircleOutlined } from '@ant-design/icons';
import { getManageMemberCategoryAll, getManageMemberCategoryGet, postManageMemberCategoryAdd, postManageMemberCategoryDelete, postManageMemberCategoryUpdate } from '@/services/ManageV2Api';
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
enum FormState {
FREE, // 空闲状态
......@@ -206,26 +205,23 @@ const ClassProperty: React.FC<{}> = () => {
}}
>
<FormButtonGroup>
<AuthButton btnCode='category.edit' menuCode='contentAbility'>
<Button htmlType='submit' type="primary" >
{intl.formatMessage({ id: 'common.button.save' })}
</Button>
</AuthButton>
<AuthButton btnCode='category.del' menuCode='contentAbility'>
<Popconfirm
title={intl.formatMessage({ id: 'common.tip.option.confirm' })}
okText={intl.formatMessage({ id: 'common.button.yes' })}
cancelText={intl.formatMessage({ id: 'common.button.no' })}
onConfirm={handleDeleteMenu}
>
{
treeStatus !== FormState.ADD && <Button >
{intl.formatMessage({ id: 'common.button.delete' })}
</Button>
}
</Popconfirm>
</AuthButton>
<Button htmlType='submit' type="primary" >
{intl.formatMessage({ id: 'common.button.save' })}
</Button>
<Popconfirm
title={intl.formatMessage({ id: 'common.tip.option.confirm' })}
okText={intl.formatMessage({ id: 'common.button.yes' })}
cancelText={intl.formatMessage({ id: 'common.button.no' })}
onConfirm={handleDeleteMenu}
>
{
treeStatus !== FormState.ADD && <Button >
{intl.formatMessage({ id: 'common.button.delete' })}
</Button>
}
</Popconfirm>
</FormButtonGroup>
</NiceForm>
......
......@@ -12,8 +12,7 @@ import EyePreview from '@/components/EyePreview'
import StandardTable from '@/components/StandardTable';
import { useStateFilterSearchLinkageEffect } from '@/formSchema/effects/useFilterSearch';
import { getManageMemberColumnPage, postManageMemberColumnDelete, postManageMemberColumnUpdateStatus } from '@/services/ManageV2Api';
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const formActions = createFormActions();
......@@ -93,7 +92,7 @@ const columnList: React.FC<{}> = () => {
dataIndex: 'name',
key: 'name',
render: (text: any, record: any) => (
<EyePreview type={AuthUrl('columnsManagement.see', 'contentAbility') ? 'link' : 'button'} url={`/memberCenter/contentAbility/columnsManagement/detail?id=${record.id}&preview=1`}>
<EyePreview url={`/memberCenter/contentAbility/columnsManagement/detail?id=${record.id}&preview=1`}>
{text}
</EyePreview>
)
......@@ -117,14 +116,12 @@ const columnList: React.FC<{}> = () => {
dataIndex: 'status',
key: 'status',
render: (text: any, record: any) => (
<StatusSwitch
fieldNames="status"
handleConfirm={() => handleModify(record)}
record={record}
/>
<AuthButton btnCode='columnsManagement.state' menuCode='contentAbility'>
<StatusSwitch
fieldNames="status"
handleConfirm={() => handleModify(record)}
record={record}
/>
</AuthButton>
)
},
{
......@@ -134,19 +131,15 @@ const columnList: React.FC<{}> = () => {
dataIndex: 'operate',
render: (_, record) => !record.status && (
<>
<AuthButton btnCode='columnsManagement.edit' menuCode='contentAbility'>
<Button type='link' onClick={() => history.push(`/memberCenter/contentAbility/columnsManagement/detail?id=${record.id}`)}>{intl.formatMessage({ id: 'common.button.modify' })}</Button>
</AuthButton>
<AuthButton btnCode='columnsManagement.del' menuCode='contentAbility'>
<Popconfirm
title={intl.formatMessage({ id: 'common.tip.option.confirm' })}
onConfirm={() => handleRemove(record.id)}
>
<Button type='link'>{intl.formatMessage({ id: 'common.button.delete' })}</Button>
</Popconfirm>
</AuthButton>
<Button type='link' onClick={() => history.push(`/memberCenter/contentAbility/columnsManagement/detail?id=${record.id}`)}>{intl.formatMessage({ id: 'common.button.modify' })}</Button>
<Popconfirm
title={intl.formatMessage({ id: 'common.tip.option.confirm' })}
onConfirm={() => handleRemove(record.id)}
>
<Button type='link'>{intl.formatMessage({ id: 'common.button.delete' })}</Button>
</Popconfirm>
</>
)
}
......@@ -154,15 +147,14 @@ const columnList: React.FC<{}> = () => {
const controllerBtns = <Row>
<Col span={6}>
<AuthButton btnCode='columnsManagement.add1' menuCode='contentAbility'>
<Button
onClick={() => history.push('/memberCenter/contentAbility/columnsManagement/add')}
type="primary"
icon={<PlusOutlined />}
>
{intl.formatMessage({ id: 'common.button.add' })}
</Button>
</AuthButton>
<Button
onClick={() => history.push('/memberCenter/contentAbility/columnsManagement/add')}
type="primary"
icon={<PlusOutlined />}
>
{intl.formatMessage({ id: 'common.button.add' })}
</Button>
</Col>
</Row>
......
......@@ -14,8 +14,6 @@ import { COLUMN_CATEGORY } from '../constant';
import moment from 'moment';
import { PageHeaderWrapper } from '@ant-design/pro-layout'
import { getManageMemberColumnAll, getManageMemberInformationPage, postManageMemberInformationBatch, postManageMemberInformationDelete, postManageMemberInformationUpdateStatus } from '@/services/ManageV2Api';
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const formActions = createFormActions();
......@@ -51,7 +49,6 @@ const Infomation = () => {
dataIndex: 'title',
render: (text: string, record: any) => (
<EyePreview
type={AuthUrl('infomations.see', 'contentAbility') ? 'link' : 'button'}
url={`/memberCenter/contentAbility/infomations/detail?id=${record.id}&preview=1`}
>
{text}
......@@ -97,37 +94,33 @@ const Infomation = () => {
// 只有待上架, 下架才有删除
const menu = (
<Menu>
<AuthButton btnCode='infomations.edit' menuCode='contentAbility'>
<Menu.Item>
<Link to={`/memberCenter/contentAbility/infomations/detail?id=${record.id}`}>
{intl.formatMessage({ id: 'common.button.edit' })}
</Link>
</Menu.Item>
</AuthButton>
<AuthButton btnCode='infomations.del' menuCode='contentAbility'>
<Menu.Item onClick={() => handleDelete(record.id)}>
<a>
{intl.formatMessage({ id: 'common.button.delete' })}
</a>
</Menu.Item>
</AuthButton>
<Menu.Item>
<Link to={`/memberCenter/contentAbility/infomations/detail?id=${record.id}`}>
{intl.formatMessage({ id: 'common.button.edit' })}
</Link>
</Menu.Item>
<Menu.Item onClick={() => handleDelete(record.id)}>
<a>
{intl.formatMessage({ id: 'common.button.delete' })}
</a>
</Menu.Item>
</Menu>
)
return (
<Space>
{/* infomations.state */}
<AuthButton btnCode='infomations.state' menuCode='contentAbility'>
<Popconfirm
title={intl.formatMessage({ id: 'common.tip.option.confirm' })}
onConfirm={() => handleUpdateState(record.id, STATUS_LIST[record.status] == intl.formatMessage({ id: 'content.common.up' }) ? 2 : 3)}
okText={intl.formatMessage({ id: 'common.button.yes' })}
cancelText={intl.formatMessage({ id: 'common.button.no' })}
>
<a href="#">{STATUS_LIST[record.status]}</a>
</Popconfirm>
</AuthButton>
<Popconfirm
title={intl.formatMessage({ id: 'common.tip.option.confirm' })}
onConfirm={() => handleUpdateState(record.id, STATUS_LIST[record.status] == intl.formatMessage({ id: 'content.common.up' }) ? 2 : 3)}
okText={intl.formatMessage({ id: 'common.button.yes' })}
cancelText={intl.formatMessage({ id: 'common.button.no' })}
>
<a href="#">{STATUS_LIST[record.status]}</a>
</Popconfirm>
{
CAN_MODIFY.includes(record.status)
? <Dropdown overlay={menu}>
......@@ -190,14 +183,13 @@ const Infomation = () => {
const controllerBtns = <Row>
<Col span={6}>
<AuthButton btnCode='infomations.add' menuCode='contentAbility'>
<Button
onClick={() => history.push('/memberCenter/contentAbility/infomations/add')}
type="primary"
>
{intl.formatMessage({ id: 'common.button.add' })}
</Button>
</AuthButton>
<Button
onClick={() => history.push('/memberCenter/contentAbility/infomations/add')}
type="primary"
>
{intl.formatMessage({ id: 'common.button.add' })}
</Button>
</Col>
</Row>
......
......@@ -10,8 +10,6 @@ import StatusSwitch from '@/components/StatusSwitch';
import StandardTable from '@/components/StandardTable';
import { useStateFilterSearchLinkageEffect } from '@/formSchema/effects/useFilterSearch';
import { getManageMemberLabelPage, postManageMemberLabelDelete, postManageMemberLabelUpdateStatus } from '@/services/ManageV2Api';
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const actions = createFormActions();
......@@ -24,9 +22,7 @@ const Tags = () => {
{
title: intl.formatMessage({ id: 'content.tag.name' }), dataIndex: 'name',
render: (text: string, record: any) => (
<EyePreview
type={AuthUrl('tagsManagement.see', 'contentAbility') ? 'link' : 'button'}
url={`/memberCenter/contentAbility/tagsManagement/detail?id=${record.id}&preview=1`}
<EyePreview url={`/memberCenter/contentAbility/tagsManagement/detail?id=${record.id}&preview=1`}
>
{text}
</EyePreview>
......@@ -42,13 +38,11 @@ const Tags = () => {
dataIndex: 'status',
key: 'status',
render: (text: any, record: any) => (
<AuthButton btnCode='tagsManagement.state' menuCode='contentAbility'>
<StatusSwitch
fieldNames="status"
handleConfirm={() => handleModify(record)}
record={record}
/>
</AuthButton>
<StatusSwitch
fieldNames="status"
handleConfirm={() => handleModify(record)}
record={record}
/>
)
},
{
......@@ -58,19 +52,15 @@ const Tags = () => {
dataIndex: 'operate',
render: (_, record) => !record.status && (
<>
<AuthButton btnCode='tagsManagement.edit' menuCode='contentAbility'>
<Button type='link' onClick={() => history.push(`/memberCenter/contentAbility/tagsManagement/detail?id=${record.id}`)}>{intl.formatMessage({ id: 'common.button.modify' })}</Button>
</AuthButton>
<AuthButton btnCode='tagsManagement.del' menuCode='contentAbility'>
<Popconfirm
title={intl.formatMessage({ id: 'common.tip.option.confirm' })}
onConfirm={() => handleRemove(record.id)}
>
<Button type='link'>{intl.formatMessage({ id: 'common.button.delete' })}</Button>
</Popconfirm>
</AuthButton>
<Button type='link' onClick={() => history.push(`/memberCenter/contentAbility/tagsManagement/detail?id=${record.id}`)}>{intl.formatMessage({ id: 'common.button.modify' })}</Button>
<Popconfirm
title={intl.formatMessage({ id: 'common.tip.option.confirm' })}
onConfirm={() => handleRemove(record.id)}
>
<Button type='link'>{intl.formatMessage({ id: 'common.button.delete' })}</Button>
</Popconfirm>
</>
)
}
......@@ -144,15 +134,12 @@ const Tags = () => {
const controllerBtns = <Row>
<Col span={6}>
<AuthButton btnCode='tagsManagement.add' menuCode='contentAbility'>
<Button
onClick={() => history.push('/memberCenter/contentAbility/tagsManagement/add')}
type="primary"
>
{intl.formatMessage({ id: 'common.button.add' })}
</Button>
</AuthButton>
<Button
onClick={() => history.push('/memberCenter/contentAbility/tagsManagement/add')}
type="primary"
>
{intl.formatMessage({ id: 'common.button.add' })}
</Button>
</Col>
</Row>
......
......@@ -14,8 +14,6 @@ import { history, useIntl } from 'umi'
import StatusSwitch from '@/components/StatusSwitch'
import { PlusOutlined } from '@ant-design/icons'
import { getProductCommodityGetUnitPriceStrategyList, postProductCommodityDeleteUnitPriceStrategy, postProductCommodityUpdateUnitPriceStrategyStatus } from '@/services/ProductV2Api'
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const formActions = createFormActions();
......@@ -38,7 +36,6 @@ const PriceManage: React.FC<{}> = () => {
<EyePreview
url={`/memberCenter/commodityAbility/priceManage/priceStrategy/setStrategy/detail?id=${record.id}&preview=1`}
type={AuthUrl('priceManage.see', 'jiageguanl') ? 'link' : 'button'}
>
{text}
</EyePreview>
......@@ -138,14 +135,11 @@ const PriceManage: React.FC<{}> = () => {
render: (text: any, record: any) => {
return (
<>
<AuthButton btnCode='priceManage.edit' menuCode='jiageguanl'>
<Button type='link' className="padLeft0" onClick={() => handleModify(record)}>{intl.formatMessage({ id: 'dealAbility.xiugai' })}</Button>
</AuthButton>
<AuthButton btnCode='priceManage.del' menuCode='jiageguanl'>
<Popconfirm title={intl.formatMessage({ id: 'priceManage.priceStrategy.popconfirm.title' })} okText={intl.formatMessage({ id: 'priceManage.priceStrategy.popconfirm.okText' })} cancelText={intl.formatMessage({ id: 'priceManage.priceStrategy.popconfirm.cancelText' })} onConfirm={() => handleDelete(record)}>
<Button type='link' className="padLeft0">{intl.formatMessage({ id: 'priceManage.priceStrategy.popconfirm.link' })}</Button>
</Popconfirm>
</AuthButton>
<Button type='link' className="padLeft0" onClick={() => handleModify(record)}>{intl.formatMessage({ id: 'dealAbility.xiugai' })}</Button>
<Popconfirm title={intl.formatMessage({ id: 'priceManage.priceStrategy.popconfirm.title' })} okText={intl.formatMessage({ id: 'priceManage.priceStrategy.popconfirm.okText' })} cancelText={intl.formatMessage({ id: 'priceManage.priceStrategy.popconfirm.cancelText' })} onConfirm={() => handleDelete(record)}>
<Button type='link' className="padLeft0">{intl.formatMessage({ id: 'priceManage.priceStrategy.popconfirm.link' })}</Button>
</Popconfirm>
</>
)
}
......@@ -187,14 +181,12 @@ const PriceManage: React.FC<{}> = () => {
const controllerBtns = (
<Space>
<AuthButton btnCode='priceManage.add' menuCode='jiageguanl'>
<Button
type='primary'
onClick={() => history.push('/memberCenter/commodityAbility/priceManage/priceStrategy/setStrategy/add')}
>
<PlusOutlined />{intl.formatMessage({ id: 'priceManage.priceStrategy.controllerBtns' })}
</Button>
</AuthButton>
<Button
type='primary'
onClick={() => history.push('/memberCenter/commodityAbility/priceManage/priceStrategy/setStrategy/add')}
>
<PlusOutlined />{intl.formatMessage({ id: 'priceManage.priceStrategy.controllerBtns' })}
</Button>
</Space>
)
......
......@@ -18,8 +18,7 @@ import ModalForm from '@/components/ModalForm';
import { useHttpRequest } from '@/hooks/useHttpRequest';
import { useRowSelectionTable } from '@/hooks/useRowSelectionTable';
import { getProductFreightSpaceList, postProductFreightSpaceStopStart, postProductFreightSpaceUpdateBatch } from '@/services/ProductV2Api';
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const formActions = createFormActions();
const modalSchemaAction = createFormActions()
......@@ -60,7 +59,6 @@ const Repositories: React.FC<{}> = () => {
key: 'name',
render: (text: any, record: any) => (
<EyePreview
type={AuthUrl('repositories.see', 'commodityAbility') ? 'link' : "button"}
url={`/memberCenter/commodityAbility/repositories/detail?id=${record.id}&preview=1`}
>
{text}
......@@ -126,11 +124,11 @@ const Repositories: React.FC<{}> = () => {
return (
<>
{record.state === 1 ? (
<AuthButton btnCode='repositories.edit' menuCode='commodityAbility'>
<Button type="link" onClick={() => handleAdjust(record)}>
{intl.formatMessage({ id: 'repositories.columns.option.button' })}
</Button>
</AuthButton>
<Button type="link" onClick={() => handleAdjust(record)}>
{intl.formatMessage({ id: 'repositories.columns.option.button' })}
</Button>
) : (
''
......@@ -232,13 +230,11 @@ const Repositories: React.FC<{}> = () => {
const handleModify = async (record) => {
// 通过传入的params字符串判断是修改那种类型的数据
if (AuthUrl('repositories.state', 'commodityAbility')) {
await postProductFreightSpaceStopStart({
id: record.id,
state: record.state === 1 ? 0 : 1
})
ref.current.reload()
}
await postProductFreightSpaceStopStart({
id: record.id,
state: record.state === 1 ? 0 : 1
})
ref.current.reload()
};
const handleAdjust = (record: any) => {
......@@ -290,24 +286,15 @@ const Repositories: React.FC<{}> = () => {
}
const controllerBtns = <Space>
<AuthButton btnCode='repositories.add' menuCode='commodityAbility'>
<Button
type="primary"
onClick={handleToAdd}
icon={<PlusOutlined />}
>
{intl.formatMessage({ id: 'repositories.controllerBtns.button.1' })}
</Button>
</AuthButton>
<AuthButton btnCode='repositories.batchadd' menuCode='commodityAbility'>
<Button onClick={handleBatchAdd}>{intl.formatMessage({ id: 'repositories.controllerBtns.button.2' })}</Button>
</AuthButton>
<AuthButton btnCode='repositories.batchedit' menuCode='commodityAbility'>
<Button onClick={() => modalRef.current.setVisible(true)}>{intl.formatMessage({ id: 'repositories.controllerBtns.button.3' })}</Button>
</AuthButton>
<Button
type="primary"
onClick={handleToAdd}
icon={<PlusOutlined />}
>
{intl.formatMessage({ id: 'repositories.controllerBtns.button.1' })}
</Button>
<Button onClick={handleBatchAdd}>{intl.formatMessage({ id: 'repositories.controllerBtns.button.2' })}</Button>
<Button onClick={() => modalRef.current.setVisible(true)}>{intl.formatMessage({ id: 'repositories.controllerBtns.button.3' })}</Button>
</Space>
return (
......
......@@ -13,8 +13,6 @@ import { FORM_FILTER_PATH } from '@/formSchema/const'
import { useStateFilterSearchLinkageEffect } from '@/formSchema/effects/useFilterSearch'
import Submit from '@/components/NiceForm/components/Submit'
import useSetSearchValueInTable from '@/hooks/useSetSearchValueInTable'
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const formActions = createFormActions();
......@@ -73,7 +71,6 @@ const CheckBrand: React.FC<{}> = () => {
className: 'commonPickColor',
render: (text, record) =>
<EyePreview
type={AuthUrl('trademarkWillCheck.see', 'commodityAbility') ? 'link' : 'button'}
url={`/memberCenter/commodityAbility/trademark/trademarkWillCheck/detail?id=${record.id}&preview=1`}
>
{text}
......@@ -113,10 +110,7 @@ const CheckBrand: React.FC<{}> = () => {
title: intl.formatMessage({ id: 'trademark.columns.option' }),
dataIndex: 'option',
render: (text, record) =>
<AuthButton btnCode='trademarkWillCheck.examine' menuCode='commodityAbility'>
<Button type='link' onClick={() => history.push(`/memberCenter/commodityAbility/trademark/trademarkWillCheck/detail?id=${record.id}`)}>{intl.formatMessage({ id: 'trademark.columns.check' })}</Button>
</AuthButton>
<Button type='link' onClick={() => history.push(`/memberCenter/commodityAbility/trademark/trademarkWillCheck/detail?id=${record.id}`)}>{intl.formatMessage({ id: 'trademark.columns.check' })}</Button>
}
]
......
......@@ -21,8 +21,7 @@ import Submit from '@/components/NiceForm/components/Submit'
import useSetSearchValueInTable from '@/hooks/useSetSearchValueInTable'
import { productStatusColor, productStatusLabel } from '../commodity/products/constant'
import { getProductBrandGetBrandList, postProductBrandApplyCheckBrand, postProductBrandDeleteBrand, postProductBrandUpdateBrandEnable } from '@/services/ProductV2Api'
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const { confirm } = Modal
const formActions = createFormActions();
......@@ -96,21 +95,21 @@ const Trademark: React.FC<{}> = () => {
render: (text: any, record: any) => {
let component: ReactNode = null
component = (
<AuthButton btnCode='trademarkApply.state' menuCode='commodityAbility'>
<Popconfirm
title={intl.formatMessage({ id: 'trademark.columns.isEnable.popconfirm.title' })}
onConfirm={() => confirmUpdate(record)}
onCancel={cancel}
okText={intl.formatMessage({ id: 'trademark.columns.isEnable.popconfirm.okText' })}
cancelText={intl.formatMessage({ id: 'trademark.columns.isEnable.popconfirm.cancelText' })}
<Popconfirm
title={intl.formatMessage({ id: 'trademark.columns.isEnable.popconfirm.title' })}
onConfirm={() => confirmUpdate(record)}
onCancel={cancel}
okText={intl.formatMessage({ id: 'trademark.columns.isEnable.popconfirm.okText' })}
cancelText={intl.formatMessage({ id: 'trademark.columns.isEnable.popconfirm.cancelText' })}
disabled={record.status !== 4}
>
<Button
disabled={record.status !== 4}
>
<Button
disabled={record.status !== 4}
type="link"
style={record.isEnable ? { color: '#00B37A' } : { color: 'red' }}>{record.isEnable ? <>{intl.formatMessage({ id: 'trademark.columns.isEnable.button.1' })} <PlayCircleOutlined /></> : <>{intl.formatMessage({ id: 'trademark.columns.isEnable.button.2' })} <PauseCircleOutlined /></>}</Button>
</Popconfirm>
</AuthButton>
type="link"
style={record.isEnable ? { color: '#00B37A' } : { color: 'red' }}>{record.isEnable ? <>{intl.formatMessage({ id: 'trademark.columns.isEnable.button.1' })} <PlayCircleOutlined /></> : <>{intl.formatMessage({ id: 'trademark.columns.isEnable.button.2' })} <PauseCircleOutlined /></>}</Button>
</Popconfirm>
)
return component
}
......@@ -130,21 +129,16 @@ const Trademark: React.FC<{}> = () => {
(record.status !== 2) ? <>
{
record.status === 1 ? <>
<AuthButton btnCode='trademarkApply.edit' menuCode='commodityAbility'>
<Button type='link' onClick={() => handleApplyCheck(record)}>{intl.formatMessage({ id: 'trademark.columns.option.button.1' })}</Button>
</AuthButton>
<Button type='link' onClick={() => handleApplyCheck(record)}>{intl.formatMessage({ id: 'trademark.columns.option.button.1' })}</Button>
<Dropdown overlay={
<Menu>
<Menu.Item>
<AuthButton btnCode='trademarkApply.edit' menuCode='commodityAbility'>
<Button type='link' onClick={() => history.push(`/memberCenter/commodityAbility/trademark/trademarkApply/edit?id=${record.id}`)}>{intl.formatMessage({ id: 'trademark.columns.option.button.2' })}</Button>
</AuthButton>
<Button type='link' onClick={() => history.push(`/memberCenter/commodityAbility/trademark/trademarkApply/edit?id=${record.id}`)}>{intl.formatMessage({ id: 'trademark.columns.option.button.2' })}</Button>
</Menu.Item>
<Menu.Item>
<AuthButton btnCode='trademarkApply.del' menuCode='commodityAbility'>
<Button onClick={() => handelDelete(record)} type='link'>{intl.formatMessage({ id: 'trademark.columns.option.button.3' })}</Button>
</AuthButton>
<Button onClick={() => handelDelete(record)} type='link'>{intl.formatMessage({ id: 'trademark.columns.option.button.3' })}</Button>
</Menu.Item>
</Menu>
}>
......@@ -172,9 +166,7 @@ const Trademark: React.FC<{}> = () => {
];
const handleSee = (record: any) => {
if (AuthUrl('trademarkApply.see', 'commodityAbility')) {
history.push(`/memberCenter/commodityAbility/trademark/trademarkApply/detail?id=${record.id}`)
}
history.push(`/memberCenter/commodityAbility/trademark/trademarkApply/detail?id=${record.id}`)
}
const confirmUpdate = (record: any) => {
......@@ -213,11 +205,9 @@ const Trademark: React.FC<{}> = () => {
}
const Actions = <Space>
<AuthButton btnCode='trademarkApply.add' menuCode='commodityAbility'>
<Button type="primary" icon={<PlusOutlined />} onClick={() => history.push('/memberCenter/commodityAbility/trademark/trademarkApply/add')}>
{intl.formatMessage({ id: 'trademark.actions' })}
</Button>
</AuthButton>
<Button type="primary" icon={<PlusOutlined />} onClick={() => history.push('/memberCenter/commodityAbility/trademark/trademarkApply/add')}>
{intl.formatMessage({ id: 'trademark.actions' })}
</Button>
</Space>
return (
......
......@@ -10,7 +10,6 @@ import styles from './index.less';
import SearchPannel from './components/SearchPannel';
import { getTemplateWebActivityPagePage, GetTemplateWebActivityPagePageRequest, GetTemplateWebActivityPagePageResponseDetail, postTemplateWebActivityPageDelete, postTemplateWebActivityPageOpenOffLine } from '@/services/TemplateV2Api';
import { useIntl } from 'umi'
import AuthButton from '@/components/AuthButton';
const { Search } = Input;
......@@ -105,11 +104,11 @@ const ActivePage = () => {
<div className={styles.search}>
<Search placeholder={intl.formatMessage({ id: 'activityPage.searchshousuo' })} onChange={(e) => onChange(e.target.value)} onSearch={handleSearch} />
</div>
<AuthButton btnCode='management.add' menuCode='marketingAbility'>
<Link to='/memberCenter/marketingAbility/activityPages/management/add'>
<Button icon={<PlusOutlined />} type="primary">{intl.formatMessage({ id: 'activityPage.add' })}</Button>
</Link>
</AuthButton>
<Link to='/memberCenter/marketingAbility/activityPages/management/add'>
<Button icon={<PlusOutlined />} type="primary">{intl.formatMessage({ id: 'activityPage.add' })}</Button>
</Link>
</div>
<Spin spinning={loading} wrapperClassName={styles.body}>
......
......@@ -23,9 +23,8 @@ import AnchorPage from '@/components/AnchorPage';
import BacisInfo from '../../components/BacisInfo';
import CouponRules from '../../components/CouponRules';
import DeliverCoupon, { ChangeValueItem } from '../../components/DeliverCoupon';
import { useIntl} from 'umi'
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
import { useIntl } from 'umi'
const MerchantCouponAnalysisDeliver: React.FC<{}> = () => {
const intl = useIntl();
......@@ -65,7 +64,7 @@ const MerchantCouponAnalysisDeliver: React.FC<{}> = () => {
return;
}
if (!deliverRef.current.length) {
message.warning(`${intl.formatMessage({ id: 'merchantCoupon.Noticketdatathatcanbesubmitted'})}`);
message.warning(`${intl.formatMessage({ id: 'merchantCoupon.Noticketdatathatcanbesubmitted' })}`);
return;
}
setSubmitLoading(true);
......@@ -87,7 +86,7 @@ const MerchantCouponAnalysisDeliver: React.FC<{}> = () => {
const anchorsArr = [
{
key: 'basicInfo',
name: `${intl.formatMessage({ id: 'merchantCoupon.baseInfo'})}`,
name: `${intl.formatMessage({ id: 'merchantCoupon.baseInfo' })}`,
},
{
key: 'couponRules',
......@@ -95,7 +94,7 @@ const MerchantCouponAnalysisDeliver: React.FC<{}> = () => {
},
{
key: 'deliverCoupon',
name: `${intl.formatMessage({ id: 'merchantCoupon.moneyDetail'})}`,
name: `${intl.formatMessage({ id: 'merchantCoupon.moneyDetail' })}`,
},
].filter(Boolean);
......@@ -110,7 +109,7 @@ const MerchantCouponAnalysisDeliver: React.FC<{}> = () => {
icon={<SendOutlined style={{ transform: `rotate(-45deg)`, position: 'relative', top: -2 }} />}
onClick={handleSubmit}
loading={submitLoading}
>{ intl.formatMessage({ id: 'merchantCoupon.submit'}) }</Button>
>{intl.formatMessage({ id: 'merchantCoupon.submit' })}</Button>
)}
>
<Row gutter={[16, 16]}>
......
......@@ -29,7 +29,7 @@ import verifySchema from '../common/schemas/verify';
import commonColumn from '../common/columns/coupon';
import { getMarketingCouponTypeList, getMarketingCouponWaitAuditOnePage, postMarketingCouponWaitAuditOneAuditBatch } from '@/services/MarketingV2Api';
import { useIntl } from 'umi'
import AuthButton from '@/components/AuthButton'
const { confirm } = Modal;
......@@ -69,12 +69,12 @@ const MerchantCouponNotVerify1: React.FC = () => {
align: 'center',
render: (_, record) => (
<>
<AuthButton btnCode='merchantCouponNotVerify1.examine' menuCode='marketingAbility'>
<Button
type="link"
onClick={() => history.push(`/memberCenter/marketingAbility/merchantCoupon/notVerify1/verify?id=${record.id}`)}
>{intl.formatMessage({ id: 'merchantCoupon.Review' })}</Button>
</AuthButton>
<Button
type="link"
onClick={() => history.push(`/memberCenter/marketingAbility/merchantCoupon/notVerify1/verify?id=${record.id}`)}
>{intl.formatMessage({ id: 'merchantCoupon.Review' })}</Button>
</>
),
......@@ -136,11 +136,11 @@ const MerchantCouponNotVerify1: React.FC = () => {
const ControllerBtns = () => (
<Space size={16}>
<AuthButton btnCode='merchantCouponNotVerify1.batch' menuCode='marketingAbility'>
<Button
onClick={handleBatchVerify}
>{intl.formatMessage({ id: 'merchantCoupon.Batchauditpassed' })}</Button>
</AuthButton>
<Button
onClick={handleBatchVerify}
>{intl.formatMessage({ id: 'merchantCoupon.Batchauditpassed' })}</Button>
</Space>
);
......
......@@ -28,7 +28,7 @@ import useSpliceArray from '@/hooks/useSpliceArray';
import verifySchema from '../common/schemas/verify';
import commonColumn from '../common/columns/coupon';
import { getMarketingCouponTypeList, getMarketingCouponWaitAuditTwoPage, postMarketingCouponWaitAuditTwoAuditBatch } from '@/services/MarketingV2Api';
import AuthButton from '@/components/AuthButton'
const { confirm } = Modal;
const formActions = createFormActions();
......@@ -67,12 +67,12 @@ const MerchantCouponNotVerify1: React.FC = () => {
align: 'center',
render: (_, record) => (
<>
<AuthButton btnCode='merchantCouponNotVerify2.examine' menuCode='marketingAbility'>
<Button
type="link"
onClick={() => history.push(`/memberCenter/marketingAbility/merchantCoupon/notVerify2/verify?id=${record.id}`)}
>{intl.formatMessage({ id: 'merchantCoupon.Review' })}</Button>
</AuthButton>
<Button
type="link"
onClick={() => history.push(`/memberCenter/marketingAbility/merchantCoupon/notVerify2/verify?id=${record.id}`)}
>{intl.formatMessage({ id: 'merchantCoupon.Review' })}</Button>
</>
),
......@@ -134,11 +134,11 @@ const MerchantCouponNotVerify1: React.FC = () => {
const ControllerBtns = () => (
<Space size={16}>
<AuthButton btnCode='merchantCouponNotVerify2.batch' menuCode='marketingAbility'>
<Button
onClick={handleBatchVerify}
>{intl.formatMessage({ id: 'merchantCoupon.Batchauditpassed' })}</Button>
</AuthButton>
<Button
onClick={handleBatchVerify}
>{intl.formatMessage({ id: 'merchantCoupon.Batchauditpassed' })}</Button>
</Space>
);
......
......@@ -25,8 +25,6 @@ import { getMarketingCouponPageCondition, getMarketingCouponSummaryPage, GetMark
import useSpliceArray from '@/hooks/useSpliceArray';
import { querySchema } from './schema';
import ActionModal, { ActionModalType, ActionModalValueType } from './components/ActionModal';
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const formActions = createFormActions();
......@@ -95,7 +93,6 @@ const MerchantCouponQuery: React.FC = () => {
align: 'center',
render: (text, record) => (
<EyePreview
type={AuthUrl('merchantCouponQuery.see', 'marketingAbility') ? 'link' : 'button'}
url={`/memberCenter/marketingAbility/merchantCoupon/query/detail?id=${record.id}`}
>
{text}
......@@ -164,39 +161,39 @@ const MerchantCouponQuery: React.FC = () => {
render: (_, record) => (
<>
{record.cancel && (
<AuthButton btnCode='merchantCouponQuery.cancel' menuCode='marketingAbility'>
<Button
type="link"
onClick={() => handleShowActionModal('cancel', { id: record.id })}
>{intl.formatMessage({ id: 'merchantCoupon.cancel' })}</Button>
</AuthButton>
<Button
type="link"
onClick={() => handleShowActionModal('cancel', { id: record.id })}
>{intl.formatMessage({ id: 'merchantCoupon.cancel' })}</Button>
)}
{record.restart && (
<AuthButton btnCode='merchantCouponQuery.restart' menuCode='marketingAbility'>
<Button
type="link"
onClick={() => handleShowActionModal('startUp', { id: record.id })}
>{intl.formatMessage({ id: 'merchantCoupon.Restart' })}</Button>
</AuthButton>
<Button
type="link"
onClick={() => handleShowActionModal('startUp', { id: record.id })}
>{intl.formatMessage({ id: 'merchantCoupon.Restart' })}</Button>
)}
{record.update && (
<AuthButton btnCode='merchantCouponQuery.update' menuCode='marketingAbility'>
<Button
type="link"
onClick={() => handleShowActionModal('edit', { id: record.id, releaseTimeStart: moment(record.releaseTimeStart).format('YYYY-MM-DD HH:mm:ss'), releaseTimeEnd: moment(record.releaseTimeEnd).format('YYYY-MM-DD HH:mm:ss'), quantity: `${record.quantity}` })}
>{intl.formatMessage({ id: 'merchantCoupon.Revise' })}</Button>
</AuthButton>
<Button
type="link"
onClick={() => handleShowActionModal('edit', { id: record.id, releaseTimeStart: moment(record.releaseTimeStart).format('YYYY-MM-DD HH:mm:ss'), releaseTimeEnd: moment(record.releaseTimeEnd).format('YYYY-MM-DD HH:mm:ss'), quantity: `${record.quantity}` })}
>{intl.formatMessage({ id: 'merchantCoupon.Revise' })}</Button>
)}
{record.stop && (
<AuthButton btnCode='merchantCouponQuery.stop' menuCode='marketingAbility'>
<Button
type="link"
onClick={() => handleShowActionModal('stop', { id: record.id })}
>{intl.formatMessage({ id: 'merchantCoupon.termination' })}</Button>
</AuthButton>
<Button
type="link"
onClick={() => handleShowActionModal('stop', { id: record.id })}
>{intl.formatMessage({ id: 'merchantCoupon.termination' })}</Button>
)}
</>
......
......@@ -29,7 +29,6 @@ import verifySchema from '../common/schemas/verify';
import commonColumn from '../common/columns/coupon';
import { getMarketingCouponTypeList, getMarketingCouponWaitSubmitPage, postMarketingCouponWaitSubmitSubmitBatch } from '@/services/MarketingV2Api';
import { useIntl } from 'umi'
import AuthButton from '@/components/AuthButton'
const { confirm } = Modal;
......@@ -69,12 +68,11 @@ const MerchantCouponToConfirm: React.FC = () => {
align: 'center',
render: (_, record) => (
<>
<AuthButton btnCode="toConfirm.Submit" menuCode='marketingAbility'>
<Button
type="link"
onClick={() => history.push(`/memberCenter/marketingAbility/merchantCoupon/toConfirm/verify?id=${record.id}`)}
>{intl.formatMessage({ id: 'merchantCoupon.submit' })}</Button>
</AuthButton>
<Button
type="link"
onClick={() => history.push(`/memberCenter/marketingAbility/merchantCoupon/toConfirm/verify?id=${record.id}`)}
>{intl.formatMessage({ id: 'merchantCoupon.submit' })}</Button>
</>
),
......
......@@ -32,7 +32,7 @@ import useSpliceArray from '@/hooks/useSpliceArray';
import { querySchema } from './schema';
import commonColumn from '../common/columns/coupon';
import { useIntl } from 'umi'
import AuthButton from '@/components/AuthButton'
const { confirm } = Modal;
......@@ -107,30 +107,30 @@ const MerchantCouponUnsubmitted: React.FC = () => {
render: (_, record) => (
<>
{record.submit && (
<AuthButton btnCode='merchantCouponUnsubmitted.Submit' menuCode='marketingAbility'>
<Button
type="link"
onClick={() => handleCommit([record.id])}
>{intl.formatMessage({ id: 'merchantCoupon.submit' })}</Button>
</AuthButton>
<Button
type="link"
onClick={() => handleCommit([record.id])}
>{intl.formatMessage({ id: 'merchantCoupon.submit' })}</Button>
)}
{record.update && (
<AuthButton btnCode='merchantCouponUnsubmitted.edit' menuCode='marketingAbility'>
<Button
type="link"
onClick={() => history.push(`/memberCenter/marketingAbility/merchantCoupon/unsubmitted/edit?id=${record.id}`)}
>{intl.formatMessage({ id: 'merchantCoupon.Revise' })}</Button>
</AuthButton>
<Button
type="link"
onClick={() => history.push(`/memberCenter/marketingAbility/merchantCoupon/unsubmitted/edit?id=${record.id}`)}
>{intl.formatMessage({ id: 'merchantCoupon.Revise' })}</Button>
)}
{record.delete && (
<AuthButton btnCode='merchantCouponUnsubmitted.del' menuCode='marketingAbility'>
<Button
type="link"
onClick={() => handleDelete([record.id])}
>{intl.formatMessage({ id: 'merchantCoupon.delete' })}</Button>
</AuthButton>
<Button
type="link"
onClick={() => handleDelete([record.id])}
>{intl.formatMessage({ id: 'merchantCoupon.delete' })}</Button>
)}
</>
......@@ -222,24 +222,17 @@ const MerchantCouponUnsubmitted: React.FC = () => {
const ControllerBtns = () => (
<Space size={16}>
<AuthButton btnCode='merchantCouponUnsubmitted.add' menuCode='marketingAbility'>
<Button
type="primary"
onClick={() => history.push('/memberCenter/marketingAbility/merchantCoupon/unsubmitted/add')}
>
<PlusOutlined />{intl.formatMessage({ id: 'merchantCoupon.Newcoupons' })}</Button>
</AuthButton>
<AuthButton btnCode='merchantCouponUnsubmitted.batchSubmit' menuCode='marketingAbility'>
<Button
onClick={handleBatchCommit}
>{intl.formatMessage({ id: 'merchantCoupon.Batchsubmission' })}</Button>
</AuthButton>
<AuthButton btnCode='merchantCouponUnsubmitted.batchdel' menuCode='marketingAbility'>
<Button
onClick={handleBatchDelete}
>{intl.formatMessage({ id: 'merchantCoupon.amountDelete' })}</Button>
</AuthButton>
<Button
type="primary"
onClick={() => history.push('/memberCenter/marketingAbility/merchantCoupon/unsubmitted/add')}
>
<PlusOutlined />{intl.formatMessage({ id: 'merchantCoupon.Newcoupons' })}</Button>
<Button
onClick={handleBatchCommit}
>{intl.formatMessage({ id: 'merchantCoupon.Batchsubmission' })}</Button>
<Button
onClick={handleBatchDelete}
>{intl.formatMessage({ id: 'merchantCoupon.amountDelete' })}</Button>
</Space>
);
......
......@@ -13,8 +13,7 @@ import { FormEffectHooks } from '@formily/antd';
import { InnerStatusColor, OuterStatusColor } from '../../common/tagColor';
import { getMarketingPlatformActivitySignupGetActivityTypeList, getMarketingPlatformActivitySignupPageTobeExamineStep1, postMarketingPlatformActivitySignupExamineStep1Batch } from '@/services/MarketingV2Api';
import { PATTERN_MAPS } from '@/constants/regExp';
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const { onFormMount$ } = FormEffectHooks;
......@@ -35,7 +34,7 @@ const ReadyExamineOne = () => {
title: `${intl.formatMessage({ id: 'paltformSign.theNameOfTheEvent' })}`,
key: 'activityName',
dataIndex: 'activityName',
render: (text, record) => <EyePreview type={AuthUrl('readyExamineOne.see', 'marketingAbility') ? 'link' : 'button'} url={`/memberCenter/marketingAbility/paltformSign/readyExamineOne/preview?activityId=${record.activityId}&signUpId=${record.id}`}>{text}</EyePreview>
render: (text, record) => <EyePreview url={`/memberCenter/marketingAbility/paltformSign/readyExamineOne/preview?activityId=${record.activityId}&signUpId=${record.id}`}>{text}</EyePreview>
},
{
title: `${intl.formatMessage({ id: 'paltformSign.theActivityType' })}`,
......@@ -88,9 +87,9 @@ const ReadyExamineOne = () => {
key: 'state',
dataIndex: 'state',
render: (_, record) =>
<AuthButton btnCode='readyExamineOne.examine' menuCode='marketingAbility'>
<Button type='link' onClick={() => history.push(`/memberCenter/marketingAbility/paltformSign/readyExamineOne/detail?activityId=${record.activityId}&signUpId=${record.id}`)}>{intl.formatMessage({ id: 'paltformSign.audit' })}</Button>
</AuthButton>
<Button type='link' onClick={() => history.push(`/memberCenter/marketingAbility/paltformSign/readyExamineOne/detail?activityId=${record.activityId}&signUpId=${record.id}`)}>{intl.formatMessage({ id: 'paltformSign.audit' })}</Button>
},
]
......@@ -110,13 +109,13 @@ const ReadyExamineOne = () => {
const controllerBtns = (
<Row>
<Col span={6}>
<AuthButton btnCode='readyExamineOne.batch' menuCode='marketingAbility'>
<Button
disabled={rowkeys.length === 0}
loading={submitLoading}
onClick={() => fetchSubmitBatch()}
>{intl.formatMessage({ id: 'paltformSign.batchSubmitAudit' })}</Button>
</AuthButton>
<Button
disabled={rowkeys.length === 0}
loading={submitLoading}
onClick={() => fetchSubmitBatch()}
>{intl.formatMessage({ id: 'paltformSign.batchSubmitAudit' })}</Button>
</Col>
</Row>
......
......@@ -13,8 +13,7 @@ import EyePreview from '@/components/EyePreview';
import { InnerStatusColor, OuterStatusColor } from '../../common/tagColor';
import { getMarketingPlatformActivitySignupGetActivityTypeList, getMarketingPlatformActivitySignupPageTobeExamineStep2, postMarketingPlatformActivitySignupExamineStep2Batch } from '@/services/MarketingV2Api';
import { PATTERN_MAPS } from '@/constants/regExp';
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const { onFormMount$ } = FormEffectHooks;
const ReadyExamineTwo = () => {
......@@ -33,7 +32,7 @@ const ReadyExamineTwo = () => {
title: `${intl.formatMessage({ id: 'paltformSign.theNameOfTheEvent' })}`,
key: 'activityName',
dataIndex: 'activityName',
render: (text, record) => <EyePreview type={AuthUrl('readyExamineTwo.see', 'marketingAbility') ? 'link' : 'button'} url={`/memberCenter/marketingAbility/paltformSign/readyExamineTwo/preview?activityId=${record.activityId}&signUpId=${record.id}`}>{text}</EyePreview>
render: (text, record) => <EyePreview url={`/memberCenter/marketingAbility/paltformSign/readyExamineTwo/preview?activityId=${record.activityId}&signUpId=${record.id}`}>{text}</EyePreview>
},
{
title: `${intl.formatMessage({ id: 'paltformSign.theActivityType' })}`,
......@@ -86,9 +85,9 @@ const ReadyExamineTwo = () => {
key: 'state',
dataIndex: 'state',
render: (_, record) =>
<AuthButton btnCode='readyExamineOne.examine' menuCode='marketingAbility'>
<Button type='link' onClick={() => history.push(`/memberCenter/marketingAbility/paltformSign/readyExamineTwo/detail?activityId=${record.activityId}&signUpId=${record.id}`)}>{intl.formatMessage({ id: 'paltformSign.audit' })}</Button>
</AuthButton>
<Button type='link' onClick={() => history.push(`/memberCenter/marketingAbility/paltformSign/readyExamineTwo/detail?activityId=${record.activityId}&signUpId=${record.id}`)}>{intl.formatMessage({ id: 'paltformSign.audit' })}</Button>
},
]
......@@ -109,13 +108,13 @@ const ReadyExamineTwo = () => {
const controllerBtns = (
<Row>
<Col span={6}>
<AuthButton btnCode='readyExamineTwo.batch' menuCode='marketingAbility'>
<Button
disabled={rowkeys.length === 0}
loading={submitLoading}
onClick={() => fetchSubmitBatch()}
>{intl.formatMessage({ id: 'paltformSign.batchSubmitAudit' })}</Button>
</AuthButton>
<Button
disabled={rowkeys.length === 0}
loading={submitLoading}
onClick={() => fetchSubmitBatch()}
>{intl.formatMessage({ id: 'paltformSign.batchSubmitAudit' })}</Button>
</Col>
</Row>
......
......@@ -13,8 +13,7 @@ import { InnerStatusColor, OuterStatusColor } from '../../common/tagColor';
import { getMarketingPlatformActivitySignupGetActivityTypeList, getMarketingPlatformActivitySignupPageTobeSubmitSignUp, postMarketingPlatformActivitySignupSubmitSignUp, postMarketingPlatformActivitySignupSubmitSignUpBatch } from '@/services/MarketingV2Api';
import { PATTERN_MAPS } from '@/constants/regExp';
const { onFormMount$ } = FormEffectHooks;
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const ReadySubmit = () => {
const intl = useIntl();
......@@ -50,7 +49,7 @@ const ReadySubmit = () => {
title: `${intl.formatMessage({ id: 'paltformSign.theNameOfTheEvent' })}`,
key: 'activityName',
dataIndex: 'activityName',
render: (text, record) => <EyePreview type={AuthUrl('readySubmit.see', 'marketingAbility') ? 'link' : 'button'} url={`/memberCenter/marketingAbility/paltformSign/readySubmit/preview?activityId=${record.activityId}&signUpId=${record.id}`}>{text}</EyePreview>
render: (text, record) => <EyePreview url={`/memberCenter/marketingAbility/paltformSign/readySubmit/preview?activityId=${record.activityId}&signUpId=${record.id}`}>{text}</EyePreview>
},
{
title: `${intl.formatMessage({ id: 'paltformSign.theActivityType' })}`,
......@@ -103,11 +102,11 @@ const ReadySubmit = () => {
key: 'state',
dataIndex: 'state',
render: (text, record) =>
<AuthButton btnCode='readySubmit.examine' menuCode='marketingAbility'>
<Popconfirm title={intl.formatMessage({ id: 'marketingAbility.quedingyaotijiaoma?' })} okButtonProps={{ loading: confirmLoading }} disabled={!record.id} okText={intl.formatMessage({ id: 'paltformSign.is' })} cancelText={intl.formatMessage({ id: 'paltformSign.no' })} onConfirm={() => fetchSubmitBatch(record.id)}>
<Button type='link' disabled={!record.id}>{intl.formatMessage({ id: 'paltformSign.submit' })}</Button>
</Popconfirm>
</AuthButton>
<Popconfirm title={intl.formatMessage({ id: 'marketingAbility.quedingyaotijiaoma?' })} okButtonProps={{ loading: confirmLoading }} disabled={!record.id} okText={intl.formatMessage({ id: 'paltformSign.is' })} cancelText={intl.formatMessage({ id: 'paltformSign.no' })} onConfirm={() => fetchSubmitBatch(record.id)}>
<Button type='link' disabled={!record.id}>{intl.formatMessage({ id: 'paltformSign.submit' })}</Button>
</Popconfirm>
},
]
......@@ -136,13 +135,13 @@ const ReadySubmit = () => {
fetchRowkeys={(e) => setRowKeys(e)}
controllerBtns={
<Space>
<AuthButton btnCode='readySubmit.batch' menuCode='marketingAbility'>
<Button
loading={confirmLoading}
disabled={rowkeys.length === 0}
onClick={() => fetchSubmitBatch()}
>{intl.formatMessage({ id: 'paltformSign.batchSubmission' })}</Button>
</AuthButton>
<Button
loading={confirmLoading}
disabled={rowkeys.length === 0}
onClick={() => fetchSubmitBatch()}
>{intl.formatMessage({ id: 'paltformSign.batchSubmission' })}</Button>
</Space>
}
......
......@@ -14,8 +14,7 @@ import { InnerStatusColor, OuterStatusColor } from '../../common/tagColor';
import { getMarketingPlatformActivitySignupGetActivityTypeList, getMarketingPlatformActivitySignupPageTobeSubmit, postMarketingPlatformActivitySignupSubmit, postMarketingPlatformActivitySignupSubmitBatch } from '@/services/MarketingV2Api';
import { PATTERN_MAPS } from '@/constants/regExp';
const { onFormMount$ } = FormEffectHooks;
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const ReadySubmitExamine = () => {
const intl = useIntl();
......@@ -54,7 +53,7 @@ const ReadySubmitExamine = () => {
title: `${intl.formatMessage({ id: 'paltformSign.theNameOfTheEvent' })}`,
key: 'activityName',
dataIndex: 'activityName',
render: (text, record) => <EyePreview type={AuthUrl('readySubmitExamine.see', 'marketingAbility') ? 'link' : 'button'} url={`/memberCenter/marketingAbility/paltformSign/readySubmitExamine/preview?activityId=${record.activityId}&signUpId=${record.id}`}>{text}</EyePreview>
render: (text, record) => <EyePreview url={`/memberCenter/marketingAbility/paltformSign/readySubmitExamine/preview?activityId=${record.activityId}&signUpId=${record.id}`}>{text}</EyePreview>
},
{
title: `${intl.formatMessage({ id: 'paltformSign.theActivityType' })}`,
......@@ -109,22 +108,22 @@ const ReadySubmitExamine = () => {
render: (text, record) => (
<>
{record.update &&
<AuthButton btnCode='readySubmitExamine.update' menuCode='marketingAbility'>
<Button type='link' onClick={() => history.push(`/memberCenter/marketingAbility/paltformSign/readySubmitExamine/edit?activityId=${record.activityId}&signUpId=${record.id}`)}>{intl.formatMessage({ id: 'paltformSign.modifyTheRegistrationInformation' })}</Button>
</AuthButton>
<Button type='link' onClick={() => history.push(`/memberCenter/marketingAbility/paltformSign/readySubmitExamine/edit?activityId=${record.activityId}&signUpId=${record.id}`)}>{intl.formatMessage({ id: 'paltformSign.modifyTheRegistrationInformation' })}</Button>
}
{record.submit && (
<AuthButton btnCode='readySubmitExamine.submit' menuCode='marketingAbility'>
<Popconfirm title={intl.formatMessage({ id: 'paltformSign.sureToSummit' })} disabled={!record.id} okText={intl.formatMessage({ id: 'paltformSign.is' })} cancelText={intl.formatMessage({ id: 'paltformSign.no' })} onConfirm={() => handleSubmit(record.id)}>
<Button type='link' disabled={!record.id}>{intl.formatMessage({ id: 'paltformSign.submitAudit' })}</Button>
</Popconfirm>
</AuthButton>
<Popconfirm title={intl.formatMessage({ id: 'paltformSign.sureToSummit' })} disabled={!record.id} okText={intl.formatMessage({ id: 'paltformSign.is' })} cancelText={intl.formatMessage({ id: 'paltformSign.no' })} onConfirm={() => handleSubmit(record.id)}>
<Button type='link' disabled={!record.id}>{intl.formatMessage({ id: 'paltformSign.submitAudit' })}</Button>
</Popconfirm>
)}
{record.save &&
<AuthButton btnCode='readySubmitExamine.save' menuCode='marketingAbility'>
<Button type='link' onClick={() => history.push(`/memberCenter/marketingAbility/paltformSign/readySubmitExamine/add?activityId=${record.activityId}`)}>{intl.formatMessage({ id: 'paltformSign.fillInTheRegistrationInformation' })}</Button>
</AuthButton>
<Button type='link' onClick={() => history.push(`/memberCenter/marketingAbility/paltformSign/readySubmitExamine/add?activityId=${record.activityId}`)}>{intl.formatMessage({ id: 'paltformSign.fillInTheRegistrationInformation' })}</Button>
}
</>
)
......@@ -135,13 +134,13 @@ const ReadySubmitExamine = () => {
const controllerBtns = (
<Row>
<Col span={6}>
<AuthButton btnCode='readySubmitExamine.batch' menuCode='marketingAbility'>
<Button
disabled={rowkeys.length === 0}
loading={submitLoading}
onClick={() => fetchSubmitBatch()}
>{intl.formatMessage({ id: 'paltformSign.batchSubmitAudit' })}</Button>
</AuthButton>
<Button
disabled={rowkeys.length === 0}
loading={submitLoading}
onClick={() => fetchSubmitBatch()}
>{intl.formatMessage({ id: 'paltformSign.batchSubmitAudit' })}</Button>
</Col>
</Row>
......
......@@ -14,7 +14,7 @@ import { InnerStatusColor, OuterStatusColor } from '../../common/tagColor';
import { getMarketingPlatformActivitySignupGetActivityTypeList, getMarketingPlatformActivitySignupGetInnerStatusList, getMarketingPlatformActivitySignupGetOuterStatusList, getMarketingPlatformActivitySignupPage } from '@/services/MarketingV2Api';
import { PATTERN_MAPS } from '@/constants/regExp';
const { onFormMount$ } = FormEffectHooks;
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const Search = () => {
const intl = useIntl();
......@@ -29,7 +29,6 @@ const Search = () => {
key: 'activityName',
dataIndex: 'activityName',
render: (text, record) => <EyePreview
type={AuthUrl('paltformSign.see', 'marketingAbility') ? 'link' : 'button'}
url={`/memberCenter/marketingAbility/paltformSign/search/preview?activityId=${record.activityId}&signUpId=${record.id}`}>{text}</EyePreview>
},
{
......
......@@ -15,8 +15,7 @@ import { InnerStatusColor, OuterStatusColor } from '../../common/tagColor';
import { getMarketingMerchantActivityGetActivityTypeList, getMarketingMerchantActivityPageExamineStep1, postMarketingMerchantActivityExamineStep1Batch } from '@/services/MarketingV2Api';
import { PATTERN_MAPS } from '@/constants/regExp';
const { onFormMount$ } = FormEffectHooks;
import AuthButton from '@/components/AuthButton';
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const menuCode = 'marketingAbility';
const ReadyExamineOne = () => {
......@@ -48,7 +47,7 @@ const ReadyExamineOne = () => {
title: `${intl.formatMessage({ id: 'selfManagement.theNameOfTheEvent' })}`,
key: 'activityName',
dataIndex: 'activityName',
render: (text, record) => <EyePreview type={AuthUrl('selfManagementreadyExamineOne.see', menuCode) ? 'link' : 'button'} url={`/memberCenter/marketingAbility/selfManagement/readyExamineOne/preview?id=${record.id}`}>{text}</EyePreview>
render: (text, record) => <EyePreview url={`/memberCenter/marketingAbility/selfManagement/readyExamineOne/preview?id=${record.id}`}>{text}</EyePreview>
},
{
title: `${intl.formatMessage({ id: 'selfManagement.theActivityType' })}`,
......@@ -89,9 +88,8 @@ const ReadyExamineOne = () => {
key: 'state',
dataIndex: 'state',
render: (_, record) =>
<AuthButton btnCode='selfManagementreadyExamineOne.examine' menuCode={menuCode}>
<Button type='link' onClick={() => history.push(`/memberCenter/marketingAbility/selfManagement/readyExamineOne/detail?id=${record.id}`)}>{intl.formatMessage({ id: 'selfManagement.audit' })}</Button>
</AuthButton>
<Button type='link' onClick={() => history.push(`/memberCenter/marketingAbility/selfManagement/readyExamineOne/detail?id=${record.id}`)}>{intl.formatMessage({ id: 'selfManagement.audit' })}</Button>
},
]
......@@ -217,13 +215,13 @@ const ReadyExamineOne = () => {
controllerBtns={
<Row>
<Col span={6}>
<AuthButton btnCode='selfManagementreadyExamineOne.batch' menuCode={menuCode}>
<Button
loading={submitLoading}
onClick={fetchSubmitBatch}
disabled={rowkeys.length === 0}
>{intl.formatMessage({ id: 'selfManagement.batchSubmitAudit' })}</Button>
</AuthButton>
<Button
loading={submitLoading}
onClick={fetchSubmitBatch}
disabled={rowkeys.length === 0}
>{intl.formatMessage({ id: 'selfManagement.batchSubmitAudit' })}</Button>
</Col>
</Row>
......
......@@ -14,8 +14,7 @@ import { InnerStatusColor, OuterStatusColor } from '../../common/tagColor';
import { getMarketingMerchantActivityGetActivityTypeList, getMarketingMerchantActivityPageExamineStep2, postMarketingMerchantActivityExamineStep2Batch } from '@/services/MarketingV2Api';
import { PATTERN_MAPS } from '@/constants/regExp';
const { onFormMount$ } = FormEffectHooks;
import AuthButton from '@/components/AuthButton';
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const menuCode = 'marketingAbility';
......@@ -48,7 +47,7 @@ const ReadyExamineTwo = () => {
title: `${intl.formatMessage({ id: 'selfManagement.theNameOfTheEvent' })}`,
key: 'activityName',
dataIndex: 'activityName',
render: (text, record) => <EyePreview type={AuthUrl('selfManagementreadyExamineTwo.see', menuCode) ? 'link' : 'button'} url={`/memberCenter/marketingAbility/selfManagement/readyExamineTwo/preview?id=${record.id}`}>{text}</EyePreview>
render: (text, record) => <EyePreview url={`/memberCenter/marketingAbility/selfManagement/readyExamineTwo/preview?id=${record.id}`}>{text}</EyePreview>
},
{
title: `${intl.formatMessage({ id: 'selfManagement.theActivityType' })}`,
......@@ -89,9 +88,8 @@ const ReadyExamineTwo = () => {
key: 'state',
dataIndex: 'state',
render: (_, record) =>
<AuthButton btnCode='selfManagementreadyExamineTwo.examine' menuCode={menuCode}>
<Button type='link' onClick={() => history.push(`/memberCenter/marketingAbility/selfManagement/readyExamineTwo/detail?id=${record.id}`)}>{intl.formatMessage({ id: 'selfManagement.audit' })}</Button>
</AuthButton>
<Button type='link' onClick={() => history.push(`/memberCenter/marketingAbility/selfManagement/readyExamineTwo/detail?id=${record.id}`)}>{intl.formatMessage({ id: 'selfManagement.audit' })}</Button>
}
]
......@@ -217,13 +215,13 @@ const ReadyExamineTwo = () => {
controllerBtns={
<Row>
<Col span={6}>
<AuthButton btnCode='selfManagementreadyExamineTwo.batch' menuCode={menuCode}>
<Button
loading={submitLoading}
onClick={fetchSubmitBatch}
disabled={rowkeys.length === 0}
>{intl.formatMessage({ id: 'selfManagement.batchSubmitAudit' })}</Button>
</AuthButton>
<Button
loading={submitLoading}
onClick={fetchSubmitBatch}
disabled={rowkeys.length === 0}
>{intl.formatMessage({ id: 'selfManagement.batchSubmitAudit' })}</Button>
</Col>
</Row>
......
......@@ -13,8 +13,6 @@ import { InnerStatusColor, OuterStatusColor } from '../../common/tagColor';
import { getMarketingMerchantActivityGetActivityTypeList, getMarketingMerchantActivityPageTobeOnline, postMarketingMerchantActivityOnline, postMarketingMerchantActivityOnlineBatch } from '@/services/MarketingV2Api';
import { PATTERN_MAPS } from '@/constants/regExp';
const { onFormMount$ } = FormEffectHooks;
import AuthButton from '@/components/AuthButton';
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const menuCode = 'marketingAbility';
const ReadyLive = () => {
......@@ -50,7 +48,7 @@ const ReadyLive = () => {
title: `${intl.formatMessage({ id: 'selfManagement.theNameOfTheEvent' })}`,
key: 'activityName',
dataIndex: 'activityName',
render: (text, record) => <EyePreview type={AuthUrl('readyLive.see', menuCode) ? 'link' : 'button'} url={`/memberCenter/marketingAbility/selfManagement/readyLive/preview?id=${record.id}`}>{text}</EyePreview>
render: (text, record) => <EyePreview url={`/memberCenter/marketingAbility/selfManagement/readyLive/preview?id=${record.id}`}>{text}</EyePreview>
},
{
title: `${intl.formatMessage({ id: 'selfManagement.theActivityType' })}`,
......@@ -93,11 +91,10 @@ const ReadyLive = () => {
render: (_text, _record) => (
<Fragment>
{_record.online && (
<AuthButton btnCode='readyLive.online' menuCode={menuCode}>
<Popconfirm okButtonProps={{ loading: submitLoading }} title={intl.formatMessage({ id: 'selfManagement.launchActivities?' })} okText={intl.formatMessage({ id: 'selfManagement.is' })} cancelText={intl.formatMessage({ id: 'selfManagement.no' })} onConfirm={() => fetchSubmitBatch(_record.id)}>
<Button type='link'>{intl.formatMessage({ id: 'selfManagement.onlineActivity' })}</Button>
</Popconfirm>
</AuthButton>
<Popconfirm okButtonProps={{ loading: submitLoading }} title={intl.formatMessage({ id: 'selfManagement.launchActivities?' })} okText={intl.formatMessage({ id: 'selfManagement.is' })} cancelText={intl.formatMessage({ id: 'selfManagement.no' })} onConfirm={() => fetchSubmitBatch(_record.id)}>
<Button type='link'>{intl.formatMessage({ id: 'selfManagement.onlineActivity' })}</Button>
</Popconfirm>
)}
</Fragment>
......@@ -226,13 +223,13 @@ const ReadyLive = () => {
controllerBtns={
<Row>
<Col span={6}>
<AuthButton btnCode='readyLive.batch' menuCode={menuCode}>
<Button
loading={submitLoading}
onClick={() => fetchSubmitBatch()}
disabled={rowkeys.length === 0}
>{intl.formatMessage({ id: 'selfManagement.batchOnlineActivities' })}</Button>
</AuthButton>
<Button
loading={submitLoading}
onClick={() => fetchSubmitBatch()}
disabled={rowkeys.length === 0}
>{intl.formatMessage({ id: 'selfManagement.batchOnlineActivities' })}</Button>
</Col>
</Row>
......
......@@ -13,8 +13,6 @@ import { InnerStatusColor, OuterStatusColor } from '../../common/tagColor';
import { getMarketingMerchantActivityGetActivityTypeList, getMarketingMerchantActivityPageTobeSubmit, postMarketingMerchantActivitySubmit, postMarketingMerchantActivitySubmitBatch } from '@/services/MarketingV2Api';
import { PATTERN_MAPS } from '@/constants/regExp';
const { onFormMount$ } = FormEffectHooks;
import AuthButton from '@/components/AuthButton';
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const menuCode = 'marketingAbility';
const ReadySubmit = () => {
const intl = useIntl();
......@@ -49,7 +47,7 @@ const ReadySubmit = () => {
title: `${intl.formatMessage({ id: 'selfManagement.theNameOfTheEvent' })}`,
key: 'activityName',
dataIndex: 'activityName',
render: (text, record) => <EyePreview type={AuthUrl('selfManagementreadySubmit.see', menuCode) ? 'link' : 'button'} url={`/memberCenter/marketingAbility/selfManagement/readySubmit/preview?id=${record.id}`}>{text}</EyePreview>
render: (text, record) => <EyePreview url={`/memberCenter/marketingAbility/selfManagement/readySubmit/preview?id=${record.id}`}>{text}</EyePreview>
},
{
title: `${intl.formatMessage({ id: 'selfManagement.theActivityType' })}`,
......@@ -92,12 +90,10 @@ const ReadySubmit = () => {
render: (_text, _record) => (
<Fragment>
{_record.submit && (
<AuthButton btnCode='selfManagementreadySubmit.Submit' menuCode={menuCode}>
<Popconfirm okButtonProps={{ loading: submitLoading }} title={intl.formatMessage({ id: 'selfManagement.sureYouWantToSubmit?' })} okText={intl.formatMessage({ id: 'selfManagement.is' })} cancelText={intl.formatMessage({ id: 'selfManagement.no' })} onConfirm={() => fetchSubmitBatch(_record.id)}>
<Button type='link'>{intl.formatMessage({ id: 'selfManagement.submit' })}</Button>
</Popconfirm>
</AuthButton>
<Popconfirm okButtonProps={{ loading: submitLoading }} title={intl.formatMessage({ id: 'selfManagement.sureYouWantToSubmit?' })} okText={intl.formatMessage({ id: 'selfManagement.is' })} cancelText={intl.formatMessage({ id: 'selfManagement.no' })} onConfirm={() => fetchSubmitBatch(_record.id)}>
<Button type='link'>{intl.formatMessage({ id: 'selfManagement.submit' })}</Button>
</Popconfirm>
)}
</Fragment>
)
......@@ -225,13 +221,12 @@ const ReadySubmit = () => {
controllerBtns={
<Row>
<Col span={6}>
<AuthButton btnCode='selfManagementreadySubmit.batch' menuCode={menuCode}>
<Button
disabled={rowkeys.length === 0}
loading={submitLoading}
onClick={() => fetchSubmitBatch()}
>{intl.formatMessage({ id: 'selfManagement.batchSubmitAudit' })}</Button>
</AuthButton>
<Button
disabled={rowkeys.length === 0}
loading={submitLoading}
onClick={() => fetchSubmitBatch()}
>{intl.formatMessage({ id: 'selfManagement.batchSubmitAudit' })}</Button>
</Col>
</Row>
}
......
......@@ -19,8 +19,7 @@ import {
import { InnerStatusColor, OuterStatusColor } from '../../common/tagColor';
import { getMarketingMerchantActivityGetActivityTypeList, getMarketingMerchantActivityPageTobeSubmitExam, postMarketingMerchantActivityDelete, postMarketingMerchantActivityDeleteBatch, postMarketingMerchantActivitySubmitExamine, postMarketingMerchantActivitySubmitExamineBatch } from '@/services/MarketingV2Api';
import { PATTERN_MAPS } from '@/constants/regExp';
import AuthButton from '@/components/AuthButton';
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const menuCode = 'marketingAbility';
const ReadySubmitExamine = () => {
......@@ -75,7 +74,7 @@ const ReadySubmitExamine = () => {
key: 'activityName',
dataIndex: 'activityName',
render: (text, record) => <EyePreview type={AuthUrl('selfManagementready.see', menuCode) ? 'link' : 'button'} url={`/memberCenter/marketingAbility/selfManagement/readySubmitExamine/preview?id=${record.id}`}>{text}</EyePreview>
render: (text, record) => <EyePreview url={`/memberCenter/marketingAbility/selfManagement/readySubmitExamine/preview?id=${record.id}`}>{text}</EyePreview>
},
{
title: `${intl.formatMessage({ id: 'selfManagement.theActivityType' })}`,
......@@ -118,25 +117,17 @@ const ReadySubmitExamine = () => {
render: (_text, _record) => (
<Fragment>
{_record.submit && (
<AuthButton btnCode='selfManagementready.Submit' menuCode={menuCode}>
<Popconfirm okButtonProps={{ loading: submitLoading }} title={intl.formatMessage({ id: 'selfManagement.sureYouWantToSubmit?' })} okText={intl.formatMessage({ id: 'selfManagement.is' })} cancelText={intl.formatMessage({ id: 'selfManagement.no' })} onConfirm={() => fetchSubmitBatch(_record.id)}>
<Button type='link'>{intl.formatMessage({ id: 'selfManagement.submit' })}</Button>
</Popconfirm>
</AuthButton>
<Popconfirm okButtonProps={{ loading: submitLoading }} title={intl.formatMessage({ id: 'selfManagement.sureYouWantToSubmit?' })} okText={intl.formatMessage({ id: 'selfManagement.is' })} cancelText={intl.formatMessage({ id: 'selfManagement.no' })} onConfirm={() => fetchSubmitBatch(_record.id)}>
<Button type='link'>{intl.formatMessage({ id: 'selfManagement.submit' })}</Button>
</Popconfirm>
)}
{_record.update && (
<AuthButton btnCode='selfManagementready.edit' menuCode={menuCode}>
<Button type='link' onClick={() => history.push(`/memberCenter/marketingAbility/selfManagement/readySubmitExamine/edit?id=${_record.id}`)}>{intl.formatMessage({ id: 'selfManagement.modifyThe' })}</Button>
</AuthButton>
<Button type='link' onClick={() => history.push(`/memberCenter/marketingAbility/selfManagement/readySubmitExamine/edit?id=${_record.id}`)}>{intl.formatMessage({ id: 'selfManagement.modifyThe' })}</Button>
)}
{_record.delete && (
<AuthButton btnCode='selfManagementready.del' menuCode={menuCode}>
<Popconfirm okButtonProps={{ loading: deleteLoading }} title={intl.formatMessage({ id: 'selfManagement.sureYouWantToDelete?' })} okText={intl.formatMessage({ id: 'selfManagement.is' })} cancelText={intl.formatMessage({ id: 'selfManagement.no' })} onConfirm={() => fetchDeleteBatch(_record.id)}>
<Button type='link'>{intl.formatMessage({ id: 'selfManagement.delete' })}</Button>
</Popconfirm>
</AuthButton>
<Popconfirm okButtonProps={{ loading: deleteLoading }} title={intl.formatMessage({ id: 'selfManagement.sureYouWantToDelete?' })} okText={intl.formatMessage({ id: 'selfManagement.is' })} cancelText={intl.formatMessage({ id: 'selfManagement.no' })} onConfirm={() => fetchDeleteBatch(_record.id)}>
<Button type='link'>{intl.formatMessage({ id: 'selfManagement.delete' })}</Button>
</Popconfirm>
)}
</Fragment>
)
......@@ -265,29 +256,29 @@ const ReadySubmitExamine = () => {
<Row>
<Col span={24}>
<Space direction="horizontal" size={16}>
<AuthButton btnCode='selfManagementready.add' menuCode={menuCode}>
<Button
type="primary"
icon={<PlusOutlined />}
onClick={() => history.push(`/memberCenter/marketingAbility/selfManagement/readySubmitExamine/add`)}
>{intl.formatMessage({ id: 'selfManagement.new' })}</Button>
</AuthButton>
<AuthButton btnCode='selfManagementready.batchdel' menuCode={menuCode}>
<Button
icon={<DeleteOutlined />}
loading={deleteLoading}
onClick={() => fetchDeleteBatch()}
disabled={rowkeys.length === 0}
>{intl.formatMessage({ id: 'selfManagement.batchDelete' })}</Button>
</AuthButton>
<AuthButton btnCode='selfManagementready.batchedit' menuCode={menuCode}>
<Button
loading={submitLoading}
onClick={() => fetchSubmitBatch()}
disabled={rowkeys.length === 0}
>{intl.formatMessage({ id: 'selfManagement.batchSubmitAudit' })}</Button>
</AuthButton>
<Button
type="primary"
icon={<PlusOutlined />}
onClick={() => history.push(`/memberCenter/marketingAbility/selfManagement/readySubmitExamine/add`)}
>{intl.formatMessage({ id: 'selfManagement.new' })}</Button>
<Button
icon={<DeleteOutlined />}
loading={deleteLoading}
onClick={() => fetchDeleteBatch()}
disabled={rowkeys.length === 0}
>{intl.formatMessage({ id: 'selfManagement.batchDelete' })}</Button>
<Button
loading={submitLoading}
onClick={() => fetchSubmitBatch()}
disabled={rowkeys.length === 0}
>{intl.formatMessage({ id: 'selfManagement.batchSubmitAudit' })}</Button>
</Space>
</Col>
</Row>
......
......@@ -15,8 +15,7 @@ import { InnerStatusColor, OuterStatusColor } from '../../common/tagColor';
import { getMarketingMerchantActivityGetActivityTypeList, getMarketingMerchantActivityGetInnerStatusList, getMarketingMerchantActivityGetOuterStatusList, getMarketingMerchantActivityPage, postMarketingMerchantActivityRestart, postMarketingMerchantActivityStop } from '@/services/MarketingV2Api';
import { PATTERN_MAPS } from '@/constants/regExp';
const { onFormMount$ } = FormEffectHooks;
import AuthButton from '@/components/AuthButton';
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
type dateInfoProps = {
/** id */
......@@ -61,7 +60,7 @@ const Search = () => {
title: `${intl.formatMessage({ id: 'selfManagement.theNameOfTheEvent' })}`,
key: 'activityName',
dataIndex: 'activityName',
render: (text, record) => <EyePreview type={AuthUrl('selfManagement.see', 'marketingAbility') ? 'link' : 'button'} url={`/memberCenter/marketingAbility/selfManagement/search/preview?id=${record.id}`}>{text}</EyePreview>
render: (text, record) => <EyePreview url={`/memberCenter/marketingAbility/selfManagement/search/preview?id=${record.id}`}>{text}</EyePreview>
},
{
title: `${intl.formatMessage({ id: 'selfManagement.theActivityType' })}`,
......@@ -104,19 +103,19 @@ const Search = () => {
render: (_text, record) => (
<Fragment>
{record.update &&
<AuthButton btnCode='selfManagement.update' menuCode='marketingAbility'>
<Button type='link' onClick={() => history.push(`/memberCenter/marketingAbility/selfManagement/readySubmitExamine/edit?id=${record.id}`)}>{intl.formatMessage({ id: 'selfManagement.modifyThe' })}</Button>
</AuthButton>
<Button type='link' onClick={() => history.push(`/memberCenter/marketingAbility/selfManagement/readySubmitExamine/edit?id=${record.id}`)}>{intl.formatMessage({ id: 'selfManagement.modifyThe' })}</Button>
}
{record.stop &&
<AuthButton btnCode='selfManagement.stop' menuCode='marketingAbility'>
<Button type='link' onClick={() => handleOperate(record, 'stop')}>{intl.formatMessage({ id: 'selfManagement.terminationOf' })}</Button>
</AuthButton>
<Button type='link' onClick={() => handleOperate(record, 'stop')}>{intl.formatMessage({ id: 'selfManagement.terminationOf' })}</Button>
}
{record.restart &&
<AuthButton btnCode='selfManagement.restart' menuCode='marketingAbility'>
<Button type='link' onClick={() => handleOperate(record, 'start')}>{intl.formatMessage({ id: 'selfManagement.restartThe' })}</Button>
</AuthButton>
<Button type='link' onClick={() => handleOperate(record, 'start')}>{intl.formatMessage({ id: 'selfManagement.restartThe' })}</Button>
}
</Fragment>
)
......
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