|
@@ -89,6 +89,16 @@
|
|
|
<a-checkbox value="smartisan">锤子</a-checkbox>
|
|
|
</a-checkbox-group>
|
|
|
</a-form-item>
|
|
|
+
|
|
|
+ <a-form-item label="投放范围" :labelCol="{ lg: { span: 7 }, sm: { span: 7 } }"
|
|
|
+ :wrapperCol="{ lg: { span: 10 }, sm: { span: 17 } }"
|
|
|
+ v-if="allianceAccount">
|
|
|
+ <a-radio-group buttonStyle="solid" v-model="allForm.allianceAccount" disabled>
|
|
|
+ <a-radio-button value="1">默认</a-radio-button>
|
|
|
+ <a-radio-button value="2">联盟广告</a-radio-button>
|
|
|
+ </a-radio-group>
|
|
|
+ </a-form-item>
|
|
|
+
|
|
|
<div style="text-align:center;font-size:16px;margin-bottom:10px">
|
|
|
目标人群
|
|
|
</div>
|
|
@@ -102,7 +112,7 @@
|
|
|
</a-select>
|
|
|
</a-form-item>
|
|
|
<targeted-population ref="population" :populationData.sync="populationData"
|
|
|
- :platform="getPlatForm(getData('appId'))" />
|
|
|
+ :platform="getPlatForm(getData('appId'))" :lol="allForm.allianceAccount"/>
|
|
|
<a-form-item label=" " :labelCol="{ lg: { span: 7 }, sm: { span: 7 } }"
|
|
|
:wrapperCol="{ lg: { span: 10 }, sm: { span: 17 } }" class="else-label">
|
|
|
<div style="display:flex;">
|
|
@@ -182,8 +192,9 @@
|
|
|
}}
|
|
|
</span>
|
|
|
</a-form-item>
|
|
|
+ {{allForm.allianceAccount}}
|
|
|
<a-form-item label="场景广告位" :labelCol="{ lg: { span: 7 }, sm: { span: 7 } }"
|
|
|
- :wrapperCol="{ lg: { span: 17 }, sm: { span: 17 } }">
|
|
|
+ :wrapperCol="{ lg: { span: 17 }, sm: { span: 17 } }" v-if="allForm.allianceAccount=='1'">
|
|
|
<!-- v-decorator="['speed', { initialValue: '1' }]" -->
|
|
|
<a-radio-group buttonStyle="solid" v-model="allForm.sceneIdAll">
|
|
|
<a-radio-button :value="1">优选广告位</a-radio-button>
|
|
@@ -218,17 +229,48 @@
|
|
|
:wrapperCol="{ lg: { span: 18 }, sm: { span: 17 } }">
|
|
|
<a-radio-group buttonStyle="solid" v-model="item.bidType" @change="resData(index)">
|
|
|
<a-radio-button :value="1">点击数</a-radio-button>
|
|
|
- <a-radio-button :value="2">行为数</a-radio-button>
|
|
|
- <a-radio-button :value="180"
|
|
|
- v-if="campaignType == '2' && allForm.groupTypeData.isActivate == '1'">激活</a-radio-button>
|
|
|
- <a-radio-button :value="53" v-if="
|
|
|
- (campaignType == '4' || campaignType == '5') && allForm.groupTypeData.isFormSubmit == '1'
|
|
|
- ">表单提交</a-radio-button>
|
|
|
+
|
|
|
+ <a-radio-button :value="10">转化数</a-radio-button>
|
|
|
</a-radio-group>
|
|
|
</a-form-item>
|
|
|
+ <a-form-item label="转化目标" :labelCol="{ lg: { span: 6 }, sm: { span: 7 } }"
|
|
|
+ :wrapperCol="{ lg: { span: 18 }, sm: { span: 17 } }" v-if="item.bidType==10">
|
|
|
+ <a-select v-model="item.ocpxActionType">
|
|
|
+
|
|
|
+ <a-select-option :value="2">行为数</a-select-option>
|
|
|
+ <a-select-option :value="180"
|
|
|
+ v-if="campaignType == '2' && allForm.groupTypeData.isActivate == '1'">激活</a-select-option>
|
|
|
+ <a-select-option :value="53" v-if="
|
|
|
+ (campaignType == '4' || campaignType == '5') && allForm.groupTypeData.isFormSubmit == '1'
|
|
|
+ ">表单提交</a-select-option>
|
|
|
+
|
|
|
+ <a-select-option :value="394" v-if="
|
|
|
+ allForm.groupTypeData.isOrderSubmit == '1'
|
|
|
+ ">订单提交</a-select-option>
|
|
|
+ <a-select-option :value="348" v-if="
|
|
|
+ allForm.groupTypeData.isValidClue == '1'
|
|
|
+ ">使用有效线索</a-select-option>
|
|
|
+ <a-select-option :value="383" v-if="
|
|
|
+ allForm.groupTypeData.isCreditGrant == '1'
|
|
|
+ ">授信出价</a-select-option>
|
|
|
+ <a-select-option :value="384" v-if="
|
|
|
+ allForm.groupTypeData.isWanJian == '1'
|
|
|
+ ">完件出价</a-select-option>
|
|
|
+ <a-select-option :value="190" v-if="
|
|
|
+ allForm.groupTypeData.isPurchase == '1'
|
|
|
+ ">付费出价</a-select-option>
|
|
|
+ <a-select-option :value="191" v-if="
|
|
|
+ allForm.groupTypeData.isFirstdayRoi == '1'
|
|
|
+ ">首日ROI</a-select-option>
|
|
|
+ <a-select-option :value="396" v-if="
|
|
|
+ allForm.groupTypeData.isRegister == '1'
|
|
|
+ ">注册优化目标</a-select-option>
|
|
|
+ </a-select>
|
|
|
+
|
|
|
+ </a-form-item>
|
|
|
<a-form-item label="深度转化目标" :labelCol="{ lg: { span: 6 }, sm: { span: 7 } }"
|
|
|
:wrapperCol="{ lg: { span: 18 }, sm: { span: 17 } }" v-if="
|
|
|
- (item.bidType == 180 || item.bidType == 53) &&
|
|
|
+ (item.ocpxActionType == 180 || item.ocpxActionType == 53) &&
|
|
|
allForm.groupTypeData.deepConversionTypes.length > 0
|
|
|
">
|
|
|
<a-select v-model="item.deepConversionType" allowClear>
|
|
@@ -257,17 +299,17 @@
|
|
|
:style="{ borderColor: item.showTipCheck ? 'red' : '#d9d9d9' }" style="width:100%">
|
|
|
</a-input-number>
|
|
|
<span style="color:red" v-if="item.showTipCheck">{{
|
|
|
- item.bidType == 2
|
|
|
+ item.bidType == 1
|
|
|
? '不得低于1元,不得高于项目最高出价' + maxBid + '元'
|
|
|
: '不得低于1元,不得高于项目最高出价' + maxBid + '元'
|
|
|
}}</span>
|
|
|
- <span style="color:red;font-weight:700" v-else-if="item.bidType==2&&item.cpaBid&&item.cpaBid>1">
|
|
|
+ <span style="color:red;font-weight:700" v-else-if="item.ocpxActionType==2&&item.cpaBid&&item.cpaBid>1">
|
|
|
行为出价大于1元,请注意!!!
|
|
|
</span>
|
|
|
</a-form-item>
|
|
|
<a-form-item label="深度转化出价" :labelCol="{ lg: { span: 6 }, sm: { span: 7 } }"
|
|
|
:wrapperCol="{ lg: { span: 18 }, sm: { span: 17 } }" v-if="
|
|
|
- (item.bidType == 180 || item.bidType == 53) &&
|
|
|
+ (item.ocpxActionType == 180 || item.ocpxActionType == 53) &&
|
|
|
allForm.groupTypeData.deepConversionTypes.length > 0 &&
|
|
|
item.deepConversionType != ''
|
|
|
">
|
|
@@ -346,6 +388,7 @@
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
+ allianceAccount:false,
|
|
|
checkedTrue: false,
|
|
|
nameValue: '',
|
|
|
visible: false,
|
|
@@ -394,7 +437,8 @@
|
|
|
useAppMarket: false,
|
|
|
appStore: ['huawei', 'oppo', 'vivo', 'xiaomi',
|
|
|
'meizu', 'smartisan'
|
|
|
- ]
|
|
|
+ ],
|
|
|
+ allianceAccount:'1'
|
|
|
},
|
|
|
typeCopy: "typeOne",
|
|
|
dataList: [],
|
|
@@ -464,13 +508,7 @@
|
|
|
} else {
|
|
|
this.allForm.group[index].showTipCheck = false
|
|
|
}
|
|
|
- } else if (this.allForm.group[index].bidType == 2) {
|
|
|
- if (this.allForm.group[index].cpaBid < 1 || this.allForm.group[index].cpaBid > this.maxBid) {
|
|
|
- this.allForm.group[index].showTipCheck = true
|
|
|
- } else {
|
|
|
- this.allForm.group[index].showTipCheck = false
|
|
|
- }
|
|
|
- } else {
|
|
|
+ } else {
|
|
|
if (this.allForm.group[index].cpaBid < 1 || this.allForm.group[index].cpaBid > this.maxBid) {
|
|
|
this.allForm.group[index].showTipCheck = true
|
|
|
} else {
|
|
@@ -623,7 +661,8 @@
|
|
|
}
|
|
|
// dataJson.useAppMarket = dataJson.useAppMarket==0?false:true
|
|
|
dataJson.dayBudget = dataJson.dayBudget / 1000
|
|
|
- this.allForm.sceneIdAll = JSON.parse(dataJson.sceneId).filter(item => item == 1).length > 0 ? 1 : 2
|
|
|
+ this.allForm.sceneIdAll = JSON.parse(dataJson.sceneId).filter(item => item == 1).length > 0 ? 1 : JSON.parse(dataJson.sceneId)[0] ==5 ? 5 : 2
|
|
|
+ this.allForm.allianceAccount = this.allForm.sceneIdAll==5?'2':'1'
|
|
|
this.allForm.useAppMarket = dataJson.useAppMarket ? (dataJson.useAppMarket == 0 ? false : true) : false
|
|
|
this.allForm.appStore = this.allForm.useAppMarket ? JSON.parse(dataJson.appStore) : ['huawei', 'oppo',
|
|
|
'vivo', 'xiaomi',
|
|
@@ -637,7 +676,7 @@
|
|
|
this.allForm.scheduleTime = dataJson.scheduleTime.indexOf('1') != -1 ? '2' : '1'
|
|
|
this.allForm.scheduleTimeData = dataJson.scheduleTime
|
|
|
this.allForm.group = [{
|
|
|
- bidType: dataJson.ocpxActionType,
|
|
|
+ bidType: dataJson.bidType,
|
|
|
bid: dataJson.bid,
|
|
|
cpaBid: dataJson.cpaBid / 1000,
|
|
|
showTipCheck: false,
|
|
@@ -645,7 +684,8 @@
|
|
|
unitName: type == 'typeOne' ? [dataJson.unitName] : unitNameCopy,
|
|
|
unitNameCheck: false,
|
|
|
deepConversionType: dataJson.deepConversionType,
|
|
|
- deepConversionBid: dataJson.deepConversionBid / 1000
|
|
|
+ deepConversionBid: dataJson.deepConversionBid / 1000,
|
|
|
+ ocpxActionType:dataJson.ocpxActionType
|
|
|
}]
|
|
|
|
|
|
this.populationData = dataJson
|
|
@@ -769,6 +809,14 @@
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ if(this.allForm.allianceAccount=='1'){
|
|
|
+ var {...paramsEnd} = params
|
|
|
+ }else{
|
|
|
+ var {fansStar,appType,businessInterestType,interestVideo,isOpen,noAgeBreak,noGenderBreak,noAreaBreak,...paramsElse} = params.allForm
|
|
|
+ params.allForm = paramsElse
|
|
|
+ var {businessInterestType,isOpen,noAgeBreak,noGenderBreak,noAreaBreak,...paramsEnd} = params
|
|
|
+ }
|
|
|
if (this.checkedTrue) {
|
|
|
var data = this.populationData
|
|
|
postAction('/kuaishou/batch/addDirectionalTemplate', {
|
|
@@ -777,6 +825,8 @@
|
|
|
templateContent: JSON.stringify(this.populationData)
|
|
|
}).then(res => {})
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
if (this.typeCopy == 'typeOne') {
|
|
|
var groupArr = this.allForm.group.map(item => {
|
|
|
return {
|
|
@@ -785,12 +835,12 @@
|
|
|
cpaBid: item.cpaBid != '' ? item.cpaBid * 1000 : '',
|
|
|
bid: item.bid != '' ? item.bid * 1000 : '',
|
|
|
deepConversionBid: item.deepConversionBid != '' ? item.deepConversionBid * 1000 : '',
|
|
|
- ocpxActionType: item.bidType,
|
|
|
+ ocpxActionType: item.ocpxActionType,
|
|
|
bidType: item.bidType == 1 ? 2 : 10
|
|
|
}
|
|
|
})[0]
|
|
|
var param = {
|
|
|
- ...params,
|
|
|
+ ...paramsEnd,
|
|
|
groupArr: groupArr
|
|
|
}
|
|
|
param.createType = '1'
|
|
@@ -829,23 +879,23 @@
|
|
|
cpaBid: item.cpaBid != '' ? item.cpaBid * 1000 : '',
|
|
|
bid: item.bid != '' ? item.bid * 1000 : '',
|
|
|
deepConversionBid: item.deepConversionBid != '' ? item.deepConversionBid * 1000 : '',
|
|
|
- ocpxActionType: item.bidType,
|
|
|
+ ocpxActionType: item.ocpxActionType,
|
|
|
bidType: item.bidType == 1 ? 2 : 10
|
|
|
}
|
|
|
})[0]
|
|
|
console.log(groupArrTwo)
|
|
|
- params.type = 'copy'
|
|
|
- params.createType = '2'
|
|
|
- params.createCount = this.countAll
|
|
|
- params.copyUnitId = this.unitId
|
|
|
- params.copyToCampaignId = this.copyCampaignId
|
|
|
- params.campaignId = this.oneCampaignId
|
|
|
- params.createCount = 1
|
|
|
- params.groupArr = groupArrTwo
|
|
|
- params.unitNames = groupArrTwo.unitName.map(item => {
|
|
|
+ paramsEnd.type = 'copy'
|
|
|
+ paramsEnd.createType = '2'
|
|
|
+ paramsEnd.createCount = this.countAll
|
|
|
+ paramsEnd.copyUnitId = this.unitId
|
|
|
+ paramsEnd.copyToCampaignId = this.copyCampaignId
|
|
|
+ paramsEnd.campaignId = this.oneCampaignId
|
|
|
+ paramsEnd.createCount = 1
|
|
|
+ paramsEnd.groupArr = groupArrTwo
|
|
|
+ paramsEnd.unitNames = groupArrTwo.unitName.map(item => {
|
|
|
return item.unitName
|
|
|
})
|
|
|
- postAction('/kuaishou/batch/copyUnitUpdate', params).then(res => {
|
|
|
+ postAction('/kuaishou/batch/copyUnitUpdate', paramsEnd).then(res => {
|
|
|
if (res.success) {
|
|
|
if (res.result.failInfo.length > 0) {
|
|
|
// this.form.setFieldsValue(pick(params, ['sceneId']))
|
|
@@ -981,6 +1031,24 @@
|
|
|
this.allForm.groupTypeData = res.result
|
|
|
}
|
|
|
})
|
|
|
+
|
|
|
+ getAction('/kuaishou/batch/getWhiteList',{
|
|
|
+ accountId:localStorage.getItem('accountId')
|
|
|
+ }).then(res=>{
|
|
|
+ if(res.success){
|
|
|
+ console.log(res)
|
|
|
+ if(res.result){
|
|
|
+ if(res.result.alliance_account == 1){
|
|
|
+ this.allianceAccount = true
|
|
|
+ }else{
|
|
|
+ this.allianceAccount = false
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ this.allianceAccount = false
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
getAction('/kuaishou/batch/getProjectMaxBid', {
|
|
|
accountId: localStorage.getItem('accountId')
|
|
|
}).then(res => {
|