shenwu 2 år sedan
förälder
incheckning
c973ef1022

+ 4 - 3
src/pages/launchSystemNew/launchManage/createAd/creative/index.tsx

@@ -58,11 +58,11 @@ function Creative(props: Props) {
                     adqPageArr = adqPageArr?.filter((item, index) => index.toString() !== targetKey)
                     pageArr = pageArr?.filter((item, index) => index.toString() !== targetKey)
                 } else {
-                    arr = [{}]
+                    arr = [{ sysAdcreative: '' }]
                     adqPageArr = []
                     pageArr = []
                 }
-                set_targetKey((arr.length - 1).toString())
+                set_targetKey((Number(targetKey) === 0 ? 0 : Number(targetKey) - 1).toString())
                 setQueryForm({ ...queryForm, taskMediaMaps: arr, pageList: pageArr, adqPageList: adqPageArr })
             }
         }
@@ -70,7 +70,8 @@ function Creative(props: Props) {
     return <Col span={12} className={style.conRightBorder}>
         <div className={style.top}>创意基本信息
             {queryForm.taskMediaMaps && queryForm.taskMediaMaps?.length > 0 && <a onClick={() => {
-                setQueryForm({ ...queryForm, taskMediaMaps: [], sysAdcreativeId: undefined,pageList:[],adqPageList:[] })
+                setQueryForm({ ...queryForm, taskMediaMaps: [], sysAdcreativeId: undefined, pageList: [], adqPageList: [] })
+                set_targetKey('0')
             }}>全部清空</a>}
         </div>
         <div className={style.center}>

+ 16 - 8
src/pages/launchSystemNew/launchManage/createAd/creative/modal/index.tsx

@@ -360,7 +360,7 @@ function CreativePup(props: Props) {
                 set_adcreative_template_list(newArr)
             })
         }
