Browse Source

合同,漏斗调整

qymljy 1 năm trước cách đây
mục cha
commit
03f87dabeb

+ 5 - 4
src/HDrpManagement/contractManage/components/addContract.vue

@@ -573,12 +573,12 @@
             </el-col>
             <el-col :span="24" v-if="form.calculatemodel==1">
               <el-form-item label="订单金额比例(%):" prop="orderratio" >
-                <el-input type="number" size="small" v-model="form.orderratio"  placeholder="请输入0-100%" @change="orderratioChange"></el-input>
+                <el-input  size="small" v-model="form.orderratio"  placeholder="请输入0-100%" @change="orderratioChange"></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="24" v-if="form.calculatemodel==2">
               <el-form-item label="居间产品折扣(%):" prop="productdiscount">
-                <el-input type="number" size="small" v-model="form.productdiscount" placeholder="请输入0-100%" @change="productdiscountChange"></el-input>
+                <el-input size="small" v-model="form.productdiscount" placeholder="请输入0-100%" @change="productdiscountChange"></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="24">
@@ -735,14 +735,14 @@ export default {
         ],
         productdiscount: [
         /*  { message: '必须为数字', type:'number', trigger: 'change' },*/
-          { pattern:/^[0-9]+\.{0,1}[0-9]{0,2}$/,message: '必须为数字',trigger: 'change'},
+          { pattern:/^[0-9]+\.{0,1}[0-9]{0,4}$/,message: '必须为数字',trigger: 'change'},
           { required: true, message: '请填写折扣', trigger: 'blur' },
        /*   { validator: checkNumber, trigger: 'blur'},*/
           { validator: NumberSize, trigger: 'blur'}
         ],
         orderratio: [
          /* { message: '必须为数字', type:'number', trigger: 'change' },*/
-          { pattern:/^[0-9]+\.{0,1}[0-9]{0,2}$/,message: '必须为数字',trigger: 'change'},
+          { pattern:/^[0-9]+\.{0,1}[0-9]{0,4}$/,message: '必须为数字',trigger: 'change'},
           { required: true, message: '请填写折扣', trigger: 'blur' },
         /*  { validator: checkNumber, trigger: 'blur'},*/
           { validator: NumberSize, trigger: 'blur'}
@@ -858,6 +858,7 @@ export default {
   methods: {
     async onSubmit () {
       this.$refs.form.validate(async val => {
+        if (!val) return false
         console.log(this.form,'form')
         if (val) {
           this.$store.commit('setLoading',true)

+ 6 - 5
src/api/request.js

@@ -126,15 +126,16 @@ service.interceptors.response.use(response => {
         } else {
             // 超时处理
             if (JSON.stringify(error).includes('timeout')) {
-                console.log("超时")
-                console.log(error,'error')
                 Message.error('服务器响应超时,请刷新当前页')
             }
             source.cancel('停止请求');
         }
-        console.log(error,'超时获取到的内容')
-        console.log(error.message,'超时获取到的内容123')
-        Message.error(error.message)
+        if (error.message === 'timeout of 20000ms exceeded'){
+            Message.error('当前网络繁忙,请稍后重新登录')
+        }else {
+            Message.error(error.message)
+        }
+
             /***** 处理结束 *****/
             //如果不需要错误处理,以上的处理过程都可省略
         return Promise.resolve(error.response)

+ 12 - 5
src/views/mediaStatistics/modules/salesfunnel.vue

@@ -37,7 +37,7 @@
             <p class="title">表格数据</p>
             <el-table
                 :data="tableData"
-                style="width: 500px"
+                style="width: 750px"
                 size="small"
                 :header-cell-style="{height:'60px',fontWeight:'400',fontSize:'22px',color:'#333333',background:'#ddebf7'}"
                 :cell-style="{height:'40px',fontWeight:'400',fontSize:'18px'}"
@@ -56,6 +56,10 @@
                   prop="signamount_due"
                   label="预计签约金额(万元)">
               </el-table-column>
+              <el-table-column
+                  prop="dealamount"
+                  label="项目成交金额(万元)">
+              </el-table-column>
             </el-table>
           </div>
         </el-col>
@@ -121,6 +125,9 @@
           <div v-else-if="scope.column.columnname == 'signamount_due'">
             <span>{{scope.column.data[[scope.column.columnname]] ?tool.formatAmount(scope.column.data[[scope.column.columnname]],2):'--'}}</span>
           </div>
+          <div v-else-if="scope.column.columnname == 'dealamount'">
+            <span>{{scope.column.data[[scope.column.columnname]] ?tool.formatAmount(scope.column.data[[scope.column.columnname]],2):'--'}}</span>
+          </div>
           <div v-else-if="scope.column.columnname == 'begdate_due'">
             <span>{{scope.column.data[[scope.column.columnname]] ? scope.column.data[[scope.column.columnname]] !== 'NaN-NaN'?scope.column.data[[scope.column.columnname]]:'--' :'--'}}</span>
           </div>
@@ -319,7 +326,7 @@ export default {
               const group = new G.Group({});
               const content = ()=>{
                 if (this.tableData[0]) {
-                  const text = `${datum.stagename}  当前项目数: ${datum.projectqty} 项目数: ${datum.sequence1} 转化率: ${datum.zhl?Math.round((datum.zhl* 100)*100)/100 + '%':'--'}  预计签约金额: ${datum.signamount_due}万元`
+                  const text = `${datum.stagename}  当前项目数: ${datum.projectqty} 项目数: ${datum.sequence1} 转化率: ${datum.zhl?Math.round((datum.zhl* 100)*100)/100 + '%':'--'}  预计签约金额: ${datum.signamount_due}万元 项目成交金额: ${datum.dealamount}万元`
                   const lines = text.split('  ');
                   return lines.join('\n');
                 }
@@ -409,7 +416,7 @@ export default {
               const group = new G.Group({});
               const content = ()=>{
                 if (this.tableData[0]) {
-                  const text = `${datum.stagename}  当前项目数: ${datum.projectqty} 项目数: ${datum.sequence1} 转化率: ${datum.zhl?Math.round((datum.zhl* 100)*100)/100 + '%':'--'}  预计签约金额: ${datum.signamount_due}万元`
+                  const text = `${datum.stagename}  当前项目数: ${datum.projectqty} 项目数: ${datum.sequence1} 转化率: ${datum.zhl?Math.round((datum.zhl* 100)*100)/100 + '%':'--'}  预计签约金额: ${datum.signamount_due}万元 项目成交金额: ${datum.dealamount}万元`
                   const lines = text.split('  ');
                   return lines.join('\n');
                 }
@@ -499,7 +506,7 @@ export default {
               const group = new G.Group({});
               const content = ()=>{
                 if (this.tableData[0]) {
-                  const text = `${datum.stagename}  当前项目数: ${datum.projectqty} 项目数: ${datum.sequence1} 转化率: ${datum.zhl?Math.round((datum.zhl* 100)*100)/100 + '%':'--'}  预计签约金额: ${datum.signamount_due}万元`
+                  const text = `${datum.stagename}  当前项目数: ${datum.projectqty} 项目数: ${datum.sequence1} 转化率: ${datum.zhl?Math.round((datum.zhl* 100)*100)/100 + '%':'--'}  预计签约金额: ${datum.signamount_due}万元 项目成交金额: ${datum.dealamount}万元`
                   const lines = text.split('  ');
                   return lines.join('\n');
                 }
@@ -590,7 +597,7 @@ export default {
               const group = new G.Group({});
               const content = ()=>{
                 if (this.tableData[0]) {
-                  const text = `${datum.stagename}  当前项目数: ${datum.projectqty} 项目数: ${datum.sequence1} 转化率: ${datum.zhl?Math.round((datum.zhl* 100)*100)/100 + '%':'--'}  预计签约金额: ${datum.signamount_due}万元`
+                  const text = `${datum.stagename}  当前项目数: ${datum.projectqty} 项目数: ${datum.sequence1} 转化率: ${datum.zhl?Math.round((datum.zhl* 100)*100)/100 + '%':'--'}  预计签约金额: ${datum.signamount_due}万元 项目成交金额: ${datum.dealamount}万元`
                   const lines = text.split('  ');
                   return lines.join('\n');
                 }

+ 3 - 1
src/views/salesData/components/allSalesTemplate.vue

@@ -94,6 +94,7 @@
                 end-placeholder="结束月份">
             </el-date-picker>
           </div>
+          <exportFile class="inline-16" :param="param" :columns="tablecols" :fileName="buttonTitle === '客户全部排名'?'客户销售排名':'业务员销售排名'"></exportFile>
         </div>
         <div style="margin-top: 10px;margin-bottom: 10px">
           <tableTemplate ref="table" :layout="tablecols" :data="list" :opwidth="200" :custom="true" :height="height">
@@ -171,10 +172,11 @@
 
 <script>
 import tableTemplate from './table';
+import exportFile from '@/components/export_file/index'
 export default {
   name: "allSalesTemplate",
   props:['buttonTitle','monthDate','dateType','tablecols','dataid','param','type'],
-  components:{tableTemplate},
+  components:{tableTemplate,exportFile},
   data(){
     return {
       visible:false,