Commit 5149eb1a authored by 前端-黄佳鑫's avatar 前端-黄佳鑫
parents 27f9bd67 35c42ea9
......@@ -58,8 +58,8 @@
"@ctrl/tinycolor": "^3.4.0",
"@formily/antd": "^1.3.3",
"@formily/antd-components": "^1.3.3",
"@lingxi-disign/core": "^1.0.4",
"@lingxi-disign/react": "^1.0.4",
"@lingxi-disign/core": "^1.0.5",
"@lingxi-disign/react": "^1.0.5",
"@lingxi-disign/react-web": "^1.0.2",
"@lingxi-disign/ui": "^1.0.4",
"@turf/turf": "^6.4.0",
......
......@@ -93,6 +93,9 @@ function useGetLayout() {
componentName: componentName,
title: _item.children[_child]?.title || `${configKey}-${_childKey + 1}`,
props: { ...rest, data: children },
canEdit: true,
canDelete: false,
canDrag: false,
childNodes: [],
childComponentName: grandSonCompoentMap[_child],
childProps: {
......
......@@ -104,11 +104,15 @@ const header: PageConfigType = {
componentName: 'HeaderNav',
title: '头部',
props: {},
canEdit: false,
canDelete: false,
childNodes: ["2", "3"],
},
"2": {
componentName: 'HeaderNav.ActionItem',
title: '我的',
canEdit: false,
canDelete: false,
props: {
data: {
name: "我的",
......@@ -121,6 +125,8 @@ const header: PageConfigType = {
"3": {
componentName: 'HeaderNav.ActionItem',
title: '搜索框',
canEdit: false,
canDelete: false,
props: {
data: {
name: "搜索框",
......
......@@ -53,14 +53,14 @@
justify-content: center;
height: 96px;
.imageIcon {
width: 40px;
height: 40px;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
}
// .imageIcon {
// width: 40px;
// height: 40px;
// display: flex;
// flex-direction: row;
// align-items: center;
// justify-content: center;
// }
}
}
......@@ -269,9 +269,7 @@ const EditPanel = () => {
effects={($, actions) => {
useAsyncSelect('primary', fetchPrimaryOption, ["name", "id"]);
onFieldInputChange$('*(primary, secondary)').subscribe(fieldState => {
const { originAsyncData } = fieldState;
console.log(originAsyncData)
const target = originAsyncData.filter((_item) => (_item.id === fieldState.value) || _item.value === fieldState.value)[0];
actions.setFieldValue('title', target?.name || target?.label);
});
......
......@@ -19,4 +19,5 @@
width: 100%;
display: flex;
flex-direction: row-reverse;
padding: 12px;
}
......@@ -49,13 +49,13 @@ const Item = (props) => {
onClick, onDrag, onDragEnd, onDragEnter, onDragStart, onMouseOver
};
const wrapClass = cs(className, styles.content);
const wrapClass = cs(styles.content);
const isEmpty = typeof name === 'undefined' && typeof id === 'undefined';
if (isEmpty) {
return (
<div className={styles.item} >
<div {...divProps} className={cs(wrapClass, styles.empty)}>
<div {...divProps} className={cs(wrapClass, className, styles.empty)}>
<PlusOutlined />
</div>
</div>
......@@ -65,7 +65,7 @@ const Item = (props) => {
return (
<div className={styles.item} >
<div className={wrapClass}>
<div {...divProps} style={{width: '40px'}}>
<div {...divProps} className={className} style={{width: '40px'}}>
<img src={icon} className={styles.image} />
<div className={styles.name}>{name}</div>
</div>
......
......@@ -261,6 +261,7 @@ const CustomizeTabs: React.FC<Iprops> & { TabItem: typeof TabItem } = (props: Ip
...cloneDeepPageConfig,
...finalData,
};
console.log("fuckNewConfig", newConfigData);
createActions({ type: 'onChangeTabKey', payload: { activeKey: matches?.[1] === 'undefined' ? null : matches?.[1] , domKey: matches?.[2], pageConfig: newConfigData, hasRequestTabKey: concatActiveKey } });
setActiveKey(activeKey);
};
......
import React from 'react';
import { ArrowLeftOutlined } from '@ant-design/icons';
import { history } from 'umi';
import { Modal } from 'antd'
import styles from './index.less';
interface Iprops {
extra?: React.ReactNode,
......@@ -10,7 +11,13 @@ interface Iprops {
const Toolbar: React.FC<Iprops> = (props: Iprops) => {
const { title, extra } = props;
const goback =() => {
history.goBack();
Modal.confirm({
title: '确认离开装修页?',
onOk: () => {
history.goBacK()
},
})
// history.goBack();
};
return (
......
import React, { useEffect, useState } from 'react';
import React, { useEffect, useState, useMemo } from 'react';
import { Spin, message } from 'antd';
import { BrickProvider, createActions, ModuleTree } from '@lingxi-disign/react';
import { history } from 'umi';
......@@ -64,7 +64,7 @@ const TITLE_MAP = {
const CategoryNavigation = () => {
const { info, dataSourceFromRequest } = useGetLayout();
const { shopId, id } = usePageStatus();
const { shopId, id, preview } = usePageStatus();
const [loading, setLoading] = useState<boolean>(false);
useEffect(() => {
......@@ -126,6 +126,8 @@ const CategoryNavigation = () => {
// const { data, code }
};
const isPreview = useMemo(() => typeof preview !== 'undefined', [preview])
return (
<Spin spinning={false}>
<BrickProvider
......@@ -138,17 +140,26 @@ const CategoryNavigation = () => {
<div className={styles['wrapper']}>
<Toolbar title="正在编辑:品类导航页" extra={<ToolbarSubmit loading={loading} dataConfig={['pageConfig', 'hasRequestTabKey']} onSubmit={onSave}>保存</ToolbarSubmit>} />
<div className={styles['content']}>
<div className={styles.tree}>
<ModuleTree />
</div>
{
!isPreview && (
<div className={styles.tree}>
<ModuleTree />
</div>
)
}
<div className={styles['app-wrapper']}>
<div className={styles['app-canvas-container']}>
<MobileDesignPanel theme={'theme-mall-science'} onlyEidt />
<MobileDesignPanel isPreview={isPreview} theme={'theme-mall-science'} onlyEidt />
</div>
</div>
<FixtureContentProvider value={{shopId: shopId}}>
<EditPanel />
</FixtureContentProvider>
{
!isPreview && (
<FixtureContentProvider value={{shopId: shopId}}>
<EditPanel />
</FixtureContentProvider>
)
}
</div>
</div>
......
......@@ -48,6 +48,11 @@ export const useOrderDetail = (options: OrderDetailHookProps) => {
span: 8,
render: (text, record) => <StatusColors type={type === 'saleOrder' ? 'saleInside' : 'inside'} status={text} text={record.innerStatusName} />
},
{
label: '来源商城',
name: 'shopName',
span: 8,
},
])
useEffect(() => {
......
......@@ -82,12 +82,13 @@ const Add = () => {
okText: '立即装修',
cancelText: '稍后',
onOk: () => {
history.push(`/memberCenter/marketingAbility/activityPages/management/fixtures?id=${data.id}`);
history.push(`/memberCenter/marketingAbility/activityPages/management/fixtures?id=${data}`);
},
onCancel: () => {
history.goBack();
}
});
return
}
history.goBack();
}
......
......@@ -19,6 +19,8 @@
.body {
padding: 16px;
flex: 1;
min-width: 440px;
}
.footer {
......@@ -35,3 +37,8 @@
.visible {
width: 440px;
}
.hide {
width: 0;
}
......@@ -25,8 +25,13 @@ const Drawer: React.FC<Iprops> = (props) => {
onSubmit?.();
};
const wrapClass = cx(styles.drawer, {
[styles.visible]: visible,
[styles.hide]: !visible,
});
return (
<div className={cx(styles.drawer, { [styles.visible]: visible })}>
<div className={wrapClass}>
{
header || (
<div className={styles.header}>
......
......@@ -79,9 +79,11 @@ const EditPanel = () => {
const Component = componentType && ComponentsMap[componentType as unknown as "Advertisement"];
useEffect(() => {
if (selectedInfo) {
if (selectedInfo && (selectedInfo.props?.visible || typeof selectedInfo.props?.visible === 'undefined' )) {
setVisible(true);
return;
}
setVisible(false);
}, [selectedInfo]);
const handleOncancel = () => {
......@@ -89,7 +91,7 @@ const EditPanel = () => {
};
const dataIndex = (selectedInfo as any)?.otherProps?.dataIndex || pageConfig[selectedInfo?.parentKey]?.dataIndex || null;
const withTypeSelect = ACTIVITYS;
// const withTypeSelect = ACTIVITYS;
// const wityTypeSelectProps = dataIndex && withTypeSelect.includes(dataIndex) ? { withTypeSelect: true } : {};
const wityTypeSelectProps = {};
const typeProps = dataIndex && ACTIVITY_MAP[dataIndex] ? { activityType: ACTIVITY_MAP[dataIndex] } : {};
......
......@@ -33,8 +33,7 @@ const FirstApprovedOrder:React.FC<FirstApprovedOrderProps> = () => {
const handleSubmitBatch = async () => {
if (rowSelectionCtl.selectRow.length === 0) {
message.error('请先勾选订单')
return ;
return message.error('请先勾选订单')
}
const { code } = await run(rowSelectionCtl.selectedRowKeys.map(item => ({ orderId: item })))
if (code === 1000) {
......
......@@ -64,6 +64,7 @@ export const useProductTableChangeForPay = (ctx: ISchemaFormActions | ISchemaFor
// 请求一次并复制给支付信息
const productItem = value[0]
if(pageStatus === PageStatus.ADD) { // 新增下 需要支付信息生成支付次数
ctx.setFieldValue('payments', []) // 变动后先 清空支付信息
const shopId = ctx.getFieldValue('shopId')
const products = value.map(item => ({ productId: item.commodityId, skuId: item.productId }))
if(shopId && products?.length) {
......
import React from 'react'
import { Card, Button, Space } from 'antd'
import { Card, Button, Space, message } from 'antd'
import { StandardTable } from 'god'
import { PageHeaderWrapper } from '@ant-design/pro-layout'
import { PublicApi } from '@/services/api'
......@@ -31,6 +31,10 @@ const ReadySubmitOrder:React.FC<ReadySubmitOrderProps> = (props) => {
const { run, loading } = useHttpRequest(PublicApi.postOrderBuyerValidateSubmitBatch)
const handleBitchPush = async () => {
if (rowSelectionCtl.selectRow.length === 0) {
return message.error('请先勾选订单')
}
const { code } = await run(rowSelectionCtl.selectedRowKeys.map(item => ({ orderId: item })))
if (code === 1000) {
ref.current.reload()
......
import React from 'react'
import { Card, Button, Space } from 'antd'
import { Card, Button, Space, message } from 'antd'
import { StandardTable } from 'god'
import { PageHeaderWrapper } from '@ant-design/pro-layout'
import { PublicApi } from '@/services/api'
......@@ -30,6 +30,10 @@ const SecondApprovedOrder:React.FC<SecondApprovedOrderProps> = (props) => {
const { run, loading } = useHttpRequest(PublicApi.postOrderBuyerValidateGradeTwoBatch)
const handleSubmitBatch = async () => {
if (rowSelectionCtl.selectRow.length === 0) {
return message.error('请先勾选订单')
}
const { code } = await run(rowSelectionCtl.selectedRowKeys.map(item => ({ orderId: item })))
if (code === 1000) {
......
import React from 'react'
import { Card, Button, Space } from 'antd'
import { Card, Button, Space, message } from 'antd'
import { StandardTable } from 'god'
import { PageHeaderWrapper } from '@ant-design/pro-layout'
import { PublicApi } from '@/services/api'
......@@ -31,6 +31,10 @@ const SecondApprovedOrder:React.FC<SecondApprovedOrderProps> = (props) => {
const { run, loading } = useHttpRequest(PublicApi.postOrderVendorValidateGradeTwoBatch)
const handleSubmitBatch = async () => {
if(rowSelectionCtl.selectRow.length === 0){
return message.error('请勾选要审核的订单')
}
const { code } = await run(rowSelectionCtl.selectedRowKeys.map(item => ({ orderId: item })))
if (code === 1000) {
rowSelectionCtl.setSelectRow([])
......
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