-    }, [siteSet, promotedObjectType, form])
+    }, [siteSet, promotedObjectType])
     // 获取创意形式详情
     const getTemplate = useCallback((id: any, ok?: any) => {
         // CAMPAIGN_TYPE_NORMAL
@@ -414,7 +414,10 @@ function CreativePup(props: Props) {
     const typeChange = useCallback((adcreativeElementsType) => {
         if (adcreativeElementsType && adcreative_template_list?.length > 0) {
             let adcreativeTemplateIdArr = adcreative_template_list?.filter(item => item.adcreativeTemplateStyle === adcreativeElementsType)
+            console.log('typeChange====>', adcreativeTemplateIdArr[0].adcreativeTemplateId)
+            getTemplate(adcreativeTemplateIdArr[0].adcreativeTemplateId)
             form.setFieldsValue({ adcreativeTemplateId: adcreativeTemplateIdArr[0].adcreativeTemplateId })
+
         }
     }, [adcreative_template_list])
 
@@ -466,7 +469,7 @@ function CreativePup(props: Props) {
             // 视频结束页 end_page
             if (adcreative_template.adcreativeElements.some((item: { name: string }) => item.name === 'end_page')) {
                 // let endPageType =adcreative_template?.adcreativeElements?.filter(item=>item.name === 'end_page_type')[0]?.enumProperty?.enumeration
-                if(!ok){
+                if (!ok) {
                     values = { ...values, endPageType: 'END_PAGE_AVATAR_NICKNAME_HIGHLIGHT' }
                 }
                 states = { ...states, sp_show: true }
@@ -516,7 +519,7 @@ function CreativePup(props: Props) {
     useEffect(() => {
         if (!infoSet && dataInfo && adcreative_template_list?.length > 0) {
             let { adcreativeName, adcreativeTemplateId, conversionDataType, conversionTargetType, linkNameType, linkPageType, pageType, promotedObjectType, siteSet, adcreativeElements, overrideCanvasHeadOption, linkPageSpec } = dataInfo
-            let { description, imageUrl, title, videoUrl, imageUrlList, endPage, shortVideoStruct,brand } = adcreativeElements
+            let { description, imageUrl, title, videoUrl, imageUrlList, endPage, shortVideoStruct, brand } = adcreativeElements
             let obj: any = {
                 adcreativeName,
                 siteSet,
@@ -558,13 +561,13 @@ function CreativePup(props: Props) {
                 obj = { ...obj, overrideCanvasHeadOption }
             }
             if (linkPageSpec?.pageUrl) {
-                obj = { ...obj, pageUrl:linkPageSpec?.pageUrl }
+                obj = { ...obj, pageUrl: linkPageSpec?.pageUrl }
             }
             if (linkPageSpec?.miniProgramSpec && linkPageSpec?.miniProgramSpec?.miniProgramPath) {
-                obj = { ...obj, miniProgramPath:linkPageSpec?.miniProgramSpec?.miniProgramPath, miniProgramId:linkPageSpec?.miniProgramSpec?.miniProgramId }
+                obj = { ...obj, miniProgramPath: linkPageSpec?.miniProgramSpec?.miniProgramPath, miniProgramId: linkPageSpec?.miniProgramSpec?.miniProgramId }
             }
-            if(brand && brand.brandImg && brand.brandName){
-                obj={...obj,brand:brand.brandName+'_'+brand.brandImg,}
+            if (brand && brand.brandImg && brand.brandName) {
+                obj = { ...obj, brand: brand.brandName + '_' + brand.brandImg, }
             }
             if (videoUrl) {
                 setVideoMaterialConfig({
@@ -610,6 +613,11 @@ function CreativePup(props: Props) {
             form.setFieldsValue(obj)
             set_infoSet(true)
         }
+        // 不是数据回填首次打开界面选中视频
+        if (!infoSet && !dataInfo && adcreative_template_list?.length > 0) {
+            typeChange('视频')
+            set_infoSet(true)
+        }
     }, [dataInfo, adcreative_template_list, adcreative_template, infoSet])
     // 生成视频封面图
     const videoToImgs = useCallback(() => {
@@ -886,7 +894,7 @@ function CreativePup(props: Props) {
                         }
                         {//过滤了不必传和品牌名称,品牌标识图(外部传)短视频结构(组装使用)
                             adcreative_template?.adcreativeElements?.filter(item => item.required && item.name === 'description').map(item => {
-                                let maxNum = adcreativeTemplateId === 1708 ? pupState.xd_show ? 10 : item.restriction.textRestriction.maxLength : item.restriction.textRestriction.maxLength
+                                let maxNum = adcreativeTemplateId === 1708 || adcreativeTemplateId === 1707 ? pupState.xd_show ? 10 : item.restriction.textRestriction.maxLength : item.restriction.textRestriction.maxLength
                                 return <div key={item.fieldType}>
                                     <Form.Item label={<strong>{item.description}</strong>} className={'my_description'}>
                                         <Form.Item name={item.name} noStyle rules={[{ required: true, pattern: RegExp(item.restriction.textRestriction.textPattern?.replace(/\+/ig, `{1,${maxNum}}`)), message: '请输入正确的' + item.description }]}>

+ 4 - 2
src/pages/launchSystemNew/launchManage/createAd/index.tsx

@@ -180,6 +180,8 @@ const CreateAd: React.FC = () => {
             message.error('请选择落地页')
             return
         }
+        let sitSet = queryForm.sysAdgroup.sitSet
+        let taskMediaMaps = queryForm.taskMediaMaps
         let data: any[] = []
         accountCreateLogs.forEach((item: any) => {
             queryForm.taskMediaMaps?.forEach((task, index) => {
@@ -571,9 +573,9 @@ const CreateAd: React.FC = () => {
                                             }
                                            
                                         }}>{queryForm?.taskMediaMaps && queryForm?.taskMediaMaps[targetKey]?.sysPageId ? '修改' : '选择落地页'}</Button>
-                                        {accountCreateLogs?.length > 0  ?  <Button type="link" onClick={() => { setPageVisible(true) }}>云端落地页</Button> : <Tooltip title="请先选择媒体账户">
+                                        {/* {accountCreateLogs?.length > 0  ?  <Button type="link" onClick={() => { setPageVisible(true) }}>云端落地页</Button> : <Tooltip title="请先选择媒体账户">
                                             <Button type="link">云端落地页</Button>
-                                        </Tooltip>}
+                                        </Tooltip>} */}
                                     </> : <Tooltip title="请先设置创意">
                                         <Button type="link"><span>选择落地页</span></Button>
                                     </Tooltip>}

+ 1 - 1
src/pages/launchSystemNew/launchManage/taskList/index.tsx

@@ -50,7 +50,7 @@ const TaskList: React.FC = () => {
             ajax={getTaskList}
             dataSource={getTaskList?.data?.data?.records}
             loading={getTaskList?.loading}
-            scroll={{ y: 600 }}
+            scroll={{ y: 600,x:1500}}
             total={getTaskList?.data?.data?.total}
             page={getTaskList?.data?.data?.current}
             pageSize={getTaskList?.data?.data?.size}

+ 1 - 32
src/pages/launchSystemNew/launchManage/taskList/logTableConfig.tsx

@@ -38,38 +38,6 @@ function tableConfig(copyCreative: (data: any) => void, callback: (data: any) =>
                 </Space>
             }
         },
-        {
-            title: '广告ID',
-            dataIndex: 'adgroupIds',
-            key: 'adgroupIds',
-            align: 'center',
-            width: 100,
-            render: (a: any[]) => {
-                return <Space>
-                    {
-                        a?.map(id => {
-                            return <a>{id}</a>
-                        })
-                    }
-                </Space>
-            }
-        },
-        {
-            title: '创意ID',
-            dataIndex: 'adcreativeIds',
-            key: 'adcreativeIds',
-            align: 'center',
-            width: 100,
-            render: (a: any[]) => {
-                return <Space>
-                    {
-                        a?.map(id => {
-                            return <a>{id}</a>
-                        })
-                    }
-                </Space>
-            }
-        },
         {
             title: '商品ID',
             dataIndex: 'productId',
@@ -163,6 +131,7 @@ function tableConfig(copyCreative: (data: any) => void, callback: (data: any) =>
             key: 'failMsgs',
             align: 'left',
             ellipsis: true,
+            width: 200,
             render: (a: any, b: any) => {
                 return <a style={{ fontSize: "12px" }} onClick={() => copy(a)}>{a || '--'}</a>
             }

+ 1 - 1
src/services/launchAdq/enum.ts

@@ -1,7 +1,7 @@
 /**广告组推广目标类型*/
 export enum PromotedObjectType {
   PROMOTED_OBJECT_TYPE_WECHAT_OFFICIAL_ACCOUNT = '微信公众号',
-  PROMOTED_OBJECT_TYPE_LEAD_AD = '销售线索',
+  // PROMOTED_OBJECT_TYPE_LEAD_AD = '销售线索',
   // PROMOTED_OBJECT_TYPE_LINK = '网页',
   // PROMOTED_OBJECT_TYPE_LINK_WECHAT = '品牌网页',
   // PROMOTED_OBJECT_TYPE_ECOMMERCE = '商品推广',