Commit 79d43c33 authored by MyName's avatar MyName

客户管理

parent fb408bbd
import request from '@/utils/request'
// 客户列表
export function getCustomerList(param) {
return request({
url: '/customer/list',
method: 'get',
params: param
})
}
//新增客户
export function addCustomer(param) {
return request({
url: '/customer',
method: 'POST',
data: param
})
}
import request from '@/utils/request'
//根据字典类型查询字典数据信息
export function getDictType(dictType) {
return request({
url: '/system/dict/data/type/'+dictType,
method: 'get',
})
}
//模糊查询企业联想
export function getEnterprise(param) {
return request({
url: '/enterprise/index',
method: 'POST',
data: param
})
}
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -519,6 +519,7 @@ ul, li { ...@@ -519,6 +519,7 @@ ul, li {
.btn_default{ .btn_default{
border: 1px solid #0081FF; border: 1px solid #0081FF;
color: #0081FF; color: #0081FF;
background: #FFFFFF;
&.h28{ &.h28{
line-height: 26px; line-height: 26px;
} }
...@@ -617,7 +618,8 @@ ul, li { ...@@ -617,7 +618,8 @@ ul, li {
top: 0; top: 0;
border-radius: 0; border-radius: 0;
&:hover{ &:hover{
color: #006AD1; color: #FFFFFF;
background: #0081FF;
} }
} }
} }
......
...@@ -392,6 +392,11 @@ ...@@ -392,6 +392,11 @@
content: "\e78f"; content: "\e78f";
opacity: 0.4; opacity: 0.4;
} }
.el-icon-arrow-down:before{
content: "\e790";
opacity: 0.4;
color: #232323;
}
} }
} }
.popbot{ .popbot{
...@@ -414,10 +419,10 @@ ...@@ -414,10 +419,10 @@
} }
.popform.j{ .popform.j{
.left{ .left{
width: 116px; width: 130px;
} }
.el-input{ .el-input{
width: 374px; width: 364px;
} }
} }
.types{ .types{
...@@ -697,12 +702,8 @@ ...@@ -697,12 +702,8 @@
font-size: 12px; font-size: 12px;
} }
} }
.b1{
padding: 0 5px;
border-radius: 2px;
}
.b2{ .b2{
padding: 0 15px; width: 80px;
border-radius: 2px; border-radius: 2px;
} }
.b3{ .b3{
...@@ -748,6 +749,25 @@ ...@@ -748,6 +749,25 @@
.el-table--enable-row-hover .el-table__body tr:hover > td.el-table__cell{ .el-table--enable-row-hover .el-table__body tr:hover > td.el-table__cell{
background: #F6F9FC;; background: #F6F9FC;;
} }
.hoverbtn{
display: none;
>div{
cursor: pointer;
margin-right: 24px;
}
.xz{
opacity: 0.8;
}
.sc{
color: #FF3C3C;
}
}
tr:hover{
.hoverbtn{
display: flex;
justify-content: right;
}
}
.el-table__header-wrapper th{ .el-table__header-wrapper th{
background: #FFFFFF; background: #FFFFFF;
font-size: 12px; font-size: 12px;
...@@ -815,3 +835,163 @@ ...@@ -815,3 +835,163 @@
color: #0BAE8D; color: #0BAE8D;
} }
} }
//批量导入
.uploadwin{
background: rgba(0,0,0,0.3);
width: 100%;
height: 100%;
position: fixed;
top: 0;
left: 0;
z-index: 2;
.upload{
width: 528px;
height: 430px;
background: #F4F9FF;
border-radius: 4px;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
.up_title{
font-size: 14px;
font-weight: 700;
text-align: center;
line-height: 50px;
}
.up_box{
margin: 0 24px;
width: 480px;
height: 296px;
background: #FFFFFF;
border-radius: 2px;
border: 1px dashed #0081FF;
position: relative;
.el-upload-dragger{
height: 294px;
width: 478px;
border: 0;
}
.up_img{
margin: 56px auto 13px;
}
.up_text{
color: #666;
font-size: 14px;
line-height: 18px;
padding-bottom: 12px;
}
.up_tip{
color: #999;
font-size: 12px;
line-height: 16px;
padding-bottom: 12px;
text-align: left;
padding-left: 82px;
&:before{
content: " ";
width: 4px;
height: 4px;
background: #D8D8D8;
border-radius: 50%;
float: left;
margin: 6px 6px 0 0;
}
}
.up_success{
padding-top: 135px;
font-size: 18px;
color: #46AF41;
font-weight: 700;
line-height: 24px;
>img{
float: left;
width: 24px;
margin-right: 10px;
margin-left: 187px;
}
}
}
.btn_download{
position: absolute;
width: 78px;
height: 22px;
background: #E2EEFF;
border-radius: 2px;
color: #0081FF;
background: rgba(0, 129, 255, 0.16);
font-size: 12px;
line-height: 22px;
top: 149px;
right: 61px;
cursor: pointer;
.img{
float: left;
background: url('../images/upload.png')no-repeat center center;
transform: rotateX(180deg);
width: 9px;
height: 11px;
margin: 4px 2px 0 10px;
}
}
}
.btns{
text-align: center;
.btn_primary,.btn_disabled,.btn_default{
border-radius: 2px;
margin: 24px 8px 0;
width: 104px;
}
.btn_disabled{
background: #999;
}
}
.success{
width: 240px;
height: 175px;
background: #FFFFFF;
border-radius: 4px;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
text-align: center;
.img{
display: block;
margin: 24px auto 16px;
width: 60px;
}
.p1{
font-size: 16px;
font-family: Microsoft YaHei-Bold, Microsoft YaHei;
font-weight: 700;
color: rgba(35,35,35,0.8);
line-height: 21px;
}
.p2{
margin-top: 16px;
font-size: 14px;
font-family: Microsoft YaHei-Regular, Microsoft YaHei;
font-weight: 400;
color: rgba(35,35,35,0.4);
line-height: 14px;
}
.p3{
padding-top: 35px;
font-size: 18px;
color: #46AF41;
font-weight: 700;
line-height: 24px;
text-align: left;
>img{
float: left;
width: 24px;
margin-right: 10px;
margin-left: 67px;
}
}
.btn_primary{
margin-top: 16px;
}
}
}
...@@ -7,26 +7,26 @@ ...@@ -7,26 +7,26 @@
<div class="app-container"> <div class="app-container">
<el-card class="box-card noborder"> <el-card class="box-card noborder">
<div class="tables"> <div class="tables">
<div class="empty" v-if="tableData == null || tableData.length == 0"> <div class="empty" v-if="tableData.total==0">
<img src="@/assets/images/project/empty.png"> <img src="@/assets/images/project/empty.png">
<div class="p1">添加你的第一位客户吧</div> <div class="p1">添加你的第一位客户吧</div>
<div class="p2">抱歉,你还未添加客户,快去添加吧</div> <div class="p2">抱歉,你还未添加客户,快去添加吧</div>
<div class="btn btn_primary h36 w88" @click="opennew">添加客户</div> <div class="btn btn_primary h36 w88" @click="opennew">添加客户</div>
<div class="btn btn_primary btn_shallow h36 w88">批量导入</div> <div class="btn btn_primary btn_shallow h36 w88" @click="pldrs">批量导入</div>
</div> </div>
<div class="table_search"> <div class="table_search">
<div class="searchInput"> <div class="searchInput">
<el-input type="text" placeholder="输入企业名称查询"></el-input> <el-input type="text" v-model="serchParam.companyName" placeholder="输入企业名称查询"></el-input>
<div class="btn">搜索</div> <div class="btn">搜索</div>
</div> </div>
<div class="dc"> <div class="dc">
<div class="total">共126条</div> <div class="total">共126条</div>
<div class="btn-export"><img src="@/assets/images/project/import.png">批量导入</div> <div class="btn-export" @click="pldrs"><img src="@/assets/images/project/import.png">批量导入</div>
<div class="btn btn_primary h32 p10" @click="opennew"><div class="img img1"></div>添加客户</div> <div class="btn btn_primary h32 p10" @click="opennew"><div class="img img1"></div>添加客户</div>
</div> </div>
</div> </div>
<el-table <el-table v-if="tableData.total>0"
:data="tableData" :data="tableData.rows"
stripe border stripe border
style="width: 100%" style="width: 100%"
:default-sort = "{prop: 'date', order: 'descending'}" :default-sort = "{prop: 'date', order: 'descending'}"
...@@ -35,38 +35,42 @@ ...@@ -35,38 +35,42 @@
prop="index" prop="index"
label="序号" label="序号"
width="47"> width="47">
</el-table-column> <el-table-column <template slot-scope='scope'>
<span>{{ (serchParam.pageNum - 1) * serchParam.pageSize + scope.$index + 1 }}</span>
</template>
</el-table-column>
<el-table-column
prop="date" prop="date"
label="企业名称" label="企业名称"
width="441"> width="441">
<template slot-scope="scope"> <template slot-scope="scope">
<div class="ps1"> <div class="ps1">
<div class="wordprimary ps2">中国建筑第八工程局有限公司重庆至万州高铁</div> <div class="wordprimary ps2" @click="toDetail(scope.row.companyId,'')">{{scope.row.companyName}}</div>
<div class="ps3"> <div class="ps3">
<div>写跟进<img src="@/assets/images/project/edit_1.png"></div> <div @click="toDetail(scope.row.companyId,1)">写跟进<img src="@/assets/images/project/edit_1.png"></div>
<div>编辑信息<img src="@/assets/images/project/edit_2.png"></div> <div @click="toDetail(scope.row.companyId,2)">编辑信息<img src="@/assets/images/project/edit_2.png"></div>
</div> </div>
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="name" prop="cooperationProject"
label="合作项目" label="合作项目"
width="76"> width="76">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="name" prop="followProject"
label="跟进项目" label="跟进项目"
width="76"> width="76">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="name" prop="reserveProject"
label="储备项目" label="储备项目"
width="76"> width="76">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="name" prop="legalPerson"
label="法定代表人" label="法定代表人"
width="110"> width="110">
</el-table-column> </el-table-column>
...@@ -76,62 +80,68 @@ ...@@ -76,62 +80,68 @@
width="160"> width="160">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="name" prop="registerCapitalStr"
label="注册资本金(万元)" label="注册资本金(万元)"
width="140"> width="140">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="address" prop="creditLevel"
label="企业主体评级" width="100"> label="企业主体评级" width="100">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="address" prop="isOn"
label="上市公司" width="76"> label="上市公司" width="76">
<template slot-scope="scope">
{{scope.row.isOn == 1?"是":"否"}}
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="address" prop="isMajor"
label="局级大客户" width="88"> label="局级大客户" width="88">
<template slot-scope="scope">
{{scope.row.isMajor == 1?"是":"否"}}
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="address" prop="customerLevel"
label="客户等级" width="76"> label="客户等级" width="76">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="address" prop="companyNature"
label="客户性质" width="76"> label="客户性质" width="76">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="address" prop="companyLevel"
label="客户级别" width="76"> label="客户级别" width="76">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="address" prop="address"
label="企业母公司" width="268"> label="企业母公司" width="268">
<template slot-scope="scope"> <template slot-scope="scope">
<div class="wordprimary">中国建筑第八工程局有限公司重庆至万州高铁</div> <div class="wordprimary">{{scope.row.superCompany}}</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="address" prop="mainBusiness"
label="主营业务" width="120"> label="主营业务" width="120">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="address" prop="companyAttribute"
label="发包属性" width="120"> label="发包属性" width="120">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="address" prop="followUser"
label="跟进人" width="110"> label="跟进人" width="110">
</el-table-column> </el-table-column>
</el-table> </el-table>
<div class="bottems"> <div class="bottems" v-if="tableData.total>0">
<el-pagination <el-pagination
background background
:page-size="20" :page-size="serchParam.pageSize"
:current-page="1" :current-page="1"
@current-change="handleCurrentChange" @current-change="handleCurrentChange"
layout="prev, pager, next" layout="prev, pager, next"
:total="1000"> :total="tableData.total">
</el-pagination> </el-pagination>
</div> </div>
</div> </div>
...@@ -148,6 +158,12 @@ ...@@ -148,6 +158,12 @@
<span class="left"><i>*</i>企业名称:</span> <span class="left"><i>*</i>企业名称:</span>
<el-input type="text" placeholder="请输入"></el-input> <el-input type="text" placeholder="请输入"></el-input>
</div> </div>
<div class="row">
<span class="left">客户等级:</span>
<el-select placeholder="请选择">
<el-option v-for="(item,index) in customerLevel" :label="item.dictLabel" :value="item.dictValue"></el-option>
</el-select>
</div>
<div class="row"> <div class="row">
<span class="left">法定代表人:</span> <span class="left">法定代表人:</span>
<el-input type="text" placeholder="请输入"></el-input> <el-input type="text" placeholder="请输入"></el-input>
...@@ -158,10 +174,11 @@ ...@@ -158,10 +174,11 @@
</div> </div>
<div class="row"> <div class="row">
<span class="left">企业注册地:</span> <span class="left">企业注册地:</span>
<el-select placeholder="请选择"> <el-cascader :options="addressList" clearable></el-cascader>
<el-option label="cccc" value="11"></el-option> </div>
<el-option label="cccc" value="121"></el-option> <div class="row">
</el-select> <span class="left">统一社会信用代码:</span>
<el-input type="text" placeholder="请输入"></el-input>
</div> </div>
<div class="popbot"> <div class="popbot">
<div class="wordprimary">前往城投平台寻找客户线索></div> <div class="wordprimary">前往城投平台寻找客户线索></div>
...@@ -172,16 +189,69 @@ ...@@ -172,16 +189,69 @@
</el-dialog> </el-dialog>
</el-card> </el-card>
</div> </div>
<div class="uploadwin" v-if="pldr">
<div class="upload" v-if="addfile==false">
<div class="up_title">批量导入客户</div>
<div class="up_box">
<el-upload v-if="isUpload == false"
class="upload-demo"
drag
action="https://jsonplaceholder.typicode.com/posts/"
multiple>
<img class="up_img" src="@/assets/images/project/upload.png">
<div class="up_text">点击选择或将文件(xls,xlsx)拖拽至此上传成员名录</div>
<div class="up_tip">导入的文件内容必须依照下载模板的要求填写</div>
<div class="up_tip">上传文件最大为2M,仅支持Excel表格文件(xls,xlsx)</div>
<div class="up_tip">导入已存在的客户将自动跳过</div>
</el-upload>
<div class="up_success" v-else>
<img src="@/assets/images/project/success.png">上传成功
</div>
<div class="btn_download" v-if="isUpload == true"><div class="img"></div>点击下载</div>
</div>
<div class="btns">
<div class="btn btn_primary btn_disabled h34" v-if="isUpload==false">确定导入</div>
<div class="btn btn_primary h34" @click="qddr" v-else>确定导入</div>
<div class="btn btn_default h34">取消</div>
</div>
</div>
<div class="success" v-if="addfile==true">
<div v-if="addsuccess==false">
<img class="img" src="@/assets/images/project/clock.png">
<div class="p1">查询客户中...</div>
<div class="p2">请耐心等待,过程大概30秒</div>
</div>
<div v-if="addsuccess == true">
<div class="p3">
<img src="@/assets/images/project/success.png">查询成功
</div>
<div class="p2">成功导入32家客户信息</div>
<div class="btns">
<div class="btn btn_primary h32">查看</div>
</div>
</div>
</div>
</div>
</div> </div>
</template> </template>
<script> <script>
import "@/assets/styles/project.scss" import "@/assets/styles/project.scss"
import {getCustomerList} from '@/api/custom/custom'
import {getEnterprise,getDictType,} from '@/api/main'
import prvinceTree from '@/assets/json/provinceTree'
import axios from 'axios'
export default { export default {
name: 'CustomList', name: 'CustomList',
data() { data() {
return{ return{
pldr: false,
serchParam:{
companyName:'',
pageNum:1,
pageSize:20
},
dialogVisible:false, dialogVisible:false,
textarea:"", textarea:"",
nowedit:-1,//当前正在编辑的文本 nowedit:-1,//当前正在编辑的文本
...@@ -205,14 +275,55 @@ export default { ...@@ -205,14 +275,55 @@ export default {
name: '王小虎', name: '王小虎',
address: '上海市普陀区金沙江路 1516 弄' address: '上海市普陀区金沙江路 1516 弄'
} }
] ],
isUpload:false,//有上传的文件
addfile:true,//已上传文件
addsuccess:true,//已成功加入数据
customerLevel:[],//客户等级
addressList:[],//地区
} }
}, },
created() { created() {
this.getCustomerList()
this.getDictType()
this.prvinceTree()
}, },
methods:{ methods:{
getDictType(){
//获取客户等级
getDictType('customer_level_type').then(result=>{
this.customerLevel = result.code == 200 ? result.data:[]
})
},
pldrs(){
this.pldr = true
this.addfile = false
this.isUpload = false
this.addsuccess = false
},
qddr(){
this.addfile = true
this.addsuccess = false
},
//获取客户列表
getCustomerList(){
getCustomerList(this.serchParam).then(result=>{
this.tableData =result
})
},
//跳转到客户详情
toDetail(id,type){
if(type == 1){//跟进
}else if(type == 2){//编辑信息
}
},
//翻页 //翻页
handleCurrentChange(val) { handleCurrentChange(val) {
this.serchParam.pageNum=val
console.log(`当前页: ${val}`); console.log(`当前页: ${val}`);
}, },
cancel(){ cancel(){
...@@ -222,6 +333,33 @@ export default { ...@@ -222,6 +333,33 @@ export default {
opennew(){ opennew(){
this.dialogVisible = true this.dialogVisible = true
}, },
//地区
async prvinceTree() {
// await axios.post("https://files.jiansheku.com/file/json/common/provinceTree.json", {}, {
// headers: {
// 'Content-Type': 'application/json'
// }
// }).then(res => {
// if (res.data.code == 200) {
// console.log(res.data.data)
// }
// })
// console.log(prvinceTree)
this.addressList = prvinceTree;
this.getadd(this.addressList)
},
getadd(row) {
this.addrcallback(row,this.getadd)
},
addrcallback(row,callback){
if(row){
row.forEach(item => {
item.value = item.id
callback && callback(item.children)
})
}
},
} }
} }
</script> </script>
...@@ -282,9 +420,6 @@ export default { ...@@ -282,9 +420,6 @@ export default {
justify-content: space-between; justify-content: space-between;
.ps2{ .ps2{
width: 270px; width: 270px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
} }
.ps3{ .ps3{
width: 150px; width: 150px;
......
<template> <template>
<div class="app-container"> <div>
跟进动态 <div class="miantitle">
<span>客户管理</span>
<span> / 客户列表</span>
<span> / 跟进动态</span>
</div>
<div class="app-container">
<gjjl types="gjdt" :data="datas"></gjjl>
</div>
</div> </div>
</template> </template>
<script> <script>
import gjjl from '../../project/projectList/component/gjjl.vue'
export default { export default {
components:{
gjjl
},
name: 'Trends', name: 'Trends',
data() { data() {
return { return {
datas:[]
} }
}, },
created() { created() {
......
...@@ -19,6 +19,11 @@ ...@@ -19,6 +19,11 @@
<el-option label="cccc" value="11"></el-option> <el-option label="cccc" value="11"></el-option>
<el-option label="cccc" value="121"></el-option> <el-option label="cccc" value="121"></el-option>
</el-select> </el-select>
<el-select v-if="showtype == 'gjdt'" v-model="value" class="w128" placeholder="关联企业">
<i slot="prefix" class="el-input__icon"><img src="@/assets/images/project/ico_1.png"></i>
<el-option label="cccc" value="11"></el-option>
<el-option label="cccc" value="121"></el-option>
</el-select>
<el-input v-model="value" placeholder="拜访对象" style="width: 100px;"> <el-input v-model="value" placeholder="拜访对象" style="width: 100px;">
<i slot="prefix" class="el-input__icon"><img src="@/assets/images/project/ico_2.png"></i> <i slot="prefix" class="el-input__icon"><img src="@/assets/images/project/ico_2.png"></i>
</el-input> </el-input>
...@@ -96,13 +101,25 @@ ...@@ -96,13 +101,25 @@
<script> <script>
import "@/assets/styles/project.scss" import "@/assets/styles/project.scss"
export default { export default {
props:{
types: { //当前组件展示类型
type: String,
default: ""
},
datas:[],//数据源
},
name: 'gjjl', name: 'gjjl',
data(){ data(){
return{ return{
showtype:'',
isEdit:false, isEdit:false,
value:'' value:''
} }
}, },
created(){
this.showtype = this.types
console.log(this.types)
},
methods:{ methods:{
getEdit(){ getEdit(){
this.isEdit = true; this.isEdit = true;
......
...@@ -50,6 +50,17 @@ ...@@ -50,6 +50,17 @@
label="负责人" label="负责人"
width=""> width="">
</el-table-column> </el-table-column>
<el-table-column
prop="name"
label=""
align="right"
width="">
<template slot-scope="scope">
<div class="hoverbtn">
<div class="sc">删除</div>
</div>
</template>
</el-table-column>
</el-table> </el-table>
<div class="tables"> <div class="tables">
......
...@@ -8,8 +8,37 @@ ...@@ -8,8 +8,37 @@
<el-input type="text" placeholder="输入关键词查询"></el-input> <el-input type="text" placeholder="输入关键词查询"></el-input>
<div class="btn">搜索</div> <div class="btn">搜索</div>
</div> </div>
<div class="btn btn_primary h32 b1"><div class="img img1"></div>新建文件夹</div> <div class="btn btn_primary h32 b2" @click="isupload=true"><div class="img img2"></div>上传</div>
<div class="btn btn_default h32 b2"><div class="img img2"></div>上传</div> </div>
<div class="uploadbox" v-if="isupload">
<div>
<el-upload
class="upload-demo"
action="https://jsonplaceholder.typicode.com/posts/"
:on-preview="handlePreview"
:on-remove="handleRemove"
:before-remove="beforeRemove"
multiple
:limit="3"
:on-exceed="handleExceed"
:file-list="fileList">
<div class="wj wj1"></div>上传文件
</el-upload>
</div>
<div>
<el-upload
class="upload-demo"
action="https://jsonplaceholder.typicode.com/posts/"
:on-remove="fileRemove"
:on-change="fileChang"
multiple
:limit="3"
:on-exceed="handleExceed"
ref="uploadFile"
:file-list="fileList">
<div class="wj wj2"></div>上传文件夹
</el-upload>
</div>
</div> </div>
<div class="document"> <div class="document">
<el-table <el-table
...@@ -49,6 +78,18 @@ ...@@ -49,6 +78,18 @@
sortable sortable
width=""> width="">
</el-table-column> </el-table-column>
<el-table-column
prop=""
label=""
align="right"
width="">
<template slot-scope="scope">
<div class="hoverbtn">
<div class="xz">下载</div>
<div class="sc">删除</div>
</div>
</template>
</el-table-column>
</el-table> </el-table>
<div class="tables"> <div class="tables">
<div class="bottems"> <div class="bottems">
...@@ -115,6 +156,7 @@ ...@@ -115,6 +156,7 @@
name: 'zlwd', name: 'zlwd',
data(){ data(){
return{ return{
isupload:false,
dialogVisible:false, dialogVisible:false,
textarea:"", textarea:"",
nowedit:-1,//当前正在编辑的文本 nowedit:-1,//当前正在编辑的文本
...@@ -138,10 +180,23 @@ ...@@ -138,10 +180,23 @@
name: '王小虎', name: '王小虎',
address: '上海市普陀区金沙江路 1516 弄' address: '上海市普陀区金沙江路 1516 弄'
} }
] ],
fileList:[],//上传的文件
} }
}, },
mounted(){
this.$refs.uploadFile.$children[0].$refs.input.webkitdirectory = true;
},
methods:{ methods:{
//上传文件夹
fileChang(file, fileList, name) {
this.form.instFilePics = fileList;
},
fileRemove(file, fileList, name) {
this.form.instFilePics = fileList
},
//翻页 //翻页
handleCurrentChange(val) { handleCurrentChange(val) {
console.log(`当前页: ${val}`); console.log(`当前页: ${val}`);
...@@ -162,15 +217,56 @@ ...@@ -162,15 +217,56 @@
width: 102px; width: 102px;
} }
.img.img1{
margin-right: 4px;
background: url('../../../../../src/assets/images/project/add_2.png')no-repeat center center;
}
.img.img2{ .img.img2{
margin-right: 4px; margin-right: 4px;
background: url('../../../../../src/assets/images/upload.png')no-repeat center center; transform: rotateX(180deg);
background: url('../../../../../src/assets/images/import.png')no-repeat center center;
} }
.box-card{ .box-card{
position: relative; position: relative;
} }
.uploadbox{
position: absolute;
width: 124px;
height: 73px;
background: #FFFFFF;
box-shadow: 0px 0px 4px 0px rgba(0,0,0,0.08);
border-radius: 2px;
border: 1px solid #F0F0F0;
right: 16px;
top: 53px;
z-index: 2;
>div{
line-height: 35px;
height: 36px;
color: rgba(35, 35, 35, 0.80);
font-size: 14px;
.wj{
float: left;
margin: 10px 4px 10px 16px;
width: 16px;
height: 16px;
&.wj1{
background: url("../../../../assets/images/project/wj_1.png") top center;
background-size: 100%;
}
&.wj2{
background: url("../../../../assets/images/project/wj_3.png") top center;
background-size: 100%;
}
}
&:hover{
color: #0081FF;
background: #F4F6F9;
.wj1{
background: url("../../../../assets/images/project/wj_2.png") top center;
background-size: 100%;
}
.wj2{
background: url("../../../../assets/images/project/wj_4.png") top center;
background-size: 100%;
}
}
}
}
</style> </style>
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
<div class="contets"> <div class="contets">
<div class="det-con"> <div class="det-con">
<span>项目类型:</span> <span>项目类型:</span>
<span>轨道交通</span> <span><el-select><option label="aaa" value="888"></option></el-select></span>
</div> </div>
<div class="det-con"> <div class="det-con">
<span>项目类别:</span> <span>项目类别:</span>
...@@ -72,7 +72,7 @@ ...@@ -72,7 +72,7 @@
<!--联系人--> <!--联系人-->
<lxr v-if="thistag == 'lxr'"></lxr> <lxr v-if="thistag == 'lxr'"></lxr>
<!--跟进记录--> <!--跟进记录-->
<gjjl v-if="thistag == 'gjjl'"></gjjl> <gjjl v-if="thistag == 'gjjl'" types="gjjl"></gjjl>
<!--工作待办--> <!--工作待办-->
<gzdb v-if="thistag == 'gzdb'"></gzdb> <gzdb v-if="thistag == 'gzdb'"></gzdb>
<!--资料文档--> <!--资料文档-->
......
...@@ -2,8 +2,8 @@ ...@@ -2,8 +2,8 @@
<div class="app-container"> <div class="app-container">
<el-card class="box-card noborder"> <el-card class="box-card noborder">
<div class="btns"> <div class="btns">
<div class="btn btn_default h28"><div class="img img1"></div>新建项目商机</div> <div class="btn btn_default h28" @click="showNew"><div class="img img1"></div>新建项目商机</div>
<div class="btn btn_primary h28"><div class="img img2"></div>批量导</div> <div class="btn btn_primary h28"><div class="img img2"></div>批量导</div>
</div> </div>
<el-tabs v-model="activeName" @tab-click="handleClick" class="tabpane w100"> <el-tabs v-model="activeName" @tab-click="handleClick" class="tabpane w100">
<el-tab-pane label="我参与的项目" name="first"></el-tab-pane> <el-tab-pane label="我参与的项目" name="first"></el-tab-pane>
...@@ -82,6 +82,63 @@ ...@@ -82,6 +82,63 @@
</div> </div>
</div> </div>
</div> </div>
<el-dialog
class="popups"
:visible.sync="dialogVisible"
width="464px">
<div class="poptitle">
<img src="@/assets/images/economies/icon.png">
<span>新建商机</span>
</div>
<div class="popform i">
<div class="row">
<span class="left"><i>*</i>项目名称:</span>
<el-input type="text" placeholder="请输入"></el-input>
</div>
<div class="row">
<span class="left"><i>*</i>业主单位:</span>
<el-input type="text" placeholder="请输入"></el-input>
</div>
<div class="row">
<span class="left">项目阶段:</span>
<el-select placeholder="请选择">
<el-option label="cccc" value="11"></el-option>
<el-option label="cccc" value="121"></el-option>
</el-select>
</div>
<div class="row">
<span class="left">项目类型:</span>
<el-select placeholder="请选择">
<el-option label="cccc" value="11"></el-option>
<el-option label="cccc" value="121"></el-option>
</el-select>
</div>
<div class="row">
<span class="left">项目类别:</span>
<el-select placeholder="请选择">
<el-option label="cccc" value="11"></el-option>
<el-option label="cccc" value="121"></el-option>
</el-select>
</div>
<div class="row">
<span class="left">投资估算:</span>
<el-input type="text" placeholder="请输入"></el-input>
</div>
<div class="row">
<span class="left">可见范围:</span>
<el-select placeholder="请选择">
<el-option label="cccc" value="11"></el-option>
<el-option label="cccc" value="121"></el-option>
</el-select>
</div>
<div class="popbot">
<div class="wordprimary">前往商机雷达寻找项目线索></div>
<div class="btn btn_cancel h32" @click="cancel">取消</div>
<div class="btn btn_primary h32">新建商机</div>
</div>
</div>
</el-dialog>
</el-card> </el-card>
</div> </div>
</template> </template>
...@@ -292,13 +349,21 @@ export default { ...@@ -292,13 +349,21 @@ export default {
value: 'jiaohu', value: 'jiaohu',
label: '组件交互文档' label: '组件交互文档'
}] }]
}] }],
dialogVisible:false,
} }
}, },
created() { created() {
}, },
methods: { methods: {
//新建项目
showNew(){
this.dialogVisible = true
},
cancel(){
this.dialogVisible = false
},
toDetail(){ toDetail(){
let Id = '111' let Id = '111'
this.$router.push({ path: '/project/projectList/detail', query: Id }); this.$router.push({ path: '/project/projectList/detail', query: Id });
...@@ -517,4 +582,15 @@ export default { ...@@ -517,4 +582,15 @@ export default {
height: 20px; height: 20px;
} }
} }
.popbot{
.wordprimary{
padding-right: 26px;
float: left;
margin-top: 6px;
}
.btn_primary{
padding: 0;
}
}
</style> </style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment