|
|
|
@ -1,6 +1,6 @@
|
|
|
|
|
import React, { useRef } from 'react';
|
|
|
|
|
import React, { useRef, useState } from 'react';
|
|
|
|
|
import { DrawerForm, ProFormInstance, ProFormSelect, ProFormText, ProFormUploadButton } from '@ant-design/pro-components';
|
|
|
|
|
import { message } from 'antd';
|
|
|
|
|
import { message, Select } from 'antd';
|
|
|
|
|
import Upload, { RcFile } from 'antd/es/upload';
|
|
|
|
|
import Constants from '@/constants';
|
|
|
|
|
export type FormValueType = {
|
|
|
|
@ -18,8 +18,21 @@ export type UpdateBannerFormProps = {
|
|
|
|
|
values: Partial<API.PbcBanner_>;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
const { Option } = Select;
|
|
|
|
|
|
|
|
|
|
const UpdateBannerForm: React.FC<UpdateBannerFormProps> = (props) => {
|
|
|
|
|
const formRef = useRef<ProFormInstance>();
|
|
|
|
|
const [linkType, setLinkType] = useState(props.values.pbcLink && props.values.pbcLink.includes('||') ? props.values.pbcLink.split('||')[0] + '||' : 'web||');
|
|
|
|
|
|
|
|
|
|
const selectBefore = (
|
|
|
|
|
<Select defaultValue={linkType} onChange={(value) => {
|
|
|
|
|
setLinkType(value);
|
|
|
|
|
}}>
|
|
|
|
|
<Option value="web||">页面链接</Option>
|
|
|
|
|
<Option value="home||">商家主页</Option>
|
|
|
|
|
</Select>
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
return (
|
|
|
|
|
<DrawerForm
|
|
|
|
|
width={640}
|
|
|
|
@ -40,7 +53,7 @@ const UpdateBannerForm: React.FC<UpdateBannerFormProps> = (props) => {
|
|
|
|
|
pbcBannerImage = value.pbcBannerImage[0].response.data;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return props.onSubmit({ ...value, pbcBannerImage, pbcId: props.values.pbcId })
|
|
|
|
|
return props.onSubmit({ ...value, pbcBannerImage, pbcId: props.values.pbcId, pbcLink: value.pbcLink ? linkType + value.pbcLink : '' })
|
|
|
|
|
}}
|
|
|
|
|
drawerProps={{
|
|
|
|
|
destroyOnClose: true,
|
|
|
|
@ -52,7 +65,7 @@ const UpdateBannerForm: React.FC<UpdateBannerFormProps> = (props) => {
|
|
|
|
|
initialValues={{
|
|
|
|
|
pbcTitle: props.values.pbcTitle,
|
|
|
|
|
pbcBannerType: props.values.pbcBannerType ? props.values.pbcBannerType + '' : null,
|
|
|
|
|
pbcLink: props.values.pbcLink,
|
|
|
|
|
pbcLink: props.values.pbcLink && props.values.pbcLink.includes('||') ? props.values.pbcLink.split('||')[1] : '',
|
|
|
|
|
pbcBannerImage: props.values.pbcBannerImage ? [{
|
|
|
|
|
uid: '-1',
|
|
|
|
|
name: props.values.pbcBannerImage.substring(props.values.pbcBannerImage.lastIndexOf('/') + 1),
|
|
|
|
@ -133,10 +146,11 @@ const UpdateBannerForm: React.FC<UpdateBannerFormProps> = (props) => {
|
|
|
|
|
rules={[{ required: true, message: '请选择类型' }]}
|
|
|
|
|
/>
|
|
|
|
|
<ProFormText
|
|
|
|
|
placeholder={'请输入链接'}
|
|
|
|
|
placeholder={linkType === 'web||' ? '请输入页面链接' : '请输入商家id'}
|
|
|
|
|
label="链接"
|
|
|
|
|
width="md"
|
|
|
|
|
name="pbcLink"
|
|
|
|
|
addonBefore={selectBefore}
|
|
|
|
|
/>
|
|
|
|
|
{/* <ProFormDigit
|
|
|
|
|
placeholder={'请输入排序'}
|
|
|
|
|