朱鑫波 3 年之前
父節點
當前提交
6d8914ba0e
共有 1 個文件被更改,包括 296 次插入423 次删除
  1. 296 423
      src/views/modules/autoLaunch/trusteeship/creatMaterialTest.vue

+ 296 - 423
src/views/modules/autoLaunch/trusteeship/creatMaterialTest.vue

@@ -439,7 +439,7 @@ li.chouzhen.first:before {
                                                     v-for="(item, index) in appList"
                                                     :key="item.appId"
                                                     >{{ item.appName }}({{ item.appVersion }}/{{
-                                                        item.platform == 1 ? 'android' : 'ios'
+                                                        item.platform == 1 || item.platform == 2 ? 'android' : 'ios'
                                                     }})</a-select-option
                                                 >
                                             </a-select>
@@ -672,9 +672,9 @@ li.chouzhen.first:before {
                                                     }
                                                 ]"
                                             >
-                                                <a-radio-button :value="3">不限</a-radio-button>
-                                                <a-radio-button :value="1">android</a-radio-button>
-                                                <a-radio-button :value="2">ios</a-radio-button>
+                                                <a-radio-button :value="3" disabled>不限</a-radio-button>
+                                                <a-radio-button :value="1" disabled>android</a-radio-button>
+                                                <a-radio-button :value="2" disabled>ios</a-radio-button>
                                             </a-radio-group>
                                         </a-form-item>
                                         <a-form-item
@@ -753,7 +753,10 @@ li.chouzhen.first:before {
                                             </a-radio-group>
                                         </a-form-item>
                                         <a-form-item label="" v-bind="tailFormItemLayout">
-                                            <a-checkbox-group v-decorator="['expansion']" style="width:150%">
+                                            <a-checkbox-group
+                                                v-decorator="['expansion', { initialValue: [] }]"
+                                                style="width:150%"
+                                            >
                                                 <a-checkbox
                                                     value="noAgeBreak"
                                                     style="margin-bottom: 8px"
@@ -831,6 +834,7 @@ li.chouzhen.first:before {
                                         <a-form-item label="投放时段">
                                             <a-radio-group
                                                 button-style="solid"
+                                                @change="changeTimeData"
                                                 v-decorator="[
                                                     'scheduleTime',
                                                     {
@@ -848,7 +852,15 @@ li.chouzhen.first:before {
                                                 <a-radio-button :value="2">特定时间</a-radio-button>
                                             </a-radio-group>
                                         </a-form-item>
-                                        <a-form-item label="" v-bind="tailFormItemLayout">
+                                        <a-form-item
+                                            label=""
+                                            v-bind="tailFormItemLayout"
+                                            v-if="
+                                                getFormData('formOriginality', 'scheduleTime') &&
+                                                    getFormData('formOriginality', 'scheduleTime') == 2
+                                            "
+                                        >
+                                            {{ createArr(scheduleTimeData, 0, 24, 24) }}
                                             <scheduleTime
                                                 style="width:100%"
                                                 :scheduleTime.sync="scheduleTimeData"
@@ -859,171 +871,26 @@ li.chouzhen.first:before {
                                 </a-row>
                                 <a-row :gutter="16">
                                     <a-col :span="16">
-                                        <a-form-item label="投放方式">
-                                            <a-radio-group
-                                                button-style="solid"
-                                                v-decorator="[
-                                                    'speed',
-                                                    {
-                                                        rules: [
-                                                            {
-                                                                required: true,
-                                                                message: '创意展现方式必选'
-                                                            }
-                                                        ],
-                                                        initialValue: 1
-                                                    }
-                                                ]"
-                                            >
-                                                <a-radio-button :value="1">加速投放</a-radio-button>
-                                                <a-radio-button :value="2">平滑投放</a-radio-button>
-                                                <a-radio-button :value="3">优先低成本</a-radio-button>
-                                            </a-radio-group>
-                                        </a-form-item>
-                                    </a-col>
-                                </a-row>
-
-                                <a-row :gutter="16">
-                                    <a-col :span="16">
-                                        <a-form-item label="广告位置">
-                                            <checkBoxGroup
-                                                :options="[
-                                                    { label: '优选广告位', value: 1 },
-                                                    { label: '上下滑大屏广告', value: 6 },
-                                                    { label: '视频播放页广告', value: 3 },
-                                                    { label: '联盟广告', value: 5 }
-                                                ]"
+                                        <a-form-item label="单计划组数量">
+                                            <a-input-number
                                                 v-decorator="[
-                                                    'sceneId',
+                                                    'dayBudget',
                                                     {
                                                         rules: [
                                                             {
                                                                 required: true,
-                                                                message: '转化目标必选'
+                                                                message: '不小于500,不超过100000000,仅支持输入自然数'
                                                             }
-                                                        ],
-                                                        initialValue: [1]
-                                                    }
-                                                ]"
-                                                @change="changeData"
-                                            />
-                                        </a-form-item>
-                                    </a-col>
-                                </a-row>
-                                <a-row :gutter="16">
-                                    <a-col :span="16">
-                                        <a-form-item label="单计划组数量">
-                                            <a-input-number
-                                                v-decorator="[
-                                                    'unitNum',
-                                                    {
-                                                        initialValue: 60,
-                                                        rules: [{ required: true, message: '单计划组数量必填' }]
-                                                    }
-                                                ]"
-                                                :min="1"
-                                                style="width: 100%"
-                                                placeholder="仅支持输入自然数"
-                                                :precision="0"
-                                            />
-                                        </a-form-item>
-                                    </a-col>
-                                </a-row>
-                                <a-row :gutter="16">
-                                    <a-col :span="16">
-                                        <a-form-item label="组下素材数量">
-                                            <a-input-number
-                                                v-decorator="[
-                                                    'materialNum',
-                                                    {
-                                                        initialValue: 15,
-                                                        rules: [{ required: true, message: '组下素材数量必填' }]
+                                                        ]
                                                     }
                                                 ]"
