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
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) {
...
@@ -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
})
}
dsk-operate-ui/src/assets/styles/project.scss
View file @
7a39becd
...
@@ -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
;
...
...
dsk-operate-ui/src/views/custom/customList/index.vue
View file @
7a39becd
...
@@ -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"
...
...
dsk-operate-ui/src/views/custom/overview/index.vue
View file @
7a39becd
...
@@ -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
;
...
...
dsk-operate-ui/src/views/project/overview/index.vue
View file @
7a39becd
...
@@ -323,8 +323,8 @@ export default {
...
@@ -323,8 +323,8 @@ export default {
// trigger: 'axis'
// trigger: 'axis'
},
},
legend
:
{
legend
:
{
right
:
'151
px'
,
left
:
'12
px'
,
top
:
"
0
px"
,
top
:
"
15
px"
,
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
:
3
27px
;
height
:
6
27px
;
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
;
}
}
...
...
dsk-operate-ui/src/views/project/projectList/component/addProject.vue
View file @
7a39becd
...
@@ -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"
>
...
...
dsk-operate-ui/src/views/project/projectList/component/xgqy.vue
View file @
7a39becd
...
@@ -4,18 +4,16 @@
...
@@ -4,18 +4,16 @@
<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>
<div
class=
"btn"
@
click=
"handleCurrentChange(1)"
>
搜索
</div>
<div
class=
"btn"
@
click=
"handleCurrentChange(1)"
>
搜索
</div>
</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,14 +57,20 @@
...
@@ -59,14 +57,20 @@
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=
"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=
"tables"
v-if=
"tableData.total > searchParam.pageSize"
>
<div
class=
"bottems
"
>
<div
class=
"bottems"
v-if=
"ondel != -1
"
>
<el-pagination
<el-pagination
background
background
:page-size=
"searchParam.pageSize"
:page-size=
"searchParam.pageSize"
...
@@ -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
>
dsk-operate-ui/src/views/project/projectList/component/zlwd.vue
View file @
7a39becd
...
@@ -6,74 +6,76 @@
...
@@ -6,74 +6,76 @@
<div
class=
"searchbtns"
>
<div
class=
"searchbtns"
>
<div
class=
"searchInput"
>
<div
class=
"searchInput"
>
<el-input
type=
"text"
placeholder=
"输入关键词查询"
></el-input>
<el-input
type=
"text"
placeholder=
"输入关键词查询"
></el-input>
<div
class=
"btn"
>
搜索
</div>
<div
class=
"btn"
@
click=
"handleCurrentChange(1)"
>
搜索
</div>
</div>
</div>
<div
class=
"btn btn_primary h32 b2"
@
click=
"
isupload=true
"
><div
class=
"img img2"
></div>
上传
</div>
<div
class=
"btn btn_primary h32 b2"
@
click=
"
getUP
"
><div
class=
"img img2"
></div>
上传
</div>
</div>
</div>
<div
class=
"filepath"
v-if=
"filename"
><font
@
click=
"getall"
>
全部
</font>
/
<span>
<img
class=
"img"
src=
"@/assets/images/folder.png"
>
{{
filename
}}
</span></div>
<div
class=
"uploadbox"
v-if=
"isupload"
>
<div
class=
"uploadbox"
v-if=
"isupload"
>
<div>
<div>
<el-upload
<el-upload
class=
"upload-demo"
class=
"upload-demo"
action=
"https://jsonplaceholder.typicode.com/posts/"
:action=
"action"
:on-preview=
"handlePreview"
:on-change=
"handleFileListChange"
:on-remove=
"handleRemove"
:multiple=
"false"
:before-remove=
"beforeRemove"
ref=
"upload"
multiple
:file-list=
"fileList"
:limit=
"3"
accept=
".word,.pdf.excel,.xlsx"
:on-exceed=
"handleExceed"
:headers=
"headers"
:file-list=
"fileList"
>
:show-file-list=
"false"
:on-success=
"onSuccess"
>
<div
class=
"wj wj1"
></div>
上传文件
<div
class=
"wj wj1"
></div>
上传文件
</el-upload>
</el-upload>
</div>
</div>
<div>
<div>
<el-upload
<el-upload
class=
"upload-demo"
class=
"upload-demo"
action=
"https://jsonplaceholder.typicode.com/posts/"
:action=
"action"
:on-remove=
"fileRemove"
:on-change=
"handleFileListChange"
:on-change=
"fileChang"
:multiple=
"false"
multiple
:on-success=
"onSuccess1"
:limit=
"3"
:on-exceed=
"handleExceed"
ref=
"uploadFile"
ref=
"uploadFile"
:headers=
"headers"
:show-file-list=
"false"
:file-list=
"fileList"
>
:file-list=
"fileList"
>
<div
class=
"wj wj2"
></div>
上传文件夹
<div
class=
"wj wj2"
></div>
上传文件夹
</el-upload>
</el-upload>
</div>
</div>
</div>
</div>
<div
class=
"document"
>
<div
class=
"document
tables
"
>
<el-table
<el-table
:data=
"
tableData
"
:data=
"
fileDatas.rows
"
style=
"width: 100%"
style=
"width: 100%"
>
>
<template
slot=
"empty"
>
<template
slot=
"empty"
>
<div
class=
"empty"
>
<div
class=
"empty"
>
<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 w102"
@
click=
"
opennew"
>
新增联系人
</div>
<div
class=
"btn btn_primary h36 w102"
@
click=
"
getUP"
>
上传文档
</div>
</div>
</div>
</
template
>
</
template
>
<el-table-column
<el-table-column
prop=
"
dat
e"
prop=
"
nam
e"
label=
"文件名称"
label=
"文件名称"
>
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<div>
<div
@
click=
"getFile(scope.row)"
>
<img
class=
"img"
src=
"@/assets/images/folder.png"
>
<img
v-if=
"scope.row.type == 'file'"
class=
"img"
src=
"@/assets/images/folder.png"
>
<
!--
<img
class=
"img"
src=
"@/assets/images/word.png"
>
--
>
<
img
v-if=
"scope.row.type == 'word'"
class=
"img"
src=
"@/assets/images/word.png"
>
<
!--
<img
class=
"img"
src=
"@/assets/images/pdf.png"
>
--
>
<
img
v-if=
"scope.row.type == 'pdf'"
class=
"img"
src=
"@/assets/images/pdf.png"
>
<
!--
<img
class=
"img"
src=
"@/assets/images/excel_1.png"
>
--
>
<
img
v-if=
"scope.row.type == 'excel'"
class=
"img"
src=
"@/assets/images/excel_1.png"
>
<span>
集团投标常用资料
</span>
<span>
{{
scope
.
row
.
name
}}
</span>
</div>
</div>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<!--<el-table-column-->
<!--prop="name"-->
<!--label="创建人"-->
<!-->-->
<!--</el-table-column>-->
<el-table-column
<el-table-column
prop=
"name"
prop=
"creatTime"
label=
"创建人"
>
</el-table-column>
<el-table-column
prop=
"name"
label=
"更新时间"
label=
"更新时间"
sortable
sortable
width=
""
>
width=
""
>
...
@@ -85,121 +87,146 @@
...
@@ -85,121 +87,146 @@
width=
""
>
width=
""
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<div
class=
"hoverbtn"
>
<div
class=
"hoverbtn"
>
<div
class=
"xz"
>
下载
</div>
<div
class=
"xz"
@
click=
"downnlod(scope.row)"
>
下载
</div>
<div
class=
"sc"
>
删除
</div>
<div
class=
"sc"
@
click=
"del(scope.row.filePath)"
>
删除
</div>
</div>
</div>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
</el-table>
</el-table>
<div
class=
"tables"
>
<div
class=
"tables"
v-if=
"fileDatas.total>param.pagesize"
>
<div
class=
"bottems"
>
<div
class=
"bottems"
>
<el-pagination
<el-pagination
background
background
:page-size=
"
20
"
:page-size=
"
param.pagesize
"
:current-page=
"
1
"
:current-page=
"
param.pageNum
"
@
current-change=
"handleCurrentChange"
@
current-change=
"handleCurrentChange"
layout=
"prev, pager, next"
layout=
"prev, pager, next"
:total=
"
1000
"
>
:total=
"
fileDatas.total
"
>
</el-pagination>
</el-pagination>
</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>
重庆市轨道交通3号线二期工程4标段施工总承包
</span>
</div>
<div
class=
"popform"
>
<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=
"row"
>
<span
class=
"left"
>
联系人职位:
</span>
<el-input
type=
"text"
placeholder=
"请输入"
></el-input>
</div>
<div
class=
"row"
>
<span
class=
"left"
>
联系人公司/机关:
</span>
<el-input
type=
"text"
placeholder=
"请输入"
></el-input>
</div>
<div
class=
"row"
>
<span
class=
"left"
>
内部维护人:
</span>
<el-input
type=
"text"
placeholder=
"请输入"
></el-input>
</div>
<div
class=
"row"
>
<span
class=
"left"
>
联系方式:
</span>
<el-input
type=
"text"
placeholder=
"请输入"
></el-input>
</div>
<div
class=
"popbot"
>
<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>
<
script
>
<
script
>
import
"@/assets/styles/project.scss"
import
"@/assets/styles/project.scss"
import
{
getToken
}
from
"@/utils/auth"
;
import
{
getZLWD
,
delZLWD
}
from
"@/api/project/project"
;
export
default
{
export
default
{
name
:
'zlwd'
,
name
:
'zlwd'
,
data
(){
data
(){
return
{
return
{
isupload
:
false
,
isupload
:
false
,
dialogVisible
:
false
,
textarea
:
""
,
textarea
:
""
,
nowedit
:
-
1
,
//当前正在编辑的文本
//上传
tipslit
:[],
//项目标签
action
:
process
.
env
.
VUE_APP_BASE_API
+
'/business/file/upload'
,
tipsvalue
:
""
,
//标签填写内容
fileList
:
[],
tableData
:
[
headers
:
{
{
Authorization
:
"Bearer "
+
getToken
(),
date
:
'2016-05-02'
,
filePath
:
this
.
$route
.
query
.
id
,
name
:
'王小虎'
,
},
address
:
'上海市普陀区金沙江路 1518 弄'
param
:{
},
{
pageNum
:
1
,
date
:
'2016-05-04'
,
pagesize
:
20
,
name
:
'王小虎'
,
filePath
:
this
.
$route
.
query
.
id
,
address
:
'上海市普陀区金沙江路 1517 弄'
},
},
{
fileDatas
:[],
date
:
'2016-05-01'
,
filename
:
''
,
name
:
'王小虎'
,
address
:
'上海市普陀区金沙江路 1519 弄'
},
{
date
:
'2016-05-03'
,
name
:
'王小虎'
,
address
:
'上海市普陀区金沙江路 1516 弄'
}
],
fileList
:[],
//上传的文件
}
}
},
},
mounted
(){
created
(){
this
.
$refs
.
uploadFile
.
$children
[
0
].
$refs
.
input
.
webkitdirectory
=
true
;
this
.
getList
()
// console.log(this.$ref)
},
},
methods
:{
methods
:{
//上传文件夹
getall
(){
fileChang
(
file
,
fileList
,
name
)
{
this
.
param
.
filePath
=
this
.
$route
.
query
.
id
this
.
form
.
instFilePics
=
fileList
;
this
.
filename
=
''
this
.
headers
.
filePath
=
this
.
$route
.
query
.
id
this
.
handleCurrentChange
(
1
)
},
},
fileRemove
(
file
,
fileList
,
name
)
{
getList
(){
this
.
form
.
instFilePics
=
fileList
getZLWD
(
this
.
param
).
then
(
res
=>
{
this
.
fileDatas
=
res
if
(
this
.
fileDatas
.
rows
!=
null
&&
this
.
fileDatas
.
length
>
0
){
this
.
fileDatas
.
forEach
(
item
=>
{
let
names
=
item
.
filePath
.
split
(
'
\
\'
)
item.name = names[names.length-1]
let types = item.name.split('
.
')
item.type = types.length>1?types[1]:'
file
'
})
}
})
},
getFile(row){
if(row.type == '
file
'){
this.filename = row.name
this.headers.filePath = this.$route.query.id+'
\\
'+row.name
this.param.filePath = row.filePath
this.handleCurrentChange(1)
}else{
return false
}
},
getUP(){
this.isupload=true
this.$nextTick(() => {
this.$refs.uploadFile.$children[0].$refs.input.webkitdirectory = true
})
},
downnlod(row){
let a = document.createElement("a");
a.setAttribute("href", row.filePath);
a.setAttribute("download", row.name);
document.body.appendChild(a);
a.click();
},
del(path){
delZLWD(path).then(res=>{
if(res.code == 200){
this.$message.success('
删除成功!
')
this.handleCurrentChange(1)
}
})
},
handleFileListChange(file, fileList) {
if (fileList.length > 0) {
this.fileList = [fileList[fileList.length - 1]];
}
},
},
onSuccess(res, file, fileList) {
if(res.code == 200 ){
this.$refs["upload"].submit();
let _this = this
setTimeout(function() {
_this.getList()
_this.isupload = false
},3000)
}
else
this.$message.error({message:res.msg,showClose:true})
},
onSuccess1(res, file, fileList) {
if(res.code == 200 ){
this.$refs["uploadFile"].submit();
let _this = this
setTimeout(function() {
_this.getList()
_this.isupload = false
},3000)
}
else
this.$message.error({message:res.msg,showClose:true})
},
//翻页
//翻页
handleCurrentChange(val) {
handleCurrentChange(val) {
console
.
log
(
`当前页:
${
val
}
`
);
this.param.pageNum(1)
this.getList()
},
},
cancel(){
cancel(){
this.dialogVisible = false
this.dialogVisible = false
...
@@ -213,6 +240,25 @@
...
@@ -213,6 +240,25 @@
</
script
>
</
script
>
<
style
lang=
"scss"
scoped
>
<
style
lang=
"scss"
scoped
>
.filepath
{
font-size
:
12px
;
height
:
30px
;
line-height
:
16px
;
padding-left
:
24px
;
>
font
{
opacity
:
0
.4
;
}
>
span
{
position
:
relative
;
padding-left
:
23px
;
}
.img
{
position
:
absolute
;
top
:
-3px
;
width
:
20px
;
left
:
0
;
}
}
.w102
{
.w102
{
width
:
102px
;
width
:
102px
;
}
}
...
...
dsk-operate-ui/src/views/project/projectList/detail.vue
View file @
7a39becd
...
@@ -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
)
...
...
dsk-operate-ui/src/views/project/projectList/index.vue
View file @
7a39becd
...
@@ -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
):
''
})
})
}
}
})
})
...
...
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