Sfoglia il codice sorgente

头条自动投放账户配置新增深度优化

liubei@c-top.com.cn 3 anni fa
parent
commit
97b606074c

+ 126 - 6
src/views/modules/account-config/components/configuration-modal.vue

@@ -292,6 +292,7 @@
                             <a-radio-button value="a">系统优选广告位</a-radio-button>
                             <a-radio-button value="b">首选媒体</a-radio-button>
                             <!-- <a-radio-button value="c">按场景指定位置</a-radio-button> -->
+                            <a-radio-button value="d">通投智选</a-radio-button>
                         </a-radio-group>
                     </a-form-model-item>
                     <div class="adver-position-radio">
@@ -793,7 +794,34 @@
                                 :step="0.01"
                                 placeholder="请输入"
                                 @blur="handleFloatingInterval"
-                            /> 元
+                            /> 
+                            <span>元</span>
+                        </a-form-model-item>
+                    </div>
+                    <div v-if="deepExternalShow">
+                        <a-form-model-item label="深度优化方式" prop="deepExternal">
+                            <a-radio-group @change="adDeepBidTypeChange" v-model="configForm.adDeepBidType" button-style="solid">
+                                <a-radio-button value="DEEP_BID_MIN" >自定义双出价</a-radio-button>
+                                <a-radio-button value="AUTO_MIN_SECOND_STAGE" >自动优化</a-radio-button>
+                            </a-radio-group>
+                        </a-form-model-item>
+                         <a-form-model-item v-if="adDeepCpabidShow" label="深度转化出价" prop="adDeepCpabid">
+                            <a-input-number
+                            class="common-input"
+                            v-model="configForm.adDeepCpabid"
+                            :min="0.1"
+                            :max="10000"
+                            :step="0.01"
+                            placeholder="请输入"
+                        /> 元
+                            <!-- <a-input-number
+                                class="common-input"
+                                v-model="configForm.adDeepCpabid"
+                                :min="0.1"
+                                :max="10000"
+                                :step="0.01"
+                                placeholder="请输入"
+                            /> 元 -->
                         </a-form-model-item>
                     </div>
                 </div>
@@ -1127,7 +1155,7 @@
                         </a-form-model-item>
                     </div>
                     <div v-else>
-                        <a-form-model-item label="创意内容">
+                        <a-form-model-item label="创意内容" v-if="creativeImageShow">
                             <a-radio-group v-model="configForm.creativeImageMode" button-style="solid"  @change="handleChangeCreativeType">
                                 <a-radio-button value="CREATIVE_IMAGE_MODE_VIDEO_VERTICAL">竖版视频</a-radio-button>
                                 <a-radio-button value="CREATIVE_IMAGE_MODE_VIDEO" :disabled="pictureStatus">横版视频</a-radio-button>
@@ -1136,6 +1164,9 @@
                                 <a-radio-button value="CREATIVE_IMAGE_MODE_LARGE_VERTICAL" :disabled="pictureStatus">大图竖图</a-radio-button>
                             </a-radio-group>
                         </a-form-model-item>
+                        <a-form-model-item label="创意内容" v-else="creativeImageShow">      
+                                <radio-check v-model="configForm.creativeImageMode" :options="creativeImageModeArr"></radio-check>
+                        </a-form-model-item>
                         <a-form-model-item label="创意组件" prop="componentId" key="componentIdkey" 
                         v-if="configForm.creativeImageMode!='CREATIVE_IMAGE_MODE_LARGE'&&configForm.creativeImageMode!='CREATIVE_IMAGE_MODE_LARGE_VERTICAL'&&configForm.adverPosition != 'a'">
                             <a-input
@@ -1635,6 +1666,25 @@ export default {
                     label: '50岁+'
                 }
             ],
+            creativeImageModeArr:[
+                {
+                    value:"CREATIVE_IMAGE_MODE_VIDEO_VERTICAL",
+                    label:'竖版视频'
+                },{
+                    value:"CREATIVE_IMAGE_MODE_VIDEO",
+                    label:'横版视频'
+                },{
+                    value:"CREATIVE_IMAGE_MODE_LARGE",
+                    label:'大图横图'
+                },{
+                    value:"CREATIVE_IMAGE_MODE_SMALL",
+                    label:'小图',
+                    disabled:true
+                },{
+                    value:"CREATIVE_IMAGE_MODE_LARGE_VERTICAL",
+                    label:"大图竖图"
+                }
+            ],
             fileList: [],
             isCoverImgDiv: false,
             imageUrl: '',
