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
04fc3eda
Commit
04fc3eda
authored
Oct 10, 2023
by
tianhongyang
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'V20230915' of
http://192.168.60.201/root/dsk-operate-sys
into V20230915
parents
b9024ca7
97c9208c
Changes
13
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
1070 additions
and
81 deletions
+1070
-81
EnterpriseProjectController.java
...a/com/dsk/jsk/controller/EnterpriseProjectController.java
+27
-0
EnterpriseProjectBidNoticePageBody.java
...om/dsk/jsk/domain/EnterpriseProjectBidNoticePageBody.java
+6
-1
EnterpriseProjectImportantListDto.java
.../dsk/jsk/domain/bo/EnterpriseProjectImportantListDto.java
+1
-1
EnterpriseProjectService.java
...in/java/com/dsk/jsk/service/EnterpriseProjectService.java
+58
-2
groupAccount.js
dsk-operate-ui/src/api/detail/groupAccount/groupAccount.js
+49
-0
opport.js
dsk-operate-ui/src/api/detail/party-a/opport.js
+9
-1
index.scss
dsk-operate-ui/src/assets/styles/index.scss
+1
-1
index.js
dsk-operate-ui/src/router/index.js
+1
-1
zbxmfx.vue
...ate-ui/src/views/detail/groupAccount/component/zbxmfx.vue
+840
-10
zbxmmx.vue
...ate-ui/src/views/detail/groupAccount/component/zbxmmx.vue
+1
-1
zhaobiao.vue
...e-ui/src/views/detail/groupAccount/component/zhaobiao.vue
+6
-4
index.vue
dsk-operate-ui/src/views/detail/party-a/index.vue
+6
-4
announcement.vue
...erate-ui/src/views/detail/party-a/opport/announcement.vue
+65
-55
No files found.
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/controller/EnterpriseProjectController.java
View file @
04fc3eda
...
@@ -74,11 +74,25 @@ public class EnterpriseProjectController {
...
@@ -74,11 +74,25 @@ public class EnterpriseProjectController {
return
enterpriseProjectService
.
specialDebtPage
(
body
);
return
enterpriseProjectService
.
specialDebtPage
(
body
);
}
}
/***
*@Description: 招标公告 分页列表
*@Param:
*@return: com.dsk.common.core.domain.R
*@Author: Dgm
*@date: 2023/10/9 14:41
*/
@PostMapping
(
value
=
"/bidNoticePage"
)
@PostMapping
(
value
=
"/bidNoticePage"
)
public
TableDataInfo
bidNoticePage
(
@RequestBody
@Valid
EnterpriseProjectBidNoticePageBody
body
)
throws
Exception
{
public
TableDataInfo
bidNoticePage
(
@RequestBody
@Valid
EnterpriseProjectBidNoticePageBody
body
)
throws
Exception
{
return
enterpriseProjectService
.
bidNoticePage
(
body
);
return
enterpriseProjectService
.
bidNoticePage
(
body
);
}
}
/***
*@Description: 招标招采阶段
*@Param:
*@return: com.dsk.common.core.domain.R
*@Author: Dgm
*@date: 2023/10/9 14:41
*/
@PostMapping
(
value
=
"/bidNoticeTenderStage"
)
@PostMapping
(
value
=
"/bidNoticeTenderStage"
)
public
R
bidNoticeTenderStage
(
@RequestBody
@Valid
EnterpriseProjectBidNoticeTenderStageBody
body
)
throws
Exception
{
public
R
bidNoticeTenderStage
(
@RequestBody
@Valid
EnterpriseProjectBidNoticeTenderStageBody
body
)
throws
Exception
{
return
enterpriseProjectService
.
bidNoticeTenderStage
(
body
);
return
enterpriseProjectService
.
bidNoticeTenderStage
(
body
);
...
@@ -89,6 +103,19 @@ public class EnterpriseProjectController {
...
@@ -89,6 +103,19 @@ public class EnterpriseProjectController {
return
enterpriseProjectService
.
bidNoticeArea
(
body
);
return
enterpriseProjectService
.
bidNoticeArea
(
body
);
}
}
/***
*@Description: 招标项目类别
*@Param:
*@return: com.dsk.common.core.domain.R
*@Author: Dgm
*@date: 2023/10/9 14:41
*/
@PostMapping
(
value
=
"/bidNoticeProjectCategory"
)
public
R
bidNoticeProjectCategory
(
@RequestBody
@Valid
EnterpriseProjectBidNoticeTenderStageBody
body
)
throws
Exception
{
return
enterpriseProjectService
.
bidNoticeProjectCategory
(
body
);
}
@PostMapping
(
value
=
"/bidNoticeDetail"
)
@PostMapping
(
value
=
"/bidNoticeDetail"
)
public
R
bidNoticeDetail
(
@RequestBody
@Valid
EnterpriseProjectBidNoticeDetailBody
body
)
throws
Exception
{
public
R
bidNoticeDetail
(
@RequestBody
@Valid
EnterpriseProjectBidNoticeDetailBody
body
)
throws
Exception
{
return
enterpriseProjectService
.
bidNoticeDetail
(
body
);
return
enterpriseProjectService
.
bidNoticeDetail
(
body
);
...
...
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/domain/EnterpriseProjectBidNoticePageBody.java
View file @
04fc3eda
...
@@ -25,10 +25,15 @@ public class EnterpriseProjectBidNoticePageBody extends BasePage {
...
@@ -25,10 +25,15 @@ public class EnterpriseProjectBidNoticePageBody extends BasePage {
private
String
keys
;
private
String
keys
;
/**
/**
*
类型
*
招标阶段
*/
*/
private
List
<
String
>
tenderStage
;
private
List
<
String
>
tenderStage
;
/**
* 项目类型
*/
private
List
<
String
>
projectCategory
;
/*
/*
* 1金额倒序,2金额正序,3时间倒序,4时间正序
* 1金额倒序,2金额正序,3时间倒序,4时间正序
*/
*/
...
...
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/domain/bo/EnterpriseProjectImportantListDto.java
View file @
04fc3eda
...
@@ -14,7 +14,7 @@ import javax.validation.constraints.NotNull;
...
@@ -14,7 +14,7 @@ import javax.validation.constraints.NotNull;
@EqualsAndHashCode
(
callSuper
=
false
)
@EqualsAndHashCode
(
callSuper
=
false
)
public
class
EnterpriseProjectImportantListDto
extends
BasePage
{
public
class
EnterpriseProjectImportantListDto
extends
BasePage
{
private
Integer
c
ompanyI
d
;
private
Integer
c
i
d
;
private
String
keys
;
private
String
keys
;
...
...
dsk-module/dsk-biz-api/src/main/java/com/dsk/jsk/service/EnterpriseProjectService.java
View file @
04fc3eda
...
@@ -4,11 +4,13 @@ import cn.hutool.core.bean.BeanException;
...
@@ -4,11 +4,13 @@ import cn.hutool.core.bean.BeanException;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.json.JSONUtil
;
import
cn.hutool.json.JSONUtil
;
import
com.dsk.acc.openapi.client.util.CommonUtils
;
import
com.dsk.common.core.domain.R
;
import
com.dsk.common.core.domain.R
;
import
com.dsk.common.core.page.TableDataInfo
;
import
com.dsk.common.core.page.TableDataInfo
;
import
com.dsk.common.utils.DskOpenApiUtil
;
import
com.dsk.common.utils.DskOpenApiUtil
;
import
com.dsk.jsk.domain.*
;
import
com.dsk.jsk.domain.*
;
import
com.dsk.jsk.domain.bo.EnterpriseProjectImportantListDto
;
import
com.dsk.jsk.domain.bo.EnterpriseProjectImportantListDto
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.collections4.MapUtils
;
import
org.apache.commons.collections4.MapUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
...
@@ -17,6 +19,7 @@ import org.springframework.stereotype.Service;
...
@@ -17,6 +19,7 @@ import org.springframework.stereotype.Service;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
@Service
@Service
...
@@ -90,12 +93,51 @@ public class EnterpriseProjectService {
...
@@ -90,12 +93,51 @@ public class EnterpriseProjectService {
return
dskOpenApiUtil
.
responsePage
(
map
);
return
dskOpenApiUtil
.
responsePage
(
map
);
}
}
/***
*@Description: 招标公告 分页列表
*@Param:
*@return: com.dsk.common.core.domain.R
*@Author: Dgm
*@date: 2023/10/9 14:41
*/
public
TableDataInfo
bidNoticePage
(
EnterpriseProjectBidNoticePageBody
body
)
throws
Exception
{
public
TableDataInfo
bidNoticePage
(
EnterpriseProjectBidNoticePageBody
body
)
throws
Exception
{
if
(
body
.
isVaildCid
())
return
new
TableDataInfo
(
new
ArrayList
<>(),
0
);
if
(
body
.
isVaildCid
())
{
return
new
TableDataInfo
(
new
ArrayList
<>(),
0
);
}
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/enterpriseProject/bidNoticePage"
,
BeanUtil
.
beanToMap
(
body
,
false
,
false
));
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/enterpriseProject/bidNoticePage"
,
BeanUtil
.
beanToMap
(
body
,
false
,
false
));
return
dskOpenApiUtil
.
responsePage
(
map
);
Map
data
=
MapUtils
.
getMap
(
map
,
"data"
,
null
);
List
<
Object
>
list
=
CommonUtils
.
assertAsArray
(
MapUtils
.
getObject
(
data
,
"list"
,
""
));
if
(
CollectionUtils
.
isEmpty
(
list
))
{
return
new
TableDataInfo
(
list
,
0
);
}
}
ArrayList
<
Long
>
cIds
=
new
ArrayList
<>();
for
(
Object
dataMap
:
list
)
{
cIds
.
add
(
MapUtils
.
getLong
(
CommonUtils
.
assertAsMap
(
dataMap
),
"agencyId"
));
}
HashMap
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"ids"
,
cIds
);
Map
<
String
,
Object
>
uipIdMap
=
dskOpenApiUtil
.
requestBody
(
"/operate/enterprise/getUipIdByCid"
,
paramMap
);
Object
uipIdData
=
uipIdMap
.
get
(
"data"
);
List
<
Map
<
String
,
Object
>>
mapList
=
new
ArrayList
<>();
if
(
ObjectUtil
.
isNotEmpty
(
uipIdData
))
{
mapList
=
(
List
<
Map
<
String
,
Object
>>)
uipIdData
;
}
for
(
Object
dataMap
:
list
)
{
Map
<
String
,
Object
>
companyMap
=
CommonUtils
.
assertAsMap
(
dataMap
);
Long
agencyId
=
MapUtils
.
getLong
(
companyMap
,
"agencyId"
,
0L
);
companyMap
.
put
(
"uipId"
,
null
);
for
(
Map
<
String
,
Object
>
m
:
mapList
)
{
String
uipId
=
MapUtils
.
getString
(
m
,
"uipId"
,
null
);
Long
companyId
=
MapUtils
.
getLong
(
m
,
"companyId"
,
0L
);
if
(
agencyId
.
equals
(
companyId
))
{
companyMap
.
put
(
"uipId"
,
uipId
);
}
}
}
return
dskOpenApiUtil
.
responsePage
(
map
);
}
public
R
bidNoticeTenderStage
(
EnterpriseProjectBidNoticeTenderStageBody
body
)
throws
Exception
{
public
R
bidNoticeTenderStage
(
EnterpriseProjectBidNoticeTenderStageBody
body
)
throws
Exception
{
if
(
body
.
isVaildCid
())
return
R
.
ok
();
if
(
body
.
isVaildCid
())
return
R
.
ok
();
...
@@ -110,6 +152,20 @@ public class EnterpriseProjectService {
...
@@ -110,6 +152,20 @@ public class EnterpriseProjectService {
return
BeanUtil
.
toBean
(
map
,
R
.
class
);
return
BeanUtil
.
toBean
(
map
,
R
.
class
);
}
}
/***
*@Description: 招标项目类别
*@Param:
*@return: com.dsk.common.core.domain.R
*@Author: Dgm
*@date: 2023/10/9 14:41
*/
public
R
bidNoticeProjectCategory
(
EnterpriseProjectBidNoticeTenderStageBody
body
)
throws
Exception
{
if
(
body
.
isVaildCid
())
{
return
R
.
ok
();
}
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/enterpriseProject/bidNoticeProjectCategory"
,
BeanUtil
.
beanToMap
(
body
,
false
,
false
));
return
BeanUtil
.
toBean
(
map
,
R
.
class
);
}
public
R
bidNoticeDetail
(
EnterpriseProjectBidNoticeDetailBody
body
)
throws
Exception
{
public
R
bidNoticeDetail
(
EnterpriseProjectBidNoticeDetailBody
body
)
throws
Exception
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/enterpriseProject/bidNoticeDetail"
,
BeanUtil
.
beanToMap
(
body
,
false
,
false
));
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/enterpriseProject/bidNoticeDetail"
,
BeanUtil
.
beanToMap
(
body
,
false
,
false
));
...
...
dsk-operate-ui/src/api/detail/groupAccount/groupAccount.js
View file @
04fc3eda
...
@@ -92,3 +92,52 @@ export function exportBid(data) {
...
@@ -92,3 +92,52 @@ export function exportBid(data) {
data
:
data
data
:
data
})
})
}
}
// 集团施工项目最新招标
export
function
recentlyBid
(
data
)
{
return
request
({
url
:
'/marketAnalysis/combine/recentlyBid'
,
method
:
'post'
,
data
:
data
})
}
// 集团施工项目年度招标
export
function
bidByYear
(
data
)
{
return
request
({
url
:
'/marketAnalysis/combine/bidByYear'
,
method
:
'post'
,
data
:
data
})
}
// 集团施工项目发包金额统计
export
function
groupByMoney
(
data
)
{
return
request
({
url
:
'/marketAnalysis/combine/groupByMoney'
,
method
:
'post'
,
data
:
data
})
}
// 集团施工项目发包类型统计
export
function
groupByType
(
data
)
{
return
request
({
url
:
'/marketAnalysis/combine/groupByType'
,
method
:
'post'
,
data
:
data
})
}
// 施工项目下浮率统计
export
function
groupByLowerRate
(
data
)
{
return
request
({
url
:
'/marketAnalysis/combine/groupByLowerRate'
,
method
:
'post'
,
data
:
data
})
}
// 历史发包项目金额Top10
export
function
peojectTop
(
data
)
{
return
request
({
url
:
'/marketAnalysis/combine/peojectTop'
,
method
:
'post'
,
data
:
data
})
}
dsk-operate-ui/src/api/detail/party-a/opport.js
View file @
04fc3eda
...
@@ -9,7 +9,7 @@ export function bidNoticePage(data) {
...
@@ -9,7 +9,7 @@ export function bidNoticePage(data) {
});
});
}
}
// 招标公告招标
类别
// 招标公告招标
阶段
export
function
bidNoticeTenderStage
(
data
)
{
export
function
bidNoticeTenderStage
(
data
)
{
return
request
({
return
request
({
url
:
'/enterpriseProject/bidNoticeTenderStage'
,
url
:
'/enterpriseProject/bidNoticeTenderStage'
,
...
@@ -17,6 +17,14 @@ export function bidNoticeTenderStage(data) {
...
@@ -17,6 +17,14 @@ export function bidNoticeTenderStage(data) {
data
:
data
data
:
data
});
});
}
}
// 招标公告项目类别
export
function
bidNoticeProjectCategory
(
data
)
{
return
request
({
url
:
'/enterpriseProject/bidNoticeProjectCategory'
,
method
:
'post'
,
data
:
data
})
}
// 招标公告地区
// 招标公告地区
export
function
bidNoticeArea
(
data
)
{
export
function
bidNoticeArea
(
data
)
{
...
...
dsk-operate-ui/src/assets/styles/index.scss
View file @
04fc3eda
...
@@ -348,7 +348,7 @@ ul, li {
...
@@ -348,7 +348,7 @@ ul, li {
//box-shadow:none;
//box-shadow:none;
//-webkit-box-shadow: 2px 0px 1px -2px #C3CBD5;
//-webkit-box-shadow: 2px 0px 1px -2px #C3CBD5;
box-shadow
:
2px
0
8px
-7px
#202020
;
box-shadow
:
2px
0
8px
-7px
#202020
;
border-right
:
1px
solid
#C3CBD5
;
//
border-right: 1px solid #C3CBD5;
height
:
auto
!
important
;
height
:
auto
!
important
;
bottom
:
16px
!
important
;
bottom
:
16px
!
important
;
}
}
...
...
dsk-operate-ui/src/router/index.js
View file @
04fc3eda
...
@@ -209,7 +209,7 @@ export const constantRoutes = [
...
@@ -209,7 +209,7 @@ export const constantRoutes = [
children
:
[
children
:
[
{
{
path
:
'/biddetail/:id(
\\
d+)'
,
path
:
'/biddetail/:id(
\\
d+)'
,
component
:
()
=>
import
(
'@/views/detail/
/
biddetail/index'
),
component
:
()
=>
import
(
'@/views/detail/biddetail/index'
),
name
:
'Biddetail'
,
name
:
'Biddetail'
,
meta
:
{
title
:
'中标业绩详情'
,
icon
:
'enterprise'
}
meta
:
{
title
:
'中标业绩详情'
,
icon
:
'enterprise'
}
}
}
...
...
dsk-operate-ui/src/views/detail/groupAccount/component/zbxmfx.vue
View file @
04fc3eda
This diff is collapsed.
Click to expand it.
dsk-operate-ui/src/views/detail/groupAccount/component/zbxmmx.vue
View file @
04fc3eda
...
@@ -103,7 +103,7 @@
...
@@ -103,7 +103,7 @@
import
{
getDictType
}
from
'@/api/main'
import
{
getDictType
}
from
'@/api/main'
export
default
{
export
default
{
name
:
'qualifications'
,
name
:
'qualifications'
,
props
:
[
'customerId'
,
'combineName'
],
props
:
[
'customerId'
],
mixins
:
[
mixin
],
mixins
:
[
mixin
],
components
:{
CustomTimeSelect
,
CustomMoneySelect
},
components
:{
CustomTimeSelect
,
CustomMoneySelect
},
data
(){
data
(){
...
...
dsk-operate-ui/src/views/detail/groupAccount/component/zhaobiao.vue
View file @
04fc3eda
...
@@ -8,8 +8,8 @@
...
@@ -8,8 +8,8 @@
</el-tabs>
</el-tabs>
</div>
</div>
</div>
</div>
<Zbxmfx
v-if=
"activeName === 'first'"
></Zbxmfx>
<Zbxmfx
v-if=
"activeName === 'first'"
:customer-id=
"id"
></Zbxmfx>
<Zbxmmx
v-if=
"activeName === 'second'"
></Zbxmmx>
<Zbxmmx
v-if=
"activeName === 'second'"
:customer-id=
"id"
></Zbxmmx>
</div>
</div>
</
template
>
</
template
>
...
@@ -18,10 +18,12 @@
...
@@ -18,10 +18,12 @@
import
Zbxmmx
from
'./zbxmmx'
import
Zbxmmx
from
'./zbxmmx'
export
default
{
export
default
{
name
:
'qualifications'
,
name
:
'qualifications'
,
props
:
[
'customerId'
],
components
:{
Zbxmfx
,
Zbxmmx
},
components
:{
Zbxmfx
,
Zbxmmx
},
data
(){
data
(){
return
{
return
{
activeName
:
'first'
activeName
:
'first'
,
id
:
this
.
customerId
}
}
},
},
created
()
{
created
()
{
...
@@ -37,7 +39,7 @@
...
@@ -37,7 +39,7 @@
<
style
lang=
"scss"
scoped
>
<
style
lang=
"scss"
scoped
>
.zhaobiao
{
.zhaobiao
{
height
:
100%
;
/*height: 100%;*/
background
:
#F5F5F5
;
background
:
#F5F5F5
;
.header
{
.header
{
justify-content
:
space-between
;
justify-content
:
space-between
;
...
...
dsk-operate-ui/src/views/detail/party-a/index.vue
View file @
04fc3eda
...
@@ -279,10 +279,12 @@ export default {
...
@@ -279,10 +279,12 @@ export default {
cityIds
:
[
this
.
companyInfo
.
cityId
],
cityIds
:
[
this
.
companyInfo
.
cityId
],
};
};
urbanInvestmentPage
(
data
).
then
(
res
=>
{
urbanInvestmentPage
(
data
).
then
(
res
=>
{
if
(
res
.
data
.
totalCount
<
1
)
{
if
(
res
.
code
==
200
){
let
arr
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
$refs
.
sidebar
.
sideRoute
));
if
(
res
.
data
.
totalCount
<
1
){
let
arr
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
$refs
.
sidebar
.
sideRoute
))
arr
[
4
].
children
[
2
].
disabled
=
true
;
arr
[
4
].
children
[
2
].
disabled
=
true
;
this
.
$refs
.
sidebar
.
sideRoute
=
arr
;
this
.
$refs
.
sidebar
.
sideRoute
=
arr
}
}
}
});
});
if
(
this
.
companyInfo
&&
this
.
companyInfo
.
companyName
)
{
if
(
this
.
companyInfo
&&
this
.
companyInfo
.
companyName
)
{
...
...
dsk-operate-ui/src/views/detail/party-a/opport/announcement.vue
View file @
04fc3eda
...
@@ -19,9 +19,9 @@
...
@@ -19,9 +19,9 @@
<
/template
>
<
/template
>
<
script
>
<
script
>
import
mixin
from
'../mixins/mixin'
;
import
mixin
from
'../mixins/mixin'
import
skeleton
from
'@/views/project/projectList/component/skeleton'
;
import
skeleton
from
'@/views/project/projectList/component/skeleton'
import
{
bidNoticeArea
,
bidNoticeTenderStage
,
bidNoticePage
}
from
'@/api/detail/party-a/opport'
;
import
{
bidNoticeArea
,
bidNoticeTenderStage
,
bidNoticeProjectCategory
,
bidNoticePage
}
from
'@/api/detail/party-a/opport'
export
default
{
export
default
{
name
:
'Announcement'
,
name
:
'Announcement'
,
props
:
[
'companyId'
],
props
:
[
'companyId'
],
...
@@ -43,6 +43,7 @@ export default {
...
@@ -43,6 +43,7 @@ export default {
{
label
:
'项目名称'
,
prop
:
'projectName'
,
minWidth
:
'300'
,
slot
:
true
,
fixed
:
true
}
,
{
label
:
'项目名称'
,
prop
:
'projectName'
,
minWidth
:
'300'
,
slot
:
true
,
fixed
:
true
}
,
{
label
:
'发布日期'
,
prop
:
'issueTime'
,
sortable
:
'custom'
,
descending
:
'3'
,
ascending
:
'4'
,
width
:
'120'
}
,
{
label
:
'发布日期'
,
prop
:
'issueTime'
,
sortable
:
'custom'
,
descending
:
'3'
,
ascending
:
'4'
,
width
:
'120'
}
,
{
label
:
'预算金额(万元)'
,
prop
:
'projectAmount'
,
sortable
:
'custom'
,
descending
:
'1'
,
ascending
:
'2'
,
width
:
'140'
}
,
{
label
:
'预算金额(万元)'
,
prop
:
'projectAmount'
,
sortable
:
'custom'
,
descending
:
'1'
,
ascending
:
'2'
,
width
:
'140'
}
,
{
label
:
'项目类型'
,
prop
:
'projectCategory'
,
width
:
'110'
}
,
{
label
:
'项目地区'
,
prop
:
'province'
,
width
:
'120'
,
slot
:
true
}
,
{
label
:
'项目地区'
,
prop
:
'province'
,
width
:
'120'
,
slot
:
true
}
,
{
label
:
'招标阶段'
,
prop
:
'tenderStage'
,
width
:
'90'
}
,
{
label
:
'招标阶段'
,
prop
:
'tenderStage'
,
width
:
'90'
}
,
{
label
:
'招采单位联系人'
,
prop
:
'contact'
,
width
:
'120'
}
,
{
label
:
'招采单位联系人'
,
prop
:
'contact'
,
width
:
'120'
}
,
...
@@ -53,9 +54,10 @@ export default {
...
@@ -53,9 +54,10 @@ export default {
{
label
:
'报名截止日期'
,
prop
:
'overTime'
,
width
:
'110'
}
{
label
:
'报名截止日期'
,
prop
:
'overTime'
,
width
:
'110'
}
],
],
formData
:
[
formData
:
[
{
type
:
7
,
fieldName
:
'province'
,
value
:
''
,
props
:
{
multiple
:
true
}
,
placeholder
:
'项目地区'
,
options
:
[],
uid
:
this
.
getUid
()
}
,
{
type
:
7
,
fieldName
:
'province'
,
value
:
''
,
props
:
{
multiple
:
true
}
,
placeholder
:
'项目地区'
,
options
:
[]
}
,
{
type
:
4
,
fieldName
:
'tenderStage'
,
value
:
''
,
placeholder
:
'项目类型'
,
options
:
[],
uid
:
this
.
getUid
()
}
,
{
type
:
4
,
fieldName
:
'projectCategory'
,
value
:
''
,
placeholder
:
'项目类型'
,
options
:
[]
}
,
{
type
:
3
,
fieldName
:
'keys'
,
value
:
''
,
placeholder
:
'输入关键词查询'
,
options
:
[],
uid
:
this
.
getUid
()
}
{
type
:
4
,
fieldName
:
'tenderStage'
,
value
:
''
,
placeholder
:
'招标阶段'
,
options
:
[]
}
,
{
type
:
3
,
fieldName
:
'keys'
,
value
:
''
,
placeholder
:
'输入关键词查询'
,
options
:
[]
}
],
],
//列表
//列表
tableLoading
:
false
,
tableLoading
:
false
,
...
@@ -70,82 +72,90 @@ export default {
...
@@ -70,82 +72,90 @@ export default {
this
.
handleQuery
();
this
.
handleQuery
();
}
,
}
,
methods
:
{
methods
:
{
async
handleOption
()
{
async
handleOption
(){
let
[
area
,
tender
]
=
await
Promise
.
all
([
let
[
area
,
tender
,
project
]
=
await
Promise
.
all
([
bidNoticeArea
({
cid
:
this
.
companyId
}
),
bidNoticeArea
({
cid
:
this
.
companyId
}
),
bidNoticeTenderStage
({
cid
:
this
.
companyId
}
)
bidNoticeTenderStage
({
cid
:
this
.
companyId
}
),
]);
bidNoticeProjectCategory
({
cid
:
this
.
companyId
}
),
if
(
area
.
code
==
200
)
{
])
if
(
area
.
code
==
200
){
let
region
=
area
.
data
.
map
(
item
=>
{
let
region
=
area
.
data
.
map
(
item
=>
{
let
province
=
{
label
:
item
.
province
+
'('
+
item
.
count
+
')'
,
value
:
item
.
provinceId
}
;
let
province
=
{
label
:
item
.
province
+
'('
+
item
.
count
+
')'
,
value
:
item
.
provinceId
}
if
(
item
.
citys
&&
item
.
citys
.
length
>
0
)
{
if
(
item
.
citys
&&
item
.
citys
.
length
>
0
)
{
let
city
=
[],
citem
=
{
}
;
let
city
=
[],
citem
=
{
}
for
(
let
i
=
0
;
i
<
item
.
citys
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
item
.
citys
.
length
;
i
++
)
{
citem
=
{
label
:
item
.
citys
[
i
].
city
,
value
:
item
.
citys
[
i
].
cityId
}
;
citem
=
{
label
:
item
.
citys
[
i
].
city
,
value
:
item
.
citys
[
i
].
cityId
}
if
(
item
.
citys
[
i
].
areas
&&
item
.
citys
[
i
].
areas
.
length
>
0
)
{
if
(
item
.
citys
[
i
].
areas
&&
item
.
citys
[
i
].
areas
.
length
>
0
)
{
let
area
=
[],
aitem
=
{
}
;
let
area
=
[],
aitem
=
{
}
for
(
let
j
=
0
;
j
<
item
.
citys
[
i
].
areas
.
length
;
j
++
)
{
for
(
let
j
=
0
;
j
<
item
.
citys
[
i
].
areas
.
length
;
j
++
)
{
aitem
=
{
label
:
item
.
citys
[
i
].
areas
[
j
].
area
,
value
:
item
.
citys
[
i
].
areas
[
j
].
areaId
}
;
aitem
=
{
label
:
item
.
citys
[
i
].
areas
[
j
].
area
,
value
:
item
.
citys
[
i
].
areas
[
j
].
areaId
}
area
.
push
(
aitem
)
;
area
.
push
(
aitem
)
citem
.
children
=
area
;
citem
.
children
=
area
}
}
}
}
city
.
push
(
citem
)
;
city
.
push
(
citem
)
}
}
city
.
length
>
0
?
province
.
children
=
city
:
''
;
city
.
length
>
0
?
province
.
children
=
city
:
''
}
}
return
province
;
return
province
}
)
;
}
)
this
.
setFormData
(
'province'
,
region
)
;
this
.
setFormData
(
'province'
,
region
)
}
}
if
(
tender
.
code
==
200
)
{
if
(
tender
.
code
==
200
)
{
let
tenderStage
=
tender
.
data
.
map
(
item
=>
{
let
tenderStage
=
tender
.
data
.
map
(
item
=>
{
let
it
=
{
name
:
item
.
tenderStage
+
'('
+
item
.
count
+
')'
,
value
:
item
.
tenderStage
}
;
let
it
=
{
name
:
item
.
tenderStage
+
'('
+
item
.
count
+
')'
,
value
:
item
.
tenderStage
}
return
it
;
return
it
}
);
}
)
this
.
setFormData
(
'tenderStage'
,
tenderStage
);
this
.
setFormData
(
'tenderStage'
,
tenderStage
)
}
if
(
project
.
code
==
200
){
let
projectCategory
=
project
.
data
.
map
(
item
=>
{
let
it
=
{
name
:
item
.
projectCategory
+
'('
+
item
.
count
+
')'
,
value
:
item
.
projectCategory
}
return
it
}
)
this
.
setFormData
(
'projectCategory'
,
projectCategory
)
}
}
}
,
}
,
async
handleQuery
(
params
)
{
async
handleQuery
(
params
)
{
this
.
tableLoading
=
true
;
this
.
tableLoading
=
true
let
param
=
this
.
getAreaList
(
params
||
this
.
queryParams
)
;
let
param
=
this
.
getAreaList
(
params
||
this
.
queryParams
)
let
res
=
await
bidNoticePage
(
param
)
;
let
res
=
await
bidNoticePage
(
param
)
this
.
tableLoading
=
false
;
this
.
tableLoading
=
false
if
(
res
.
code
==
200
)
{
if
(
res
.
code
==
200
)
{
this
.
isSkeleton
=
false
;
this
.
isSkeleton
=
false
;
this
.
tableData
=
res
.
rows
;
this
.
tableData
=
res
.
rows
}
}
this
.
tableDataTotal
=
res
.
total
;
this
.
tableDataTotal
=
res
.
total
}
,
}
,
getAreaList
(
params
)
{
getAreaList
(
params
){
if
(
params
.
province
&&
params
.
province
.
length
>
0
)
{
if
(
params
.
province
&&
params
.
province
.
length
>
0
)
{
let
arr
=
this
.
$refs
.
headForm
.
$refs
.
cascader
[
0
].
getCheckedNodes
()
;
let
arr
=
this
.
$refs
.
headForm
.
$refs
.
cascader
[
0
].
getCheckedNodes
()
let
provinceIds
=
[],
cityIds
=
[],
areaIds
=
[]
;
let
provinceIds
=
[],
cityIds
=
[],
areaIds
=
[]
for
(
var
i
in
arr
)
{
for
(
var
i
in
arr
)
{
if
(
arr
[
i
].
parent
)
{
if
(
arr
[
i
].
parent
)
{
if
(
!
arr
[
i
].
parent
.
checked
)
{
if
(
!
arr
[
i
].
parent
.
checked
)
{
if
(
arr
[
i
].
hasChildren
||
arr
[
i
].
level
==
2
)
{
if
(
arr
[
i
].
hasChildren
||
arr
[
i
].
level
==
2
)
{
cityIds
.
push
(
arr
[
i
].
value
)
;
cityIds
.
push
(
arr
[
i
].
value
)
}
else
{
}
else
{
areaIds
.
push
(
arr
[
i
].
value
)
;
areaIds
.
push
(
arr
[
i
].
value
)
}
}
}
}
}
else
{
}
else
{
provinceIds
.
push
(
arr
[
i
].
value
)
;
provinceIds
.
push
(
arr
[
i
].
value
)
}
}
}
}
delete
params
.
province
;
delete
params
.
province
provinceIds
.
length
>
0
?
params
.
provinceIds
=
provinceIds
:
''
;
provinceIds
.
length
>
0
?
params
.
provinceIds
=
provinceIds
:
''
cityIds
.
length
>
0
?
params
.
cityIds
=
cityIds
:
''
;
cityIds
.
length
>
0
?
params
.
cityIds
=
cityIds
:
''
areaIds
.
length
>
0
?
params
.
areaIds
=
areaIds
:
''
;
areaIds
.
length
>
0
?
params
.
areaIds
=
areaIds
:
''
}
}
return
params
;
return
params
}
}
}
}
}
}
<
/script
>
<
/script
>
<
style
lang
=
"scss"
scoped
>
<
style
lang
=
"scss"
scoped
>
.
detail
-
container
{
.
detail
-
container
{
background
:
#
ffffff
;
background
:
#
ffffff
;
border
-
radius
:
4
px
;
border
-
radius
:
4
px
;
padding
:
16
px
;
padding
:
16
px
;
...
...
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