Explorar o código

渠道号开始制作,预警加速探索测试分支备注

朱鑫波 %!s(int64=3) %!d(string=hai) anos
pai
achega
20d55d9bf3

+ 2 - 2
src/utils/request.js

@@ -21,8 +21,8 @@ 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://gateway.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'; // 生产环境
 
 }
 const service = axios.create({

+ 43 - 0
src/views/modules/autoLaunch/channelManage/channelManage.less

@@ -0,0 +1,43 @@
+
+.channelManage {
+    .middle-button {
+        margin: 0 8px;
+    }
+    .divider {
+        height: 62px;
+    }
+    .showNumBox {
+        background: white;
+        overflow: hidden;
+        margin: 15px 0;
+        padding: 30px 0;
+        text-align: center;
+        .ant-card-body {
+            padding-top: 0;
+        }
+        .title {
+            font-size: 14px;
+            font-family: PingFangSC-Regular, PingFang SC;
+            font-weight: 400;
+            color: #999999;
+            line-height: 22px;
+            display: inline-block;
+        }
+    }
+    .tabbody {
+        background: white;
+        padding: 0 24px;
+        margin-bottom: 15px;
+        .ant-tabs-bar {
+            margin: 0;
+        }
+    }
+    .chartBox {
+        background: white;
+        padding: 20px 0;
+    }
+    .tableBody {
+        background: white;
+        padding: 20px;
+    }
+}

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 1378 - 0
src/views/modules/autoLaunch/channelManage/index.vue


+ 6 - 7
src/views/modules/autoLaunch/components/configLaunchExploreDrawer.vue

@@ -29,7 +29,7 @@
             <div v-if="exploreHistory == '1'">
                 <a-form :form="form">
                     <p style="font-size:16px">
-                        加速探索开启后预算会在6小时内消耗完成,给单元提供更多的曝光机会,系统对当前单元的判断更加精准,加速探索不一定能使单元探索成功。
+                        加速探索开启后预算会在6小时内消耗完成,给单元提供更多的曝光机会,使系统对当前单元的判断更加精准,加速探索不一定能使单元探索成功。
                     </p>
                     <p style="font-size:16px">
                         当前预算:<span v-if="nowBudget == 0" style="font-weight:700"> 不限 </span
@@ -39,7 +39,7 @@
                         探索预算
                         <a-tooltip>
                             <template slot="title">
-                                注意:此处的预算为单组预算,总预算为 选择广告组数*单组预算 ,总预算不能超过当前账户预算
+                                注意:此处的预算为单组预算,总预算为:选择广告组数*单组预算 ,总预算不能超过当前账户预算
                             </template>
                             <a-icon type="question-circle" /> </a-tooltip
                         >:
@@ -73,16 +73,18 @@
                     <a-row :gutter="24" style="margin-bottom:15px">
                         <a-col :md="8" :sm="8" :xxl="8">
                             <a-form-item label="广告组ID">
-                                <a-input v-decorator="['unitId']" type="text" placeholder="请输入需要搜索的广告组ID" />
+                                <a-input allow-clear v-decorator="['unitId']" type="text" placeholder="请输入需要搜索的广告组ID" />
                             </a-form-item>
                         </a-col>
                         <!--  -->
                         <a-col :md="8" :sm="8" :xxl="8">
-                            <a-form-item label="广告组名称">
+                            <a-form-item label="广告组名称" style="    display: flex;">
                                 <a-input
+                                    allow-clear
                                     v-decorator="['unitName']"
                                     type="text"
                                     placeholder="请输入需要搜索的广告组名称"
+
                                 />
                             </a-form-item>
                         </a-col>
@@ -97,9 +99,6 @@
                                     <a-select-option key="null">
                                         全选
                                     </a-select-option>
-                                    <a-select-option :key="0">
-                                        默认
-                                    </a-select-option>
                                     <a-select-option :key="1">
                                         加速探索
                                     </a-select-option>

+ 48 - 33
src/views/modules/autoLaunch/configLaunchList.vue

@@ -14,7 +14,7 @@
         
         <div class="topOptions">
             <div >
-                <Treeselect :appId.sync="accountId" :multiple="false"  request="2,4"   ref="treeSelect" style="margin-bottom:8px;width:600px " />               
+                <Treeselect :appId.sync="accountId" :multiple="false"  request="2,4"   ref="treeSelect" style="margin-bottom:8px;width:600px " />          
             </div>
             <span class="optionBtn">
                 <a-button type='primary' @click="search" class="searchBtn">查询</a-button>
@@ -34,7 +34,6 @@
                     :pagination="ipagination"
                     :loading="loading"
                     @change="sort"
-                    :scroll="{'x':scrollX}"
                     
                 >
                     <span slot="status" slot-scope="text,record">
@@ -90,22 +89,8 @@
                     <span slot="operator" slot-scope="text,record">
                         <a href="javascript:;"  @click="goPlanList(record)">编辑</a>
                         <a-divider type="vertical" />
-                        <a href="javascript:;"  @click="deleteRecord(record)">删除</a>
-                        <a-divider type="vertical" />
-                        <a-popover v-model="record.show" trigger="click" placement="topRight" @visibleChange='visibleChange'>
-                            <div slot="content">
-                                    <span style='font-weight:700;margin-right:15px;font-size:15px'>修改后重提</span>
-                                    <a-radio-group v-model="examineAgainType" >
-                                        <a-radio :value="1">修改广告语</a-radio>
-                                        <a-radio :value="0">修改封面</a-radio>
-                                    </a-radio-group>
-                                    <a-button type='default' @click="examineAgainCancel(record)" size='small' style='margin-right:10px'>取消</a-button>
-                                    <a-button type='primary' @click="examineAgainOk(record)" size='small'  class="ok">重提</a-button>
-                            </div>
-                            <a href="javascript:;"  type='primary' @click="()=>{record.show=true}">一键重提</a>
-                            
-                        </a-popover>
-                        <a-divider type="vertical" />
+                        <!-- <a href="javascript:;"  @click="deleteRecord(record)">删除</a>
+                        <a-divider type="vertical" /> -->
                         <a-popover v-model="record.visible" trigger="click" placement="topLeft" @visibleChange='visibleChange'>
                             <span slot="title">出价</span>
                             <template  slot="content" style="width:300px;">
@@ -122,12 +107,43 @@
                             </template>
                             <a href="javascript:;"  type='primary' @click="()=>{record.visible=true}">修改出价</a>
                         </a-popover>
+                        
                         <!-- <a-divider type="vertical" />
-                        <a  @click="goExplore(record)">加速探索</a> -->
+                        -->
+                        <a-divider type="vertical" />
+                        
+                        <a-dropdown>
+                            <a class="ant-dropdown-link" @click="e => e.preventDefault()">
+                                更多
+                            </a>
+                            <a-menu slot="overlay">
+                                <a-menu-item>
+                                    <a  @click="goExplore(record)">加速探索</a>
+                                </a-menu-item>
+                                <a-menu-item>
+                                    <a-popover v-model="record.show" trigger="click" placement="topRight" @visibleChange='visibleChange'>
+                                        <div slot="content">
+                                                <span style='font-weight:700;margin-right:15px;font-size:15px'>修改后重提</span>
+                                                <a-radio-group v-model="examineAgainType" >
+                                                    <a-radio :value="1">修改广告语</a-radio>
+                                                    <a-radio :value="0">修改封面</a-radio>
+                                                </a-radio-group>
+                                                <a-button type='default' @click="examineAgainCancel(record)" size='small' style='margin-right:10px'>取消</a-button>
+                                                <a-button type='primary' @click="examineAgainOk(record)" size='small'  class="ok">重提</a-button>
+                                        </div>
+                                        <a href="javascript:;"  type='primary' @click="()=>{record.show=true}">一键重提</a>
+                                        
+                                    </a-popover>
+                                </a-menu-item>
+                                <a-menu-item>
+                                    <a href="javascript:;"  @click="deleteRecord(record)">删除</a>
+                                </a-menu-item>
+                            </a-menu>
+                        </a-dropdown>
                     </span>
-                    <span slot="action" slot-scope="text,record">
+                    <!-- <span slot="action" slot-scope="text,record">
                         <a  @click="goExplore(record)">加速探索</a>
-                    </span>
+                    </span> -->
                     
 
                 </a-table>
@@ -161,7 +177,6 @@ const strategyColumns = [
     align: 'center',
     scopedSlots: { customRender: 'status' },
     width:110,
-    
   },
    {
     title: '所属账户名称',
@@ -169,7 +184,7 @@ const strategyColumns = [
     key: 'authName',
     align: 'center',
     scopedSlots: { customRender: 'authName' }, 
-    width:300  
+    width:200,
   },
   {
     title: '所属账户ID',
@@ -222,17 +237,17 @@ const strategyColumns = [
     key: 'operator',
     align: 'center',
     scopedSlots: { customRender: 'operator' },
-    width:350,
-   
   },
-  {
-    title: '探索工具',
-    dataIndex: 'action',
-    key: 'action',
-    align: 'center',
-    scopedSlots: { customRender: 'action' }
+//   {
+//     title: '探索工具',
+//     dataIndex: 'action',
+//     key: 'action',
+//     align: 'center',
+//     scopedSlots: { customRender: 'action' },
+//     fixed:'right',
+//     width:150,
    
-  },
+//   },
 
 ];
 
@@ -264,7 +279,7 @@ export default {
             strategyState:undefined,
             strategyName:'',
             strategyId:undefined,
-            scrollX:0,
+            scrollX:1400,
             ipagination: {
                 current: 1,
                 pageSize: 10,

+ 43 - 9
src/views/modules/earlyWarningRules/configRules.vue

@@ -21,7 +21,7 @@
                         </div>
                         <div class="input-item"> 
                              <a-form-model-item ref="eventRuleLevel"  prop="eventRuleLevel">
-                                <a-radio-group v-model="form.mediaType" :disabled="form.templateId!=null">
+                                <a-radio-group v-model="form.mediaType" :disabled="form.templateId!=null" @change="mediaTypeAllChange">
                                     <a-radio-button :value="3" >头条</a-radio-button>
                                     <a-radio-button :value="2">快手</a-radio-button>
                                     <!-- <a-radio-button :value="3">头条内广</a-radio-button>
@@ -203,7 +203,7 @@
                                                                     :options="item.rulesFieldList"
                                                                     placeholder="选择指标"
                                                                     @change="baseIndexChange(ele,item)"
-                                                                    expand-trigger="hover"
+                                                                    expand-trigger="click"
                                                                     :disabled="!!ele.ruleId"
                                                                     :fieldNames="{ label:'name', value: 'code',children: 'children'}"
                                                                 />
@@ -230,7 +230,7 @@
                                                                 </a-select>
                                                             </a-form-model-item>                                                             
                                                         </div>
-                                                        <div class="rules-list-item-subject" v-if="item.operation==1&&ele.baseIndex&&ele.baseIndex[ele.baseIndex.length-1]=='cost'">
+                                                        <div class="rules-list-item-subject" v-if="item.operation==1&&ele.baseIndex&&(ele.baseIndex[ele.baseIndex.length-1]=='cost'||ele.baseIndex[ele.baseIndex.length-1]=='charge')">
                                                             <a-form-model-item ref="variableType"  prop="variableType">
                                                                 <a-select   v-model="ele.cindicatorCode" :disabled="!!ele.ruleId">
                                                                     <a-select-option  value='charge'>金额</a-select-option>
@@ -570,6 +570,11 @@ export default {
                             if(item.dataType!='number'){
                                 ele.threshold=''
                             }
+                            if(ele.baseIndex[1] == 'cost'||ele.baseIndex[1] == 'charge'){
+                                ele.cindicatorCode = 'charge'
+                            }else{
+                                ele.cindicatorCode = 'bid'
+                            }
                             getAction(this.url.ruleCondition,{
                                 dataType:item.conditionType
                             }).then(res=>{
@@ -842,7 +847,7 @@ export default {
 
                                        
                                         getAction(this.url.ruleCondition,{
-                                            dataType:ele.dataType
+                                            dataType:ele.conditionType
                                         }).then(result=>{
                                             if(result.success){
                                                 ele.conditionList=result.result
@@ -882,7 +887,34 @@ export default {
             }
 
         },
-
+        mediaTypeAllChange(){
+            for (let i = 0; i < this.form.ruleList.length; i++) {
+                this.form.ruleList[i].operation = 1
+                this.form.ruleList[i].ruleDetail = []
+                this.form.ruleList[i].ruleDetail.push({
+                        ruleName:'',
+                        baseIndex:[],
+                        
+                        indicatorCode:undefined,
+                        ruleDimension:'',
+                        dataRange:'CURRENT_DAY_DATA',
+                        ruleCondition:undefined,                                
+                        threshold:0,
+                        variableType:1,  
+                        dataUnit:'',
+                        conditionList:[],
+                        dataType:'',
+                        judgeFormat:0,
+                        isUnlimited:1,
+                        cindicatorCode:'charge',
+                        ruleId:null
+                    })
+                this.$nextTick(()=>{
+                    this.getMediaTypeRuleField(1,this.form.ruleList[i])
+                })
+                
+            }
+        },
         mediaTypeChange(e,item){
            
             if(e.target.value == 0){
@@ -890,7 +922,8 @@ export default {
             }else if(e.target.value==1){
                 item.operate = 'BUDGET'
             }
-            item.ruleDetail = {
+            item.ruleDetail = []
+            item.ruleDetail.push({
                 ruleName:'',
                 baseIndex:[],
                 
@@ -905,8 +938,9 @@ export default {
                 dataType:'',
                 judgeFormat:0,
                 isUnlimited:1,
-                cindicatorCode:'charge'
-            }
+                cindicatorCode:'charge',
+                ruleId:null
+            })
             this.$nextTick(()=>{
                 this.getMediaTypeRuleField(e.target.value,item)
             })
@@ -1167,7 +1201,7 @@ export default {
         margin-bottom: 24px;  
     }
     .toolbox-automate-rules-create-content_rules-and-condition_rules, .toolbox-automate-rules-create-content_rules-and-condition_condition {
-        width: 1138px;
+        width: 100%;
         background: #fff;
         border-radius: 4px;
         border: 1px solid #dadfe3;

+ 37 - 3
src/views/modules/earlyWarningRules/ruleModule.vue

@@ -132,7 +132,7 @@
                                         ~
                                       </span>
                                       <a-input-number
-                                        v-if=" value.ruleCondition == 'between'"
+                                        v-if=" value.ruleCondition == 'between'&&(value.cindicatorCode=='charge'||value.cindicatorCode=='cost')"
                                         :disabled="!editShow"
                                         style="width: 100px; margin-right: 5px"
                                         v-model="value.thresholdTwo"
@@ -140,6 +140,40 @@
                                         :max="999999.99"
                                         :step="0.01"
                                       />
+                                       <a-select 
+                                        allowClear
+                                        v-else-if="value.ruleCondition == 'between'&&value.cindicatorCode=='dayBudget'" 
+                                        v-model="value.thresholdTwo" 
+                                        style="width: 100px; margin-right: 5px"
+                                        :disabled="!editShow"
+                                      >
+                                        <a-select-option value="0.5">
+                                          0.5倍预算
+                                        </a-select-option>
+                                        <a-select-option value="0.8">
+                                          0.8倍预算
+                                        </a-select-option>
+                                        <a-select-option value="1">
+                                          1倍预算
+                                        </a-select-option>
+                                        <a-select-option value="1.2">
+                                          1.2倍预算
+                                        </a-select-option>
+                                      </a-select>
+                                      <a-select 
+                                        allowClear
+                                        v-else-if="value.ruleCondition == 'between'&&value.cindicatorCode=='bid'" 
+                                        v-model="value.thresholdTwo" 
+                                        style="width: 100px; margin-right: 5px"
+                                        :disabled="!editShow"
+                                      >
+                                        <a-select-option value="1.2">
+                                          1.2倍出价
+                                        </a-select-option>
+                                         <a-select-option value="1.5">
+                                          1.5倍出价
+                                        </a-select-option>
+                                      </a-select>
                                       
                                       
                                       
@@ -1326,7 +1360,7 @@ export default {
                 } else {
                   return {
                     ...end,
-                    thresholdTwo:end.ruleCondition == 'between'?end.threshold.split('~')[1]:undefined,
+                    thresholdTwo:end.threshold&&end.ruleCondition == 'between'?end.threshold.split('~')[1]:undefined,
                     threshold:
                       end.modelType == 'tagBox'
                         ? end.threshold == null
@@ -1336,7 +1370,7 @@ export default {
                         ? end.dataType == 'array'
                           ? end.threshold
                           : [end.threshold]
-                        : end.ruleCondition == 'between'?end.threshold.split('~')[0]:end.threshold
+                        : end.threshold&&end.ruleCondition == 'between'?end.threshold.split('~')[0]:end.threshold
                   }
                 }
               }),

+ 2 - 2
vue.config.js

@@ -105,7 +105,7 @@ module.exports = {
         // target: 'http://192.168.1.43:8088', //请求本地 需要jeecg-boot后台项目  毕洁泉
         // target: 'http://192.168.1.43:8806', //请求本地 需要jeecg-boot后台项目  毕洁泉
         // target: 'http://192.168.0.252:8098', //请求本地 需要jeecg-boot后台项目  毕洁泉
-        // target: 'http://192.168.1.219:8080', //请求本地 需要jeecg-boot后台项目  赵西安
+        target: 'http://192.168.1.219:7701', //请求本地 需要jeecg-boot后台项目  赵西安
         // target: 'http://192.168.1.193:8080', //请求本地 需要jeecg-boot后台项目  李煜一
         // target: 'http://192.168.1.193:31012', //请求本地 需要jeecg-boot后台项目  李煜一
         // target: 'http://api.tjyourong.com.cn', //请求本地 需要jeecg-boot后台项目
@@ -116,7 +116,7 @@ module.exports = {
         // target:'http://118.24.244.213:8804',
         // target: 'http://192.168.1.43:9999', // 子安
         // target: 'http://192.168.1.8:8806', // 学超
-        target:'http://gateway.tjyourong.com.cn', //测试
+        // target:'http://gateway.tjyourong.com.cn', //测试
         // target:'http://apipre.tjyourong.com.cn', //预生产
         // target: 'http://192.168.1.134:8080', //请求本地 需要jeecg-boot后台项目  周泽宇