Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
D
dsk-cr20g
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
dsk-cr20g
Commits
7a39becd
Commit
7a39becd
authored
Jun 07, 2023
by
MyName
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
项目管理
parent
26fe8fee
Changes
10
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
271 additions
and
156 deletions
+271
-156
project.js
dsk-operate-ui/src/api/project/project.js
+25
-0
project.scss
dsk-operate-ui/src/assets/styles/project.scss
+1
-1
index.vue
dsk-operate-ui/src/views/custom/customList/index.vue
+1
-1
index.vue
dsk-operate-ui/src/views/custom/overview/index.vue
+9
-3
index.vue
dsk-operate-ui/src/views/project/overview/index.vue
+7
-6
addProject.vue
...ui/src/views/project/projectList/component/addProject.vue
+1
-1
xgqy.vue
...erate-ui/src/views/project/projectList/component/xgqy.vue
+39
-21
zlwd.vue
...erate-ui/src/views/project/projectList/component/zlwd.vue
+159
-113
detail.vue
dsk-operate-ui/src/views/project/projectList/detail.vue
+26
-8
index.vue
dsk-operate-ui/src/views/project/projectList/index.vue
+3
-2
No files found.
dsk-operate-ui/src/api/project/project.js
View file @
7a39becd
...
...
@@ -158,3 +158,28 @@ export function addXGQY(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
})
}
dsk-operate-ui/src/assets/styles/project.scss
View file @
7a39becd
...
...
@@ -656,6 +656,7 @@
background
:
#F6F9FD
;
border-radius
:
6px
;
padding
:
24px
;
border
:
1px
solid
#F6F9FD
;
//box-sizing: content-box;
box-sizing
:
border-box
;
>
div
{
...
...
@@ -676,7 +677,6 @@
}
}
.rec_detail
:hover
{
.operate
{
display
:
block
;
...
...
dsk-operate-ui/src/views/custom/customList/index.vue
View file @
7a39becd
...
...
@@ -173,7 +173,7 @@
</
template
>
</el-table-column>
</el-table>
<div
class=
"bottems"
v-if=
"tableData.total>
0
"
>
<div
class=
"bottems"
v-if=
"tableData.total>
searchParam.pageSize
"
>
<el-pagination
background
:page-size=
"searchParam.pageSize"
...
...
dsk-operate-ui/src/views/custom/overview/index.vue
View file @
7a39becd
...
...
@@ -99,7 +99,7 @@
<div
class=
"trendcon"
>
{{
item
.
text
}}
</div>
<div
class=
"time"
>
{{
item
.
time
}}
</div>
</div>
<div
class=
"tables"
style=
"width: 100%"
>
<div
class=
"tables"
style=
"width: 100%"
v-if=
"datalist.length>10"
>
<div
class=
"bottems"
>
<el-pagination
background
...
...
@@ -236,7 +236,7 @@ export default {
{
name
:
''
,
type
:
'bar'
,
barWidth
:
'
20%
'
,
barWidth
:
'
12px
'
,
data
:
[
100
,
152
,
200
,
334
,
390
,
330
,
220
,
256
,
178
],
itemStyle
:{
normal
:
{
...
...
@@ -280,7 +280,7 @@ export default {
{
name
:
''
,
type
:
'bar'
,
barWidth
:
'
20%
'
,
barWidth
:
'
12px
'
,
data
:
[
110
,
112
,
190
,
234
,
310
,
350
,
220
,
276
,
198
],
itemStyle
:{
normal
:{
...
...
@@ -551,6 +551,12 @@ export default {
line-height
:
18px
;
padding-bottom
:
16px
;
}
&
:last-child
{
.trendcon
{
border
:
none
;
}
}
.time
{
position
:
absolute
;
right
:
16px
;
...
...
dsk-operate-ui/src/views/project/overview/index.vue
View file @
7a39becd
...
...
@@ -323,8 +323,8 @@ export default {
// trigger: 'axis'
},
legend
:
{
right
:
'151
px'
,
top
:
"
0
px"
,
left
:
'12
px'
,
top
:
"
15
px"
,
data
:
[
'成交金额'
,
'储备项目'
,
'跟进动态'
]
},
series
:
[
...
...
@@ -513,12 +513,12 @@ export default {
}
}
.chart-bot
{
height
:
354px
;
height
:
auto
;
margin-bottom
:
12px
;
.left
{
float
:
left
;
width
:
353px
;
height
:
100%
;
height
:
354px
;
background
:
url("../../../assets/images/project/glbj.png")
no-repeat
top
center
;
background-size
:
100%
100%
;
color
:
#FFFFFF
;
...
...
@@ -569,11 +569,11 @@ export default {
}
.right
{
float
:
right
;
height
:
100%
;
height
:
auto
;
width
:
calc
(
100%
-
369px
);
.records
{
margin-top
:
-17px
;
height
:
3
27px
;
height
:
6
27px
;
overflow-y
:
auto
;
width
:
100%
;
padding-right
:
47px
;
...
...
@@ -621,6 +621,7 @@ export default {
.chart2
{
width
:
100%
;
padding
:
0
0
0
16px
;
height
:
285px
;
margin-top
:
-20px
;
}
...
...
dsk-operate-ui/src/views/project/projectList/component/addProject.vue
View file @
7a39becd
...
...
@@ -34,7 +34,7 @@
<el-option
v-for=
"(item,index) in projectCategory"
:key=
"index"
:label=
"item.dictLabel"
:value=
"item.dictValue"
></el-option>
</el-select>
</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-form-item>
<el-form-item
label=
"可见范围:"
class=
"row"
>
...
...
dsk-operate-ui/src/views/project/projectList/component/xgqy.vue
View file @
7a39becd
...
...
@@ -4,18 +4,16 @@
<el-card
class=
"box-card noborder"
>
<div
class=
"cardtitles"
>
相关企业
</div>
<div
class=
"searchbtns"
>
<el-select
class=
"select"
placeholder=
"企业类型"
>
<el-select
placeholder=
"请选择"
v-model=
"searchParam.companyType"
>
<el-select
class=
"select"
placeholder=
"企业类型"
v-model=
"searchParam.companyType"
@
change=
"handleCurrentChange(1)"
>
<el-option
v-for=
"(item,index) in companytype"
:label=
"item.dictLabel"
:value=
"item.dictValue"
></el-option>
</el-select>
</el-select>
<div
class=
"searchInput"
>
<el-input
type=
"text"
placeholder=
"输入关键词查询"
v-model=
"searchParam.companyName"
></el-input>
<div
class=
"btn"
@
click=
"handleCurrentChange(1)"
>
搜索
</div>
</div>
<div
class=
"btn btn_primary h32 b3"
@
click=
"opennew"
><div
class=
"img img1"
></div>
添加相关企业
</div>
</div>
<div
class=
"document"
>
<div
class=
"document
tables
"
>
<el-table
:data=
"tableData.rows"
style=
"width: 100%"
...
...
@@ -59,14 +57,20 @@
width=
""
>
<
template
slot-scope=
"scope"
>
<div
class=
"hoverbtn"
>
<div
class=
"sc"
@
click=
"
delQY(scope.row.id)
"
>
删除
</div>
<div
class=
"sc"
@
click=
"
ondel = scope.row.id
"
>
删除
</div>
</div>
</
template
>
</el-table-column>
</el-table>
<div
class=
"delform"
v-if=
"ondel != -1"
>
<div
class=
"words"
>
是否将企业删除
</div>
<div>
<div
class=
"btnsmall btn_primary h28"
@
click=
"delQY()"
>
确定
</div>
<div
class=
"btnsmall btn_cancel h28"
@
click=
"ondel = -1"
>
取消
</div>
</div>
</div>
<div
class=
"tables"
v-if=
"tableData.total > searchParam.pageSize"
>
<div
class=
"bottems
"
>
<div
class=
"bottems"
v-if=
"ondel != -1
"
>
<el-pagination
background
:page-size=
"searchParam.pageSize"
...
...
@@ -131,7 +135,7 @@
<
script
>
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'
export
default
{
name
:
'xgqy'
,
...
...
@@ -186,6 +190,7 @@
companyType
:
""
,
companyName
:
''
,
},
ondel
:
-
1
,
}
},
created
(){
...
...
@@ -198,10 +203,18 @@
getDictType
(
'company_role'
).
then
(
result
=>
{
this
.
companyrole
=
result
.
code
==
200
?
result
.
data
:[]
})
this
.
getlist
()
},
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
(){
addXGQY
(
this
.
queryParam
).
then
(
res
=>
{
...
...
@@ -215,7 +228,8 @@
},
getlist
(){
getXGQY
(
this
.
searchParam
).
then
(
result
=>
{
this
.
tableData
=
result
.
data
console
.
log
(
result
)
this
.
tableData
=
result
})
},
//翻页
...
...
@@ -274,4 +288,8 @@
.box-card
{
position
:
relative
;
}
.delform
{
position
:
fixed
;
left
:
50%
;
top
:
50%
;
transform
:translate
(
-50
%
,
-50
%
)
}
</
style
>
dsk-operate-ui/src/views/project/projectList/component/zlwd.vue
View file @
7a39becd
This diff is collapsed.
Click to expand it.
dsk-operate-ui/src/views/project/projectList/detail.vue
View file @
7a39becd
...
...
@@ -197,16 +197,22 @@
this
.
thisindex
=
result
.
data
.
projectStage
let
list
=
[]
let
txt
=
''
if
(
result
.
data
.
provinceId
){
if
(
result
.
data
.
provinceId
!=
""
){
list
.
push
(
result
.
data
.
provinceId
)
txt
+=
result
.
data
.
provinceName
}
if
(
result
.
data
.
cityId
){
list
.
push
(
result
.
data
.
cityId
)
txt
+=
'/'
+
result
.
data
.
cityName
}
if
(
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
}
this
.
address
=
list
.
length
>
0
?
list
:
"待添加"
...
...
@@ -279,6 +285,14 @@
handleChange
(
value
)
{
var
labelString
=
this
.
$refs
.
myCascader
.
getCheckedNodes
()[
0
].
pathLabels
;
let
param
=
{
provinceId
:
null
,
provinceName
:
null
,
cityId
:
null
,
cityName
:
null
,
districtId
:
null
,
districtName
:
null
,
}
let
txt
=
''
labelString
.
forEach
((
item
,
index
)
=>
{
let
str
=
''
...
...
@@ -286,13 +300,17 @@
str
=
'/'
}
txt
+=
str
+
item
if
(
index
==
0
){
param
.
provinceName
=
item
}
if
(
index
==
1
){
param
.
cityName
=
item
}
if
(
index
==
2
){
param
.
districtName
=
item
}
})
this
.
addresstxt
=
txt
let
param
=
{
provinceId
:
null
,
cityId
:
null
,
districtId
:
null
}
value
.
forEach
((
item
,
index
)
=>
{
if
(
index
==
0
){
param
.
provinceId
=
parseInt
(
item
)
...
...
dsk-operate-ui/src/views/project/projectList/index.vue
View file @
7a39becd
...
...
@@ -113,7 +113,7 @@
</div>
<div
class=
"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-contets"
>
<div
class=
"det-con"
>
...
...
@@ -133,7 +133,7 @@
<span
class=
"wordprimary"
>
{{
item
.
ownerCompany
}}
</span>
</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=
"i1"
><img
src=
"@/assets/images/follow.png"
>
跟进
</div>
<div
class=
"i2"
><img
src=
"@/assets/images/edit.png"
>
编辑
</div>
...
...
@@ -294,6 +294,7 @@ export default {
if
(
item
.
districtName
!=
""
&&
item
.
districtName
!=
null
)
str
+=
'-'
+
item
.
districtName
item
.
address
=
str
item
.
nickName1
=
item
.
nickName
?
item
.
nickName
.
slice
(
0
,
1
):
''
})
}
})
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment