Bladeren bron

智能投放2.0-测试结束

朱鑫波 3 jaren geleden
bovenliggende
commit
d7fd33b324

+ 2 - 2
src/utils/request.js

@@ -21,9 +21,9 @@ else if (process.env.NODE_ENV === 'debug') {
 else if (process.env.NODE_ENV === 'production') {
 	// axios.defaults.baseURL = 'http://apipre.tjyourong.com.cn/jeecg-boot'; // 预生产
 	// axios.defaults.baseURL = 'http://gateway.tjyourong.com.cn/jeecg-boot';//测试
-	axios.defaults.baseURL = 'http://api.tjyourong.com.cn/jeecg-boot'; // 生产环境
+	// axios.defaults.baseURL = 'http://api.tjyourong.com.cn/jeecg-boot'; // 生产环境
 	// axios.defaults.baseURL = 'http://gateway.tjyourong.com.cn/jeecg-boot'; // 测试环境
-	// axios.defaults.baseURL = 'http://192.168.0.195:9999/jeecg-boot'; // 测试环境
+	axios.defaults.baseURL = 'http://192.168.0.195:9999/jeecg-boot'; // 测试环境
 	// axios.defaults.baseURL = 'http://192.168.1.134:9999/jeecg-boot'; // 泽宇环境
 
 }

+ 2 - 12
src/views/modules/autoLaunchRevision/components/targetedPopulation.vue

@@ -1398,12 +1398,7 @@ export default {
         getAppAllElse(e) {
             this.checkArr = this.optionsAll
             // this.getAppAll()
-            var data = ''
-            if (this.$route.path == '/creat/creatUnit') {
-                data = localStorage.getItem('campaignAccountId')
-            } else {
-                data = localStorage.getItem('accountId')
-            }
+            var data = localStorage.getItem('createLaunch')
             if (this.appListValue != '') {
                 getAction('/kuaishou/batch/getAppSearch', {
                     accountId: data,
@@ -1424,12 +1419,7 @@ export default {
             }
         },
         getAppAll(e) {
-            var data = ''
-            if (this.$route.path == '/creat/creatUnit') {
-                data = localStorage.getItem('campaignAccountId')
-            } else {
-                data = localStorage.getItem('accountId')
-            }
+            var data = localStorage.getItem('createLaunch')
             if (e.target.value !== '') {
                 getAction('/kuaishou/batch/getAppSearch', {
                     accountId: data,

+ 1 - 0
src/views/modules/autoLaunchRevision/components/templateModal.vue

@@ -148,6 +148,7 @@ export default {
             this.type = type
             this.populationData = {}
             this.accountId = accountId
+            localStorage.setItem('createLaunch', accountId)
         },
         handleOk(item, type) {
             this.spinning = true

+ 132 - 21
src/views/modules/autoLaunchRevision/createLaunch.vue

@@ -9,6 +9,24 @@
     height: auto !important;
     line-height: 20px !important;
 }
+::v-deep .white-space-other .ant-descriptions-item-content {
+    font-weight: bold;
+    max-width: 290px;
+    white-space: nowrap;
+    text-overflow: ellipsis !important;
+    overflow: hidden;
+    position: relative;
+    top: 5px;
+}
+::v-deep .white-space-collapse .ant-descriptions-item-content {
+    font-weight: bold;
+    max-width: 100%;
+    white-space: nowrap;
+    text-overflow: ellipsis !important;
+    overflow: hidden;
+    position: relative;
+    top: 5px;
+}
 /deep/.display-none-selset {
     display: none !important;
 }
@@ -284,6 +302,7 @@ li.chouzhen.first:before {
                                                     initialValue: 2
                                                 }
                                             ]"
+                                            @change="changeCampaignType"
                                         >
                                             <a-radio-button :value="2">提升应用安装</a-radio-button>
                                             <a-radio-button :value="5" disabled>收集销售线索</a-radio-button>
@@ -449,7 +468,7 @@ li.chouzhen.first:before {
                         <a-row :gutter="16" class="bottom-to-one">
                             <a-col :span="16">
                                 <a-form-item label="" v-bind="tailFormItemLayout">
-                                    <a-descriptions>
+                                    <a-descriptions class="white-space-other">
                                         <a-descriptions-item label="系统平台">
                                             {{
                                                 appDetail && appDetail.platformOs
@@ -498,33 +517,54 @@ li.chouzhen.first:before {
                                             {{ channelData.channel.isHaveItem == 1 ? '是' : '否' }}
                                         </a-descriptions-item>
 
-                                        <a-descriptions-item label="调起链接">
-                                            {{ appDetail && appDetail.schemaUri ? appDetail.schemaUri : '无' }}
-                                        </a-descriptions-item>
                                         <a-descriptions-item label="转化跟踪" v-if="convertId && !convert">
                                             {{ convertId.label }}
                                         </a-descriptions-item>
                                         <a-descriptions-item label="优先从系统应用商店下载">
                                             {{ appDetail && appDetail.useAppMarket ? '是' : '否' }}
                                         </a-descriptions-item>
+                                        <a-descriptions-item label="调起链接">
+                                            <a-tooltip placement="topLeft">
+                                                <template slot="title">
+                                                    {{ appDetail && appDetail.schemaUri ? appDetail.schemaUri : '无' }}
+                                                </template>
+                                                {{ appDetail && appDetail.schemaUri ? appDetail.schemaUri : '无' }}
+                                            </a-tooltip>
+                                        </a-descriptions-item>
                                     </a-descriptions>
                                 </a-form-item>
                             </a-col>
                         </a-row>
                         <a-row :gutter="16" v-for="(item, index) in multipleBidData" :key="index">
                             <a-col :span="16" v-if="!appDetail.useChannel">
-                                <a-form-item :label="'应用' + (index + 1)" v-bind="formItemLayout">
+                                <a-form-item
+                                    :label="'应用' + (index + 1)"
+                                    :labelCol="{ span: 4 }"
+                                    :wrapperCol="{ span: 20 }"
+                                >
                                     <a-collapse expand-icon-position="right">
                                         <a-collapse-panel key="1" :header="item.appName">
-                                            <a-descriptions>
+                                            <a-descriptions class="white-space-collapse">
                                                 <a-descriptions-item label="应用标识" :span="3">
                                                     {{ item.appVersion }}
                                                 </a-descriptions-item>
                                                 <a-descriptions-item label="第三方点击监测链接" :span="3">
-                                                    {{ !!item.clickTrackUrl ? item.clickTrackUrl : '-' }}
+                                                    <a-tooltip placement="topLeft">
+                                                        <template slot="title">
+                                                            {{ !!item.clickTrackUrl ? item.clickTrackUrl : '-' }}
+                                                        </template>
+                                                        {{ !!item.clickTrackUrl ? item.clickTrackUrl : '-' }}
+                                                    </a-tooltip>
                                                 </a-descriptions-item>
                                                 <a-descriptions-item label="第三方actionBar监测链接" :span="3">
-                                                    {{ !!item.actionbarClickUrl ? item.actionbarClickUrl : '-' }}
+                                                    <a-tooltip placement="topLeft">
+                                                        <template slot="title">
+                                                            {{
+                                                                !!item.actionbarClickUrl ? item.actionbarClickUrl : '-'
+                                                            }}
+                                                        </template>
+                                                        {{ !!item.actionbarClickUrl ? item.actionbarClickUrl : '-' }}
+                                                    </a-tooltip>
                                                 </a-descriptions-item>
                                             </a-descriptions>
                                         </a-collapse-panel>
@@ -532,7 +572,11 @@ li.chouzhen.first:before {
                                 </a-form-item>
                             </a-col>
                             <a-col :span="16" v-else>
-                                <a-form-item :label="'应用' + (index + 1)" v-bind="formItemLayout">
+                                <a-form-item
+                                    :label="'应用' + (index + 1)"
+                                    :labelCol="{ span: 4 }"
+                                    :wrapperCol="{ span: 20 }"
+                                >
                                     <p style="width:100%;display: flex;justify-content: space-between;">
                                         {{ item.appName }}({{ item.appVersion }})
                                         <a @click="lookChannel(item.appName)">详情</a>
@@ -546,8 +590,8 @@ li.chouzhen.first:before {
                             目标人群
                             <a-tooltip>
                                 <template slot="title">
-                                    定向包支持多选
-                                    将根据人群包匹配情况进行随机匹配。若账户中无此人群包则进行下一个定向包匹配。若此账户全部匹配不成功则不创建
+                                    定向包支持多选,
+                                    将根据人群包匹配情况进行随机匹配。若账户中无此人群包,则进行下一个定向包匹配。若此账户全部匹配不成功则不创建
                                 </template>
                                 <a-icon type="question-circle" />
                             </a-tooltip>
@@ -1195,6 +1239,12 @@ li.chouzhen.first:before {
 
                                     <a-form-item v-if="appDetail && !appDetail.useChannel">
                                         <span slot="label">
+                                            <a-tooltip>
+                                                <template slot="title">
+                                                    若有多个关键字,请用"-"隔开
+                                                </template>
+                                                <a-icon type="question-circle" />
+                                            </a-tooltip>
                                             素材关键字
                                         </span>
                                         <a-textarea
@@ -1497,18 +1547,48 @@ li.chouzhen.first:before {
                                 调起链接
                             </span>
 
-                            <a-switch default-checked v-model="uriCheck" />
-                            <span style="color:red"> 需加白使用</span>
+                            <a-switch
+                                default-checked
+                                v-model="uriCheck"
+                                :disabled="getFormData('formProject', 'campaignType') == 7"
+                            />
+                            <span style="color:red" v-if="getFormData('formProject', 'campaignType') != 7">
+                                需加白使用</span
+                            >
                             <div v-if="uriCheck">
                                 <a-input
                                     placeholder="请填写链接"
-                                    v-decorator="['schemaUri', { rules: [{ message: '链接不能为空' }] }]"
+                                    v-decorator="[
+                                        'schemaUri',
+                                        {
+                                            rules: [
+                                                {
+                                                    required:
+                                                        uriCheck && getFormData('formProject', 'campaignType') == 7,
+                                                    message: '链接不能为空'
+                                                }
+                                            ]
+                                        }
+                                    ]"
                                 />
                             </div>
                         </a-form-item>
                     </a-col>
                 </a-row>
+                <a-row :gutter="16" v-if="getFormData('formProject', 'campaignType') == 7">
+                    <a-col :span="16">
+                        <a-form-item>
+                            <span slot="label">
+                                H5链接
+                            </span>
 
+                            <a-input
+                                placeholder="请填写链接"
+                                v-decorator="['url', { rules: [{ required: true, message: '链接不能为空' }] }]"
+                            />
+                        </a-form-item>
+                    </a-col>
+                </a-row>
                 <a-row :gutter="16">
                     <a-col :span="16">
                         <a-form-item label="选择应用">
@@ -1834,7 +1914,8 @@ li.chouzhen.first:before {
         >
             <!-- @close="closeUnit('createForm')" -->
             <h2 slot="title" style="margin-bottom: 0">定向包选择</h2>
-            <div style="display: flex;justify-content:space-between">
+            <span style="color:red;">该页面仅展示与目标应用所选系统相同或包含目标应用系统的定向包</span>
+            <div style="display: flex;justify-content:space-between;margin-top:10px">
                 <div>
                     <a-input placeholder="输入定向包名称关键词" style="width:50%" v-model="searchTemplate" />
                     <a-button
@@ -2240,11 +2321,12 @@ li.chouzhen.first:before {
                 <a-row :gutter="16">
                     <a-col :span="16" style="width: 110%;margin-left: -11%;">
                         <a-form-item label="广告位置">
+                            <!-- { label: '视频播放页广告', value: 3 }, -->
                             <checkBoxGroup
                                 :options="[
                                     { label: '优选广告位', value: 1 },
                                     { label: '上下滑大屏广告', value: 6 },
-                                    { label: '视频播放页广告', value: 3 },
+
                                     { label: '激励视频广告', value: 24 },
                                     { label: '联盟广告', value: 5 }
                                 ]"
@@ -2472,7 +2554,12 @@ li.chouzhen.first:before {
                                         <!-- {{ getFormData('description').length  }}/30 -->
                                     </p>
                                     <div style="position:absolute;right:0;top:-10px">
-                                        <a-icon type="plus" @click="addDescription()" style="margin-right:15px" />
+                                        <a-icon
+                                            type="plus"
+                                            @click="addDescription()"
+                                            style="margin-right:15px"
+                                            v-if="descriptionList.length < 30"
+                                        />
                                         <a-icon
                                             type="minus"
                                             @click="removeDescription(index)"
@@ -3055,6 +3142,13 @@ export default {
     },
     methods: {
         moment,
+        changeCampaignType(e) {
+            if (e.target.value == 7) {
+                this.uriCheck = true
+            }else {
+                this.uriCheck = false
+            }
+        },
         changeAccount() {
             // formProject: this.$form.createForm(this), //选择项目表单
             // formInformation: this.$form.createForm(this), //设置基本信息表单
@@ -3443,6 +3537,13 @@ export default {
                         )
                         // this.appDetail = { platformOs: data.platformOs, singleAppid: 1 }
                         this.useChannel = res.result.useChannel ? (res.result.useChannel == 1 ? true : false) : false
+
+                        if (data.campaignType == 7) {
+                            this.uriCheck = true
+                        } else {
+                            this.uriCheck = data.schemaUri && data.schemaUri != '' ? true : false
+                        }
+
                         this.postDataAction('/kuaishou/kuaiShouAppList/getAppNames', {
                             appIdArray: JSON.parse(data.appIdArray)
                         }).then(result => {
@@ -3460,9 +3561,10 @@ export default {
                                     platformOs: result.result[0].platform < 3 ? 1 : 2,
                                     singleAppid: 1,
                                     appId: { key: result.result[0].appId },
-                                    schemaUri: res.result.schemaUri,
+                                    schemaUri: data.schemaUri,
                                     useChannel: this.useChannel,
                                     siteId: data.siteId,
+                                    url: data.url,
                                     useAppMarket: data.useAppMarket ? (data.useAppMarket == 1 ? true : false) : false,
                                     appStore: data.appStore ? JSON.parse(data.appStore) : []
                                 }
@@ -3602,7 +3704,10 @@ export default {
                                 ...this.showCreativeData,
                                 ...this.formInformaData,
                                 appStore: this.appDetail.appStore ? JSON.stringify(this.appDetail.appStore) : '[]',
-                                useAppMarket: this.appDetail.useAppMarket
+                                useAppMarket: this.appDetail.useAppMarket,
+                                schemaUri: this.appDetail.schemaUri ? this.appDetail.schemaUri : '',
+                                siteId: this.appDetail.siteId ? this.appDetail.siteId : '',
+                                url: this.appDetail.url ? this.appDetail.url : ''
                             }
                             if (this.budgetType === '2') {
                                 params.campaignDayBudget = params.campaignDayBudget * 1000
@@ -3687,6 +3792,7 @@ export default {
                                 this.postDataAction('/auto/aiKuaishouAccountAutoStrategy/edit', params).then(res => {
                                     if (res.success) {
                                         this.sumbitLoading = false
+                                        localStorage.removeItem('createLaunch')
                                         // window.close()
                                     } else {
                                         this.sumbitLoading = false
@@ -3697,6 +3803,7 @@ export default {
                                 this.postDataAction('/auto/aiKuaishouAccountAutoStrategy/add', params).then(res => {
                                     if (res.success) {
                                         this.sumbitLoading = false
+                                        localStorage.removeItem('createLaunch')
                                         // window.close()
                                     } else {
                                         this.sumbitLoading = false
@@ -4014,7 +4121,12 @@ export default {
             })
         },
         closeUnit(form) {
-            this.uriCheck = false
+            if (this.getFormData('formProject', 'campaignType') == 7) {
+                this.uriCheck = true
+            } else {
+                this.uriCheck = false
+            }
+
             this.targetAppVisible = false
             this.multipleBidDataDrawer = []
             this.appDetailMiddle = null
@@ -4227,7 +4339,6 @@ export default {
             }
         },
         changeType(e) {
-            console.log(e.target.value)
             this.appList = []
             if (e.target.value === 1) {
                 this.appList = this.appListAll.filter(item => {