魏志佳 4 سال پیش
والد
کامیت
cffa0597e6

+ 3 - 3
src/views/modules/BatchCreate/newCreate.vue

@@ -699,9 +699,9 @@
       },
     },
     beforeDestroy() {
-      // localStorage.removeItem('groupInfo');
-      // localStorage.removeItem('planInfo');
-      // localStorage.removeItem('accountInfo');
+      localStorage.removeItem('groupInfo');
+      localStorage.removeItem('planInfo');
+      localStorage.removeItem('accountInfo');
 
     },
     mounted() {

+ 7 - 1
src/views/modules/BatchCreate/newGroup.vue

@@ -199,7 +199,7 @@ export default {
                         }      
                         });
                         // console.log(this.treeData)
-                        
+                        this.accountID=this.accountInfo.value
                     }
             }
             })
@@ -373,6 +373,12 @@ export default {
             this.form.setFieldsValue({
                 campaignName:`销售线索收集_${moment().format('MM_DD_HH:SS')}`
             })
+        };
+
+        let accountInfo=localStorage.getItem('accountInfo');
+        if(accountInfo!=null){
+            this.accountInfo=JSON.parse(accountInfo);
+
         }
     },
     // beforeCreate() {

+ 11 - 4
src/views/modules/Statistics/companyDetail.vue

@@ -30,6 +30,8 @@
             :loading="loading"
             size="middle"
             :scroll="{ x: 2300 }"
+            :pagination="ipagination"
+            @change="pageChange"
           >
             <!-- <span slot="isHasData" slot-scope="text">{{ text == 0 ? '否' : '是' }}</span> -->
             <span slot="fengmianClickRate" slot-scope="text">{{ text | getBo }}</span>
@@ -59,7 +61,7 @@ import { getAction, postAction, downFilePost } from '@/api/manage'
 import { mapGetters } from 'vuex'
 
 import qs from 'qs'
-
+import { JeecgListMixin } from '@/mixins/ipagination'
 const barData = []
 for (let i = 0; i < 12; i += 1) {
   barData.push({
@@ -218,7 +220,7 @@ export default {
     ATooltip,
     ACol
   },
-
+  mixins: [JeecgListMixin],
   data: function() {
     return {
       isHasData: '1',
@@ -298,12 +300,17 @@ export default {
               ...item,
               key: index
             }
-          })
+          });
+          this.ipagination.total=res.total
         } else {
           this.$message.error(res.message)
         }
       })
