Преглед изворни кода

Merge branch 'test' of https://gitee.com/hcst/adsp-vue into test

zhuxinbo пре 5 година
родитељ
комит
b51c743539

+ 1 - 0
package.json

@@ -40,6 +40,7 @@
     "vue": "^2.6.10",
     "vue-apexcharts": "^1.3.2",
     "vue-class-component": "^6.0.0",
+    "vue-count-to": "^1.0.13",
     "vue-cropper": "^0.4.8",
     "vue-i18n": "^8.7.0",
     "vue-layer": "^1.0.2",

+ 70 - 3
src/views/modules/bytedance/model/InternalModel.vue

@@ -18,10 +18,25 @@
       </a-form-item>
 
       <a-form-item
-        label="模板名称"
+        label="选择已有广告组"
         :labelCol="labelCol"
         :wrapperCol="wrapperCol">
-        <a-input v-model="templateName" placeholder="请输入模板名称">
+        <a-select
+          v-model="campaignId"
+          showSearch
+          placeholder="选择已有广告组"
+          optionFilterProp="children"
+          style="width: 400px"
+        >
+          <a-select-option v-for="campaign in existCampaignList" :key="campaign.campaign_id" :value="campaign.campaign_id">{{campaign.name}}</a-select-option>
+        </a-select>
+      </a-form-item>
+
+      <a-form-item
+        label="创意名称"
+        :labelCol="labelCol"
+        :wrapperCol="wrapperCol">
+        <a-input v-model="templateName" placeholder="请输入创意名称">
         </a-input>
       </a-form-item>
       <a-form-item
@@ -84,6 +99,36 @@
         </a-select>
       </a-form-item>
 
+      <a-form-item
+        v-if="deliveryRange=='2'"
+        label="定向流量包"
+        :labelCol="labelCol"
+        :wrapperCol="wrapperCol">
+        <a-select
+          mode="tags"
+          placeholder="选择需要定向的流量包"
+          style="width: 600px"
+          v-model="flowPackage"
+        >
+          <a-select-option v-for="getPackage in flowPackageList" :key="getPackage.flow_package_id.toString()" :value="getPackage.flow_package_id.toString()">{{getPackage.name}}</a-select-option>
+        </a-select>
+      </a-form-item>
+
+      <a-form-item
+        v-if="deliveryRange=='2'"
+        label="排除流量包"
+        :labelCol="labelCol"
+        :wrapperCol="wrapperCol">
+        <a-select
+          mode="tags"
+          placeholder="选择需要排除的流量包"
+          style="width: 600px"
+          v-model="excludeFlowPackage"
+        >
+          <a-select-option v-for="getPackage in flowPackageList" :key="getPackage.flow_package_id.toString()" :value="getPackage.flow_package_id.toString()">{{getPackage.name}}</a-select-option>
+        </a-select>
+      </a-form-item>
+
 
       <a-form-item
         label="投放目标"
@@ -343,6 +388,11 @@
     components: {AFormItem},
     data() {
       return {
+        existCampaignList:[],
+        flowPackageList:[],
+        excludeFlowPackage:[],
+        flowPackage:[],
+        campaignId:'',
         webUrl:'',
         retargetingTagsExclude:[],
         retargetingTagsInclude:[],
@@ -429,7 +479,9 @@
           convertList:'template/convert/list/url',
           userOrentationList:'ctop/byteDanceUserOrientationTemplate/list',
           creativeTemplateList:'/ctop/bytedanceCreativeLaunchTemplate/list',
-          userAudienceList:'toutiao/advertiser/custom/audience/select'
+          userAudienceList:'toutiao/advertiser/custom/audience/select',
+          getCampanginList:'toutiao/advertiser/campaign/list',
+          getFlowPackageList:'toutiao/advertiser/custom/package/get'
         }
       }
     },
@@ -563,6 +615,18 @@
             this.audienceList = res.data;
           }
         });
+        params = {};
+        getAction(this.url.getCampanginList+'?accountId='+this.accountId, params).then((res) => {
+          if (res.success) {
+            this.existCampaignList = res.data;
+          }
+        });
+        params = {};
+        getAction(this.url.getFlowPackageList+'?accountId='+this.accountId, params).then((res) => {
+          if (res.success) {
+            this.flowPackageList = res.data;
+          }
+        });
       },
       onChangeDeliveryTarget(value) {
         console.log(value);
@@ -612,6 +676,7 @@
         }
         console.log("付费方式:" + this.priceType);
         console.log("目标转化出价:" + this.convertPrice);
+        params.campaignId = this.campaignId;
         params.userOrientationId = this.userOrientationId;
         params.templateName = this.templateName;
         params.accountId = this.accountId;
@@ -639,6 +704,8 @@
         params.convertType = this.convertType;
         params.retargetingTagsExclude = this.retargetingTagsExclude;
         params.retargetingTagsInclude = this.retargetingTagsInclude;
