Browse Source

回收站

qymljy 2 years ago
parent
commit
02fdc3da29

+ 227 - 0
src/HManagement/ecycle/contract/index.vue

@@ -0,0 +1,227 @@
+<template>
+  <div>
+    <basicLayout
+        ref="basicLayout"
+        tableName="contractTable"
+        idName="sa_contractid"
+        :apiId="{query:20221121201502,del:''}"
+        :autoQuery="false"
+    >
+      <template #custom>
+        <div class="mt-10">
+          <p class="search__label">应用:</p>
+          <el-select
+              class="inline-24"
+              size="small"
+              v-model="application"
+              placeholder="请选择范围"
+              @change="applicationChange"
+          >
+            <el-option
+                v-for="item in applicationList"
+                :key="item.index"
+                :label="item.label"
+                :value="item.value"
+            ></el-option>
+          </el-select>
+        </div>
+        <div class="mt-10">
+          <p class="search__label">合同类型:</p>
+          <el-select
+              class="inline-24"
+              size="small"
+              v-model="type"
+              placeholder="请选择合同类型"
+              clearable
+              @change="$refs.basicLayout.param.content.pageNumber=1;$refs.basicLayout.param.content.where.type=type;$refs.basicLayout.listData()"
+          >
+            <el-option
+                v-for="item in typeList"
+                :key="item.value"
+                :label="item.remarks"
+                :value="item.value"
+            ></el-option>
+          </el-select>
+        </div>
+        <div class="mt-10">
+          <p class="search__label">合同状态:</p>
+          <el-select
+              class="inline-24"
+              size="small"
+              v-model="status"
+              placeholder="请选择合同状态"
+              clearable
+              @change="$refs.basicLayout.param.content.pageNumber=1;$refs.basicLayout.param.content.where.status=status;$refs.basicLayout.listData()"
+          >
+            <el-option label="新建" value="新建" ></el-option>
+            <el-option label="审核" value="审核" ></el-option>
+            <el-option label="已提交" value="已提交" ></el-option>
+            <el-option label="已终止" value="已终止" ></el-option>
+          </el-select>
+        </div>
+        <div class="mt-10">
+          <label class="search__label" >创建日期:</label>
+          <el-date-picker
+              style="margin-right: 24px !important;"
+              size="small"
+              @change="selectChange"
+              value-format="yyyy-MM-dd"
+              v-model="dateSelect"
+              type="daterange"
+              range-separator="至"
+              start-placeholder="开始日期"
+              end-placeholder="结束日期"
+              clearable>
+          </el-date-picker>
+        </div>
+      </template>
+      <template v-slot:tbList="scope">
+        <div v-if="scope.data.column.columnname == 'status'">
+          <span style="color:#3874f6" v-if="scope.data.column.data[[scope.data.column.columnname]] == '新建'">{{scope.data.column.data[[scope.data.column.columnname]]}}</span>
+          <span style="color:#52c41a" v-else-if="scope.data.column.data[[scope.data.column.columnname]] == '已提交'">{{scope.data.column.data[[scope.data.column.columnname]]}}</span>
+          <span style="color:#333333" v-else-if="scope.data.column.data[[scope.data.column.columnname]] == '审核'">{{scope.data.column.data[[scope.data.column.columnname]]}}</span>
+          <span style="color:#000000" v-else>{{scope.data.column.data[[scope.data.column.columnname]]}}</span>
+        </div>
+        <div v-else-if="scope.data.column.columnname == 'type'">
+          <span v-if="scope.data.column.data[[scope.data.column.columnname]] == '框架'">经销商合作协议</span>
+          <span v-else-if="scope.data.column.data.typemx == '经销'">经销项目协议</span>
+          <span v-else-if="scope.data.column.data.typemx == '直销'">直销项目协议</span>
+          <span v-else-if="scope.data.column.data[[scope.data.column.columnname]] == '工具借用'">工具使用协议</span>
+          <span v-else-if="scope.data.column.data[[scope.data.column.columnname]] == '居间'">居间协议</span>
+        </div>
+        <div  v-else-if="scope.data.column.columnname == 'discountrate'">
+          <!--          <div v-if="scope.data.column.data"></div>-->
+          <!--          {{scope.data.column.data[[scope.data.column.columnname]] <1 ?(scope.data.column.data[[scope.data.column.columnname]] * 100).toFixed(2):100}}-->
+          <div v-if="scope.data.column.data.type === '框架'">
+            {{scope.data.column.data.discountrate<1?Math.round((scope.data.column.data.discountrate * 100)*100)/100:100}}
+          </div>
+          <div v-else-if="scope.data.column.data.type === '居间'">
+            <span v-if="scope.data.column.data.calculatemodel === 1">
+              {{scope.data.column.data.orderratio<1?Math.round((scope.data.column.data.orderratio * 100)*100)/100:100}}
+            </span>
+            <span v-if="scope.data.column.data.calculatemodel === 2">
+              {{scope.data.column.data.productdiscount<1?Math.round((scope.data.column.data.productdiscount * 100)*100)/100:100}}
+            </span>
+          </div>
+          <div v-else>--</div>
+        </div>
+        <div v-else>
+          {{scope.data.column.data[[scope.data.column.columnname]]}}
+        </div>
+        <span v-if="!scope.data.column.data[[scope.data.column.columnname]] && scope.data.column.data[[scope.data.column.columnname]] !== 0">--</span>
+      </template>
+      <template v-slot:tbOpreation="scope">
+        <delData class="inline-16"></delData>
+        <recovery class="inline-16"></recovery>
+      </template>
+    </basicLayout>
+  </div>
+</template>
+
+<script>
+import recovery from "@/HManagement/ecycle/modules/recovery";
+import delData from "@/HManagement/ecycle/modules/delData";
+
+export default {
+  name: "index",
+  data () {
+    return {
+      application:'3',
+      applicationList:[
+        {
+          label: '项目商机',
+          value: "1",
+        },
+        {
+          label: '报价单',
+          value: "2",
+        },
+        {
+          label: '合同',
+          value: "3",
+        },
+        {
+          label: '客户',
+          value: "4",
+        },
+        {
+          label: '销售线索',
+          value: "5",
+        }
+      ],
+      dateSelect:'',
+      typeList:[],
+      area:'1',
+      tabIndex:"1",
+      type:'',
+      condition:'',
+      status:'',
+      selectParam: {
+        status: "",
+        type: "",
+        begindate:"",
+        enddate:""
+      },
+    }
+  },
+  components:{recovery,delData},
+  methods:{
+    queryData(){
+      this.$refs.basicLayout.param.content.isAll = 0
+      this.$refs.basicLayout.param.content.type = 0
+      this.$refs.basicLayout.param.content.deleted = 1
+      this.$refs.basicLayout.listData()
+    },
+    applicationChange(val){
+      console.log(val)
+      this.$emit("changeApplication",val)
+    },
+    async getSystemList () {
+      /*const res = await this.$store.dispatch('optiontypeselect','dataarea')
+      this.areaList = res.data
+      console.log(this.areaList);*/
+
+      const res2 = await this.$store.dispatch('optiontypeselect','contracttype')
+      this.typeList = res2.data
+    },
+    async getAgentList () {
+      let res = await this.$api.requested({
+        "classname": "webmanage.sale.agents.agents",
+        "method": "query_agentList",
+        "content": {
+          "pageNumber": 1,
+          "pageSize": 20,
+          "agenttype":"经销商",
+          "where": {
+            "condition": ""
+          }
+        }
+      })
+      console.log(res.data);
+
+    },
+    selectChange () {
+      if (this.dateSelect !== '' && this.dateSelect !== null){
+        this.selectParam.begindate = this.dateSelect[0]
+        this.selectParam.enddate = this.dateSelect[1]
+      }else {
+        this.selectParam.begindate = ''
+        this.selectParam.enddate = ''
+      }
+      this.$refs.basicLayout.param.content.where = this.selectParam
+      this.$refs.basicLayout.listData()
+    },
+  },
+  mounted() {
+    this.queryData()
+  },
+  created () {
+    this.getSystemList()
+    this.getAgentList()
+  },
+}
+</script>
+
+<style scoped>
+
+</style>

