import React, { useState, useEffect } from 'react';
import { Form, Input, Button, Icon, Select, Card, Radio, DatePicker, message, Upload } from 'antd';
import apis from '@/services/apis';
import moment from 'moment';
import router from 'umi/router';
import BuildSelect from '@/components/SelectButton/BuildSelect'
import request from '@/utils/request'
import yinhao from '@/assets/yinhao.png'
import logo from '@/assets/logo.png';
import touxiang from '@/assets/touxiang.jpg';
import poster1 from '@/assets/poster1.png';
import poster2 from '@/assets/poster2.png';
import xiaochengxu from '@/assets/xiaochengxu.png';
import AuthButton from '@/components/AuthButton';
import Prompt from 'umi/prompt';
const { MonthPicker, RangePicker, WeekPicker } = DatePicker;
const { TextArea } = Input;
const formItemLayout = {
labelCol: { span: 6 },
wrapperCol: { span: 14 },
};
const cancelPage = () => {
router.go('-1')
}
const getSignList = dynamicId => {
router.push({
pathname: '/activity/SignList',
query: {
dynamicId,
},
});
}
const newQrcode = row => {
const x = new XMLHttpRequest();
const resourceUrl = row.qrCode
x.open('GET', resourceUrl, true);
x.responseType = 'blob';
x.onload = function (e) {
const url = window.URL.createObjectURL(x.response)
const a = document.createElement('a');
a.href = url;
a.style.display = 'none'
a.download = '活动二维码.png';
a.click();
}
x.send();
}
const BasicForm = props => {
const detailData = props.detailData || {}
const radioOnChange = e => {
// setIsEnlist(e.target.value)
}
const { dynamicId } = props
const handleSubmit = e => {
e.preventDefault();
props.form.validateFields((err, values) => {
if (!err) {
console.log('Received values of form: ', values);
const { activityTime, signupTime } = values
const [startDate, endDate] = activityTime
values.startDate = moment(startDate).format('YYYY-MM-DD HH:mm');
values.endDate = moment(endDate).format('YYYY-MM-DD HH:mm');
if (signupTime) {
const [enlistStart, enlistEnd] = signupTime
values.enlistStart = moment(enlistStart).format('YYYY-MM-DD HH:mm');
values.enlistEnd = moment(enlistEnd).format('YYYY-MM-DD HH:mm');
}
console.log('submit data --->', values)
if (dynamicId) {
values.dynamicId = dynamicId
request({ ...apis.activity.update, data: values }).then(data => {
message.info('保存成功')
// router.go(-1)
}).catch((err) => {
message.info(err.msg || err.message)
})
} else {
request({ ...apis.activity.add, data: { ...values } }).then((data) => {
message.info('保存成功')
router.push({
pathname: '/activity/editActivity',
query: {
dynamicId: data.dynamicId,
},
});
// router.go(-1)
}).catch((err) => {
message.info(err.msg || err.message)
})
}
}
});
}
const { getFieldDecorator } = props.form;
return (
<>
{getFieldDecorator('buildingId', {
initialValue: detailData.buildingId,
rules: [
{
required: true,
message: '请选择所属项目',
},
],
})()}
{detailData.title}
{`${moment(detailData.startDate).format('YYYY-MM-DD HH:mm')} —— ${moment(detailData.endDate).format('YYYY-MM-DD HH:mm')}`}
{detailData.address}
{detailData.personNum}
{detailData.pvNum}
{detailData.shareNum}
{detailData.saveNum}
{detailData.maxEnlistByPerson}
{`${moment(detailData.enlistStart).format('YYYY-MM-DD HH:mm')} —— ${moment(detailData.enlistEnd).format('YYYY-MM-DD HH:mm')}`}
{detailData.heavy}
>
)
}
const Basic = Form.create({ name: 'BasicForm' })(BasicForm);
const Poster = (props) => {
const { dynamicId } = props
const [inputValue, changeInput] = useState('')
const [textAreaValue, changeTextArea] = useState('')
const [imgValue, changeImg] = useState('')
const [posterId, setPosterId] = useState('')
if (dynamicId) {
console.log(dynamicId, 'dynamicId')
useEffect(() => {
request({ ...apis.activity.poster, params: { targetId: dynamicId, targetType: 'activity' } }).then((data) => {
console.log(data, "2222")
if (data.length > 0) {
setPosterId(data[0].posterId)
changeImg(data[0].posterImg)
changeTextArea(data[0].posterDescription)
changeInput(data[0].posterTitle)
}
}).catch((err) => {
message.info(err.msg || err.message)
})
getMiniappName()
}, [])
} else {
getMiniappName()
}
// 获取小程序名称
const [miniappName, setMiniappName] = useState('')
function getMiniappName() {
request({ ...apis.building.getMiniappName }).then(res => {
console.log(res, "0000000000000")
setMiniappName(res)
})
}
const submitPoster = () => {
if (dynamicId) {
if (posterId) {
request({ ...apis.activity.updatePoster, urlData: { id: posterId }, data: { targetId: dynamicId, targetType: 'activity', posterImg: imgValue, posterTitle: inputValue, posterDescription: textAreaValue }, }).then((data) => {
message.info("保存成功")
}).catch((err) => {
message.info(err.msg || err.message)
})
} else {
request({ ...apis.activity.addPoster, data: { targetId: dynamicId, targetType: 'activity', posterImg: imgValue, posterTitle: inputValue, posterDescription: textAreaValue }, }).then((data) => {
setPosterId(data.posterId)
message.info("保存成功")
}).catch((err) => {
message.info(err.msg || err.message)
})
}
} else {
message.warn("请先保存基本信息数据")
}
}
return
喵喵
邀您参与
2019.09.21
{inputValue ? inputValue : '海报标题'}
{textAreaValue ? textAreaValue : '海报描述'}
长按识别小程序码
进入{miniappName || '置业V顾问'}报名活动
海报模板
{/*
建议图片尺寸:640*670px,比例64:67,格式:jpg,用于普通活动海报
*/}
{/*
*/}
}
const Share = (props) => {
const { dynamicId } = props
const [inputValue, changeInput] = useState('')
const [imgValue, changeImg] = useState('')
const [shareContentId, setShareContentId] = useState('')
useEffect(() => {
if (dynamicId) {
request({ ...apis.activity.shareContent, params: { targetId: dynamicId, targetType: 'activity' }, }).then((data) => {
if (data.length > 0) {
setShareContentId(data[0].shareContentId)
changeImg(data[0].shareContentImg)
changeInput(data[0].shareContentTitle)
}
}).catch((err) => {
message.info(err.msg || err.message)
})
}
}, [])
const submitShare = () => {
if (dynamicId) {
if (shareContentId) {
request({ ...apis.activity.updateShareContent, urlData: { id: shareContentId }, data: { targetId: dynamicId, shareContentType: 'activity', shareContentImg: imgValue, shareContentTitle: inputValue }, }).then((data) => {
message.info("保存成功")
}).catch((err) => {
message.info(err.msg || err.message)
})
} else {
request({ ...apis.activity.addShareContent, data: { targetId: dynamicId, shareContentType: 'activity', shareContentImg: imgValue, shareContentTitle: inputValue }, }).then((data) => {
setShareContentId(data.shareContentId)
message.info("保存成功")
}).catch(err => {
message.info(err.msg || err.message)
})
}
} else {
message.warn("请先保存基本信息数据")
}
}
return
分享模板
橙蕉互动
{inputValue ? inputValue : '置业V客厅 精准获客平台'}
分享标题
{inputValue === '' ? '无' :
{inputValue}}
活动分享图
{imgValue === '' ? '无' :

}
{/*
*/}
}
/**
*
*
* @param {*} props
* @returns
*/
const Edit = props => {
const [tab, changeTab] = useState('basic')
const { dynamicId } = props.location.query
const [detailData, setDetailData] = useState(false)
const getDynamicData = dynamicId => {
request({ ...apis.activity.details, params: { dynamicId } }).then((data) => {
console.log(data)
data.activityTime = [moment(data.startDate), moment(data.endDate)]
data.signupTime = [moment(data.enlistStart), moment(data.enlistEnd)]
setDetailData(data)
})
}
useEffect(() => {
if (dynamicId) {
getDynamicData(dynamicId);
}
}, [])
return (
changeTab(e.target.value)}>
基本信息
海报图片
分享设置
{tab === 'basic' &&
}
{tab === 'poster' &&
}
{tab === 'share' &&
}
{(detailData.activityStatus === 0 || detailData.activityStatus === 2) && }
{(detailData.activityStatus === 0 || detailData.activityStatus === 2) && {}}
);
}
export default Edit