@@ -1723,9 +1773,12 @@ export default {
                 creativeActionText: [{required: true, message: '请选择', trigger: 'change'}],
                 adConvertType: [{required: true, message: '请选择', trigger: 'change'}],
                 adConvertId: [{required: true, message: '请选择', trigger: 'change'}],
-                creativeThirdIndustryIds: [{required: true, message: '请选择', trigger: 'change'}]
+                creativeThirdIndustryIds: [{required: true, message: '请选择', trigger: 'change'}],
+                adDeepCpabid:[ {required: true, message: '请输入', trigger: 'blur'},]
             },
             configForm: {
+                adDeepBidType:'DEEP_BID_MIN',
+                adDeepCpabid:0,
                 copywritingNumber: undefined,
                 marketingPurpose: 'CONVERSION',
                 componentId: '',
@@ -1829,7 +1882,11 @@ export default {
             originalityStatus: true, // 创意状态
             pictureStatus: false,
             isTomatoStatus: false,
-            isTAwemeStatus: true
+            isTAwemeStatus: true,
+            creativeImageShow:true,
+            deepExternalArr:[],
+            deepExternalShow:false,
+            adDeepCpabidShow:true
         };
     },
     computed: {
@@ -2705,20 +2762,36 @@ export default {
                 this.isTAwemeStatus = true;
                 this.originalityStatus = true;
                 this.pictureStatus = false;
+                this.creativeImageShow = true;
+                this.configForm.creativeImageMode = 'CREATIVE_IMAGE_MODE_VIDEO_VERTICAL';
             }
             else if (e.target.value === 'b') {
                 this.configForm.radioChangeValue = '';
                 this.pictureStatus = true;
                 this.originalityStatus = true;
+                this.creativeImageShow = true;
+                this.configForm.creativeImageMode = 'CREATIVE_IMAGE_MODE_VIDEO_VERTICAL';
             }
             else if (e.target.value === 'c') {
                 this.configForm.checkboxChangeValue = [];
                 this.isTAwemeStatus = true;
                 this.originalityStatus = true;
                 this.pictureStatus = false;
+                this.creativeImageShow = true;
+                this.configForm.creativeImageMode.push('CREATIVE_IMAGE_MODE_VIDEO_VERTICAL');
+            }
+            else if(e.target.value === 'd'){
+                this.configForm.radioChangeValue = '';
+                this.configForm.checkboxChangeValue = [];
+                this.isTAwemeStatus = true;
+                this.originalityStatus = true;
+                this.pictureStatus = false;
+                this.creativeImageShow = false;
+                this.configForm.creativeImageMode = [];
+                this.configForm.creativeImageMode.push('CREATIVE_IMAGE_MODE_VIDEO_VERTICAL');
             }
             this.configForm.adUnionVideoType = '';
-            this.configForm.creativeImageMode = 'CREATIVE_IMAGE_MODE_VIDEO_VERTICAL';
+            // this.configForm.creativeImageMode = 'CREATIVE_IMAGE_MODE_VIDEO_VERTICAL';
             this.handleGetAdAudiencePackage();
         },
         handleAccountMode(e) {
@@ -2787,6 +2860,15 @@ export default {
             }
         },
         handleConvertChange(e) {
+            this.optimizationOption.forEach(element => {
+                if (element.convert_id == e) {
+                   if ("deep_external_actions" in element) {
+                       this.deepExternalShow = true;
+                   }else{
+                    this.deepExternalShow = false;
+                   }
+                }
+            });
             // postAction(urlAcount + `/bytedance-api/advertiser/aiBytedanceAdvertiserStrategy/readToolConvertInfo?accountId=${this.configForm.accountId}&convertId=${this.configForm.adConvertId}`)
             // .then(res=>{
             //     if(res.success){
@@ -2794,6 +2876,14 @@ export default {
             //     }
             // })
         },
+        adDeepBidTypeChange(e){
+            if (e.target.value == 'AUTO_MIN_SECOND_STAGE') {
+                this.adDeepCpabidShow = false;
+                this.configForm.adDeepCpabid = 0;
+            }else{
+                this.adDeepCpabidShow = true;
+            }
+        },
         handleGetDetailList() {
             const routeQuery = JSON.parse(localStorage.getItem('queryList'));
             getAction(urlAcount + '/bytedance-api/advertiser/aiBytedanceAdvertiserStrategy/queryById', {id: routeQuery.id})
@@ -2881,7 +2971,24 @@ export default {
                                             }
                                             this.configForm.adConvertType = updateResult[0].convert_type;
                                             this.optimizationOption = updateResult[0].external_actions;
-
+                                            this.optimizationOption.forEach(element => {
+                                                    if (element.convert_id == detailData.adConvertId) {
+                                                    if ("deep_external_actions" in element) {
+                                                        this.deepExternalShow = true;
+                                                        
+                                                    }else{
+                                                        this.deepExternalShow = false;
+                                                    }
+                                                    }
+                                                });
+                                                if (detailData.adDeepBidType == 'AUTO_MIN_SECOND_STAGE') {
+                                                        this.adDeepCpabidShow = false;
+                                                        this.configForm.adDeepCpabid = 0
+                                                    }else{
+                                                        this.adDeepCpabidShow = true;
+                                                    }
+                                                this.configForm.adDeepBidType = detailData.adDeepBidType;
+                                                this.configForm.adDeepCpabid = detailData.adDeepCpabid;
                                         
                                         })
                                     
@@ -3160,6 +3267,18 @@ export default {
                     this.optimizationOption = [...item.external_actions];
                 }
             });
+            // this.optimizationOption.forEach(element => {
+            //                 console.log(element);
+            //                 console.log(detailData.adConvertId);
+            //                     if (element.convert_id == detailData.adConvertId) {
+            //                         console.log(1111111);
+            //                     if ("deep_external_actions" in element) {
+            //                         this.deepExternalShow = true;
+            //                     }else{
+            //                         this.deepExternalShow = false;
+            //                     }
+            //                     }
+            //                 });
         },
         // 优化目标数据获取
         handleGetOptimizationObjective(paramsData) {
@@ -3431,6 +3550,7 @@ export default {
         },
         handleRelaxSure() {
             let paramsFormData = this.configForm;
+            console.log(paramsFormData);
             if (paramsFormData.adDirectionalFlag === 'add') {
                 paramsFormData.adAudiencePackageId = null;
                 this.packageMessageDetail = [];