+ 287 - 0
src/HManagement/ecycle/customer/index.vue

@@ -0,0 +1,287 @@
+<template>
+  <div>
+    <basicLayout
+        ref="basicLayout"
+        tableName="customerTable"
+        idName="sa_customersid"
+        :apiId="{query:20221012164402,del:''}"
+        :autoQuery="false"
+    >
+      <template #custom>
+        <div class="mt-10">
+          <p class="search__label">应用:</p>
+          <el-select
+              class="inline-24"
+              size="small"
+              v-model="application"
+              placeholder="请选择范围"
+              @change="applicationChange"
+          >
+            <el-option
+                v-for="item in applicationList"
+                :key="item.index"
+                :label="item.label"
+                :value="item.value"
+            ></el-option>
+          </el-select>
+        </div>
+        <div  class="mt-10">
+          <label class="search__label">客户类型:</label>
+          <el-select class="inline-16" v-model="selectParam.type" size="small" placeholder="请选择" @change="selectChange" clearable>
+            <el-option
+                v-for="item in option.typeData"
+                :key="item.value"
+                :label="item.value"
+                :value="item.value">
+            </el-option>
+          </el-select>
+        </div>
+        <div  class="mt-10">
+          <label class="search__label">客户等级:</label>
+          <el-select  class="inline-16" v-model="selectParam.customergrade" size="small" placeholder="请选择" @change="selectChange" clearable>
+            <el-option
+                v-for="item in option.gradeData"
+                :key="item.value"
+                :label="item.value"
+                :value="item.value">
+            </el-option>
+          </el-select>
+        </div>
+        <div  class="mt-10">
+          <label class="search__label">所属行业:</label>
+          <el-select  class="inline-16" v-model="selectParam.industry" size="small" placeholder="请选择" @change="selectChange" clearable>
+            <el-option
+                v-for="item in option.industryData"
+                :key="item.value"
+                :label="item.value"
+                :value="item.value">
+            </el-option>
+          </el-select>
+        </div>
+        <div  class="mt-10">
+          <label class="search__label">合作状态:</label>
+          <el-select  class="inline-16" v-model="selectParam.status" size="small" placeholder="请选择" @change="selectChange" clearable>
+            <el-option
+                v-for="item in option.status"
+                :key="item.value"
+                :label="item.value"
+                :value="item.value">
+            </el-option>
+          </el-select>
+        </div>
+        <div  class="mt-10">
+          <label class="search__label" >创建时间:</label>
+          <el-date-picker
+              style="margin-right: 24px !important;"
+              size="small"
+              @change="selectChange"
+              value-format="yyyy-MM-dd"
+              v-model="dateSelect"
+              type="daterange"
+              range-separator="至"
+              start-placeholder="开始日期"
+              end-placeholder="结束日期"
+              clearable>
+          </el-date-picker>
+        </div>
+      </template>
+      <template v-slot:tbList="scope">
+        <div v-if="scope.data.column.columnname === 'isleader'">
+          <span v-if="scope.data.column.data['leader'].length !== 0">已分配</span>
+          <span v-else>未分配</span>
+        </div>
+        <div v-else-if="scope.data.column.columnname === 'tag'">
+          <div v-for="item in scope.data.column.data.tag_sys" :key="item.index"  style="float: left;margin-left: 5px;margin-bottom: 5px">
+            <el-tag  color="#FA8C16" size="mini" type="warning" effect="dark">
+              <span>{{item}}</span>
+            </el-tag>
+          </div>
+          <div v-for="item in scope.data.column.data.tag" :key="item.index"  style="float: left;margin-left: 5px;margin-bottom: 5px">
+            <el-tag color="#FAAB16" size="mini" type="warning" effect="dark">
+              <span>{{item}}</span>
+            </el-tag>
+          </div>
+        </div>
+        <div v-else-if="scope.data.column.columnname === 'tradingstatus'">
+          <span style="color:#3874f6" v-if="scope.data.column.data[[scope.data.column.columnname]] == '未成交'">{{scope.data.column.data[[scope.data.column.columnname]]}}</span>
+          <span style="color:#fa8c16" v-else-if="scope.data.column.data[[scope.data.column.columnname]] == '已成交'">{{scope.data.column.data[[scope.data.column.columnname]]}}</span>
+          <span style="color:#333333" v-else-if="scope.data.column.data[[scope.data.column.columnname]] == '多次成交'">{{scope.data.column.data[[scope.data.column.columnname]]}}</span>
+        </div>
+        <div v-else-if="scope.data.column.columnname === 'status'">
+          <span style="color:#3874f6" v-if="scope.data.column.data[[scope.data.column.columnname]] == '潜在'">{{scope.data.column.data[[scope.data.column.columnname]]}}</span>
+          <span style="color:#52c41a" v-else-if="scope.data.column.data[[scope.data.column.columnname]] == '合作中'">{{scope.data.column.data[[scope.data.column.columnname]]}}</span>
+          <span style="color:#999999" v-else-if="scope.data.column.data[[scope.data.column.columnname]] == '已终止'">{{scope.data.column.data[[scope.data.column.columnname]]}}</span>
+        </div>
+        <div v-else-if="scope.data.column.columnname === 'contact'">
+          <span>{{scope.data.column.data['leader'][0]?scope.data.column.data['leader'][0].name:'--'}}</span>
+        </div>
+        <div v-else>
+          {{scope.data.column.data[[scope.data.column.columnname]]?scope.data.column.data[[scope.data.column.columnname]]:'--'}}
+        </div>
+      </template>
+      <template v-slot:tbOpreation="scope">
+        <delData class="inline-16"></delData>
+        <recovery class="inline-16"></recovery>
+      </template>
+    </basicLayout>
+  </div>
+</template>
+
+<script>
+import recovery from "@/HManagement/ecycle/modules/recovery";
+import delData from "@/HManagement/ecycle/modules/delData";
+
+export default {
+  name: "index",
+  data () {
+    return {
+      application:'4',
+      applicationList:[
+        {
+          label: '项目商机',
+          value: "1",
+        },
+        {
+          label: '报价单',
+          value: "2",
+        },
+        {
+          label: '合同',
+          value: "3",
+        },
+        {
+          label: '客户',
+          value: "4",
+        },
+        {
+          label: '销售线索',
+          value: "5",
+        }
+      ],
+      option:{
+        typeData:[],
+        gradeData:[],
+        industryData:[],
+        status:[
+          {
+            value:'潜在'
+          },
+          {
+            value:'合作中'
+          },
+          {
+            value:'已终止'
+          }
+        ]
+      },
+      selectParam: {
+        status:'',
+        type:'',
+        customergrade:'',
+        industry:'',
+        startdate:'',
+        enddate:'',
+
+      },
+      dateSelect:''
+    }
+  },
+  components:{recovery,delData},
+  methods:{
+    queryData(){
+      this.$refs.basicLayout.param.content.isAll = 0
+      this.$refs.basicLayout.param.content.type = 0
+      this.$refs.basicLayout.param.content.deleted = 1
+      this.$refs.basicLayout.listData()
+    },
+    applicationChange(val){
+      console.log(val)
+      this.$emit("changeApplication",val)
+    },
+    /*客户类型列表*/
+    async typeList(){
+      const res = await this.$api.requested({
+        "classname": "sysmanage.develop.optiontype.optiontype",
+        "method": "optiontypeselect",
+        "content": {
+          "pageNumber": 1,
+          "pageSize": 20,
+          "typename": "customertypemx",
+          "parameter": {
+            "siteid": "YOSTEST2"
+          }
+        }
+      })
+      this.option.typeData = res.data
+      console.log("客户类型",res.data)
+      console.log(this.option.typeData)
+
+    },
+    /*客户等级*/
+    async gradeList(){
+      const res = await this.$api.requested({
+        "classname": "sysmanage.develop.optiontype.optiontype",
+        "method": "optiontypeselect",
+        "content": {
+          "pageNumber": 1,
+          "pageSize": 20,
+          "typename": "customergrade",
+          "parameter": {
+            "siteid": "YOSTEST2"
+          }
+        }
+      })
+      console.log("客户等级",res.data)
+      /*for (var i=0;i<res.data.length; i++){
+        if (res.data[i].remarks !== ''){
+          this.options.gradeData[i] = res.data[i].value + "——" + res.data[i].remarks
+        }else{
+          this.options.gradeData[i] = res.data[i].value
+        }
+      }*/
+      this.option.gradeData = res.data
+      console.log("处理后客户等级",this.option.gradeData)
+    },
+    /*行业列表*/
+    async industryList(){
+      const res = await this.$api.requested({
+        "classname": "sysmanage.develop.optiontype.optiontype",
+        "method": "optiontypeselect",
+        "content": {
+          "pageNumber": 1,
+          "pageSize": 20,
+          "typename": "industry",
+          "parameter": {
+            "siteid": "YOSTEST2"
+          }
+        }
+      })
+      this.option.industryData = res.data
+    },
+    selectChange(){
+      this.tabIndex = this.value
+      if (this.dateSelect !== '' && this.dateSelect !== null){
+        this.selectParam.startdate = this.dateSelect[0]
+        this.selectParam.enddate = this.dateSelect[1]
+      }else {
+        this.selectParam.startdate = ''
+        this.selectParam.enddate = ''
+      }
+      this.$refs.basicLayout.param.content.type = 0
+      this.$refs.basicLayout.param.content.where = Object.assign({},this.$refs.basicLayout.param.content.where,this.selectParam)
+      this.$refs.basicLayout.param.content.phonenumber = 1
+      this.$refs['basicLayout'].listData()
+    },
+  },
+  mounted() {
+    this.queryData()
+    this.typeList()
+    this.gradeList()
+    this.industryList()
+  },
+}
+</script>
+
+<style scoped>
+
+</style>

+ 52 - 3
src/HManagement/ecycle/index.vue

@@ -1,17 +1,66 @@
 <template>
   <div>
-    <saleClue v-if="salClueShow"></saleClue>
+    <saleClue v-if="salClueShow" @changeApplication="onChange"></saleClue>
+    <projectChange v-if="projectChangeShow" @changeApplication="onChange"></projectChange>
+    <quotedPrice v-if="quotedPriceShow" @changeApplication="onChange"></quotedPrice>
+    <contract v-if="contractShow" @changeApplication="onChange"></contract>
+    <customer v-if="customerShow" @changeApplication="onChange"></customer>
   </div>
 </template>
 
 <script>
 import saleClue from '@/HManagement/ecycle/saleClue/index'
+import projectChange from './projectChange/index'
+import quotedPrice from './quotedPrice/index'
+import contract from './contract/index'
+import customer from './customer/index'
 export default {
   name: "index",
-  components:{saleClue},
+  components:{saleClue,projectChange,quotedPrice,contract,customer},
   data(){
     return {
-      salClueShow:true
+      salClueShow:true,
+      projectChangeShow:false,
+      quotedPriceShow:false,
+      contractShow:false,
+      customerShow:false
+    }
+  },
+  methods:{
+    onChange(val){
+      console.log(this.projectChangeShow,this.salClueShow)
+      if (val === '1'){
+        this.projectChangeShow = true
+        this.salClueShow = false
+        this.quotedPriceShow = false
+        this.contractShow = false
+        this.customerShow = false
+      }else if (val === '5') {
+        this.salClueShow = true
+        this.projectChangeShow = false
+        this.quotedPriceShow = false
+        this.contractShow = false
+        this.customerShow = false
+      }else if (val === '2'){
+        this.quotedPriceShow = true
+        this.salClueShow = false
+        this.projectChangeShow = false
+        this.contractShow = false
+        this.customerShow = false
+      }else if (val === '3'){
+        this.contractShow = true
+        this.quotedPriceShow = false
+        this.salClueShow = false
+        this.projectChangeShow = false
+        this.customerShow = false
+      }else if (val === '4'){
+        this.customerShow = true
+        this.contractShow = false
+        this.quotedPriceShow = false
+        this.salClueShow = false
+        this.projectChangeShow = false
+      }
+      console.log(this.projectChangeShow,this.salClueShow)
     }
   }
 }

