Jelajahi Sumber

Merge branch 'wangjianxin' of http://git.zanxiangnet.com/wjx/ad-manage into develop

wjx 2 tahun lalu
induk
melakukan
f3606b7b9d

+ 12 - 5
src/pages/launchSystemNew/launchManage/createAd/ad/modal/leadAd.tsx

@@ -11,6 +11,7 @@ import { createSysAdgroups } from '@/services/launchAdq/localAd';
 import AdPositionList from './adPositionList';
 import BidAdjustment from './bidAdjustment';
 import { useModel } from 'umi';
+import { RangePickerProps } from 'antd/lib/date-picker';
 const { RangePicker }: { RangePicker: any } = DatePicker;
 let DatePickers: any = DatePicker
 interface Props {
@@ -270,7 +271,7 @@ function LeadAdModal(props: Props) {
         } else {
             form.setFieldsValue({ 
                 adgroupName: '广告_销售线索_' + moment().format('YYYYMMDDhhmmss') + '_' + currentUser.userId,
-                date: moment().startOf('day').add(4, 'M'),
+                date: moment().startOf('day').add(2, 'M'),
                 optimizationGoal: "OPTIMIZATIONGOAL_ECOMMERCE_ORDER",
                 bidStrategy: "BID_STRATEGY_TARGET_COST",
                 bidAmount: '1000'
@@ -365,6 +366,12 @@ function LeadAdModal(props: Props) {
         })
     }
 
+    /** 禁止选择以前时间 */
+    const disabledDate: RangePickerProps['disabledDate'] = current => {
+        // Can not select days before today and today
+        return current && current < moment().startOf('day');
+    };
+
     return <Modal
         visible={visible}
         title={type === 'add' ? '新建广告' : type === 'look' ? '广告详情' : '编辑广告'}
@@ -486,10 +493,10 @@ function LeadAdModal(props: Props) {
             <Form.Item label={<strong>投放日期</strong>} name='dateType'>
                 <Radio.Group onChange={(e) => {
                     if (e.target.value === "1") {
-                        form.setFieldsValue({ date: [moment().startOf('day').add(4, 'M'), moment().startOf('day').add(12, 'M')] })
+                        form.setFieldsValue({ date: [moment().startOf('day').add(2, 'M'), moment().startOf('day').add(5, 'M')] })
                     }
                     if (e.target.value === "2") {
-                        form.setFieldsValue({ date: moment().startOf('day').add(4, 'M') })
+                        form.setFieldsValue({ date: moment().startOf('day').add(2, 'M') })
                     }
                 }}>
                     <Radio.Button value="1">选择开始与结束日期</Radio.Button>
@@ -499,9 +506,9 @@ function LeadAdModal(props: Props) {
             {/* 投放日期的不同展示不同的日期选择 */}
             {
                 dateType === '1' ? <Form.Item name='date' rules={[{ required: true, message: '请选择日期' }]}>
-                    <RangePicker style={{ marginLeft: 177 }}></RangePicker>
+                    <RangePicker style={{ marginLeft: 177 }} disabledDate={disabledDate}></RangePicker>
                 </Form.Item> : <Form.Item name='date' style={{ marginLeft: 177 }} rules={[{ required: true, message: '请选择日期' }]}>
-                    <DatePickers />
+                    <DatePickers disabledDate={disabledDate}/>
                 </Form.Item>
             }
             <Form.Item label={<strong>投放时段</strong>}>

+ 12 - 5
src/pages/launchSystemNew/launchManage/createAd/ad/modal/wechat.tsx

@@ -12,6 +12,7 @@ import AdPositionList from './adPositionList';
 import { siteSetData, SiteSetPackageDataProps } from './leadAd';
 import BidAdjustment from './bidAdjustment';
 import { useModel } from 'umi';
+import { RangePickerProps } from 'antd/lib/date-picker';
 const { RangePicker }: { RangePicker: any } = DatePicker;
 let DatePickers: any = DatePicker
 interface Props {
@@ -251,7 +252,7 @@ function WeChatAdModal(props: Props) {
         } else {
             form.setFieldsValue({
                 adgroupName: '广告_微信朋友圈_' + moment().format('YYYYMMDDhhmmss') + '_' + currentUser.userId,
-                date: moment().startOf('day').add(4, 'M'),
+                date: moment().startOf('day').add(2, 'M'),
                 optimizationGoal: "OPTIMIZATIONGOAL_ECOMMERCE_ORDER",
                 bidStrategy: "BID_STRATEGY_TARGET_COST",
                 bidAmount: '1000'
@@ -346,6 +347,12 @@ function WeChatAdModal(props: Props) {
         })
     }
 
+    /** 禁止选择以前时间 */
+    const disabledDate: RangePickerProps['disabledDate'] = current => {
+        // Can not select days before today and today
+        return current && current < moment().startOf('day');
+    };
+
     return <Modal
         visible={visible}
         title={type === 'add' ? '新建广告' : type === 'look' ? '广告详情' : '编辑广告'}
@@ -467,10 +474,10 @@ function WeChatAdModal(props: Props) {
             <Form.Item label={<strong>投放日期</strong>} name='dateType'>
                 <Radio.Group onChange={(e) => {
                     if (e.target.value === "1") {
-                        form.setFieldsValue({ date: [moment().startOf('day').add(4, 'M'), moment().startOf('day').add(12, 'M')] })
+                        form.setFieldsValue({ date: [moment().startOf('day').add(2, 'M'), moment().startOf('day').add(5, 'M')] })
                     }
                     if (e.target.value === "2") {
-                        form.setFieldsValue({ date: moment().startOf('day').add(4, 'M') })
+                        form.setFieldsValue({ date: moment().startOf('day').add(2, 'M') })
                     }
                 }}>
                     <Radio.Button value="1">选择开始与结束日期</Radio.Button>
@@ -480,9 +487,9 @@ function WeChatAdModal(props: Props) {
             {/* 投放日期的不同展示不同的日期选择 */}
             {
                 dateType === '1' ? <Form.Item name='date' rules={[{ required: true, message: '请选择日期' }]}>
-                    <RangePicker style={{ marginLeft: 177 }}></RangePicker>
+                    <RangePicker style={{ marginLeft: 177 }} disabledDate={disabledDate}></RangePicker>
                 </Form.Item> : <Form.Item name='date' style={{ marginLeft: 177 }} rules={[{ required: true, message: '请选择日期' }]}>
-                    <DatePickers />
+                    <DatePickers disabledDate={disabledDate}/>
                 </Form.Item>
             }
             <Form.Item label={<strong>投放时段</strong>}>

+ 19 - 0
src/pages/launchSystemNew/launchManage/createAd/index.tsx

@@ -28,6 +28,7 @@ import CustomerServiceModal from "../../components/customerServiceModal"
 import { getTaskDetailsApi } from "@/services/launchAdq/taskList"
 import CreativeCL from "./creativeCL"
 import { groupBy } from "@/utils/utils"
+import moment from "moment"
 import { getAccountListApi, getGroupListApi } from "@/services/launchAdq/subgroup"
 
 const CreateAd: React.FC = () => {
@@ -359,6 +360,14 @@ const CreateAd: React.FC = () => {
                         type2Data['model'] = 'corres'
                     }
                 }
+                if (moment(sysAdgroup?.beginDate) < moment()) {
+                    sysAdgroup.beginDate = moment().format('YYYY-MM-DD')
+                    message.warning('请注意,检测投放开始日期小于今天,以自动改成今天,如需修改,请重新设置')
+                }
+                if (moment(sysAdgroup?.endDate) < moment()) {
+                    sysAdgroup.endDate = moment().format('YYYY-MM-DD')
+                    message.warning('请注意,检测投放结束日期小于今天,以自动改成今天,如需修改,请重新设置')
+                }
                 setQueryForm({
                     ...queryForm,
                     ...type2Data,
@@ -383,6 +392,16 @@ const CreateAd: React.FC = () => {
             let adqAdData = localStorage.getItem('ADQAD')
             if (adqAdData) {
                 const { queryForm, accountCreateLogs } = JSON.parse(adqAdData)
+                if (queryForm?.sysAdgroup) {
+                    if (moment(queryForm?.sysAdgroup?.beginDate) < moment()) {
+                        queryForm.sysAdgroup.beginDate = moment().format('YYYY-MM-DD')
+                        message.warning('请注意,检测投放开始日期小于今天,已自动改成今天,如需修改,请重新设置')
+                    }
+                    if (moment(queryForm?.sysAdgroup?.endDate) < moment()) {
+                        queryForm.sysAdgroup.endDate = moment().format('YYYY-MM-DD')
+                        message.warning('请注意,检测投放结束日期小于今天,已自动改成今天,如需修改,请重新设置')
+                    }
+                }
                 setQueryForm({ ...queryForm })
                 setAccountCreateLogs(accountCreateLogs)
             }