|
@@ -0,0 +1,637 @@
|
|
|
+<template>
|
|
|
+ <el-drawer append-to-body :visible.sync="dialogFormVisible" size="90%">
|
|
|
+ <div class="Mcontainer">
|
|
|
+ <div style="background:#ffffff;padding:10px" v-if="Object.keys(baseInfo).length">
|
|
|
+ <div class="Mcontainer-header">
|
|
|
+ <div class="Mcontainer-header__left">
|
|
|
+ <div style="width:60px;height: 60px;background: blue;"></div>
|
|
|
+ <div class="account">
|
|
|
+ <p class="normal-title">
|
|
|
+ <el-tooltip class="item" effect="dark" :content="baseInfo.enterprisename" placement="top">
|
|
|
+ <p class="nowrap">{{ baseInfo.enterprisename }}</p>
|
|
|
+ </el-tooltip>
|
|
|
+ </p>
|
|
|
+ <div class="Mtag">
|
|
|
+ <el-tag size="small" v-for="(item,index) in baseInfo.sys_tag" :key="index">{{ item }}</el-tag>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="Mcontainer-header__right">
|
|
|
+ <el-descriptions class="margin-top">
|
|
|
+ <el-descriptions-item label="客户类型">{{ baseInfo.type }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="客户等级">{{ baseInfo.grade }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label=" 合作状态">{{ baseInfo.status }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="客户行业"> {{ baseInfo.industry }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="客户分类"> {{ baseInfo.customergrade }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="成交状态"> {{ baseInfo.tradingstatus }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="负责人"> {{ baseInfo.team.length && baseInfo.team.filter(item =>item.isleader = 1)[0].name }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="注册地址">{{ `${baseInfo.province}${baseInfo.city}${baseInfo.county}${baseInfo.address}` }} </el-descriptions-item>
|
|
|
+ </el-descriptions>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="MaccountInfo">
|
|
|
+ <showIsNone title="工商信息">
|
|
|
+ <el-descriptions :column="2" border>
|
|
|
+ <el-descriptions-item label="法定代表人" label-class-name="my-label">{{ baseInfo2.legalPerson }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="注册资本">{{ baseInfo2.registerCapital }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="统一社会信用代码">{{ baseInfo2.taxNum }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="工商注册号">{{ baseInfo2.ocid }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="纳税人识别号">{{ baseInfo2.socialCreditCode }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="行业大类">{{ baseInfo2.industryOne }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="人员规模">{{ baseInfo2.staffSize }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="经营期限至">{{ baseInfo2.registerDate }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="注册地址">
|
|
|
+ <div class="nowrap" style="width: 300px;">
|
|
|
+ <el-tooltip class="item" effect="dark" :content="baseInfo2.address" placement="top">
|
|
|
+ <p class="nowrap">{{ baseInfo2.address }}</p>
|
|
|
+ </el-tooltip>
|
|
|
+ </div>
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item label="经营范围">
|
|
|
+ <div class="nowrap" style="width: 300px;">
|
|
|
+ <el-tooltip class="item" effect="dark" :content="baseInfo2.opScope" placement="top">
|
|
|
+ <p class="nowrap">{{ baseInfo2.opScope }}</p>
|
|
|
+ </el-tooltip>
|
|
|
+ </div>
|
|
|
+ </el-descriptions-item>
|
|
|
+ </el-descriptions>
|
|
|
+ </showIsNone>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div v-if="data" style="padding: 0 10px;">
|
|
|
+ <!--跟进记录-->
|
|
|
+ <div class="Mfollow">
|
|
|
+ <el-card class="box-card">
|
|
|
+ <div slot="header">
|
|
|
+ <span style="margin-right: 10px;font-size: 14px;font-weight: bold;">跟进记录</span>
|
|
|
+ <el-radio-group v-model="param1.content.isAll" @input="refreshTable('param1','fllow')">
|
|
|
+ <el-radio :label="1">全部</el-radio>
|
|
|
+ <el-radio :label="0">本年</el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </div>
|
|
|
+ <myCard
|
|
|
+ :list="
|
|
|
+ [
|
|
|
+ {title:'跟进次数',value:$refs.fllow && $refs.fllow.list.length,bg:'#F3F9FC',color:'#8DCFFC'},
|
|
|
+ {title:'最近跟进人',value:$refs.fllow && $refs.fllow.list[0] && $refs.fllow.list[0].name,bg:'#E8F7EC',color:'#78B32B'},
|
|
|
+ {title:'最近跟进时间',value:$refs.fllow && $refs.fllow.list[0] && $refs.fllow.list[0].createdate,bg:'#F9F2E5',color:'#FF9795'},
|
|
|
+ ]"
|
|
|
+ ></myCard>
|
|
|
+ <showIsNone title="客户跟进记录明细">
|
|
|
+ <pageTable
|
|
|
+ ref="fllow"
|
|
|
+ :tablecols="tool.tabelCol($route.name).clueFollow.tablecols"
|
|
|
+ :param="param1"
|
|
|
+ ></pageTable>
|
|
|
+ </showIsNone>
|
|
|
+ </el-card>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <!--项目-->
|
|
|
+ <div class="Mproject" style="margin-top:10px">
|
|
|
+ <el-card class="box-card">
|
|
|
+ <div slot="header">
|
|
|
+ <span style="margin-right: 10px;font-size: 14px;font-weight: bold;">项目</span>
|
|
|
+ <el-radio-group v-model="param2.content.isAll" @input="refreshTable('param2','project')">
|
|
|
+ <el-radio :label="1">全部</el-radio>
|
|
|
+ <el-radio :label="0">本年</el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+
|
|
|
+ <el-select style="margin-left:10px" v-model="param2.content.where.stagename" clearable size="mini" placeholder="请选择项目阶段" @change="typeChange('param2','project')">
|
|
|
+ <el-option label="全部" value=""></el-option>
|
|
|
+ <el-option
|
|
|
+ v-for="item in stageList"
|
|
|
+ :key="item.stagename"
|
|
|
+ :label="item.stagename"
|
|
|
+ :value="item.stagename">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
+ <myCard
|
|
|
+ :list="
|
|
|
+ [
|
|
|
+ {title:'项目数',value:$refs.project && $refs.project.list && $refs.project.list.length,bg:'#F3F9FC',color:'#8DCFFC'},
|
|
|
+ {title:'项目成交率',value:$refs.project && $refs.project.list && $refs.project.list[0] && $refs.project.list[0].cjl,bg:'#E8F7EC',color:'#78B32B'},
|
|
|
+ {title:'总预计签约金额',value:$refs.project && $refs.project.list && $refs.project.list[0] && $refs.project.list[0].allSignamount_due,bg:'#F9F2E5',color:'#FF9795'},
|
|
|
+ {title:'参与项目数',value:$refs.project && $refs.project.list && $refs.project.list[0] && $refs.project.list[0].joinProjectQty,bg:'#FDF3F3',color:'#E899CC'},
|
|
|
+ ]"
|
|
|
+ ></myCard>
|
|
|
+ <showIsNone title="项目明细">
|
|
|
+ <pageTable
|
|
|
+ ref="project"
|
|
|
+ :tablecols="tool.tabelCol($route.name).competeProjectsTable.tablecols"
|
|
|
+ :param="param2"
|
|
|
+ ></pageTable>
|
|
|
+ </showIsNone>
|
|
|
+ </el-card>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <!--报价单-->
|
|
|
+ <div class="Mproject" style="margin-top:10px">
|
|
|
+ <el-card class="box-card">
|
|
|
+ <div slot="header">
|
|
|
+ <span style="margin-right: 10px;font-size: 14px;font-weight: bold;">报价单</span>
|
|
|
+ <el-radio-group v-model="param3.content.isAll" @input="refreshTable('param3','baojiadan')">
|
|
|
+ <el-radio :label="1">全部</el-radio>
|
|
|
+ <el-radio :label="0">本年</el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </div>
|
|
|
+ <myCard
|
|
|
+ :list="
|
|
|
+ [
|
|
|
+ {title:'报价次数',value:$refs.baojiadan && $refs.baojiadan.list && $refs.baojiadan.list.length,bg:'#F3F9FC',color:'#8DCFFC'},
|
|
|
+ {title:'最近报价金额',value:$refs.baojiadan && $refs.baojiadan.list && $refs.baojiadan.list[0] && $refs.baojiadan.list[0].sumamount,bg:'#E8F7EC',color:'#78B32B'},
|
|
|
+ {title:'最近报价时间',value:$refs.baojiadan && $refs.baojiadan.list && $refs.baojiadan.list[0] && $refs.baojiadan.list[0].submitdate,bg:'#F9F2E5',color:'#FF9795'},
|
|
|
+ ]"
|
|
|
+ ></myCard>
|
|
|
+ <showIsNone title="报价单明细">
|
|
|
+ <pageTable
|
|
|
+ ref="baojiadan"
|
|
|
+ :tablecols="tool.tabelCol($route.name).quotedPriceTable.tablecols"
|
|
|
+ :param="param3"
|
|
|
+ ></pageTable>
|
|
|
+ </showIsNone>
|
|
|
+ </el-card>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <!--合同-->
|
|
|
+ <div class="Mproject" style="margin-top:10px">
|
|
|
+ <el-card class="box-card">
|
|
|
+ <div slot="header">
|
|
|
+ <span style="margin-right: 10px;font-size: 14px;font-weight: bold;">合同</span>
|
|
|
+ <el-radio-group v-model="param4.content.isAll" @input="refreshTable('param4','hetong')">
|
|
|
+ <el-radio :label="1">全部</el-radio>
|
|
|
+ <el-radio :label="0">本年</el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ <el-select style="margin-left:10px" v-model="param4.content.where.type" clearable size="mini" placeholder="请选择订单类型" @change="typeChange('param4','hetong')">
|
|
|
+ <el-option label="全部" value=""></el-option>
|
|
|
+ <el-option :label="item.value" :value="item.value" v-for="(item,index) in contractTypeList" :key="index"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
+ <myCard
|
|
|
+ :list="
|
|
|
+ [
|
|
|
+ {title:'项目合同总数',value:$refs.hetong && $refs.hetong.list && $refs.hetong.list[0] && $refs.hetong.list[0].allQty,bg:'#F3F9FC',color:'#8DCFFC'},
|
|
|
+ {title:'项目合同总金额',value:$refs.hetong && $refs.hetong.list && $refs.hetong.list[0] && $refs.hetong.list[0].sumSignAmount,bg:'#E8F7EC',color:'#78B32B'},
|
|
|
+ {title:'进行中项目总数',value:$refs.hetong && $refs.hetong.list && $refs.hetong.list[0] && $refs.hetong.list[0].inProgressQty,bg:'#F9F2E5',color:'#FF9795'},
|
|
|
+ {title:'进行中项目金额',value:$refs.hetong && $refs.hetong.list && $refs.hetong.list[0] && $refs.hetong.list[0].inProgressAmount,bg:'#F9F2E5',color:'#FF9795'},
|
|
|
+ {title:'到期项目合同数',value:$refs.hetong && $refs.hetong.list && $refs.hetong.list[0] && $refs.hetong.list[0].expireQty,bg:'#F9F2E5',color:'#FF9795'},
|
|
|
+ {title:'到期项目合同金额',value:$refs.hetong && $refs.hetong.list && $refs.hetong.list[0] && $refs.hetong.list[0].expireAmount,bg:'#F9F2E5',color:'#FF9795'},
|
|
|
+ ]"
|
|
|
+ ></myCard>
|
|
|
+ <showIsNone title="合同明细">
|
|
|
+ <pageTable
|
|
|
+ ref="hetong"
|
|
|
+ :tablecols="tool.tabelCol($route.name).contractTable.tablecols"
|
|
|
+ :param="param4"
|
|
|
+ ></pageTable>
|
|
|
+ </showIsNone>
|
|
|
+ </el-card>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <!--订单-->
|
|
|
+ <div class="Mproject" style="margin-top:10px">
|
|
|
+ <el-card class="box-card">
|
|
|
+ <div slot="header">
|
|
|
+ <span style="margin-right: 10px;font-size: 14px;font-weight: bold;">订单</span>
|
|
|
+ <el-radio-group v-model="param5.content.isAll" @input="refreshTable('param5','dingdan')">
|
|
|
+ <el-radio :label="1">全部</el-radio>
|
|
|
+ <el-radio :label="0">本年</el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ <el-select style="margin-left:10px" v-model="param5.content.where.type" clearable size="mini" placeholder="请选择订单类型" @change="typeChange($event,'param5','type','dingdan')">
|
|
|
+ <el-option label="全部" value=""></el-option>
|
|
|
+ <el-option :label="item.value" :value="item.value" v-for="(item,index) in orderTypeList" :key="index"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
+ <myCard
|
|
|
+ :list="
|
|
|
+ [
|
|
|
+ {title:'订单数量',value:$refs.dingdan && $refs.dingdan.list && $refs.dingdan.list[0] && $refs.dingdan.list[0].allOrderQty,bg:'#F3F9FC',color:'#8DCFFC'},
|
|
|
+ {title:'订单总金额',value:$refs.dingdan && $refs.dingdan.list && $refs.dingdan.list[0] && $refs.dingdan.list[0].allAmount,bg:'#E8F7EC',color:'#78B32B'},
|
|
|
+ {title:'回款金额',value:$refs.dingdan && $refs.dingdan.list && $refs.dingdan.list[0] && $refs.dingdan.list[0].cashbillAmount,bg:'#F9F2E5',color:'#FF9795'},
|
|
|
+ {title:'未出货金额',value:$refs.dingdan && $refs.dingdan.list && $refs.dingdan.list[0] && $refs.dingdan.list[0].allunAmount,bg:'#F9F2E5',color:'#FF9795'},
|
|
|
+ {title:'参与项目订单金额',value:$refs.dingdan && $refs.dingdan.list && $refs.dingdan.list[0] && $refs.dingdan.list[0].joinOrderAmount,bg:'#F9F2E5',color:'#FF9795'},
|
|
|
+ ]"
|
|
|
+ ></myCard>
|
|
|
+ <showIsNone title="订单明细">
|
|
|
+ <pageTable
|
|
|
+ ref="dingdan"
|
|
|
+ :tablecols="tool.tabelCol($route.name).orderTable.tablecols"
|
|
|
+ :param="param5"
|
|
|
+ ></pageTable>
|
|
|
+ </showIsNone>
|
|
|
+ </el-card>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <!--服务-->
|
|
|
+ <div class="Mproject" style="margin-top:10px">
|
|
|
+ <el-card class="box-card">
|
|
|
+ <div slot="header">
|
|
|
+ <span style="margin-right: 10px;font-size: 14px;font-weight: bold;">服务</span>
|
|
|
+ <el-radio-group v-model="param6.content.isAll" @input="refreshTable('param6','fuwu')">
|
|
|
+ <el-radio :label="1">全部</el-radio>
|
|
|
+ <el-radio :label="0">本年</el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </div>
|
|
|
+ <myCard
|
|
|
+ :list="
|
|
|
+ [
|
|
|
+ {title:'服务申请次数',value:$refs.fuwu && $refs.fuwu.list && $refs.fuwu.list[0] && $refs.fuwu.list[0].serviceOrderQty,bg:'#F3F9FC',color:'#8DCFFC'},
|
|
|
+ {title:'服务工单次数',value:$refs.fuwu && $refs.fuwu.list && $refs.fuwu.list[0] && $refs.fuwu.list[0].workOrderQty,bg:'#E8F7EC',color:'#78B32B'},
|
|
|
+ {title:'完工工单次数',value:$refs.fuwu && $refs.fuwu.list && $refs.fuwu.list[0] && $refs.fuwu.list[0].okWorkOrderQty,bg:'#F9F2E5',color:'#FF9795'},
|
|
|
+ {title:'最近服务时间',value:$refs.fuwu && $refs.fuwu.list && $refs.fuwu.list[0] && $refs.fuwu.list[0].createdate,bg:'#F9F2E5',color:'#FF9795'},
|
|
|
+ ]"
|
|
|
+ ></myCard>
|
|
|
+ <showIsNone title="服务工单明细">
|
|
|
+ <pageTable
|
|
|
+ ref="fuwu"
|
|
|
+ :tablecols="tool.tabelCol($route.name).serveOrderTable.tablecols"
|
|
|
+ :param="param6"
|
|
|
+ ></pageTable>
|
|
|
+ </showIsNone>
|
|
|
+ </el-card>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="peopleInfo" v-if="Object.keys(baseInfo).length">
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-card class="box-card" style="margin-right:10px">
|
|
|
+ <div slot="header">
|
|
|
+ <span style="margin-right: 10px;font-size: 14px;font-weight: bold;">团队</span>
|
|
|
+ </div>
|
|
|
+ <div class="peopleInfo-content">
|
|
|
+ <div class="leader">
|
|
|
+ <p class="title" style="margin-bottom:10px">负责人</p>
|
|
|
+ <div class="content">
|
|
|
+ <div class="item" v-for="(item,index) in baseInfo.team.filter(item => item.isleader == 1)" :key="index">
|
|
|
+ <div class="avatar">{{ item.name.substr(0,1) }}</div>
|
|
|
+ <div class="Info">
|
|
|
+ <div>
|
|
|
+ <p class="title">{{ item.name }}</p>
|
|
|
+ <p class="descript">账号:<span>{{ item.accountno }}</span></p>
|
|
|
+ </div>
|
|
|
+ <div>
|
|
|
+ <p class="descript">部门:<span>{{ item.depname }}</span></p>
|
|
|
+ <p class="descript">职位:<span>{{ item.position }}</span></p>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="people">
|
|
|
+ <p class="title" style="margin-bottom:10px">参与人</p>
|
|
|
+ <div class="content">
|
|
|
+ <div class="avatar">张</div>
|
|
|
+ <div class="Info">
|
|
|
+ <div>
|
|
|
+ <p class="title">张三</p>
|
|
|
+ <p class="descript">账号:<span>xxxxxxxx</span></p>
|
|
|
+ </div>
|
|
|
+ <div>
|
|
|
+ <p class="descript">部门:<span>销售部</span></p>
|
|
|
+ <p class="descript">职位:<span>总监</span></p>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </el-card>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-card class="box-card">
|
|
|
+ <div slot="header">
|
|
|
+ <span style="margin-right: 10px;font-size: 14px;font-weight: bold;">联系人</span>
|
|
|
+ </div>
|
|
|
+ <div class="peopleInfo-content">
|
|
|
+ <div class="leader">
|
|
|
+ <div class="content" v-if="baseInfo.contacts.length">
|
|
|
+ <div class="item" v-for="(item,index) in baseInfo.contacts" :key="index">
|
|
|
+ <div class="avatar">{{ item.name.substr(0,1) }}</div>
|
|
|
+ <div class="Info">
|
|
|
+ <div>
|
|
|
+ <p class="title">{{ item.name }}</p>
|
|
|
+ <p class="descript">账号:<span>{{ item.accountno }}</span></p>
|
|
|
+ </div>
|
|
|
+ <div>
|
|
|
+ <p class="descript">部门:<span>{{ item.depname }}</span></p>
|
|
|
+ <p class="descript">职位:<span>{{ item.position }}</span></p>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <el-empty :image-size="100" description="暂无数据" v-else></el-empty>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </el-card>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ </div>
|
|
|
+ </el-drawer>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+import pageTable from './pageTable'
|
|
|
+import showIsNone from './showIsNone'
|
|
|
+import myCard from './myCrad.vue'
|
|
|
+export default {
|
|
|
+ name: "index",
|
|
|
+ components:{showIsNone,pageTable,myCard},
|
|
|
+ props:['data'],
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ dialogFormVisible:false,
|
|
|
+ baseInfo:{},//基本信息
|
|
|
+ baseInfo2:{},//工商信息
|
|
|
+ //跟进记录
|
|
|
+ param1: {
|
|
|
+ "id": 20230713103904,
|
|
|
+ "content": {
|
|
|
+ "pageNumber": 1,
|
|
|
+ "pageSize": 20,
|
|
|
+ "isAll":1,
|
|
|
+ "sa_customersid":this.$route.query.id
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //关联项目
|
|
|
+ param2: {
|
|
|
+ "id": 20230713104004,
|
|
|
+ "content": {
|
|
|
+ "pageNumber": 1,
|
|
|
+ "pageSize": 20,
|
|
|
+ "isAll":1,
|
|
|
+ "sa_customersid":this.$route.query.id,
|
|
|
+ "where":{
|
|
|
+ "stagename":""
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //关联报价单
|
|
|
+ param3: {
|
|
|
+ "id": 20230713104104,
|
|
|
+ "content": {
|
|
|
+ "pageNumber": 1,
|
|
|
+ "pageSize": 20,
|
|
|
+ "isAll":1,
|
|
|
+ "sa_customersid":this.$route.query.id
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //关联合同
|
|
|
+ param4: {
|
|
|
+ "id": 20230713104204,
|
|
|
+ "content": {
|
|
|
+ "pageNumber": 1,
|
|
|
+ "pageSize": 20,
|
|
|
+ "isAll":1,
|
|
|
+ "sa_customersid":this.$route.query.id,
|
|
|
+ "where":{
|
|
|
+ "type":""
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //关联订单
|
|
|
+ param5: {
|
|
|
+ "id": 20230713104304,
|
|
|
+ "content": {
|
|
|
+ "pageNumber": 1,
|
|
|
+ "pageSize": 20,
|
|
|
+ "isAll":1,
|
|
|
+ "sa_customersid":this.$route.query.id,
|
|
|
+ "where":{
|
|
|
+ "type":""
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //服务工单
|
|
|
+ param6: {
|
|
|
+ "id": 20230713104404,
|
|
|
+ "content": {
|
|
|
+ "pageNumber": 1,
|
|
|
+ "pageSize": 20,
|
|
|
+ "isAll":1,
|
|
|
+ "sa_customersid":this.$route.query.id
|
|
|
+ }
|
|
|
+ },
|
|
|
+ contractTypeList:[],
|
|
|
+ orderTypeList:[],
|
|
|
+ stageList:[]
|
|
|
+ }
|
|
|
+ },
|
|
|
+ methods:{
|
|
|
+ async getbaseInfo () {
|
|
|
+ let res = await this.$api.requested({
|
|
|
+ "id": 20230713103804,
|
|
|
+ "content": {
|
|
|
+ "sa_customersid":this.data.sa_customersid
|
|
|
+ }
|
|
|
+ })
|
|
|
+ this.baseInfo = res.data
|
|
|
+ console.log(this.baseInfo,'基本信息');
|
|
|
+
|
|
|
+ let res2 = await this.$api.requested({
|
|
|
+ "id": 20221208103601,
|
|
|
+ "content": {
|
|
|
+ "keyword":this.baseInfo.enterprisename,
|
|
|
+ "pageNumber":1,
|
|
|
+ "pageSize":1
|
|
|
+ }
|
|
|
+ })
|
|
|
+ this.baseInfo2 = res2.data[0]
|
|
|
+ console.log(this.baseInfo2,'工商信息');
|
|
|
+ },
|
|
|
+ async getSelectList () {
|
|
|
+ const res = await this.$store.dispatch('optiontypeselect','contracttype')
|
|
|
+ this.contractTypeList = res.data
|
|
|
+ console.log(this.orderTypeList,'合同类型');
|
|
|
+
|
|
|
+ const res2 = await this.$store.dispatch('optiontypeselect','ordertype')
|
|
|
+ this.orderTypeList = res2.data
|
|
|
+ console.log(this.orderTypeList,'订单类型');
|
|
|
+
|
|
|
+ /*获取阶段*/
|
|
|
+ const res3 = await this.$api.requested({
|
|
|
+ "id": 20221128143604,
|
|
|
+ "content": {
|
|
|
+ "pageNumber": 1,
|
|
|
+ "pageSize": 9999,
|
|
|
+ "where": {
|
|
|
+ "condition": "",
|
|
|
+ "allprojecttype":"",
|
|
|
+ "projecttype":""
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ this.stageList = res3.data
|
|
|
+ },
|
|
|
+ refreshTable (param,el) {
|
|
|
+ this[param].content.pageNumber = 1
|
|
|
+ this.$refs[el] && this.$refs[el].listData()
|
|
|
+ },
|
|
|
+ typeChange(param,el) {
|
|
|
+ this[param].content.pageNumber = 1
|
|
|
+ this.$refs[el] && this.$refs[el].listData()
|
|
|
+ }
|
|
|
+ },
|
|
|
+ mounted() {
|
|
|
+ this.getbaseInfo()
|
|
|
+ this.getSelectList()
|
|
|
+ }
|
|
|
+}
|
|
|
+</script>
|
|
|
+
|
|
|
+<style scoped>
|
|
|
+*{
|
|
|
+ box-sizing: border-box;
|
|
|
+}
|
|
|
+.my-label {
|
|
|
+ background: rgba(235, 245, 253, 1);
|
|
|
+}
|
|
|
+.nowrap {
|
|
|
+ white-space: nowrap;
|
|
|
+ overflow: hidden;
|
|
|
+ text-overflow: ellipsis;
|
|
|
+ flex: 100;
|
|
|
+}
|
|
|
+
|
|
|
+/deep/.el-drawer {
|
|
|
+ background:#F5F5F5 !important;
|
|
|
+}
|
|
|
+/deep/.el-drawer__header{
|
|
|
+ display: none !important;
|
|
|
+}
|
|
|
+
|
|
|
+/deep/.el-descriptions-item__cell {
|
|
|
+ padding: 8px !important;
|
|
|
+}
|
|
|
+
|
|
|
+/deep/.el-card__header,/deep/.el-card__body {
|
|
|
+ padding: 10px !important;
|
|
|
+}
|
|
|
+.Mcontainer .Mcontainer-header {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+}
|
|
|
+.Mcontainer .Mcontainer-header .Mcontainer-header__left {
|
|
|
+ display: flex;
|
|
|
+ width: 300px;
|
|
|
+ align-items: center;
|
|
|
+}
|
|
|
+.Mcontainer .Mcontainer-header .Mcontainer-header__right {
|
|
|
+ flex: 100;
|
|
|
+ border-left: 1px solid #cccccc;
|
|
|
+ padding-left: 20px;
|
|
|
+}
|
|
|
+.Mcontainer .Mcontainer-header .Mcontainer-header__left .account{
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ justify-content: space-between;
|
|
|
+ margin-left: 10px;
|
|
|
+ overflow: hidden;
|
|
|
+}
|
|
|
+.Mcontainer .Mcontainer-header .Mcontainer-header__left .account .Mtag{
|
|
|
+ margin-top: 5px;
|
|
|
+}
|
|
|
+
|
|
|
+.Mcontainer .Mfollow{
|
|
|
+ margin-top: 10px;
|
|
|
+}
|
|
|
+
|
|
|
+.Mcontainer .peopleInfo {
|
|
|
+ margin-top: 10px;
|
|
|
+ padding-bottom: 10px;
|
|
|
+}
|
|
|
+.peopleInfo-content {
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+}
|
|
|
+.peopleInfo-content .leader {
|
|
|
+ margin-bottom: 10px;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+}
|
|
|
+.peopleInfo-content .leader .title {
|
|
|
+ font-size: 14px;
|
|
|
+}
|
|
|
+.peopleInfo-content .leader .content {
|
|
|
+ display: flex;
|
|
|
+ flex-wrap: wrap;
|
|
|
+}
|
|
|
+.peopleInfo-content .leader .content .item {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ margin: 0 20px 10px 0;
|
|
|
+}
|
|
|
+.peopleInfo-content .leader .content .avatar {
|
|
|
+ width: 50px;
|
|
|
+ height: 50px;
|
|
|
+ border-radius: 50%;
|
|
|
+ text-align: center;
|
|
|
+ line-height: 50px;
|
|
|
+ background: blue;
|
|
|
+ margin-right: 10px;
|
|
|
+ color: #ffffff;
|
|
|
+}
|
|
|
+.peopleInfo-content .leader .content .Info {
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+}
|
|
|
+.peopleInfo-content .leader .content .Info div {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ font-size: 12px;
|
|
|
+ color: #cccccc;
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+.peopleInfo-content .people {
|
|
|
+ margin-bottom: 10px;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+}
|
|
|
+.peopleInfo-content .people .title {
|
|
|
+ font-size: 14px;
|
|
|
+}
|
|
|
+.peopleInfo-content .people .content {
|
|
|
+ display: flex;
|
|
|
+}
|
|
|
+.peopleInfo-content .people .content .item {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ margin: 0 20px 10px 0;
|
|
|
+}
|
|
|
+.peopleInfo-content .people .content .avatar {
|
|
|
+ width: 50px;
|
|
|
+ height: 50px;
|
|
|
+ border-radius: 50%;
|
|
|
+ text-align: center;
|
|
|
+ line-height: 50px;
|
|
|
+ background: blue;
|
|
|
+ margin-right: 10px;
|
|
|
+ color: #ffffff;
|
|
|
+}
|
|
|
+.peopleInfo-content .people .content .Info {
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+}
|
|
|
+.peopleInfo-content .people .content .Info div {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ font-size: 12px;
|
|
|
+ color: #cccccc;
|
|
|
+}
|
|
|
+
|
|
|
+.peopleInfo-content .people {}
|
|
|
+
|
|
|
+.descript {
|
|
|
+ font-size: 12px;
|
|
|
+ color: #cccccc;
|
|
|
+ margin-right: 20px;
|
|
|
+}
|
|
|
+.title {
|
|
|
+ font-size: 14px;
|
|
|
+ color: #000000;
|
|
|
+ margin-right: 10px;
|
|
|
+}
|
|
|
+</style>
|