Commit 7a39becd authored by MyName's avatar MyName

项目管理

parent 26fe8fee
...@@ -158,3 +158,28 @@ export function addXGQY(param) { ...@@ -158,3 +158,28 @@ export function addXGQY(param) {
data:param data:param
}) })
} }
//删除相关企业
export function delXGQY(param) {
return request({
url: '/business/company/remove/'+param,
method: 'DELETE',
})
}
//查询资料文档
export function getZLWD(param) {
return request({
url: '/business/file/list',
method: 'GET',
params:param
})
}
//删除资料文档
export function delZLWD(param) {
return request({
url: '/business/file/remove',
method: 'POST',
data:param
})
}
...@@ -656,6 +656,7 @@ ...@@ -656,6 +656,7 @@
background: #F6F9FD; background: #F6F9FD;
border-radius: 6px; border-radius: 6px;
padding: 24px; padding: 24px;
border: 1px solid #F6F9FD;
//box-sizing: content-box; //box-sizing: content-box;
box-sizing: border-box; box-sizing: border-box;
>div{ >div{
...@@ -676,7 +677,6 @@ ...@@ -676,7 +677,6 @@
} }
} }
.rec_detail:hover{ .rec_detail:hover{
.operate{ .operate{
display: block; display: block;
......
...@@ -173,7 +173,7 @@ ...@@ -173,7 +173,7 @@
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<div class="bottems" v-if="tableData.total>0"> <div class="bottems" v-if="tableData.total>searchParam.pageSize">
<el-pagination <el-pagination
background background
:page-size="searchParam.pageSize" :page-size="searchParam.pageSize"
......
...@@ -99,7 +99,7 @@ ...@@ -99,7 +99,7 @@
<div class="trendcon">{{item.text}}</div> <div class="trendcon">{{item.text}}</div>
<div class="time">{{item.time}}</div> <div class="time">{{item.time}}</div>
</div> </div>
<div class="tables" style="width: 100%"> <div class="tables" style="width: 100%" v-if="datalist.length>10">
<div class="bottems"> <div class="bottems">
<el-pagination <el-pagination
background background
...@@ -236,7 +236,7 @@ export default { ...@@ -236,7 +236,7 @@ export default {
{ {
name: '', name: '',
type: 'bar', type: 'bar',
barWidth: '20%', barWidth: '12px',
data: [100, 152, 200, 334, 390, 330, 220,256,178], data: [100, 152, 200, 334, 390, 330, 220,256,178],
itemStyle:{ itemStyle:{
normal: { normal: {
...@@ -280,7 +280,7 @@ export default { ...@@ -280,7 +280,7 @@ export default {
{ {
name: '', name: '',
type: 'bar', type: 'bar',
barWidth: '20%', barWidth: '12px',
data: [110, 112, 190, 234, 310, 350, 220,276,198], data: [110, 112, 190, 234, 310, 350, 220,276,198],
itemStyle:{ itemStyle:{
normal:{ normal:{
...@@ -551,6 +551,12 @@ export default { ...@@ -551,6 +551,12 @@ export default {
line-height: 18px; line-height: 18px;
padding-bottom: 16px; padding-bottom: 16px;
} }
&:last-child{
.trendcon{
border: none;
}
}
.time{ .time{
position: absolute; position: absolute;
right: 16px; right: 16px;
......
...@@ -323,8 +323,8 @@ export default { ...@@ -323,8 +323,8 @@ export default {
// trigger: 'axis' // trigger: 'axis'
}, },
legend: { legend: {
right: '151px', left: '12px',
top:"0px", top:"15px",
data: ['成交金额', '储备项目', '跟进动态'] data: ['成交金额', '储备项目', '跟进动态']
}, },
series: [ series: [
...@@ -513,12 +513,12 @@ export default { ...@@ -513,12 +513,12 @@ export default {
} }
} }
.chart-bot{ .chart-bot{
height: 354px; height: auto;
margin-bottom: 12px; margin-bottom: 12px;
.left{ .left{
float: left; float: left;
width: 353px; width: 353px;
height: 100%; height: 354px;
background: url("../../../assets/images/project/glbj.png")no-repeat top center; background: url("../../../assets/images/project/glbj.png")no-repeat top center;
background-size: 100% 100%; background-size: 100% 100%;
color: #FFFFFF; color: #FFFFFF;
...@@ -569,11 +569,11 @@ export default { ...@@ -569,11 +569,11 @@ export default {
} }
.right{ .right{
float: right; float: right;
height: 100%; height: auto;
width: calc(100% - 369px); width: calc(100% - 369px);
.records{ .records{
margin-top: -17px; margin-top: -17px;
height: 327px; height: 627px;
overflow-y: auto; overflow-y: auto;
width: 100%; width: 100%;
padding-right: 47px; padding-right: 47px;
...@@ -621,6 +621,7 @@ export default { ...@@ -621,6 +621,7 @@ export default {
.chart2{ .chart2{
width: 100%; width: 100%;
padding: 0 0 0 16px;
height: 285px; height: 285px;
margin-top: -20px; margin-top: -20px;
} }
......
...@@ -34,7 +34,7 @@ ...@@ -34,7 +34,7 @@
<el-option v-for="(item,index) in projectCategory" :key="index" :label="item.dictLabel" :value="item.dictValue"></el-option> <el-option v-for="(item,index) in projectCategory" :key="index" :label="item.dictLabel" :value="item.dictValue"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="投资估算:" class="row"> <el-form-item label="投资估算(万元):" class="row">
<el-input type="text" placeholder="请输入金额" @input="number" v-model="queryParam.investmentAmount"></el-input> <el-input type="text" placeholder="请输入金额" @input="number" v-model="queryParam.investmentAmount"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="可见范围:" class="row"> <el-form-item label="可见范围:" class="row">
......
...@@ -4,10 +4,8 @@ ...@@ -4,10 +4,8 @@
<el-card class="box-card noborder"> <el-card class="box-card noborder">
<div class="cardtitles">相关企业</div> <div class="cardtitles">相关企业</div>
<div class="searchbtns"> <div class="searchbtns">
<el-select class="select" placeholder="企业类型"> <el-select class="select" placeholder="企业类型" v-model="searchParam.companyType" @change="handleCurrentChange(1)">
<el-select placeholder="请选择" v-model="searchParam.companyType"> <el-option v-for="(item,index) in companytype" :label="item.dictLabel" :value="item.dictValue"></el-option>
<el-option v-for="(item,index) in companytype" :label="item.dictLabel" :value="item.dictValue"></el-option>
</el-select>
</el-select> </el-select>
<div class="searchInput"> <div class="searchInput">
<el-input type="text" placeholder="输入关键词查询" v-model="searchParam.companyName"></el-input> <el-input type="text" placeholder="输入关键词查询" v-model="searchParam.companyName"></el-input>
...@@ -15,7 +13,7 @@ ...@@ -15,7 +13,7 @@
</div> </div>
<div class="btn btn_primary h32 b3" @click="opennew"><div class="img img1"></div>添加相关企业</div> <div class="btn btn_primary h32 b3" @click="opennew"><div class="img img1"></div>添加相关企业</div>
</div> </div>
<div class="document"> <div class="document tables">
<el-table <el-table
:data="tableData.rows" :data="tableData.rows"
style="width: 100%" style="width: 100%"
...@@ -59,23 +57,29 @@ ...@@ -59,23 +57,29 @@
width=""> width="">
<template slot-scope="scope"> <template slot-scope="scope">
<div class="hoverbtn"> <div class="hoverbtn">
<div class="sc" @click="delQY(scope.row.id)">删除</div> <div class="sc" @click="ondel = scope.row.id">删除</div>
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<div class="delform" v-if="ondel != -1">
<div class="tables" v-if="tableData.total > searchParam.pageSize"> <div class="words">是否将企业删除</div>
<div class="bottems"> <div>
<el-pagination <div class="btnsmall btn_primary h28" @click="delQY()">确定</div>
background <div class="btnsmall btn_cancel h28" @click="ondel = -1">取消</div>
:page-size="searchParam.pageSize" </div>
:current-page="searchParam.pageNum"
@current-change="handleCurrentChange"
layout="prev, pager, next"
:total="tableData.total">
</el-pagination>
</div> </div>
<div class="tables" v-if="tableData.total > searchParam.pageSize">
<div class="bottems" v-if="ondel != -1">
<el-pagination
background
:page-size="searchParam.pageSize"
:current-page="searchParam.pageNum"
@current-change="handleCurrentChange"
layout="prev, pager, next"
:total="tableData.total">
</el-pagination>
</div>
</div> </div>
</div> </div>
<el-dialog <el-dialog
...@@ -131,7 +135,7 @@ ...@@ -131,7 +135,7 @@
<script> <script>
import "@/assets/styles/project.scss" import "@/assets/styles/project.scss"
import {getXGQY,addXGQY} from '@/api/project/project' import {getXGQY,addXGQY,delXGQY} from '@/api/project/project'
import {getDictType} from '@/api/main' import {getDictType} from '@/api/main'
export default { export default {
name: 'xgqy', name: 'xgqy',
...@@ -186,6 +190,7 @@ ...@@ -186,6 +190,7 @@
companyType:"", companyType:"",
companyName:'', companyName:'',
}, },
ondel:-1,
} }
}, },
created(){ created(){
...@@ -198,10 +203,18 @@ ...@@ -198,10 +203,18 @@
getDictType('company_role').then(result=>{ getDictType('company_role').then(result=>{
this.companyrole = result.code == 200 ? result.data:[] this.companyrole = result.code == 200 ? result.data:[]
}) })
this.getlist()
}, },
methods:{ methods:{
delQY(id){ delQY(){
let id = this.ondel
delXGQY(id).then(res=>{
if(res.code == 200){
this.$message.success('删除成功')
this.ondel = -1
this.getlist()
}
})
}, },
addqy(){ addqy(){
addXGQY(this.queryParam).then(res=>{ addXGQY(this.queryParam).then(res=>{
...@@ -215,7 +228,8 @@ ...@@ -215,7 +228,8 @@
}, },
getlist(){ getlist(){
getXGQY(this.searchParam).then(result=>{ getXGQY(this.searchParam).then(result=>{
this.tableData = result.data console.log(result)
this.tableData = result
}) })
}, },
//翻页 //翻页
...@@ -274,4 +288,8 @@ ...@@ -274,4 +288,8 @@
.box-card{ .box-card{
position: relative; position: relative;
} }
.delform{
position: fixed; left:50%; top:50%; transform:translate(-50%,-50%)
}
</style> </style>
...@@ -197,16 +197,22 @@ ...@@ -197,16 +197,22 @@
this.thisindex = result.data.projectStage this.thisindex = result.data.projectStage
let list = [] let list = []
let txt = '' let txt = ''
if(result.data.provinceId){ if(result.data.provinceId != ""){
list.push(result.data.provinceId) list.push(result.data.provinceId)
txt += result.data.provinceName
} }
if(result.data.cityId){ if(result.data.cityId){
list.push(result.data.cityId) list.push(result.data.cityId)
txt += '/'+result.data.cityName
} }
if(result.data.districtId){ if(result.data.districtId){
list.push(result.data.districtId) list.push(result.data.districtId)
}
if(result.data.provinceName){
txt += result.data.provinceName
}
if(result.data.cityName){
txt += '/'+result.data.cityName
}
if(result.data.districtName){
txt += '/'+result.data.districtName txt += '/'+result.data.districtName
} }
this.address = list.length>0?list:"待添加" this.address = list.length>0?list:"待添加"
...@@ -279,6 +285,14 @@ ...@@ -279,6 +285,14 @@
handleChange(value) { handleChange(value) {
var labelString = this.$refs.myCascader.getCheckedNodes()[0].pathLabels; var labelString = this.$refs.myCascader.getCheckedNodes()[0].pathLabels;
let param = {
provinceId:null,
provinceName:null,
cityId:null,
cityName:null,
districtId:null,
districtName:null,
}
let txt = '' let txt = ''
labelString.forEach((item,index)=>{ labelString.forEach((item,index)=>{
let str = '' let str = ''
...@@ -286,13 +300,17 @@ ...@@ -286,13 +300,17 @@
str = '/' str = '/'
} }
txt += str + item txt += str + item
if(index == 0){
param.provinceName = item
}
if(index == 1){
param.cityName = item
}
if(index == 2){
param.districtName = item
}
}) })
this.addresstxt = txt this.addresstxt = txt
let param = {
provinceId:null,
cityId:null,
districtId:null
}
value.forEach((item,index)=>{ value.forEach((item,index)=>{
if(index == 0){ if(index == 0){
param.provinceId = parseInt(item) param.provinceId = parseInt(item)
......
...@@ -113,7 +113,7 @@ ...@@ -113,7 +113,7 @@
</div> </div>
<div class="datalist"> <div class="datalist">
<div class="datali" v-for="(item,index) in datalist"> <div class="datali" v-for="(item,index) in datalist">
<div class="det-title" @click="toDetail(item.id)">{{item.projectName}}<span v-if="activeName!='first'" class="people"><i>A</i>四川-李丽 <font color="#FA8A00" v-if="activeName!='first'">正在跟进</font></span></div> <div class="det-title" @click="toDetail(item.id)">{{item.projectName}}<span v-if="activeName!='first'" class="people"><i>{{item.nickName1}}</i>{{item.nickName}} <font color="#FA8A00" v-if="activeName!='first'">正在跟进</font></span></div>
<div class="det-tips"><span class="tips tip1" v-if="item.label">{{item.label}}</span><span v-if="item.address" class="tips tip2">{{item.address}}</span></div> <div class="det-tips"><span class="tips tip1" v-if="item.label">{{item.label}}</span><span v-if="item.address" class="tips tip2">{{item.address}}</span></div>
<div class="det-contets"> <div class="det-contets">
<div class="det-con"> <div class="det-con">
...@@ -133,7 +133,7 @@ ...@@ -133,7 +133,7 @@
<span class="wordprimary">{{item.ownerCompany}}</span> <span class="wordprimary">{{item.ownerCompany}}</span>
</div> </div>
</div> </div>
<el-divider></el-divider> <el-divider v-if="index != datalist.length-1"></el-divider>
<div class="operates" v-if="activeName=='first'"> <div class="operates" v-if="activeName=='first'">
<div class="i1"><img src="@/assets/images/follow.png">跟进</div> <div class="i1"><img src="@/assets/images/follow.png">跟进</div>
<div class="i2"><img src="@/assets/images/edit.png">编辑</div> <div class="i2"><img src="@/assets/images/edit.png">编辑</div>
...@@ -294,6 +294,7 @@ export default { ...@@ -294,6 +294,7 @@ export default {
if(item.districtName != ""&& item.districtName != null) if(item.districtName != ""&& item.districtName != null)
str += '-' +item.districtName str += '-' +item.districtName
item.address = str item.address = str
item.nickName1 = item.nickName?item.nickName.slice(0,1):''
}) })
} }
}) })
......
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