+        params.flowPackage = this.flowPackage;
+        params.excludeFlowPackage = this.excludeFlowPackage;
         if (this.time != [] && this.time.length == 2) {
           params.startDate = moment(this.time[0]).format('YYYY-MM-DD HH:mm')
           params.endDate = moment(this.time[1]).format('YYYY-MM-DD HH:mm')

+ 21 - 18
src/views/template/creative/modules/material.vue

@@ -84,6 +84,26 @@
                       :accessKeySecret="accessKeySecret"
                     ></upload-to-ali>
                   </a-form-item>
+
+                  <a-form-item
+                    label="封面上传"
+                    :labelCol="labelCol"
+                    :wrapperCol="wrapperCol"
+                    v-if="(materialType=='CREATIVE_IMAGE_MODE_VIDEO_VERTICAL'||materialType=='CREATIVE_IMAGE_MODE_VIDEO')"
+                  >
+                    <upload-to-ali
+                      v-model="item.imageUrl"
+                      :customDomain="customDomain"
+                      preview
+                      :region="region"
+                      :bucket="bucket"
+                      :accept="acceptImage"
+                      :size="102400"
+                      :accessKeyId="accessKeyId"
+                      :accessKeySecret="accessKeySecret"
+                    ></upload-to-ali>
+                  </a-form-item>
+
                   <a-form-item
                     label="创意标题"
                     :labelCol="labelCol"
@@ -106,24 +126,7 @@
                     >{{itemTag.name}}</a-tag>
                     <span @click="showElseClick(item)">{{item.showElse?"更多":"收起"}}</span>
                   </a-form-item>
-                  <a-form-item
-                    label="封面上传"
-                    :labelCol="labelCol"
-                    :wrapperCol="wrapperCol"
-                    v-if="creativeType == 'program'&&(materialType=='CREATIVE_IMAGE_MODE_VIDEO_VERTICAL'||materialType=='CREATIVE_IMAGE_MODE_VIDEO')"
-                  >
-                    <upload-to-ali
-                      v-model="item.imageUrl"
-                      :customDomain="customDomain"
-                      preview
-                      :region="region"
-                      :bucket="bucket"
-                      :accept="acceptImage"
-                      :size="102400"
-                      :accessKeyId="accessKeyId"
-                      :accessKeySecret="accessKeySecret"
-                    ></upload-to-ali>
-                  </a-form-item>
+
                 </div>
               </a-card>
             </a-col>

+ 25 - 0
src/views/template/userorientation/modules/ByteDanceUserOrientationTemplateModal.vue

@@ -81,6 +81,23 @@
           </a-radio-group>
         </a-form-item>
 
+        <a-form-item label="精选流量包" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-radio-group v-model="superiorPopularityType">
+            <a-radio-button value="NONE">不限</a-radio-button>
+            <a-radio-button value="APP">应用软件精选</a-radio-button>
+            <a-radio-button value="GAME">游戏精选</a-radio-button>
+            <a-radio-button value="ZDY">自定义流量包</a-radio-button>
+          </a-radio-group>
+        </a-form-item>
+
+        <a-form-item label="设备类型" :labelCol="labelCol" :wrapperCol="wrapperCol">
+          <a-radio-group v-model="deviceTypeChshj">
+            <a-radio-button value="NONE">不限</a-radio-button>
+            <a-radio-button value="MOBILE">智能手机</a-radio-button>
+            <a-radio-button value="PAD">平板</a-radio-button>
+          </a-radio-group>
+        </a-form-item>
+
         <a-form-item label="网络" :labelCol="labelCol" :wrapperCol="wrapperCol">
           <a-checkbox-group v-model="netType">
             <a-checkbox
@@ -159,6 +176,8 @@ export default {
   },
   data() {
     return {
+      deviceTypeChshj:'NONE',
+      superiorPopularityType:'NONE',
       cityStr:[],
       areaStr:[],
       adTagStr:[],
@@ -303,6 +322,8 @@ export default {
       this.intrestType="NONE";
       this.gender="NONE";
       this.ageRange=null;
+      this.superiorPopularityType = 'NONE';
+      this.deviceTypeChshj = 'NONE';
     },
     edit(record) {
       console.log(record)
@@ -326,6 +347,8 @@ export default {
       this.cityStr = JSON.parse(record.cityStr);
       this.areaStr = JSON.parse(record.districtStr);
       this.adTagStr = JSON.parse(record.adTagStr);
+      this.deviceTypeChshj = record.deviceType;
+      this.superiorPopularityType = record.superiorPopularityType;
       this.id = record.id;
       // this.form.resetFields()
       this.model = Object.assign({}, record)
@@ -393,6 +416,8 @@ export default {
           params.cityList = this.cityList;
           params.areaList = this.areaList;
           params.intrestCategoryList = this.intrestCategoryList;
+          params.deviceType = this.deviceTypeChshj;
+          params.superiorPopularityType = this.superiorPopularityType;
 
           console.log(params);
           postAction(this.url.insertUrl,params).then((res)=>{

Разлика између датотеке није приказан због своје велике величине
+ 0 - 12633
yarn.lock