-                                                style="width: 100%"
-                                                placeholder="仅支持输入自然数"
+                                                :min="500"
+                                                :max="100000000"
+                                                style="width: 90%"
+                                                placeholder="不小于500,不超过100000000,仅支持输入自然数"
                                                 :precision="0"
-                                                :max="15"
-                                                :min="1"
                                             />
-                                        </a-form-item>
-                                    </a-col>
-                                </a-row>
-                                <a-row :gutter="16">
-                                    <a-col :span="16">
-                                        <a-form-item label="行动号召">
-                                            <!-- mode="multiple" -->
-                                            <a-select
-                                                mode="multiple"
-                                                v-decorator="[
-                                                    'actionBarText',
-                                                    { rules: [{ required: true, message: '请选择行动号召按钮文案' }] }
-                                                ]"
-                                                showSearch
-                                                allowClear
-                                                placeholder="选择行动号召按钮文案"
-                                                optionFilterProp="children"
-                                                :filterOption="filterOption"
-                                            >
-                                                <a-select-option
-                                                    v-for="appModel in actionBarTextList"
-                                                    :key="appModel.id"
-                                                    :value="appModel.actionBarText"
-                                                >
-                                                    {{ appModel.actionBarText }}
-                                                </a-select-option>
-                                            </a-select>
-                                        </a-form-item>
-                                    </a-col>
-                                </a-row>
-
-                                <a-row :gutter="16">
-                                    <a-col :span="16">
-                                        <a-form-item label="广告语">
-                                            <div
-                                                style="position:relative"
-                                                v-for="(item, index) in descriptionList"
-                                                :key="index"
-                                            >
-                                                <a-textarea
-                                                    class="rending"
-                                                    placeholder="请输入广告语"
-                                                    @change="descriptionchange(item.value, index)"
-                                                    v-model.trim="item.value"
-                                                    :autosize="{ minRows: 2, maxRows: 6 }"
-                                                    :max-length="30"
-                                                ></a-textarea>
-                                                <p
-                                                    style="
-                                                    font-size: 12px;
-                                                    color: #b6bbc7;
-                                                    letter-spacing: 0.3px;
-                                                    text-align: right;
-                                                    line-height: 30px;
-                                                    position: absolute;
-                                                    bottom: 0;
-                                                    right: 6px;
-                                                    width: 100%;
-                                                    margin-bottom: 0;
-                                                    border: 0;
-                                                "
-                                                >
-                                                    {{ item.value.length }}/30
-                                                    <!-- {{ getFormData('description').length  }}/30 -->
-                                                </p>
-                                                <div style="position:absolute;right:-50px;top:-10px">
-                                                    <a-icon
-                                                        type="plus"
-                                                        @click="addDescription()"
-                                                        style="margin-right:15px"
-                                                    />
-                                                    <a-icon
-                                                        type="minus"
-                                                        @click="removeDescription(index)"
-                                                        v-if="descriptionList.length > 1"
-                                                    />
-                                                </div>
-                                            </div>
+                                            元
                                         </a-form-item>
                                     </a-col>
                                 </a-row>
@@ -1057,20 +924,76 @@ li.chouzhen.first:before {
                                                 ]"
                                             >
                                                 <a-select-option :value="2">行为数</a-select-option>
+                                                <!-- v-if="getFormData('campaignType') == 2 && groupTypeData.isActivate == 1 -->
                                                 <a-select-option :value="180">激活</a-select-option>
-                                                <a-select-option :value="53">表单提交</a-select-option>
-                                                <a-select-option :value="394">订单提交</a-select-option>
-                                                <a-select-option :value="348">使用有效线索</a-select-option>
-                                                <a-select-option :value="383">授信出价</a-select-option>
-                                                <a-select-option :value="384">完件出价</a-select-option>
-                                                <a-select-option :value="190">付费出价</a-select-option>
-                                                <a-select-option :value="191">首日ROI</a-select-option>
-                                                <a-select-option :value="396">注册优化目标</a-select-option>
-                                                <a-select-option :value="324">唤起应用</a-select-option>
-                                                <a-select-option :value="715">微信复制优化目标</a-select-option>
-                                                <a-select-option :value="716">多转化事件</a-select-option>
-                                                <a-select-option :value="717">广告观看次数</a-select-option>
-                                                <a-select-option :value="773">关键行为</a-select-option>
+                                                <a-select-option
+                                                    :value="53"
+                                                    v-if="groupTypeData && groupTypeData.isFormSubmit == '1'"
+                                                    >表单提交</a-select-option
+                                                >
+
+                                                <a-select-option
+                                                    :value="394"
+                                                    v-if="groupTypeData && groupTypeData.isOrderSubmit == '1'"
+                                                    >订单提交</a-select-option
+                                                >
+                                                <a-select-option
+                                                    :value="348"
+                                                    v-if="groupTypeData && groupTypeData.isValidClue == '1'"
+                                                    >使用有效线索</a-select-option
+                                                >
+                                                <a-select-option
+                                                    :value="383"
+                                                    v-if="groupTypeData && groupTypeData.isCreditGrant == '1'"
+                                                    >授信出价</a-select-option
+                                                >
+                                                <a-select-option
+                                                    :value="384"
+                                                    v-if="groupTypeData && groupTypeData.isWanJian == '1'"
+                                                    >完件出价</a-select-option
+                                                >
+                                                <a-select-option
+                                                    :value="190"
+                                                    v-if="groupTypeData && groupTypeData.isPurchase == '1'"
+                                                    >付费出价</a-select-option
+                                                >
+                                                <a-select-option
+                                                    :value="191"
+                                                    v-if="groupTypeData && groupTypeData.isFirstdayRoi == '1'"
+                                                    >首日ROI</a-select-option
+                                                >
+                                                <a-select-option
+                                                    :value="396"
+                                                    v-if="groupTypeData && groupTypeData.isRegister == '1'"
+                                                    >注册优化目标</a-select-option
+                                                >
+
+                                                <a-select-option
+                                                    :value="324"
+                                                    v-if="groupTypeData && groupTypeData.isAppInvoked == '1'"
+                                                    >唤起应用</a-select-option
+                                                >
+                                                <a-select-option
+                                                    :value="715"
+                                                    v-if="groupTypeData && groupTypeData.isAddWechat == '1'"
+                                                    >微信复制优化目标</a-select-option
+                                                >
+                                                <a-select-option
+                                                    :value="716"
+                                                    v-if="groupTypeData && groupTypeData.isMultiConversion == '1'"
+                                                    >多转化事件</a-select-option
+                                                >
+                                                <a-select-option
+                                                    :value="717"
+                                                    v-if="groupTypeData && groupTypeData.isAdWatchTimes == '1'"
+                                                    >广告观看次数</a-select-option
+                                                >
+
+                                                <a-select-option
+                                                    :value="773"
+                                                    v-if="groupTypeData && groupTypeData.isKeyAction == '1'"
+                                                    >关键行为</a-select-option
+                                                >
                                             </a-select>
                                         </a-form-item>
                                     </a-col>
