Ver Fonte

'媒介-1'

魏志佳 há 5 anos atrás
pai
commit
d48d629961

+ 2 - 2
src/utils/request.js

@@ -13,8 +13,8 @@ if (process.env.NODE_ENV == 'development') {
 else if (process.env.NODE_ENV == 'debug') { 
 } 
 else if (process.env.NODE_ENV == 'production') { 
-    // axios.defaults.baseURL = 'http://192.168.1.251/jeecg-boot';
-axios.defaults.baseURL = 'http://api.tjyourong.com.cn/jeecg-boot';
+    axios.defaults.baseURL = 'http://192.168.1.251/jeecg-boot';
+// axios.defaults.baseURL = 'http://api.tjyourong.com.cn/jeecg-boot';
 }
 const service = axios.create({
 //   baseURL: '/jeecg-boot', // api base_url

+ 40 - 14
src/views/modules/BatchCreate/MultiCheckBox.vue

@@ -5,7 +5,7 @@
             <ul class="linkMulti_list_one">
                 <li class="checkAll"><a-checkbox :indeterminate="indeterminate" :checked="checkAll" @change="onCheckAllChange"> 全选</a-checkbox> </li>
                 <li @click="listItemClick(item)" v-for="(item,index) in listArr" :key='index' :data-layers='curLayerNum' ref="checkList">
-                    <a-checkbox   @change="onChange($event,item)" :value='item.value' :checked='item.checked'>{{item.name}}</a-checkbox>
+                    <a-checkbox   @change="onChange($event,item,index)" :value='item.value' :checked='item.checked' :data-layers='curLayerNum'>{{item.name}}</a-checkbox>
                     <!-- <span>{{item.name}}</span>                        -->
                     <span class="more" v-show="item.children"><a-icon type="right" /></span>
                 </li>                    
@@ -31,23 +31,42 @@
                 currentItem:null,
             }
         },
+        watch: {
+            checkAll:function(n,o){
+                if(n!=o){
+                    // this.onCheckAllChange()
+                }
+            }
+        },
         methods: {
-            onChange(e,item) {
+            onChange(e,item,index) {
                 console.log(e.target,item)
                 if(e.target.checked){
-                    this.$set(item,'checked',true)
+                    // item.checked=true;
+                    this.listArr.forEach((ele,i)=>{
+                        if(index==i){
+                           this.$set(ele,'checked',true)
+                        }
+                    })
+                    
                     this.checkedList.push(e.target.value)
-                    console.log(this.listArr)
+                    
                 }else{
-                    this.$set(item,'checked',e.target.checked)
-                    console.log(this.listArr)
-                    let index=this.checkedList.indexOf(e.target.value);
-                    if(index > -1){
-                        this.checkedList.splice(index,1)
+                    this.listArr.forEach((ele,i)=>{
+                        if(index==i){
+                           this.$set(ele,'checked',false)
+                        }
+                    })
+                    
+                    
+                    let num=this.checkedList.indexOf(e.target.value);
+                    if(num > -1){
+                        this.checkedList.splice(num,1)
                     }
                 }
                 this.indeterminate = !!this.checkedList.length && this.checkedList.length < this.plainOptions.length;
                 this.checkAll = this.checkedList.length === this.plainOptions.length;
+                this.listItemClick(item);
             },
             onCheckAllChange(e) {
                 Object.assign(this, {
@@ -69,7 +88,8 @@
                
                     this.$emit('getItemData',{
                         'clickObj':event.target,
-                        'data':item
+                        'data':item,
+                        
                     })
                 
                 
@@ -91,13 +111,19 @@
         },
         mounted() {
             this.currentLayerNum=this.curLayerNum;
-            // this.plainOptions=this.listArr
+           
             this.listArr.forEach(element => {
-                // console.log(element);
+                
                 this.plainOptions.push(element.value);
-                element.checked=false
+                if(element.checked){
+                    this.checkedList.push(element.value)
+                }
             });
-            console.log(this.curLayerNum)
+            if(this.checkedList.length==this.plainOptions.length){
+                this.checkAll=true;
+            }
+            console.log(this.checkedList)
+            // console.log(this.curLayerNum)
         },
     }
 </script>

+ 39 - 20
src/views/modules/BatchCreate/TouTiaoBatch.vue

@@ -714,31 +714,50 @@ export default {
         decimalsHandle(val){
             
             if(val && typeof val !='string'){
-            val=parseFloat(val).toFixed(2);
-            let numberStr = val.toString()
-            let str = numberStr.split('.')
-            
-            let str0=str[0].split('').reverse();
-            for (let i = 0; i < str0.length; i++) {
-            if ((i + 1) % 4 === 0) {
-                str0.splice(i, 0, ',')
+                if(val>=0){
+                    val=parseFloat(val).toFixed(2);
+                    let numberStr = val.toString()
+                    let str = numberStr.split('.')
+                    
+                    let str0=str[0].split('').reverse();
+                    for (let i = 0; i < str0.length; i++) {
+                        if ((i + 1) % 4 === 0) {
+                            str0.splice(i, 0, ',')
+                        }
+                    }
+                    str0.reverse()
+                    let handleResult = ''
+                    for (let j = 0; j < str0.length; j++) {
+                        handleResult += str0[j]
+                    }
+                    
+                    return handleResult+'.'+str[1]
+                }else{
+                    val=parseFloat(val).toFixed(2);
+                    let numberStr = val.toString()
+                    let str = numberStr.split('.')
+                    
+                    let str0=str[0].substr(1).split('').reverse();
+                    for (let i = 0; i < str0.length; i++) {
+                        if ((i + 1) % 4 === 0) {
+                            str0.splice(i, 0, ',')
+                        }
+                    }
+                    str0.reverse()
+                    let handleResult = ''
+                    for (let j = 0; j < str0.length; j++) {
+                        handleResult += str0[j]
+                    }
+                    
+                    return '-'+handleResult+'.'+str[1]
                 }
-            }
-            str0.reverse()
-            let handleResult = ''
-            for (let j = 0; j < str0.length; j++) {
-                handleResult += str0[j]
-            }
-            
-            return handleResult+'.'+str[1]
+                
             }else if(typeof val =='string'){
                 return val
             }
             else{
-            return 0
-            }
-            
-            
+                return 0
+            }           
         },
         //变成货币格式
         formatCurrency(val){

+ 39 - 20
src/views/modules/BatchCreate/crowedPackage.vue

@@ -546,31 +546,50 @@ export default {
         decimalsHandle(val){
             
             if(val && typeof val !='string'){
-            val=parseFloat(val).toFixed(2);
-            let numberStr = val.toString()
-            let str = numberStr.split('.')
-            
-            let str0=str[0].split('').reverse();
-            for (let i = 0; i < str0.length; i++) {
-            if ((i + 1) % 4 === 0) {
-                str0.splice(i, 0, ',')
+                if(val>=0){
+                    val=parseFloat(val).toFixed(2);
+                    let numberStr = val.toString()
+                    let str = numberStr.split('.')
+                    
+                    let str0=str[0].split('').reverse();
+                    for (let i = 0; i < str0.length; i++) {
+                        if ((i + 1) % 4 === 0) {
+                            str0.splice(i, 0, ',')
+                        }
+                    }
+                    str0.reverse()
+                    let handleResult = ''
+                    for (let j = 0; j < str0.length; j++) {
+                        handleResult += str0[j]
+                    }
+                    
+                    return handleResult+'.'+str[1]
+                }else{
+                    val=parseFloat(val).toFixed(2);
+                    let numberStr = val.toString()
+                    let str = numberStr.split('.')
+                    
+                    let str0=str[0].substr(1).split('').reverse();
+                    for (let i = 0; i < str0.length; i++) {
+                        if ((i + 1) % 4 === 0) {
+                            str0.splice(i, 0, ',')
+                        }
+                    }
+                    str0.reverse()
+                    let handleResult = ''
+                    for (let j = 0; j < str0.length; j++) {
+                        handleResult += str0[j]
+                    }
+                    
+                    return '-'+handleResult+'.'+str[1]
                 }
-            }
-            str0.reverse()
-            let handleResult = ''
-            for (let j = 0; j < str0.length; j++) {
-                handleResult += str0[j]
-            }
-            
-            return handleResult+'.'+str[1]
+                
             }else if(typeof val =='string'){
                 return val
             }
             else{
-            return 0
-            }
-            
-            
+                return 0
+            }           
         },
         //变成货币格式
         formatCurrency(val){

+ 40 - 21
src/views/modules/BatchCreate/directedPackage.vue

@@ -173,35 +173,54 @@ export default {
                 return 0
             }    
         },
-        //保留两位小数并且变成货币格式
+            //保留两位小数并且变成货币格式
         decimalsHandle(val){
             
             if(val && typeof val !='string'){
-            val=parseFloat(val).toFixed(2);
-            let numberStr = val.toString()
-            let str = numberStr.split('.')
-            
-            let str0=str[0].split('').reverse();
-            for (let i = 0; i < str0.length; i++) {
-            if ((i + 1) % 4 === 0) {
-                str0.splice(i, 0, ',')
+                if(val>=0){
+                    val=parseFloat(val).toFixed(2);
+                    let numberStr = val.toString()
+                    let str = numberStr.split('.')
+                    
+                    let str0=str[0].split('').reverse();
+                    for (let i = 0; i < str0.length; i++) {
+                        if ((i + 1) % 4 === 0) {
+                            str0.splice(i, 0, ',')
+                        }
+                    }
+                    str0.reverse()
+                    let handleResult = ''
+                    for (let j = 0; j < str0.length; j++) {
+                        handleResult += str0[j]
+                    }
+                    
+                    return handleResult+'.'+str[1]
+                }else{
+                    val=parseFloat(val).toFixed(2);
+                    let numberStr = val.toString()
+                    let str = numberStr.split('.')
+                    
+                    let str0=str[0].substr(1).split('').reverse();
+                    for (let i = 0; i < str0.length; i++) {
+                        if ((i + 1) % 4 === 0) {
+                            str0.splice(i, 0, ',')
+                        }
+                    }
+                    str0.reverse()
+                    let handleResult = ''
+                    for (let j = 0; j < str0.length; j++) {
+                        handleResult += str0[j]
+                    }
+                    
+                    return '-'+handleResult+'.'+str[1]
                 }
-            }
-            str0.reverse()
-            let handleResult = ''
-            for (let j = 0; j < str0.length; j++) {
-                handleResult += str0[j]
-            }
-            
-            return handleResult+'.'+str[1]
+                
             }else if(typeof val =='string'){
                 return val
             }
             else{
-            return 0
-            }
-            
-            
+                return 0
+            }           
         },
         //变成货币格式
         formatCurrency(val){

+ 19 - 5
src/views/modules/BatchCreate/linkMultiSelect.vue

@@ -3,10 +3,10 @@
         <div class="leftBox">
             <div class="bigBOX" ref="mycheckBox">
                 <div class="big_item" >
-                    <MultiCheckBox  :title="title" :listArr='listArr' :curLayerNum='1' @getItemData='getItemData' />
+                    <MultiCheckBox  :title="title" :listArr='listArr' :curLayerNum='1'  :parentChecked='false' @getItemData='getItemData' />
                 </div>
                 <div class="big_item">
-                    <MultiCheckBox  :title="title2" :listArr='listArr2' :curLayerNum='2'  @getItemData='getItemData' v-if="listArr2.length>0" />
+                    <MultiCheckBox  :title="title2" :listArr='listArr2' :curLayerNum='2' :parentChecked='parentChecked'  @getItemData='getItemData' v-if="listArr2.length>0" />
                 </div>
                 <div class="big_item">
                     <MultiCheckBox  :title="title3" :listArr='listArr3' :curLayerNum='3'  @getItemData='getItemData' v-if="listArr3.length>0"/>
@@ -45,6 +45,7 @@ import MultiCheckBox from './MultiCheckBox'
                 title4:'',
                 listArr4:[],
                 clickKey:0,
+                parentChecked:false,
             }
         },
        
@@ -52,9 +53,10 @@ import MultiCheckBox from './MultiCheckBox'
             getItemData(val){
                 this.clickKey=val.clickObj.dataset.layers;
                 let index=parseInt(val.clickObj.dataset.layers);
-                // console.log(val,val.clickObj.dataset.layers);
+                console.log(val,val.clickObj.dataset.layers);
                 this.clickKey=val.clickObj.dataset.layers;
                 let childrensArr= Array.from(this.$refs.mycheckBox.children);
+                
                 if(index==1){
                     this.$refs.mycheckBox.style.width='100%';
                     if(val.data.children){
@@ -62,10 +64,22 @@ import MultiCheckBox from './MultiCheckBox'
                         this.title3='';
                         this.listArr4=[];
                         this.title4='';
-                        this.listArr2=val.data.children;
-                        this.title2=val.data.name;
+                        
                         //处理样式                        
                         this.styleHandle(childrensArr,index)
+
+                         if(val.data.checked){
+                            val.data.children.forEach((item)=>{
+                                item.checked=true;
+                            })
+                        }else{
+                            val.data.children.forEach((item)=>{
+                                // item.checked=false;
+                                this.$set(item,'checked',false)
+                            })
+                        }   
+                        this.listArr2=val.data.children;
+                        this.title2=val.data.name;
                     }else{
                         this.listArr3=[];
                         this.title3='';

+ 42 - 42
src/views/modules/BatchCreate/newDirectedPackage.vue

@@ -5,16 +5,16 @@
         </div>
         <div class="optBOX">
             <div class="leftBox">
-                <a-form-model :model="form" :label-col="labelCol" :wrapper-col="wrapperCol">
-                    <a-form-model-item label="定向包名称">
+                <a-form :model="form" :label-col="labelCol" :wrapper-col="wrapperCol">
+                    <a-form-item label="定向包名称">
                        <a-input placeholder="请输入定向包名称,至多20个字符" style="width:40%" />
-                    </a-form-model-item>
-                    <a-form-model-item label="媒体:">
+                    </a-form-item>
+                    <a-form-item label="媒体:">
                         <a-radio-group default-value="toutiao" v-model="form.medialType" button-style="solid">
                             <a-radio-button :value="1">头条</a-radio-button>
                         </a-radio-group>
-                    </a-form-model-item>
-                    <a-form-model-item label="地域:" class="optItem" >
+                    </a-form-item>
+                    <a-form-item label="地域:" class="optItem" >
                         <a-radio-group default-value="" button-style="solid" v-model="regionValue">
                             <a-radio-button value="">不限</a-radio-button>
                             <a-radio-button value="REGION_LEVEL_PROVINCE">按省市</a-radio-button>
@@ -73,26 +73,26 @@
                                 </a-radio-group>
                             </div>
                         </div>                        
-                    </a-form-model-item>
-                    <a-form-model-item label="性别:" class="optItem">
+                    </a-form-item>
+                    <a-form-item label="性别:" class="optItem">
                          <a-radio-group default-value="" v-model="form.sex" button-style="solid">
                             <a-radio-button value="">不限</a-radio-button>
                             <a-radio-button value="men">男</a-radio-button>
                             <a-radio-button value="women">女</a-radio-button>
                         </a-radio-group>
-                    </a-form-model-item>
-                    <a-form-model-item label="年龄:" class="optItem">
+                    </a-form-item>
+                    <a-form-item label="年龄:" class="optItem">
                         <radioCheck :checkArr='ageArr' @getSonValue='getNewUser' />
-                    </a-form-model-item>
-                    <a-form-model-item label="精选流量包:" class="optItem">
+                    </a-form-item>
+                    <a-form-item label="精选流量包:" class="optItem">
                         <a-radio-group default-value="" button-style="solid">
                             <a-radio-button value="">不限</a-radio-button>
                             <a-radio-button value="men">应用软件精选</a-radio-button>
                             <a-radio-button value="women">游戏精选</a-radio-button>
                         </a-radio-group>
                         <span class="tishi"><a-icon type="exclamation-circle" class="tubiao" />精选流量包仅支持穿山甲、穿山甲-精选游戏广告位</span>
-                    </a-form-model-item>
-                    <a-form-model-item label="行为兴趣:" class="optItem">
+                    </a-form-item>
+                    <a-form-item label="行为兴趣:" class="optItem">
                         <a-radio-group v-model="interestActionMode" button-style="solid">
                             <a-radio-button value="">不限</a-radio-button>
                             <a-radio-button value="RECOMMEND">
@@ -107,9 +107,9 @@
                             <a-radio-button value="CUSTOM">自定义</a-radio-button>
                         </a-radio-group>
                         
-                    </a-form-model-item>
+                    </a-form-item>
                     <div class="interestActionMode" v-show="interestActionMode=='CUSTOM'">
-                            <a-form-model-item label="行为:" class="optItem">
+                            <a-form-item label="行为:" class="optItem">
                                 <div>
                                     <span style="margin-right:5px">在</span> 
                                     <a-select
@@ -253,34 +253,34 @@
                                         </div>
                                     </div>
                                 </div>
-                            </a-form-model-item>
-                            <a-form-model-item label="兴趣:" class="optItem">
+                            </a-form-item>
+                            <a-form-item label="兴趣:" class="optItem">
 
-                            </a-form-model-item>
+                            </a-form-item>
                         </div>
-                    <a-form-model-item label="平台:" class="optItem">
+                    <a-form-item label="平台:" class="optItem">
                         <radioCheck :checkArr='platformArr' @getSonValue='getNewUser' />
-                    </a-form-model-item>
-                    <a-form-model-item label="过滤已安装:" class="optItem">
+                    </a-form-item>
+                    <a-form-item label="过滤已安装:" class="optItem">
                         <a-radio-group default-value="" button-style="solid">
                             <a-radio-button value="">不过滤</a-radio-button>
                             <a-radio-button value="filter">过滤</a-radio-button>
                         </a-radio-group>
-                    </a-form-model-item>
-                    <a-form-model-item label="运营商:" class="optItem">
+                    </a-form-item>
+                    <a-form-item label="运营商:" class="optItem">
                        <radioCheck :checkArr='carrierArr' @getSonValue='getNewUser' />
-                    </a-form-model-item>
-                    <a-form-model-item label="网络:" class="optItem">
+                    </a-form-item>
+                    <a-form-item label="网络:" class="optItem">
                        <radioCheck :checkArr='networkArr' @getSonValue='getNewUser' />
-                    </a-form-model-item>
-                    <!-- <a-form-model-item label="设备类型:" class="optItem">
+                    </a-form-item>
+                    <!-- <a-form-item label="设备类型:" class="optItem">
                        <a-radio-group default-value="" button-style="solid">
                             <a-radio-button value="">不限</a-radio-button>
                             <a-radio-button value="wifi">智能手机</a-radio-button>
                             <a-radio-button value="2G">平板</a-radio-button>
                         </a-radio-group>
-                    </a-form-model-item> -->
-                    <a-form-model-item label="手机品牌:" class="optItem">
+                    </a-form-item> -->
+                    <a-form-item label="手机品牌:" class="optItem">
                        <a-radio-group default-value="" v-model="deviceBrand" button-style="solid">
                             <a-radio-button value="">不限</a-radio-button>
                             <a-radio-button value="byBrand">按品牌</a-radio-button>
@@ -303,8 +303,8 @@
                             </div>
                             
                         </div>
-                    </a-form-model-item>
-                    <a-form-model-item label="手机价格:"  class="optItem">
+                    </a-form-item>
+                    <a-form-item label="手机价格:"  class="optItem">
                        <a-radio-group default-value="" v-model="launchPrice" button-style="solid">
                             <a-radio-button value="">不限</a-radio-button>
                             <a-radio-button value="custom">自定义</a-radio-button>
@@ -313,32 +313,32 @@
                             <a-slider range :marks="marks" :default-value="[2000, 7000]" :step="null"  :min='0' :max='11000'  @change="slideChange" />
                         </span>
                         <span v-else></span>
-                    </a-form-model-item>
-                    <a-form-model-item label="新用户:" class="optItem">                      
+                    </a-form-item>
+                    <a-form-item label="新用户:" class="optItem">                      
                         <radioCheck :checkArr='newUser' @getSonValue='getNewUser' />
-                    </a-form-model-item>
-                    <a-form-model-item label="智能放量:" class="optItem">
+                    </a-form-item>
+                    <a-form-item label="智能放量:" class="optItem">
                         <a-radio-group default-value="" button-style="solid">
                             <a-radio-button value="">不启用</a-radio-button>
                             <a-radio-button value="open">启用</a-radio-button>
                         </a-radio-group>
                         <span class="tishi"><a-icon type="exclamation-circle" class="tubiao" />智能放量不支持受众预估</span>
-                    </a-form-model-item>
-                    <a-form-model-item label="保存为模板:" class="optItem">
+                    </a-form-item>
+                    <a-form-item label="保存为模板:" class="optItem">
                         <a-radio-group default-value="no" button-style="solid">
                             <a-radio value="yes">是</a-radio>
                             <a-radio value="no">否</a-radio>
                         </a-radio-group>
-                    </a-form-model-item>
-                    <a-form-model-item :wrapper-col="{ span: 14, offset: 4 }">
+                    </a-form-item>
+                    <a-form-item :wrapper-col="{ span: 14, offset: 4 }">
                         <a-button type="primary" @click="applicatiSubmit">
                             应用
                         </a-button>
                         <a-button style="margin-left: 10px;" @click="cancel">
                             取消
                         </a-button>
-                    </a-form-model-item>       
-                </a-form-model>           
+                    </a-form-item>       
+                </a-form>           
             </div>
             <div class="rightBox">
                 <div class="topBox">

+ 43 - 16
src/views/modules/Statistics/CompareData.vue

@@ -651,24 +651,51 @@ export default {
     //保留两位小数并且变成货币格式
     decimalsHandle(val){
         
-       val=parseFloat(val).toFixed(2);
-        let numberStr = val.toString()
-        let str = numberStr.split('.')
-        
-        let str0=str[0].split('').reverse();
-        for (let i = 0; i < str0.length; i++) {
-        if ((i + 1) % 4 === 0) {
-          str0.splice(i, 0, ',')
+        if(val && typeof val !='string'){
+            if(val>=0){
+                val=parseFloat(val).toFixed(2);
+                let numberStr = val.toString()
+                let str = numberStr.split('.')
+                
+                let str0=str[0].split('').reverse();
+                for (let i = 0; i < str0.length; i++) {
+                    if ((i + 1) % 4 === 0) {
+                        str0.splice(i, 0, ',')
+                    }
+                }
+                str0.reverse()
+                let handleResult = ''
+                for (let j = 0; j < str0.length; j++) {
+                    handleResult += str0[j]
+                }
+                
+                return handleResult+'.'+str[1]
+            }else{
+                val=parseFloat(val).toFixed(2);
+                let numberStr = val.toString()
+                let str = numberStr.split('.')
+                
+                let str0=str[0].substr(1).split('').reverse();
+                for (let i = 0; i < str0.length; i++) {
+                    if ((i + 1) % 4 === 0) {
+                        str0.splice(i, 0, ',')
+                    }
+                }
+                str0.reverse()
+                let handleResult = ''
+                for (let j = 0; j < str0.length; j++) {
+                    handleResult += str0[j]
+                }
+                
+                return '-'+handleResult+'.'+str[1]
             }
+            
+        }else if(typeof val =='string'){
+            return val
         }
-        str0.reverse()
-        let handleResult = ''
-        for (let j = 0; j < str0.length; j++) {
-            handleResult += str0[j]
-        }
-        
-        return handleResult+'.'+str[1]
-        
+        else{
+            return 0
+        }           
     },
     //变成货币格式
     formatCurrency(val){

+ 46 - 27
src/views/modules/Statistics/accountReport.vue

@@ -1243,36 +1243,55 @@ export default {
         return 0
       }    
     },
-     //保留两位小数并且变成货币格式
-    decimalsHandle(val){
-        
-        if(val && typeof val !='string'){
-          val=parseFloat(val).toFixed(2);
-          let numberStr = val.toString()
-          let str = numberStr.split('.')
+    //保留两位小数并且变成货币格式
+      decimalsHandle(val){
           
-          let str0=str[0].split('').reverse();
-          for (let i = 0; i < str0.length; i++) {
-          if ((i + 1) % 4 === 0) {
-            str0.splice(i, 0, ',')
+          if(val && typeof val !='string'){
+              if(val>=0){
+                  val=parseFloat(val).toFixed(2);
+                  let numberStr = val.toString()
+                  let str = numberStr.split('.')
+                  
+                  let str0=str[0].split('').reverse();
+                  for (let i = 0; i < str0.length; i++) {
+                      if ((i + 1) % 4 === 0) {
+                          str0.splice(i, 0, ',')
+                      }
+                  }
+                  str0.reverse()
+                  let handleResult = ''
+                  for (let j = 0; j < str0.length; j++) {
+                      handleResult += str0[j]
+                  }
+                  
+                  return handleResult+'.'+str[1]
+              }else{
+                  val=parseFloat(val).toFixed(2);
+                  let numberStr = val.toString()
+                  let str = numberStr.split('.')
+                  
+                  let str0=str[0].substr(1).split('').reverse();
+                  for (let i = 0; i < str0.length; i++) {
+                      if ((i + 1) % 4 === 0) {
+                          str0.splice(i, 0, ',')
+                      }
+                  }
+                  str0.reverse()
+                  let handleResult = ''
+                  for (let j = 0; j < str0.length; j++) {
+                      handleResult += str0[j]
+                  }
+                  
+                  return '-'+handleResult+'.'+str[1]
               }
+              
+          }else if(typeof val =='string'){
+              return val
           }
-          str0.reverse()
-          let handleResult = ''
-          for (let j = 0; j < str0.length; j++) {
-              handleResult += str0[j]
-          }
-          
-          return handleResult+'.'+str[1]
-        }else if(typeof val =='string'){
-            return val
-        }
-        else{
-          return 0
-        }
-        
-        
-    },
+          else{
+              return 0
+          }           
+      },
     //变成货币格式
     formatCurrency(val){
       if((val||val==0)&& typeof val !='string'){

+ 46 - 28
src/views/modules/Statistics/mediaReport.vue

@@ -132,10 +132,9 @@
                     :columns="columns"
                     :dataSource="tableData"
                     bordered
-                    id="outTable"
+                    id="tableBody"
                     :pagination="ipagination"
                     :loading="loading"
-                    ref="accountTable"
                     @change="tableChange"                   
                     style="word-break: break-all;font-size:16px;font-weight:600"
                 >
@@ -209,13 +208,13 @@ export default {
                     title:moment().subtract(1,'days').format('YYYY-MM-DD'),
                     dataIndex: 'yesterdayCost',
                     align: 'center',
-                    scopedSlots: { customRender: 'accountId' }
+                    scopedSlots: { customRender: 'yesterdayCost' }
                 },
                 {
                     title:moment().format('YYYY-MM-DD'),
                     dataIndex: 'todayCost',
                     align: 'center',
-                    scopedSlots: { customRender: 'accountId' }
+                    scopedSlots: { customRender: 'todayCost' }
                 },
                 {
                     title: '消耗差值',
@@ -235,7 +234,7 @@ export default {
                     dataIndex: 'operator',
                     align: 'center',
                     scopedSlots: { customRender: 'operator' },
-                    width:200
+                    width:120
                 },
                 {
                     title: '销售',
@@ -249,21 +248,21 @@ export default {
                     dataIndex: 'plan',
                     align: 'center',
                     scopedSlots: { customRender: 'plan' },
-                    width:200
+                    width:120
                 },
                 {
                     title: '拍摄',
                     dataIndex: 'shot',
                     align: 'center',
                     scopedSlots: { customRender: 'shot' },
-                    width:200
+                    width:120
                 },
                 {
                     title: '剪辑',
                     dataIndex: 'clip',
                     align: 'center',
                     scopedSlots: { customRender: 'clip' },
-                    width:200
+                    width:120
                 },
                 
             ]
@@ -507,31 +506,50 @@ export default {
         decimalsHandle(val){
             
             if(val && typeof val !='string'){
-            val=parseFloat(val).toFixed(2);
-            let numberStr = val.toString()
-            let str = numberStr.split('.')
-            
-            let str0=str[0].split('').reverse();
-            for (let i = 0; i < str0.length; i++) {
-            if ((i + 1) % 4 === 0) {
-                str0.splice(i, 0, ',')
+                if(val>=0){
+                    val=parseFloat(val).toFixed(2);
+                    let numberStr = val.toString()
+                    let str = numberStr.split('.')
+                    
+                    let str0=str[0].split('').reverse();
+                    for (let i = 0; i < str0.length; i++) {
+                        if ((i + 1) % 4 === 0) {
+                            str0.splice(i, 0, ',')
+                        }
+                    }
+                    str0.reverse()
+                    let handleResult = ''
+                    for (let j = 0; j < str0.length; j++) {
+                        handleResult += str0[j]
+                    }
+                    
+                    return handleResult+'.'+str[1]
+                }else{
+                    val=parseFloat(val).toFixed(2);
+                    let numberStr = val.toString()
+                    let str = numberStr.split('.')
+                    
+                    let str0=str[0].substr(1).split('').reverse();
+                    for (let i = 0; i < str0.length; i++) {
+                        if ((i + 1) % 4 === 0) {
+                            str0.splice(i, 0, ',')
+                        }
+                    }
+                    str0.reverse()
+                    let handleResult = ''
+                    for (let j = 0; j < str0.length; j++) {
+                        handleResult += str0[j]
+                    }
+                    
+                    return '-'+handleResult+'.'+str[1]
                 }
-            }
-            str0.reverse()
-            let handleResult = ''
-            for (let j = 0; j < str0.length; j++) {
-                handleResult += str0[j]
-            }
-            
-            return handleResult+'.'+str[1]
+                
             }else if(typeof val =='string'){
                 return val
             }
             else{
-            return 0
-            }
-            
-            
+                return 0
+            }           
         },
         //变成货币格式
         formatCurrency(val){

+ 46 - 22
src/views/modules/Statistics/newHome.vue

@@ -793,30 +793,54 @@ export default {
       }
       
     },
-     //保留两位小数并且变成货币格式
+    //保留两位小数并且变成货币格式
     decimalsHandle(val){
-        // console.log(val)
-        if(val){
-          val=parseFloat(val).toFixed(2);
-          let numberStr = val.toString()
-          let str = numberStr.split('.')
-          
-          let str0=str[0].split('').reverse();
-          for (let i = 0; i < str0.length; i++) {
-          if ((i + 1) % 4 === 0) {
-            str0.splice(i, 0, ',')
-              }
-          }
-          str0.reverse()
-          let handleResult = ''
-          for (let j = 0; j < str0.length; j++) {
-              handleResult += str0[j]
-          }
-          
-          return handleResult+'.'+str[1]
-        }
-        
         
+        if(val && typeof val !='string'){
+            if(val>=0){
+                val=parseFloat(val).toFixed(2);
+                let numberStr = val.toString()
+                let str = numberStr.split('.')
+                
+                let str0=str[0].split('').reverse();
+                for (let i = 0; i < str0.length; i++) {
+                    if ((i + 1) % 4 === 0) {
+                        str0.splice(i, 0, ',')
+                    }
+                }
+                str0.reverse()
+                let handleResult = ''
+                for (let j = 0; j < str0.length; j++) {
+                    handleResult += str0[j]
+                }
+                
+                return handleResult+'.'+str[1]
+            }else{
+                val=parseFloat(val).toFixed(2);
+                let numberStr = val.toString()
+                let str = numberStr.split('.')
+                
+                let str0=str[0].substr(1).split('').reverse();
+                for (let i = 0; i < str0.length; i++) {
+                    if ((i + 1) % 4 === 0) {
+                        str0.splice(i, 0, ',')
+                    }
+                }
+                str0.reverse()
+                let handleResult = ''
+                for (let j = 0; j < str0.length; j++) {
+                    handleResult += str0[j]
+                }
+                
+                return '-'+handleResult+'.'+str[1]
+            }
+            
+        }else if(typeof val =='string'){
+            return val
+        }
+        else{
+            return 0
+        }           
     },
     //变成货币格式
     formatCurrency(val){

+ 39 - 20
src/views/modules/Statistics/performanceRelated/performanceRelated.vue

@@ -842,31 +842,50 @@ export default {
         decimalsHandle(val){
             
             if(val && typeof val !='string'){
-            val=parseFloat(val).toFixed(2);
-            let numberStr = val.toString()
-            let str = numberStr.split('.')
-            
-            let str0=str[0].split('').reverse();
-            for (let i = 0; i < str0.length; i++) {
-            if ((i + 1) % 4 === 0) {
-                str0.splice(i, 0, ',')
+                if(val>=0){
+                    val=parseFloat(val).toFixed(2);
+                    let numberStr = val.toString()
+                    let str = numberStr.split('.')
+                    
+                    let str0=str[0].split('').reverse();
+                    for (let i = 0; i < str0.length; i++) {
+                        if ((i + 1) % 4 === 0) {
+                            str0.splice(i, 0, ',')
+                        }
+                    }
+                    str0.reverse()
+                    let handleResult = ''
+                    for (let j = 0; j < str0.length; j++) {
+                        handleResult += str0[j]
+                    }
+                    
+                    return handleResult+'.'+str[1]
+                }else{
+                    val=parseFloat(val).toFixed(2);
+                    let numberStr = val.toString()
+                    let str = numberStr.split('.')
+                    
+                    let str0=str[0].substr(1).split('').reverse();
+                    for (let i = 0; i < str0.length; i++) {
+                        if ((i + 1) % 4 === 0) {
+                            str0.splice(i, 0, ',')
+                        }
+                    }
+                    str0.reverse()
+                    let handleResult = ''
+                    for (let j = 0; j < str0.length; j++) {
+                        handleResult += str0[j]
+                    }
+                    
+                    return '-'+handleResult+'.'+str[1]
                 }
-            }
-            str0.reverse()
-            let handleResult = ''
-            for (let j = 0; j < str0.length; j++) {
-                handleResult += str0[j]
-            }
-            
-            return handleResult+'.'+str[1]
+                
             }else if(typeof val =='string'){
                 return val
             }
             else{
-            return 0
-            }
-            
-            
+                return 0
+            }           
         },
         //变成货币格式
         formatCurrency(val){

+ 5 - 5
vue.config.js

@@ -73,18 +73,18 @@ module.exports = {
         // target: 'http://192.168.1.54:8080', //请求本地 需要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', //请求本地 需要jeecg-boot后台项目 
+        // target: 'http://api.tjyourong.com.cn/jeecg-boot', //请求本地 需要jeecg-boot后台项目 
         // target: 'https://trac.tjyourong.com.cn', //请求本地 需要jeecg-boot后台项目 
-        // target: 'http://192.168.1.251:8088', //请求本地 需要jeecg-boot后台项目 
+        target: 'http://192.168.1.251:8088', //请求本地 需要jeecg-boot后台项目 
         // target: 'http://adsp.tjyourong.com.cn/', //请求本地 需要jeecg-boot后台项目 
 
         
 
         ws: false,
         changeOrigin: true,
-        pathRewrite: {
-            '/jeecg-boot': ''  //默认所有请求都加了jeecg-boot前缀,需要去掉
-        }
+        // pathRewrite: {
+        //     '/jeecg-boot': ''  //默认所有请求都加了jeecg-boot前缀,需要去掉
+        // }
       },
     },
     // before(app) {