+ 32 - 2
src/HManagement/ecycle/modules/delData.vue

@@ -1,12 +1,42 @@
 <template>
   <div>
-    <el-button type="text" size="mini">删 除</el-button>
+    <el-button type="text" size="mini" @click="onDel" disabled>删 除</el-button>
   </div>
 </template>
 
 <script>
 export default {
-  name: "saleClueDel"
+  name: "saleClueDel",
+  props:["sys_object","ownerid"],
+  methods:{
+    onshow() {
+      this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        closeOnClickModal:false,
+        type: 'warning'
+      }).then(() => {
+        this.onDel()
+      }).catch(() => {
+        this.$message({
+          type: 'info',
+          message: '已取消删除'
+        });
+      });
+    },
+    async onDel(){
+      const res = await this.$api.requested({
+        "id": 20230103131204,
+        "content": {
+          "sys_object": this.sys_object,//1-线索,2-客户,3-合同,4-项目商机,5-报价单
+          "ownerids": [this.ownerid]
+        }
+      })
+      this.tool.showMessage(()=>{
+        this.$emit("delSuccess")
+      })
+    }
+  }
 }
 </script>
 

+ 1 - 1
src/HManagement/ecycle/modules/recovery.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <el-button type="text" size="mini">恢 复</el-button>
+    <el-button type="text" size="mini" disabled>恢 复</el-button>
   </div>
 </template>
 