-    }
+    },
+    pageChange(pagination, filters, sorter, { currentDataSource }){            
+        this.ipagination.current=pagination.current;
+        this.getCompanyReport(this.active)
+    },
   },
   created() {
     var weekDate = localStorage.getItem('companyDate')

+ 20 - 7
src/views/modules/Statistics/companyStatistics.vue

@@ -126,6 +126,8 @@ th div {
             size="middle"
             :scroll="{ x: 1900 }"
             :loading="loading"
+            :pagination="ipagination"
+            @change="pageChange"
           >
             <span slot="fengmianClickRate" slot-scope="text">{{ text | getBo }}</span>
             <span slot="convertClickRate" slot-scope="text">{{ text | getBo }}</span>
@@ -148,10 +150,11 @@ import axios from 'axios'
 import lifting from './components/lifting'
 import timeCheck from './components/timeCheck'
 import Treeselect from './components/Treeselect.vue'
-
+import { JeecgListMixin } from '@/mixins/ipagination'
 import { getAction, postAction, postFile, downFilePost } from '@/api/manage'
 import { mapGetters } from 'vuex'
 
+
 var length = 0
 var active = 1
 
@@ -313,6 +316,7 @@ export default {
     timeCheck,
     Treeselect
   },
+  mixins: [JeecgListMixin],
   data: function() {
     return {
       loading: false,
@@ -438,8 +442,10 @@ export default {
           params.endDate = moment(this.startValue[1]._d).format('YYYY-MM-DD')
           break
       }
+      params.page=this.ipagination.current;
+      params.pageSize=10;
       this.params = params
-      postAction('/report/kuaishouReportDailyAgentSum/companyReport', params).then(res => {
+      postAction('/agent/kuaiShouDailyAgent/companyReport', params).then(res => {
         this.loading = false
         if (res.success) {
           this.dataTable = res.result.map((item, index) => {
@@ -447,12 +453,14 @@ export default {
               ...item,
               key: index
             }
-          })
+          });
+          this.ipagination.total=res.total;
+
         } else {
           this.$message.error(res.message)
         }
       })
-      postAction('/report/kuaishouReportDailyAgentSum/companyReportSum', params).then(res => {
+      postAction('/agent/kuaiShouDailyAgent/companyReportSum', params).then(res => {
         if (res.result) {
           this.allData = [
             { value: res.result.costCampaignCount, label: '有消费计划数' },
@@ -466,8 +474,8 @@ export default {
             { value: res.result.fengmianClickCount, label: '封⾯点击数' },
             { value: res.result.sucaiShowCount, label: '素材曝光数' },
             { value: res.result.convertCount, label: '⾏为数' },
-            { value: res.result.fengmianClickRate.toFixed(2) + '%', label: '封⾯点击率' },
-            { value: res.result.convertClickRate.toFixed(2) + '%', label: '转化点击率' }
+            { value: (res.result.fengmianClickRate*100).toFixed(2) + '%', label: '封⾯点击率' },
+            { value: (res.result.convertClickRate*100).toFixed(2) + '%', label: '转化点击率' }
           ]
           //   {
           //     costCampaignCount: 0, // 有消费计划数
@@ -516,7 +524,12 @@ export default {
       this.$router.replace({
         path: '/Statistics/companyDetail'
       })
-    }
+    },
+    pageChange(pagination, filters, sorter, { currentDataSource }){            
+        this.ipagination.current=pagination.current;
+        this.getCompanyReport(this.active)
+    },
+    
   },
   watch: {},
   distoryed() {},

+ 20 - 18
src/views/modules/Statistics/refuseDataCreat.vue

@@ -59,9 +59,9 @@
       <a-textarea v-model="editWord" autosize />
     </a-modal>
     <a-modal title="一键重提" @cancel="handleClose" :visible="visibleAgain" @ok="handleOkAgain"
-      :confirmLoading="againLoading">
+      :confirmLoading="againLoading" :width="650">
       <a-form :form="form">
-        <a-form-item label="是否修改" :labelCol="{ lg: { span: 6 }, sm: { span: 6 } }"
+        <a-form-item label="是否修改" :labelCol="{ lg: { span: 4 }, sm: { span: 6 } }"
           :wrapperCol="{ lg: { span: 18 }, sm: { span: 18 } }">
           <a-radio-group buttonStyle="solid" v-decorator="[
           'type',
@@ -70,15 +70,13 @@
             <a-radio-button :value="1">是</a-radio-button>
           </a-radio-group>
         </a-form-item>
-        <a-form-item label="广告语" :labelCol="{ lg: { span: 6 }, sm: { span: 6 } }"
+        <a-form-item label="广告语" :labelCol="{ lg: { span: 4 }, sm: { span: 6 } }"
           :wrapperCol="{ lg: { span: 18 }, sm: { span: 18 } }" v-if="getData('type')==1">
-          <a-input v-decorator="[
-          'updateDescription'
-        ]" :max="10" :min="1" style="width:100%" @change="DescriptionChange">
+          <a-input v-model="updateDescription" :max="10" :min="1" style="width:100%" @change="DescriptionChange">
           </a-input>
           <a @click="showTitle()">推荐标题</a><a style="margin-left:10px" @click="showCunTitle()">标题收藏</a>
         </a-form-item>
-        <a-form-item label="行动号召" :labelCol="{ lg: { span: 6 }, sm: { span: 6 } }"
+        <a-form-item label="行动号召" :labelCol="{ lg: { span: 4 }, sm: { span: 6 } }"
           :wrapperCol="{ lg: { span: 18 }, sm: { span: 18 } }" v-if="getData('type')==1">
           <a-select v-decorator="['updateActionBarText']" showSearch allowClear placeholder="选择行动号召按钮文案"
             optionFilterProp="children" :filterOption="filterOption">
@@ -303,7 +301,8 @@
         cunTitleList: [],
         title: [],
         dataOne: [],
-        value: ''
+        value: '',
+        updateDescription:undefined,//重提的广告语
       }
     },
     filters: {
@@ -360,10 +359,10 @@
       // 广告语改变
       DescriptionChange(e){
         console.log(e.target.value);
-        if(e.target.value.length>30){
-          this.form.setFieldsValue({
-            updateDescription:e.target.value.subString(0,30)
-          });
+         if(e.target.value.length>30){
+          
+          this.updateDescription=e.target.value.substr(0,30);
+          // console.log(this.updateDescription)
           this.$message.error('广告语最多30字!')
         }
       },
@@ -378,17 +377,19 @@
       },
       okTitleCun(item) {
         console.log(item)
-        this.form.setFieldsValue({
-          updateDescription: item.title
-        })
+        // this.form.setFieldsValue({
+        //   updateDescription: item.title
+        // })
+        this.updateDescription=item.title;
         this.cunTitleVisible = false;
         this.cunTitleList = []
       },
 
       okTitle(item) {
-        this.form.setFieldsValue({
-          updateDescription: item
-        })
+        // this.form.setFieldsValue({
+        //   updateDescription: item
+        // })
+        this.updateDescription=item;
         this.titleVisible = false;
         this.dataOne = []
         this.value = ""
@@ -526,6 +527,7 @@
         this.againLoading = true
         this.form.validateFields((err, values) => {
           if (!err) {
+            values.updateDescription=this.updateDescription;
             var params = {
 
               ...values,

+ 26 - 13
src/views/modules/Statistics/refuseDataCreatNew.vue

@@ -59,9 +59,9 @@
       <a-textarea v-model="editWord" autosize />
     </a-modal>
     <a-modal title="一键重提" @cancel="handleClose" :visible="visibleAgain" @ok="handleOkAgain"
-      :confirmLoading="againLoading">
+      :confirmLoading="againLoading" :width="650" >
       <a-form :form="form">
-        <a-form-item label="是否修改" :labelCol="{ lg: { span: 6 }, sm: { span: 6 } }"
+        <a-form-item label="是否修改" :labelCol="{ lg: { span: 4 }, sm: { span: 6 } }"
           :wrapperCol="{ lg: { span: 18 }, sm: { span: 18 } }">
           <a-radio-group buttonStyle="solid" v-decorator="[
           'type',
@@ -70,11 +70,9 @@
             <a-radio-button :value="1">是</a-radio-button>
           </a-radio-group>
         </a-form-item>
-        <a-form-item label="广告语" :labelCol="{ lg: { span: 6 }, sm: { span: 6 } }"
+        <a-form-item label="广告语" :labelCol="{ lg: { span: 4 }, sm: { span: 6 } }"
           :wrapperCol="{ lg: { span: 18 }, sm: { span: 18 } }" v-if="getData('type')==1">
-          <a-input v-decorator="[
-          'updateDescription'
-        ]" :max="10" :min="1" style="width:100%">
+          <a-input v-model="updateDescription" :max="10" :min="1" style="width:100%" @change="DescriptionChange">
           </a-input>
           <a @click="showTitle()">推荐标题</a><a style="margin-left:10px" @click="showCunTitle()">标题收藏</a>
         </a-form-item>
@@ -303,7 +301,9 @@
         cunTitleList: [],
         title: [],
         dataOne: [],
-        value: ''
+        value: '',
+
+        updateDescription:undefined,//广告语的字符
       }
     },
     filters: {
@@ -357,6 +357,16 @@
       }
     },
     methods: {
+      // 广告语改变
+      DescriptionChange(e){
+        console.log(e.target.value);
+        if(e.target.value.length>30){
+          
+          this.updateDescription=e.target.value.substr(0,30);
+          // console.log(this.updateDescription)
+          this.$message.error('广告语最多30字!')
+        }
+      },
       filter(inputValue, path) {
         return path.some(option => option.label.toLowerCase().indexOf(inputValue.toLowerCase()) > -1)
       },
@@ -368,17 +378,19 @@
       },
       okTitleCun(item) {
         console.log(item)
-        this.form.setFieldsValue({
-          updateDescription: item.title
-        })
+        // this.form.setFieldsValue({
+        //   updateDescription: item.title
+        // })
+        this.updateDescription=item.title;
         this.cunTitleVisible = false;
         this.cunTitleList = []
       },
 
       okTitle(item) {
-        this.form.setFieldsValue({
-          updateDescription: item
-        })
+        // this.form.setFieldsValue({
+        //   updateDescription: item
+        // })
+        this.updateDescription=item;
         this.titleVisible = false;
         this.dataOne = []
         this.value = ""
@@ -513,6 +525,7 @@
         this.againLoading = true
         this.form.validateFields((err, values) => {
           if (!err) {
+            values.updateDescription=this.updateDescription;
             var params = {
 
               ...values,

+ 2 - 2
vue.config.js

@@ -57,7 +57,7 @@ module.exports = {
     port: 3000,
     proxy: {
       '/jeecg-boot': {
-        // target: 'http://192.168.1.90:8080', //请求本地 需要jeecg-boot后台项目  蒙蒙
+        target: 'http://192.168.1.90:8080', //请求本地 需要jeecg-boot后台项目  蒙蒙
         // target: 'http://192.168.0.59:8088', //请求本地 需要jeecg-boot后台项目  英豪
         // target: 'http://192.168.1.72:8088', //请求本地 需要jeecg-boot后台项目  英豪
         // target: 'http://192.168.2.115:8080', //请求本地 需要jeecg-boot后台项目  祚云
@@ -68,7 +68,7 @@ module.exports = {
         // target: 'http://192.168.1.51:8098', //请求本地 需要jeecg-boot后台项目  毕洁泉
         // target: 'http://192.168.0.252:8098', //请求本地 需要jeecg-boot后台项目  毕洁泉
         // target: 'http://192.168.0.170:8088', //请求本地 需要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://39.106.184.70:8088/', //请求本地 需要jeecg-boot后台项目 
         // target: 'http://adsp.tjyourong.com.cn/', //请求本地 需要jeecg-boot后台项目