@@ -1089,24 +1012,19 @@ li.chouzhen.first:before {
                                 <a-row :gutter="16">
                                     <a-col :span="16">
                                         <a-form-item label="转化目标出价">
-                                            <a-input
-                                                style="width:300px"
+                                            <a-input-number
                                                 v-decorator="[
                                                     'cpaBid',
                                                     {
-                                                        rules: [
-                                                            { required: true, message: ' ' },
-                                                            { validator: cpaBidValid }
-                                                        ]
+                                                        rules: [{ required: true, message: '转化目标出价必填' }]
                                                     }
                                                 ]"
-                                            >
-                                            </a-input>
-                                            <br />
-                                            <span style="color:red"
-                                                >单出价请输入单数字,阶梯出价请用/隔开 例如10/12,区间出价请用-链接
-                                                例如20-25</span
-                                            >
+                                                :min="0"
+                                                :max="100000000"
+                                                style="width: 90%"
+                                                :precision="2"
+                                            />
+                                            元
                                         </a-form-item>
                                     </a-col>
                                 </a-row>
@@ -1135,42 +1053,6 @@ li.chouzhen.first:before {
                                                 >
                                             </a-select>
                                         </a-form-item>
-                                        <!-- <a-form-item label="深度转化目标">
-                                            <a-select
-                                                style="width:300px"
-                                                size="default"
-                                                allowClear
-                                                v-decorator="['deepConversionType']"
-                                            >
-                                                <a-select-option :value="3">
-                                                    付费
-                                                </a-select-option>
-                                                <a-select-option :value="7">
-                                                    次日留存
-                                                </a-select-option>
-                                                <a-select-option :value="10">
-                                                    完件
-                                                </a-select-option>
-                                                <a-select-option :value="11">
-                                                    授信
-                                                </a-select-option>
-                                                <a-select-option :value="13">
-                                                    添加购物车
-                                                </a-select-option>
-                                                <a-select-option :value="14">
-                                                    提交订单
-                                                </a-select-option>
-                                                <a-select-option :value="15">
-                                                    购买
-                                                </a-select-option>
-                                                <a-select-option :value="44">
-                                                    有效线索
-                                                </a-select-option>
-                                                <a-select-option :value="92">
-                                                    付费roi
-                                                </a-select-option>
-                                            </a-select>
-                                        </a-form-item> -->
                                     </a-col>
                                 </a-row>
                                 <a-row :gutter="16" v-if="groupTypeData">
@@ -1184,12 +1066,14 @@ li.chouzhen.first:before {
                                         "
                                     >
                                         <a-form-item label="深度转化出价">
-                                            <a-input style="width:300px" v-decorator="['deepConversionBid']"> </a-input>
-                                            <br />
-                                            <span style="color:red"
-                                                >单出价请输入单数字,阶梯出价请用/隔开 例如10/12,区间出价请用-链接
-                                                例如20-25</span
-                                            >
+                                            <a-input-number
+                                                v-decorator="['deepConversionBid']"
+                                                :min="0"
+                                                :max="100000000"
+                                                style="width: 90%"
+                                                :precision="2"
+                                            />
+                                            元
                                         </a-form-item>
                                     </a-col>
                                 </a-row>
@@ -1336,6 +1220,7 @@ export default {
             formInformation: this.$form.createForm(this), //设置基本信息表单
             formTargetApp: this.$form.createForm(this), //目标应用编辑表单
             formDirectional: this.$form.createForm(this), //定向包编辑表单
+            platformOsDisabled: false,
             formOptimize: this.$form.createForm(this), //优化目标表单
             formOriginality: this.$form.createForm(this), //创意表单
             sumbitLoading: false,
@@ -1389,7 +1274,7 @@ export default {
             showCheckPerson: [],
             sumContent: 0,
             searchTemplate: '',
-            scheduleTimeData:'',
+            scheduleTimeData: '',
             //优化目标参数
             groupTypeData: null,
             //创意信息参数
@@ -1546,6 +1431,7 @@ export default {
                         })
                     }
                 })
