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

Merge remote-tracking branch 'origin/master'

syh пре 5 година
родитељ
комит
46d5a085de

+ 1 - 0
debug.log

@@ -5,3 +5,4 @@
 [0701/153438.192:ERROR:file_io.cc(89)] ReadExactly: expected 36, observed 0
 [0708/055752.148:ERROR:process_info.cc(375)] NtQuerySystemInformation SystemExtendedHandleInformation: {没有足够配额} 没有足够的虚拟内存或分页文件配额以完成指定的操作。 (0xc0000017)
 [0708/055807.088:ERROR:process_info.cc(359)] UncheckedAllocate
+[0713/163350.208:ERROR:file_io.cc(89)] ReadExactly: expected 36, observed 0

+ 3 - 0
src/components/layouts/TabLayout.vue

@@ -85,6 +85,7 @@
           localStorage.removeItem("step")
           localStorage.removeItem("campaignId")
           localStorage.removeItem("pans")
+          localStorage.removeItem("pansKey")
           localStorage.removeItem("appId")
       }
       if(!this.linkList.includes("/account/advertisingGroup")){
@@ -110,6 +111,7 @@
           localStorage.removeItem("step")
           localStorage.removeItem("campaignId")
           localStorage.removeItem("pans")
+          localStorage.removeItem("pansKey")
           localStorage.removeItem("appId")
         }
         if(!this.linkList.includes("/account/advertisingGroup")){
@@ -156,6 +158,7 @@
         if(key == "/account/stepForm"){
             localStorage.removeItem("step")
             localStorage.removeItem("pans")
+            localStorage.removeItem("pansKey")
         }
         if(key == "/account/originality"){
             localStorage.removeItem("originality")

+ 0 - 1
src/views/modules/advertiser/ProjectList.vue

@@ -192,7 +192,6 @@
     },
     mounted() {
       getAction('/sys/user/getAllUserList', '').then(res => {
-        console.log(res)
         if (res.success) {
           this.options = res.result
         }

+ 0 - 10
src/views/modules/advertiser/ProjectMemberList.vue

@@ -422,7 +422,6 @@
         params.projectId = item.id
         params.status = 0
         getAction('/ctop/transferAccount/list', params).then(res => {
-          console.log(res)
           if (res.success) {
             this.projectVisible = true
             this.dataProject = res.result.map((item, index) => {
@@ -441,7 +440,6 @@
         params.status = status
         params.auditor = this.userInfo().id
         putAction('/ctop/transferAccount/edit', params).then(res => {
-          console.log(res)
           if (res.success) {
             this.projectVisible = false
             this.getResponsibleList()
@@ -475,7 +473,6 @@
         })
       },
       onTabChange(key, type) {
-        console.log(key, type)
         this[type] = key
         this.keyWord = ''
         if (key == 'myProject') {
@@ -551,7 +548,6 @@
         if (this.noTitleKey == 'myProject') {
           this.visibleAdd = true
           this.itemJson = item
-          console.log(this.itemJson)
           getAction('/sys/user/getAllUserList', '').then(res => {
             if (res.success) {
               this.list = res.result
@@ -577,7 +573,6 @@
       handleAdd() {},
       handleEdit(item) {
         if (this.noTitleKey == 'myProject') {
-          console.log(item)
           this.title = item.projectName
           this.projectId = item.id
           this.getMemberList(item.id)
@@ -590,7 +585,6 @@
       },
       handleDelete(id) {},
       onChageLogin(e) {
-        console.log(this.mode)
         if (this.mode == 'login') {
           this.loginType = 'pangolin'
         } else {
@@ -661,17 +655,14 @@
         })
       },
       handleChange(value, options) {
-        console.log(value, options)
         //   this.appId = value
       },
       getElseData(value) {
         this.getStatistics()
       },
       handleBlur() {
-        console.log('blur')
       },
       handleFocus() {
-        console.log('focus')
         if (this.appId.length > 0) {
           this.options = []
           for (let i = 0; i < this.list.length; i++) {
@@ -693,7 +684,6 @@
             return data.toLowerCase().indexOf(value.toLowerCase()) > -1
           })
           this.options = [...this.options]
-          console.log(this.options)
         } else {
           if (this.appId.length > 0) {
             this.options = []

+ 0 - 5
src/views/modules/advertiser/UserAllocationList.vue

@@ -261,7 +261,6 @@
     mounted() {
       this.getParticipateList()
       getAction('/sys/user/getAllUserList', '').then(res => {
-        console.log(res)
         if (res.success) {
           this.optionsAll = res.result
         }
@@ -270,7 +269,6 @@
     methods: {
       moment,
       onChangeSwitch(item) {
-        console.log(item)
         var params = {}
         params.id = item.id
         params.accountStatus = item.accountStatus == 0 ? 1 : 0
@@ -304,7 +302,6 @@
         })
       },
       project(item) {
-        console.log(item)
         this.visibleAdd = true
         this.accountId = item.accountId
         this.projectId = item.projectId
@@ -333,9 +330,7 @@
             params.projectId = this.projectId
             params.accountId = this.accountId
             params.status = 0
-            console.log(params)
             postAction('/ctop/transferAccount/add', params).then(res => {
-              console.log(res)
               if (res.success) {
                 this.confirmLoading = false
                 this.visibleAdd = false

+ 1 - 1
src/views/modules/kuaishouapp/account/editGroup.vue

@@ -249,7 +249,7 @@
                           ? '不得低于1元,不得高于项目最高出价' + maxBid + '元'
                           : '不得低于1元,不得高于项目最高出价' + maxBid + '元'
                       }}</span>
-                       <span style="color:red;font-weight:700" v-else-if="item.bidType!=180&&item.cpaBid&&item.cpaBid>1">
+                       <span style="color:red;font-weight:700" v-else-if="item.bidType==2&&item.cpaBid&&item.cpaBid>1">
                           行为出价大于1元,请注意!!!
                       </span>
                     </a-form-item>

+ 1 - 1
src/views/modules/kuaishouapp/account/editGroupNew.vue

@@ -249,7 +249,7 @@
                           ? '不得低于1元,不得高于项目最高出价' + maxBid + '元'
                           : '不得低于1元,不得高于项目最高出价' + maxBid + '元'
                       }}</span>
-                      <span style="color:red;font-weight:700" v-else-if="item.bidType!=180&&item.cpaBid&&item.cpaBid>1">
+                      <span style="color:red;font-weight:700" v-else-if="item.bidType==2&&item.cpaBid&&item.cpaBid>1">
                         行为出价大于1元,请注意!!!
                       </span>
                     </a-form-item>

+ 1 - 0
src/views/modules/kuaishouapp/account/originality.vue

@@ -504,6 +504,7 @@
           var dataJson = JSON.stringify(this.title)
           console.log(this.title, this.titleKey)
           localStorage.setItem('pans', dataJson)
+          localStorage.setItem('pansKey', this.titleKey)
           this.$router.replace({
             path: '/account/stepForm'
           })

+ 1 - 1
src/views/modules/kuaishouapp/account/stepForm/Step2.vue

@@ -278,7 +278,7 @@
                           ? '不得低于1元,不得高于项目最高出价' + maxBid + '元'
                           : '不得低于1元,不得高于项目最高出价' + maxBid + '元'
                       }}</span>
-                      <span style="color:red;font-weight:700" v-else-if="item.bidType!=180&&item.cpaBid&&item.cpaBid>1">
+                      <span style="color:red;font-weight:700" v-else-if="item.bidType==2&&item.cpaBid&&item.cpaBid>1">
                           行为出价大于1元,请注意!!!     
                       </span>
                     </a-form-item>

+ 102 - 198
src/views/modules/kuaishouapp/account/stepForm/Step3.vue

@@ -1,4 +1,4 @@
-<style>
+<style lang="scss">
   .chouzhen span {
     display: inline-block;
   }
@@ -7,6 +7,28 @@
     text-align: center;
     font-size: 20px;
   }
+
+  .step3-image {
+    span {
+      padding: 0
+    }
+
+    .ant-checkbox {
+      position: absolute;
+      top: 0;
+      left: 0;
+      z-index: 100;
+    }
+  }
+
+  .step3-modal {
+    .ant-checkbox {
+      position: absolute;
+      top: 0;
+      right: 0;
+      z-index: 100;
+    }
+  }
 </style>
 <style scoped lang="scss">
   .actor-photo-list {
@@ -20,7 +42,6 @@
       height: 380px;
       border: 1px solid #f2f2f2;
       list-style: none;
-      padding: 10px;
 
       img,
       video {
@@ -58,6 +79,7 @@
     text-align: center;
     background: rgba(0, 0, 0, 0.5);
     border-radius: 2px;
+    z-index: 1000;
   }
 
   .actor-photo-list {
@@ -119,14 +141,15 @@
                             v-if="item.videoList"></video>
                         </a-form-item>
                         <div class="downLoad" style="overflow:auto">
-                          <ul class="actor-photo-list"
+                          <ul class="actor-photo-list step3-image"
                             :style="{ width: item.imageUrlList.length>4?25 * item.imageUrlList.length + '%':'100%' }"
                             v-if="item.imageUrlList.length > 0">
                             <a-checkbox-group v-model="item.checkArrImage"
                               style="width:100%;  display: flex;padding-left: 0;" @change="onChangeCheckImage">
                               <li v-for="(item, index) of item.imageUrlList" :key="index">
-                                <a-checkbox :value="item.code" style="position:absolute;z-index: 100"></a-checkbox><img
-                                  class="video" :src="item.url" />
+                                <a-checkbox :value="item.code" style="height:100%;width:100%">
+                                  <img class="video" :src="item.url" />
+                                </a-checkbox>
                               </li>
                             </a-checkbox-group>
                           </ul>
@@ -281,13 +304,18 @@
         全选
       </a-button>
       <!-- </a-checkbox> -->
-      <ul v-if="chouzhenList.length>0" style="height:600px;overflow:auto;padding-left:0">
+      <ul v-if="chouzhenList.length>0" style="height:600px;overflow:auto;padding-left:0" class="step3-modal">
+
+        <a-checkbox-group v-model="checkList" @change="onChange" style="width:100%;">
+          <li v-for="(item,index) of chouzhenList" :key="index" class="chouzhen" style="height:355px"
+            :class="{'first':index == 0}">
+
 
-        <a-checkbox-group v-model="checkList" @change="onChange">
-          <li v-for="(item,index) of chouzhenList" :key="index" class="chouzhen" :class="{'first':index == 0}">
+            <a-checkbox :value="item.signature"
+              style="position:absolute;z-index: 100;width:100%;height:100%;right:0;top:0;float:right">
+              <img :src="item.url" alt="" style="width:100%">
 
-            <img :src="item.url" alt="" style="width:100%">
-            <a-checkbox :value="item.signature" style="position:absolute;z-index: 100;right:0;top:0;"></a-checkbox>
+            </a-checkbox>
 
           </li>
         </a-checkbox-group>
@@ -301,14 +329,17 @@
         <a-tab-pane :tab="item.label" v-for="item of tab" :key="item.value">
           <a-range-picker name="buildTime" style="width: 400px;margin:10px 0" v-model="time" />
           <ul v-if="dataSource.length>0" style="overflow:auto;padding-left:0">
-            <a-checkbox-group v-model="checkVideo" @change="onChangeVideo">
-              <li v-for="(item,index) of dataSource" :key="index" class="chouzhen">
-                <img :src="item.coverUrl" alt="" style="width:100%" @click="matemalVideo(item,index)">
+            <a-checkbox-group v-model="checkVideo" @change="onChangeVideo" style="width:100%">
+              <li v-for="(item,index) of dataSource" :key="index" class="chouzhen" style="height:350px;">
+
                 <!-- <video class="video" :src="item.url" controls="controls" style="width:100%">
                   您的浏览器不支持 video 标签。
                 </video> -->
-                <a-checkbox :value="item" style="position:absolute;z-index: 100;right:0;top:0;"></a-checkbox>
-
+                <a-checkbox :value="item" style="width:100%;position:absolute;z-index: 100;right:0;top:0;">
+                  <img :src="item.coverUrl" alt="" style="width:100%;margin-bottom:10px">
+                </a-checkbox>
+                <a @click="matemalVideo(item,index)"
+                  style="position:absolute;z-index: 100;right:56px;bottom: 5px;">查看视频</a>
               </li>
             </a-checkbox-group>
           </ul>
@@ -800,6 +831,13 @@
           this.$bus.$emit('remove', '/account/stepForm')
         } else {
           this.addCreative(0)
+          getAction('/kuaishou/batch/checkCreativeCount', {
+            unitId: this.pansKey,
+            accountId: localStorage.getItem('accountId')
+          }).then(res => {
+            console.log(res)
+            this.content = res.result
+          })
         }
       },
       handleOk() {
@@ -824,6 +862,7 @@
         this.visible = false
         this.remove(this.pansKey)
       },
+
       handleSubmit(e) {
         e.preventDefault()
         var index = this.pans.findIndex(item => item.key === this.pansKey)
@@ -872,7 +911,7 @@
               ...values,
               unitId: this.pansKey,
               accountId: localStorage.getItem('accountId'),
-              content: this.content 
+              content: this.content
             }
             postAction('/kuaishou/batch/createCreative', params).then(res => {
               if (res.success) {
@@ -1403,204 +1442,69 @@
       }
     },
     mounted: function () {
-      if (localStorage.getItem('pans')) {
-        this.pans = JSON.parse(localStorage.getItem('pans')).map(item => {
-          return {
-            ...item,
-            list: []
-          }
-        })
-
-        this.pansKey = this.pans[0].key
-        this.$nextTick(() => {
-          this.addCreative(0)
-        })
-        getAction('/kuaishou/batch/checkCreativeCount', {
-          unitId: this.pansKey,
-          accountId: localStorage.getItem('accountId')
-        }).then(res => {
-          console.log(res)
-          this.content = res.result
-        })
-        getAction('/kuaishou/batch/getActionBarText', {
-          campaignId: localStorage.getItem('campaignId') ? localStorage.getItem('campaignId') : localStorage
-            .getItem('advertisingGroupKey')
-        }).then(res => {
-          if (res.success) {
-            this.appList = res.result
-          }
-        })
+      this.$nextTick(() => {
+        if (localStorage.getItem('pans')) {
+          this.pans = JSON.parse(localStorage.getItem('pans')).map(item => {
+            return {
+              ...item,
+              list: []
+            }
+          })
 
-        if (localStorage.getItem('appId')) {
-          this.showSite = true
-          this.getAppList(localStorage.getItem('appId'))
-        } else {
+          this.pansKey = this.pans[0].key
 
-          getAction('/kuaishou/batch/getAppId', {
-            accountId: localStorage.getItem('accountId'),
-            unitId: this.pansKey
+          this.addCreative(0)
+          getAction('/kuaishou/batch/checkCreativeCount', {
+            unitId: this.pansKey,
+            accountId: localStorage.getItem('accountId')
+          }).then(res => {
+            console.log(res)
+            this.content = res.result
+          })
+          getAction('/kuaishou/batch/getActionBarText', {
+            campaignId: localStorage.getItem('campaignId') ? localStorage.getItem('campaignId') : localStorage
+              .getItem('advertisingGroupKey')
           }).then(res => {
             if (res.success) {
-              if (res.result) {
-                this.showSite = true
-                this.getAppList(res.result)
-              } else {
-                this.showSite = false
-              }
-
+              this.appList = res.result
             }
           })
-        }
-
-
-      }
-      getAction('/kuaishou/batch/creativeWord', {
-        accountId: localStorage.getItem('accountId')
-      }).then(res => {
-        if (res.success) {
-          this.tags = res.result
-        }
-      })
-    }
-  }
-</script>
-<style lang="scss">
-  .select_all {
-    margin-bottom: 10px;
-  }
-
-  .ant_modal_body_container {
-    .ant-modal-body {
-      max-height: 650px;
-      overflow-y: scroll;
 
-      .image_item_container {
-        margin: 0 -10px;
-        width: 100%;
-
-        .image_item {
-          display: inline-block;
-          width: 20%;
-          padding: 0 10px;
-          box-sizing: border-box;
-          margin-bottom: 20px;
-
-          .label_item {
-            display: block;
-            cursor: pointer;
-          }
-
-          .item_img {
-            width: 100%;
-            margin-bottom: 10px;
-          }
-
-          .item_text {
-            height: 42px;
-            overflow: hidden;
-            margin-bottom: 0;
-          }
+          if (localStorage.getItem('appId')) {
+            this.showSite = true
+            this.getAppList(localStorage.getItem('appId'))
+          } else {
 
-          .item_checkbox {
-            margin-bottom: 0;
-          }
+            getAction('/kuaishou/batch/getAppId', {
+              accountId: localStorage.getItem('accountId'),
+              unitId: this.pansKey
+            }).then(res => {
+              if (res.success) {
+                if (res.result) {
+                  this.showSite = true
+                  this.getAppList(res.result)
+                } else {
+                  this.showSite = false
+                }
 
-          .video {
-            width: 100%;
+              }
+            })
           }
-        }
-      }
-    }
-
-    .video_item_container {
-      .video {
-        width: 100%;
-      }
-    }
-  }
 
-  //   多选框
-  .checkbox_item_container {
-    .item_ul {
-      margin: 0 -10px;
 
-      .item_li {
-        width: 20%;
-        float: left;
-        padding: 0 10px;
-        box-sizing: border-box;
-
-        .item:hover i {
-          display: block;
-          cursor: pointer;
         }
-
-        .item {
-          position: relative;
-
-          i {
-            display: none;
-          }
-
-          video {
-            width: 100%;
-            min-height: 255px;
-          }
-
-          .checkbox_item {
-            display: block;
-
-            .ant-checkbox {
-              display: inline-block;
-            }
-
-            span {
-              display: block;
-              padding: 0;
-
-              .item_txt {
-                text-align: left;
-                height: 42px;
-                overflow: hidden;
-              }
-            }
+        getAction('/kuaishou/batch/creativeWord', {
+          accountId: localStorage.getItem('accountId')
+        }).then(res => {
+          if (res.success) {
+            this.tags = res.result
           }
-        }
-      }
-    }
-  }
+        })
+      })
 
-  // @media (min-width: 1024px){
-  //     .checkbox_item_container {
-  //         width:70%
-  //     }
-  // } /*>=1024的设备*/
-
-  // @media (min-width: 1100px) {
-  //     .checkbox_item_container {
-  //         width:70%
-  //     }
-  // } /*>=1100的设备*/
-  @media (min-width: 1280px) {
-    .checkbox_item_container_size {
-      width: 70%;
     }
   }
+</script>
+<style lang="scss">
 
-  /*>=1280的设备*/
-
-  // @media (min-width: 1366px) {
-  // }
-
-  // @media (min-width: 1440px) {
-  // }
-
-  // @media (min-width: 1680px) {
-
-  // }
-  @media (min-width: 1920px) {
-    .checkbox_item_container_size {
-      width: 50%;
-    }
-  }
 </style>

+ 26 - 2
src/views/modules/kuaishouapp/account/stepForm/stepModule/targetedPopulation.vue

@@ -63,6 +63,7 @@ li:hover {
           border: targeted == '4' ? '1px solid #f2f2f2' : '0',
           padding: targeted == '4' ? '20px' : '0'
         }"
+        v-clickoutside="targetedShow"
       >
         <div style="display:flex;margin-top:15px" v-if="targeted == '4' || targeted == '2'">
           <span style="white-space:nowrap;width:10%" v-if="targeted == '4'">定向池:</span>
@@ -71,8 +72,10 @@ li:hover {
             @focus="
               topMiddle = true
               topMiddleNo = false
+              dataList = dataElse
             "
             v-model="keyValue"
+            @change="showOne"
           />
         </div>
 
@@ -109,8 +112,10 @@ li:hover {
             @focus="
               topMiddleNo = true
               topMiddle = false
+              dataList = dataElse
             "
             v-model="keyValueNo"
+            @change="showTwo"
           />
         </div>
 
@@ -878,7 +883,8 @@ export default {
       selectedRowKeysValue: [],
       selectedRowKeysNo: [],
       selectedRowKeysValueNo: [],
-      dataList: []
+      dataList: [],
+      dataElse:[]
     }
   },
   computed: {},
@@ -894,6 +900,7 @@ export default {
                   key: index
                 }
               })
+              this.dataElse = this.dataList
               resolve(res.result)
             }
           }
@@ -948,7 +955,20 @@ export default {
         this.keyValueNo += this.selectedRowKeysValueNo[i].orientationName + '   '
       }
     },
-
+    showOne(){
+    //    this.keyValueNo =orientationName
+        var data = this.keyValue.split('   ')
+        this.dataList = this.dataElse.filter(item => {
+          return item.orientationName.toLowerCase().indexOf(data[data.length-1].toLowerCase()) > -1
+        })
+    },
+    showTwo(){
+    //    this.keyValueNo =orientationName
+        var data = this.keyValueNo.split('   ')
+        this.dataList = this.dataElse.filter(item => {
+          return item.orientationName.toLowerCase().indexOf(data[data.length-1].toLowerCase()) > -1
+        })
+    },
     getAge(e) {
       this.allForm.noAgeBreak = e.target.checked
     },
@@ -989,6 +1009,10 @@ export default {
     handleClose(e) {
       this.closeDialog = false
     },
+    targetedShow(e){
+        this.topMiddle = false
+        this.topMiddleNo = false
+    },
     clearAll() {
       this.checkArr = []
       this.indeterminate = false

+ 3 - 3
vue.config.js

@@ -65,15 +65,15 @@ module.exports = {
        },*/
       '/jeecg-boot': {
        
-        target: 'http://192.168.1.90:8080', //请求本地 需要jeecg-boot后台项目  蒙蒙
+        // target: 'http://192.168.1.90:8080', //请求本地 需要jeecg-boot后台项目  蒙蒙
        
-        target: 'http://192.168.1.72:8088', //请求本地 需要jeecg-boot后台项目  英豪
+        // target: 'http://192.168.1.72:8088', //请求本地 需要jeecg-boot后台项目  英豪
        
         // target: 'http://192.168.2.115:8080', //请求本地 需要jeecg-boot后台项目  祚云
         // target: 'http://192.168.1.94:8804', //请求本地 需要jeecg-boot后台项目  孙震
         // target: 'http://192.168.1.51:8088', //请求本地 需要jeecg-boot后台项目  毕洁泉
         // target: 'http://192.168.1.165:8848', //请求本地 需要jeecg-boot后台项目  毕洁泉
-        // target: 'http://api.tjyourong.com.cn', //请求本地 需要jeecg-boot后台项目 
+        target: 'http://api.tjyourong.com.cn', //请求本地 需要jeecg-boot后台项目 
         // target: 'https://trac.tjyourong.com.cn', //请求本地 需要jeecg-boot后台项目 
         // target: 'http://192.168.1.251:8088', //请求本地 需要jeecg-boot后台项目 
         // target: 'http://adsp.tjyourong.com.cn/', //请求本地 需要jeecg-boot后台项目