+ 92 - 4
src/HManagement/ecycle/projectChange/index.vue

@@ -133,7 +133,7 @@ import delData from "@/HManagement/ecycle/modules/delData"
 export default {
   data () {
     return {
-      application:'5',
+      application:'1',
       applicationList:[
         {
           label: '项目商机',
@@ -156,8 +156,36 @@ export default {
           value: "5",
         }
       ],
-      status:'',
-      statusList:[]
+      projectType:'',
+      projectLead:'',
+      dateSelect:'',
+      option:{
+        statusTab:[
+          {
+            value:"跟进中",
+            label:"跟进中"
+          },
+          {
+            value:"已成交",
+            label:"已成交"
+          },
+          {
+            value:"已失败",
+            label:"已失败"
+          }
+        ],
+        stageList:[
+
+        ]
+      },
+      selectParam: {
+        status:'',
+        projecttype:'',
+        grade:'',
+        startdate:'',
+        enddate:'',
+        stagename:''
+      },
     }
   },
   components:{recovery,delData},
@@ -170,11 +198,71 @@ export default {
     },
     applicationChange(val){
       console.log(val)
-    }
+      this.$emit("changeApplication",val)
+    },
+    /** 获取公司数据 */
+    async getEnterprise () {
+      let res = await this.$api.requested({
+        "id": 20221021095802,
+        "content": {
+          "pageNumber": 1,
+          "pageSize": 99999,
+          "where": {
+            "condition": ""
+          }
+        },
+      })
+      this.enterpriseList = res.data
+    },
+    async getSysetms () {
+      /* 获取项目类型 */
+      let res = await this.$store.dispatch('optiontypeselect','projecttype')
+      this.projectType = res.data
+      /* 获取项目等级 */
+      let res2 = await this.$store.dispatch('optiontypeselect','projectgrade')
+      this.projectLead = res2.data
+      console.log(this.projectLead);
+
+    },
+    /*获取阶段*/
+    async stageData(){
+      const res = await this.$api.requested({
+        "id": 20221128143604,
+        "content": {
+          "pageNumber": 1,
+          "pageSize": 99,
+          "where": {
+            "condition": "",
+            "allprojecttype":"",
+            "projecttype":""
+          }
+        }
+      })
+      this.option.stageList = res.data
+    },
+    selectChange () {
+      console.log(this.projectType)
+      console.log(this.projectLead)
+      if (this.dateSelect !== '' && this.dateSelect !== null){
+        this.selectParam.startdate = this.dateSelect[0]
+        this.selectParam.enddate = this.dateSelect[1]
+      }else {
+        this.selectParam.startdate = ''
+        this.selectParam.enddate = ''
+      }
+      this.$refs.basicLayout.param.content.type = 0
+      this.$refs.basicLayout.param.content.where = this.selectParam
+      this.$refs.basicLayout.listData()
+    },
   },
   mounted() {
     this.queryData()
   },
+  created () {
+    this.getEnterprise()
+    this.getSysetms()
+    this.stageData()
+  },
 }
 
 </script>

+ 219 - 0
src/HManagement/ecycle/quotedPrice/index.vue

@@ -0,0 +1,219 @@
+<template>
+  <div>
+    <basicLayout
+        ref="basicLayout"
+        tableName="quotedPriceTable"
+        idName="sa_quotedpriceid"
+        :apiId="{query:20221020165103,del:''}"
+        :autoQuery="false"
+    >
+      <template #custom>
+        <div class="mt-10">
+          <p class="search__label">应用:</p>
+          <el-select
+              class="inline-24"
+              size="small"
+              v-model="application"
+              placeholder="请选择范围"
+              @change="applicationChange"
+          >
+            <el-option
+                v-for="item in applicationList"
+                :key="item.index"
+                :label="item.label"
+                :value="item.value"
+            ></el-option>
+          </el-select>
+        </div>
+        <div class="mt-10">
+          <label  class="search__label" >报价类型:</label>
+          <el-select class="inline-24" v-model="selectParam.isproject" placeholder="请选择报价类型" @change="selectChange" size="small" clearable>
+            <el-option
+                v-for="item in isprojectList"
+                :key="item.value"
+                :label="item.label"
+                :value="item.value">
+            </el-option>
+          </el-select>
+        </div>
+        <div class="mt-10">
+          <label  class="search__label" >状态:</label>
+          <el-select class="inline-24" v-model="selectParam.status" placeholder="请选择状态" @change="selectChange" size="small" clearable>
+            <el-option
+                v-for="item in statusList"
+                :key="item.value"
+                :label="item.value"
+                :value="item.value">
+            </el-option>
+          </el-select>
+        </div>
+        <div class="mt-10">
+          <label class="search__label" >创建日期:</label>
+          <el-date-picker
+              style="margin-right: 24px !important;"
+              size="small"
+              @change="selectChange"
+              value-format="yyyy-MM-dd"
+              v-model="dateSelect"
+              type="daterange"
+              range-separator="至"
+              start-placeholder="开始日期"
+              end-placeholder="结束日期"
+              clearable>
+          </el-date-picker>
+        </div>
+      </template>
+      <template v-slot:tbList="scope">
+        <div v-if="scope.data.column.columnname === 'specialoffer'">
+          <div v-if="scope.data.column.data.specialoffer === 0">
+            否
+          </div>
+          <div v-else-if="scope.data.column.data.specialoffer === 1">
+            是
+          </div>
+          <div v-else>--</div>
+        </div>
+        <div v-else-if="scope.data.column.columnname === 'tag'">
+          <div v-for="item in scope.data.column.data.tag" :key="item.index"  style="float: left;margin-left: 5px;margin-bottom: 5px">
+            <el-tag type="warning" size="mini">
+              <span>{{item}}</span>
+            </el-tag>
+          </div>
+          <div v-for="item in scope.data.column.data.tag_sys" :key="item.index"  style="float: left;margin-left: 5px;margin-bottom: 5px">
+            <el-tag  size="mini">
+              <span>{{item}}</span>
+            </el-tag>
+          </div>
+
+        </div>
+        <div v-else-if="scope.data.column.columnname === 'status'">
+          <span style="color:#3874f6" v-if="scope.data.column.data[[scope.data.column.columnname]] == '新建'">{{scope.data.column.data[[scope.data.column.columnname]]}}</span>
+          <span style="color:#52c41a" v-else-if="scope.data.column.data[[scope.data.column.columnname]] == '提交'">{{scope.data.column.data[[scope.data.column.columnname]]}}</span>
+          <span style="color:#333333" v-else-if="scope.data.column.data[[scope.data.column.columnname]] == '审核'">{{scope.data.column.data[[scope.data.column.columnname]]}}</span>
+        </div>
+        <div v-else-if="scope.data.column.columnname === 'invaliddate'">
+          <p>{{scope.data.column.data.begdate?scope.data.column.data.begdate+ '至' + scope.data.column.data.enddate:'--'}}</p>
+        </div>
+        <div v-else-if="scope.data.column.columnname === 'salesman'">
+          {{issaler?'--':scope.data.column.data.createby}}
+        </div>
+        <div v-else-if="scope.data.column.columnname === 'distributor'">
+          {{issaler?scope.data.column.data.enterprisename:'--'}}
+        </div>
+        <div v-else>
+          {{scope.data.column.data[[scope.data.column.columnname]]?scope.data.column.data[[scope.data.column.columnname]]:'--'}}
+        </div>
+      </template>
+      <template v-slot:tbOpreation="scope">
+        <delData class="inline-16"></delData>
+        <recovery class="inline-16"></recovery>
+      </template>
+    </basicLayout>
+  </div>
+</template>
+
+<script>
+import recovery from "@/HManagement/ecycle/modules/recovery"
+import delData from "@/HManagement/ecycle/modules/delData"
+export default {
+  name: "index",
+  data () {
+    return {
+      application:'2',
+      applicationList:[
+        {
+          label: '项目商机',
+          value: "1",
+        },
+        {
+          label: '报价单',
+          value: "2",
+        },
+        {
+          label: '合同',
+          value: "3",
+        },
+        {
+          label: '客户',
+          value: "4",
+        },
+        {
+          label: '销售线索',
+          value: "5",
+        }
+      ],
+      dateSelect:'',
+      statusList:[
+        {
+          value:'新建'
+        },
+        {
+          value:'提交'
+        },
+        {
+          value:'审核'
+        }
+      ],
+      isprojectList:[
+        {
+          label:'客户报价',
+          value:'0'
+        },
+        {
+          label:'项目报价',
+          value:'1'
+        }
+      ],
+      selectParam: {
+        status:'',
+        isproject:'',
+        startdate:'',
+        enddate:'',
+      },
+    }
+  },
+  components:{recovery,delData},
+  methods:{
+    queryData(){
+      this.$refs.basicLayout.param.content.isAll = 0
+      this.$refs.basicLayout.param.content.type = 0
+      this.$refs.basicLayout.param.content.deleted = 1
+      this.$refs.basicLayout.listData()
+    },
+    applicationChange(val){
+      console.log(val)
+      this.$emit("changeApplication",val)
+    },
+    selectChange(){
+      this.tabIndex = this.tabName
+      if (this.dateSelect !== '' && this.dateSelect !== null){
+        this.selectParam.startdate = this.dateSelect[0]
+        this.selectParam.enddate = this.dateSelect[1]
+      }else {
+        this.selectParam.startdate = ''
+        this.selectParam.enddate = ''
+      }
+      this.$refs.basicLayout.param.content.type = 0
+      this.$refs.basicLayout.param.content.where = this.selectParam
+      this.$refs.basicLayout.listData()
+    },
+    /*是否经销商*/
+    async isSaler(){
+      const res = await this.$api.requested({
+        classname: "common.usercenter.usercenter",
+        content: {},
+        method: "queryUserMsg"
+      })
+      this.issaler = res.data.hr.issaler
+    },
+  },
+  mounted() {
+    this.queryData()
+    this.isSaler()
+  },
+}
+</script>
+
+<style scoped>
+
+</style>

+ 2 - 1
src/HManagement/ecycle/saleClue/index.vue

@@ -56,7 +56,7 @@
         <span v-if="!scope.data.column.data[scope.data.column.columnname] ">--</span>
       </template>
       <template v-slot:tbOpreation="scope">
-        <delData class="inline-16"></delData>
+        <delData class="inline-16" :ownerid="scope.data"></delData>
         <recovery class="inline-16"></recovery>
       </template>
     </basicLayout>
@@ -114,6 +114,7 @@ export default {
     },
     applicationChange(val){
       console.log(val)
+      this.$emit("changeApplication",val)
     }
   },
   mounted() {