+                this.getIsActivate(null)
             }
         },
         activeKey: function(n, o) {
@@ -1629,6 +1515,43 @@ export default {
     methods: {
         ...mapGetters(['userInfo']),
         moment,
+        /*
+		@params str{ String} 要截取的字符串
+	    @params start { Number } 首次截取的开始索引,每次截取后递增
+	    @params end { Number } 首次截取的结束索引,每次截取后递增
+	    @params unit { Number } 每一组个数
+	    */
+        // 将字符串转换成unit个字符为一组的数组
+
+        createArr(str, start, end, unit) {
+            if (str) {
+                let arr = [] //保存每次截取后的字符串
+                let counts = Math.ceil(str.length / unit) //循环截取的次数,向上取整
+
+                for (let i = 0; i < counts; i++) {
+                    let newStr = str.substring(start, end)
+                    arr.push(newStr.split(''))
+                    start = end
+                    end += unit
+                }
+                return arr
+            }
+        },
+        changeTimeData() {
+            this.scheduleTimeData = ''
+        },
+        getIsActivate(val) {
+            let params = {}
+            params.accountId = this.accountIds
+            params.campaignType = this.getFormData('formProject', 'campaignType')
+            params.appId = val
+
+            this.getAction('/kuaishou/batch/getIsActivate', params).then(res => {
+                if (res.success) {
+                    this.groupTypeData = res.result
+                }
+            })
+        },
         handleConfirmValue(rule, value, callback) {
             if (Math.abs(value[0] - value[1]) < 5) {
                 callback('自定义年龄段需要间隔大于5岁')
@@ -1649,6 +1572,10 @@ export default {
                     this.formTargetApp.setFieldsValue({ siteId: undefined })
                 }
             })
+            this.getIsActivate(e)
+
+            var data = this.appList.filter(item => item.appId == e)[0]
+            this.formDirectional.setFieldsValue({ platformOs: data.platform == 1 || data.platform == 2 ? 1 : 2 })
         },
         personSelect() {
             if (this.people === '1' || this.people === '2') {
@@ -1996,217 +1923,163 @@ export default {
             })
         },
         handleSubmit() {
-            let formProjectData = new Promise((resolve, reject) => {
-                this.formProject.validateFields((err, values) => {
-                    if (!err) {
-                        if (this.accountIds.length > 0) {
-                            resolve({ ...values, accountIds: this.accountIds })
+            if (this.accountIds) {
+                let formProjectData = new Promise((resolve, reject) => {
+                    this.formProject.validateFields((err, values) => {
+                        if (!err) {
+                            if (this.accountIds.length > 0) {
+                                resolve({ ...values, accountIds: this.accountIds })
+                            }
+                        } else {
+                            reject('选择项目表单出错')
                         }
-                    } else {
-                        reject('选择项目表单出错')
-                    }
-                })
-            })
-            let formInformationData = new Promise((resolve, reject) => {
-                this.formInformation.validateFields((err, values) => {
-                    if (!err) {
-                        resolve({ ...values })
-                    } else {
-                        reject('基本信息出错')
-                    }
-                })
-            })
-            let formOptimizeData = new Promise((resolve, reject) => {
-                this.formOptimize.validateFields((err, values) => {
-                    if (!err) {
-                        resolve({ ...values })
-                    } else {
-                        reject('优化目标出错')
-                    }
-                })
-            })
-            let formTargetAppData = new Promise((resolve, reject) => {
-                this.formTargetApp.validateFields((err, values) => {
-                    if (!err) {
-                        resolve({ ...values })
-                    } else {
-                        reject('目标应用出错')
-                    }
-                })
-            })
-            let formDirectionalData = new Promise((resolve, reject) => {
-                this.formDirectional.validateFields((err, values) => {
-                    if (!err) {
-                        resolve({ ...values })
-                    } else {
-                        reject('定向包出错')
-                    }
+                    })
                 })
-            })
-            let formOriginalityData = new Promise((resolve, reject) => {
-                this.formOriginality.validateFields((err, values) => {
-                    if (!err) {
-                        resolve({ ...values })
-                    } else {
-                        reject('创意信息出错')
-                    }
+                let formInformationData = new Promise((resolve, reject) => {
+                    this.formInformation.validateFields((err, values) => {
+                        if (!err) {
+                            resolve({ ...values })
+                        } else {
+                            reject('基本信息出错')
+                        }
+                    })
                 })
-            })
-            Promise.all([
-                formProjectData,
-                formInformationData,
-                formOptimizeData,
-                formTargetAppData,
-                formDirectionalData,
-                formOriginalityData
-            ])
-                .then(res => {
-                    if (this.multipleBidDataDrawer.length === 0 || this.descriptionList === 0) {
-                        this.$message.error('请填写完整')
-                        return
-                    }
-                    let isNotComplete = this.multipleBidDataDrawer.findIndex(item => {
-                        return item.appId === null || item.appId === '' || item.appId === undefined
+                let formOptimizeData = new Promise((resolve, reject) => {
+                    this.formOptimize.validateFields((err, values) => {
+                        if (!err) {
+                            resolve({ ...values })
+                        } else {
+                            reject('优化目标出错')
+                        }
                     })
-                    if (isNotComplete > -1) {
-                        this.$message.error('未选择应用')
-                        return
-                    }
-                    let isNotComplete2 = this.descriptionList.findIndex(item => {
-                        return item.value === ''
+                })
+                let formTargetAppData = new Promise((resolve, reject) => {
+                    this.formTargetApp.validateFields((err, values) => {
+                        if (!err) {
+                            resolve({ ...values })
+                        } else {
+                            reject('目标应用出错')
+                        }
                     })
-                    if (isNotComplete2 > -1) {
-                        this.$message.error('广告语未填')
-                        return
-                    }
-                    this.sumbitLoading = true
-                    let params = { ...res[0], ...res[1], ...res[2], ...res[3], ...res[4], ...res[5] }
-                    params.useAppMarket = params.useAppMarket ? 1 : 0
-                    params.appStore = params.appStore ? JSON.stringify(params.appStore) : '[]'
-                    params.crowdArray = this.finallyRightTree.map(item => {
-                        return {
-                            accountId: item.key,
-                            population:
-                                item.people === '0'
-                                    ? []
-                                    : item.people === '1' || item.people === '3'
-                                    ? item.incluedSelectedRowKeys
-                                    : [],
-                            excludePopulation:
-                                item.people === '0'
-                                    ? []
-                                    : item.people === '2' || item.people === '3'
-                                    ? item.excludeSelectedRowKeys
-                                    : []
+                })
+                let formDirectionalData = new Promise((resolve, reject) => {
+                    this.formDirectional.validateFields((err, values) => {
+                        if (!err) {
+                            resolve({ ...values })
+                        } else {
+                            reject('定向包出错')
                         }
                     })
-                    params.appInfoArray = this.multipleBidDataDrawer
-                    params.creativeArray = this.creativeTagData.map(item => {
-                        return {
-                            ...item,
-                            creativeCategory: item.creativeCategory
-                                ? item.creativeCategory[item.creativeCategory.length - 1]
-                                : '',
-                            creativeTag: JSON.stringify(item.creativeTag)
+                })
+                let formOriginalityData = new Promise((resolve, reject) => {
+                    this.formOriginality.validateFields((err, values) => {
+                        if (!err) {
+                            resolve({ ...values })
+                        } else {
+                            reject('创意信息出错')
                         }
                     })
-                    if (this.fansStarType == 0) {
-                        params.fansStar = []
-                    }
-                    if (this.deviceType == 0) {
-                        params.deviceBrand = []
-                    }
-                    if (this.priceType == 0) {
-                        params.devicePrice = []
-                    }
-                    if (this.budgetType === '2') {
-                        params.campaignDayBudget = params.campaignDayBudget * 1000
-                    } else {
-                        params.campaignDayBudget = 0
-                    }
-                    if (this.dayBudgetType === '2') {
-                        params.unitDayBudget = params.unitDayBudget * 1000
-                    } else {
-                        params.unitDayBudget = 0
-                    }
-                    if (params.cpaBid) {
-                        if ((params.cpaBid + '').includes('/')) {
-                            let bidArr = params.cpaBid.split('/')
-                            for (let index = 0; index < bidArr.length; index++) {
-                                bidArr[index] = bidArr[index] * 1000
-                            }
-                            params.cpaBid = bidArr.join('/')
-                        } else if ((params.cpaBid + '').includes('-')) {
-                            let bidArr = params.cpaBid.split('-')
-                            for (let index = 0; index < bidArr.length; index++) {
-                                bidArr[index] = bidArr[index] * 1000
+                })
+                Promise.all([
+                    formProjectData,
+                    formInformationData,
+                    formOptimizeData,
+                    formTargetAppData,
+                    formDirectionalData,
+                    formOriginalityData
+                ])
+                    .then(res => {
+                        this.sumbitLoading = true
+                        let params = { ...res[0], ...res[1], ...res[2], ...res[3], ...res[4], ...res[5] }
+                        params.accountId = this.accountIds
+                        params.userId = this.userInfo().id
+                        params.useAppMarket = params.useAppMarket ? 1 : 0
+                        params.appStore = params.appStore ? JSON.stringify(params.appStore) : '[]'
+                        params.regionIds = this.district == 'NONE' ? [] : this.regionList
+                        params.ruleEnable = params.ruleEnable ? 1 : 2
+                        if (params.ruleEnable == 1) {
+                            if (!params.campaignNameRule && !params.unitNameRule && !params.creativeNameRule) {
+                                this.$message.error('自定义命名规则开启,至少任一规则不可为空')
                             }
-                            params.cpaBid = bidArr.join('-')
+                        }
+                        if (this.ageType == 'noLimit') {
+                            params.minAge = ''
+                            params.maxAge = ''
+                            params.agesRange = []
+                        } else if (this.ageType == 'ageLimit') {
+                            params.minAge = ''
+                            params.maxAge = ''
+                            params.agesRange = params.agesRange
+                        } else if (this.ageType == 'ageCustom') {
+                            params.minAge = params.age[0]
+                            params.maxAge = params.age[1]
+                            params.agesRange = []
+                        }
+                        params.isOpen = 1
+
+                        if (params.expansion.includes('noAgeBreak')) {
+                            params.noAgeBreak = 1
                         } else {
-                            params.cpaBid = params.cpaBid * 1000
+                            params.noAgeBreak = 2
                         }
-                    } else {
-                        params.cpaBid = 0
-                    }
-                    if (params.deepConversionBid && params.deepConversionBid != 0) {
-                        if ((params.deepConversionBid + '').includes('/')) {
-                            let bidArr = params.deepConversionBid.split('/')
-                            for (let index = 0; index < bidArr.length; index++) {
-                                bidArr[index] = bidArr[index] * 1000
-                            }
-                            params.deepConversionBid = bidArr.join('/')
-                        } else if ((params.deepConversionBid + '').includes('-')) {
-                            let bidArr = params.deepConversionBid.split('-')
-                            for (let index = 0; index < bidArr.length; index++) {
-                                bidArr[index] = bidArr[index] * 1000
-                            }
-                            params.deepConversionBid = bidArr.join('-')
+                        if (params.expansion.includes('noGenderBreak')) {
+                            params.noGenderBreak = 1
                         } else {
-                            params.deepConversionBid = params.deepConversionBid * 1000
+                            params.noGenderBreak = 2
                         }
-                    } else {
-                        params.deepConversionBid = 0
-                    }
-                    // if (params.creativeCategory && params.creativeCategory.length > 0) {
-                    //     params.creativeCategory = params.creativeCategory[params.creativeCategory.length - 1]
-                    // } else {
-                    //     params.creativeCategory = undefined
-                    // }
-                    // params.creativeTag = params.creativeTag ? JSON.stringify(params.creativeTag) : undefined
-                    // params.appIdArray = this.multipleBidData.map(res => {
-                    //     return res.apptemId
-                    // })
-                    params.description = JSON.stringify(
-                        this.descriptionList.map(item => {
-                            return item.value
-                        })
-                    )
-                    params.singleAppid = 1
-                    params.actionBarText = params.actionBarText
-                    params.deepConversionType = params.deepConversionType ? params.deepConversionType : ''
-                    params.deepConversionBid = params.deepConversionBid ? params.deepConversionBid : ''
-                    if (this.$route.query.id) {
-                        params.id = this.$route.query.id
-                    }
-                    params.userId = this.userInfo().id
-                    this.postDataAction('/dimension/kuaiShouDimensionStrategy/insertOrUpdate', params).then(res => {
-                        if (res.success) {
-                            this.sumbitLoading = false
+                        if (params.expansion.includes('noAreaBreak')) {
+                            params.noAreaBreak = 1
+                        } else {
+                            params.noAreaBreak = 2
+                        }
+
+                        params.population =
+                            this.people === '0'
+                                ? []
+                                : this.people === '1' || this.people === '3'
+                                ? this.incluedSelectedRowKeys
+                                : []
+                        params.excludePopulation =
+                            this.people === '0'
+                                ? []
+                                : this.people === '2' || this.people === '3'
+                                ? this.excludeSelectedRowKeys
+                                : []
+                        params.cpaBid = params.cpaBid * 1000
+                        params.deepConversionBid = params.deepConversionBid ? params.deepConversionBid * 1000 : null
+
+                        params.singleAppid = 1
+                        params.deepConversionType = params.deepConversionType ? params.deepConversionType : ''
+
+                        // params.
+                        if (this.$route.query.id) {
+                            params.id = this.$route.query.id
+                        }
+                        params.userId = this.userInfo().id
+                        this.postDataAction('/hosting/kuaishouHostingTemplate/add', params).then(res => {
+                            if (res.success) {
+                                this.sumbitLoading = false
 
-                            if (params.id) {
-                                this.$bus.$emit('remove', `/autoLaunch/creatMaterialTest?id=${params.id}`)
+                                if (params.id) {
+                                    this.$bus.$emit(
+                                        'remove',
+                                        `/autoLaunch/trusteeship/creatMaterialTest?id=${params.id}`
+                                    )
+                                } else {
+                                    this.$bus.$emit('remove', '/autoLaunch/trusteeship/creatMaterialTest')
+                                }
+                                this.$router.replace('/autoLaunch/material-test')
                             } else {
-                                this.$bus.$emit('remove', '/autoLaunch/creatMaterialTest')
+                                this.sumbitLoading = false
                             }
-                            this.$router.replace('/autoLaunch/material-test')
-                        } else {
-                            this.sumbitLoading = false
-                        }
+                        })
                     })
-                })
-                .catch(err => {
-                    this.$message.error('请填写完整')
-                })
+                    .catch(err => {
+                        this.$message.error('请填写完整')
+                    })
+            } else {
+                this.$message.error('请选择账户')
+            }
         },
         clearAllData() {
             this.$router.replace('/autoLaunch/material-test')