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
e1bf9236
Commit
e1bf9236
authored
Jun 09, 2023
by
danfuman
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://192.168.60.201/root/dsk-operate-sys
parents
3a2e0c80
648c0e1d
Changes
23
Show whitespace changes
Inline
Side-by-side
Showing
23 changed files
with
1254 additions
and
68 deletions
+1254
-68
EnterpriseController.java
...java/com/dsk/web/controller/dsk/EnterpriseController.java
+2
-2
SpecialPurposeBondsDto.java
...main/java/com/dsk/common/dtos/SpecialPurposeBondsDto.java
+5
-0
SpecialPurposeBondsPageDto.java
.../java/com/dsk/common/dtos/SpecialPurposeBondsPageDto.java
+4
-0
enterpriseData.js
dsk-operate-ui/src/api/enterpriseData/enterpriseData.js
+17
-1
icol1.png
dsk-operate-ui/src/assets/images/project/icol1.png
+0
-0
icol2.png
dsk-operate-ui/src/assets/images/project/icol2.png
+0
-0
icol3.png
dsk-operate-ui/src/assets/images/project/icol3.png
+0
-0
icor1.png
dsk-operate-ui/src/assets/images/project/icor1.png
+0
-0
icor2.png
dsk-operate-ui/src/assets/images/project/icor2.png
+0
-0
icor3.png
dsk-operate-ui/src/assets/images/project/icor3.png
+0
-0
project.scss
dsk-operate-ui/src/assets/styles/project.scss
+7
-0
public.css
dsk-operate-ui/src/assets/styles/public.css
+24
-1
download.js
dsk-operate-ui/src/plugins/download.js
+2
-1
index.vue
dsk-operate-ui/src/views/custom/customList/index.vue
+11
-12
index.vue
...te-ui/src/views/enterpriseData/components/Owner/index.vue
+1093
-0
index.vue
dsk-operate-ui/src/views/enterpriseData/index.vue
+8
-7
batchImport.vue
...i/src/views/project/projectList/component/batchImport.vue
+6
-4
gjjl.vue
...erate-ui/src/views/project/projectList/component/gjjl.vue
+4
-1
gzdb.vue
...erate-ui/src/views/project/projectList/component/gzdb.vue
+8
-2
xmsl.vue
...erate-ui/src/views/project/projectList/component/xmsl.vue
+5
-5
zlwd.vue
...erate-ui/src/views/project/projectList/component/zlwd.vue
+0
-2
detail.vue
dsk-operate-ui/src/views/project/projectList/detail.vue
+50
-22
index.vue
dsk-operate-ui/src/views/project/projectList/index.vue
+8
-8
No files found.
dsk-admin/src/main/java/com/dsk/web/controller/dsk/EnterpriseController.java
View file @
e1bf9236
...
...
@@ -33,8 +33,8 @@ public class EnterpriseController {
return
enterpriseService
.
infoHeader
(
body
);
}
@ApiOperation
(
value
=
"企业统计信息"
)
@PostMapping
(
value
=
"statistic
(建设库)
"
)
@ApiOperation
(
value
=
"企业统计信息
(建设库)
"
)
@PostMapping
(
value
=
"statistic"
)
public
R
statistic
(
@RequestBody
@Valid
EnterpriseStatisticBody
vo
)
throws
Exception
{
return
enterpriseService
.
statistic
(
vo
);
}
...
...
dsk-common/src/main/java/com/dsk/common/dtos/SpecialPurposeBondsDto.java
View file @
e1bf9236
...
...
@@ -12,6 +12,11 @@ import lombok.Data;
@Data
public
class
SpecialPurposeBondsDto
{
/**
* 省Id
*/
private
Integer
provinceId
;
/**
* 项目类型
*/
...
...
dsk-common/src/main/java/com/dsk/common/dtos/SpecialPurposeBondsPageDto.java
View file @
e1bf9236
...
...
@@ -12,4 +12,8 @@ import lombok.Data;
*/
@Data
public
class
SpecialPurposeBondsPageDto
extends
BasePage
{
/**
* 省Id
*/
private
Integer
provinceId
;
}
dsk-operate-ui/src/api/enterpriseData/enterpriseData.js
View file @
e1bf9236
...
...
@@ -27,5 +27,21 @@ let regionWebList= function regionWebList(param) {
method
:
'get'
,
})
}
// 查甲方选项
let
uipGroupData
=
function
uipGroupData
(
param
)
{
return
request
({
url
:
'/enterprise/uipGroupData'
,
method
:
'post'
,
})
}
// 查甲方列表
let
uipSerach
=
function
uipSerach
(
param
)
{
return
request
({
url
:
'/enterprise/uipSerach'
,
method
:
'post'
,
data
:
param
})
}
export
default
{
aptitudeCode
,
personCert
,
searchDic
,
regionWebList
}
\ No newline at end of file
export
default
{
aptitudeCode
,
personCert
,
searchDic
,
regionWebList
,
uipGroupData
,
uipSerach
}
\ No newline at end of file
dsk-operate-ui/src/assets/images/project/icol1.png
0 → 100644
View file @
e1bf9236
247 Bytes
dsk-operate-ui/src/assets/images/project/icol2.png
0 → 100644
View file @
e1bf9236
246 Bytes
dsk-operate-ui/src/assets/images/project/icol3.png
0 → 100644
View file @
e1bf9236
241 Bytes
dsk-operate-ui/src/assets/images/project/icor1.png
0 → 100644
View file @
e1bf9236
238 Bytes
dsk-operate-ui/src/assets/images/project/icor2.png
0 → 100644
View file @
e1bf9236
238 Bytes
dsk-operate-ui/src/assets/images/project/icor3.png
0 → 100644
View file @
e1bf9236
238 Bytes
dsk-operate-ui/src/assets/styles/project.scss
View file @
e1bf9236
...
...
@@ -10,6 +10,11 @@
>
span
{
opacity
:
0
.4
;
&
:last-child
{
opacity
:
0
.8
}
&
.on
:hover
{
color
:
#0081FF
;
opacity
:
1
;
cursor
:
pointer
;
}
}
}
.overflows
{
...
...
@@ -71,6 +76,8 @@
.con
{
>
span
{
opacity
:
0
.8
;
float
:
left
;
margin-top
:
3px
;
}
.inputxt
{
display
:
inline-block
;
...
...
dsk-operate-ui/src/assets/styles/public.css
View file @
e1bf9236
...
...
@@ -416,7 +416,7 @@ select {
}
.toolbar-right-download
{
padding
:
8px
21
px
;
padding
:
6px
18
px
;
margin
:
0px
;
cursor
:
pointer
;
font-weight
:
400
;
...
...
@@ -425,6 +425,8 @@ select {
border-radius
:
5px
5px
5px
5px
;
border
:
1px
solid
#D9D9D9
;
text-align
:
center
;
font-size
:
14px
;
font-weight
:
400
;
}
.toolbar-right-download
.el-icon-arrow-down
{
margin-left
:
8px
;
...
...
@@ -692,3 +694,24 @@ select {
.select-list
.el-radio__input
{
display
:
none
;
}
.checkbox
{
display
:
flex
;
align-items
:
center
;
}
.checkbox
.checkbox-titel
{
font-size
:
14px
;
font-weight
:
400
;
color
:
rgba
(
35
,
35
,
35
,
0.8
);
margin-right
:
24px
;
}
.checkbox
.checkbox-content
{
display
:
flex
;
align-items
:
center
;
}
.checkbox
.el-checkbox__label
{
padding-left
:
8px
;
color
:
#232323
;
}
.checkbox
.checkbox-content
.checkbox-content-qx
{
margin-right
:
30px
;
}
\ No newline at end of file
dsk-operate-ui/src/plugins/download.js
View file @
e1bf9236
...
...
@@ -72,7 +72,8 @@ export default {
data
:
params
,
headers
:
{
'Authorization'
:
'Bearer '
+
getToken
()
}
}).
then
(
res
=>
{
const
blob
=
new
Blob
([
res
.
data
],
{
type
:
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
})
console
.
log
(
res
)
const
blob
=
new
Blob
([
res
.
data
],
{
type
:
'application/octet-stream/pdf/doc/xlsx/xls/docx'
})
this
.
saveAs
(
blob
,
decodeURI
(
res
.
headers
[
'download-filename'
]))
})
},
...
...
dsk-operate-ui/src/views/custom/customList/index.vue
View file @
e1bf9236
...
...
@@ -20,7 +20,7 @@
<div
class=
"btn"
@
click=
"handleCurrentChange(1)"
>
搜索
</div>
</div>
<div
class=
"dc"
>
<div
class=
"total"
>
共
126
条
</div>
<div
class=
"total"
>
共
{{
tableData
.
total
}}
条
</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>
...
...
@@ -47,8 +47,8 @@
<div
class=
"ps1"
>
<div
class=
"wordprimary ps2"
@
click=
"toDetail(scope.row.companyId,'')"
>
{{
scope
.
row
.
companyName
}}
</div>
<div
class=
"ps3"
>
<div
@
click=
"toDetail(scope.row
.companyId,1
)"
>
写跟进
<img
src=
"@/assets/images/project/edit_1.png"
></div>
<div
@
click=
"toDetail(scope.row
.companyId,2
)"
>
编辑信息
<img
src=
"@/assets/images/project/edit_2.png"
></div>
<div
@
click=
"toDetail(scope.row
,'gjjl'
)"
>
写跟进
<img
src=
"@/assets/images/project/edit_1.png"
></div>
<div
@
click=
"toDetail(scope.row
,'preference'
)"
>
编辑信息
<img
src=
"@/assets/images/project/edit_2.png"
></div>
</div>
</div>
</
template
>
...
...
@@ -99,7 +99,7 @@
label=
"注册资本金(万元)"
width=
"140"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
registerCapital
Str
||
'--'
}}
{{
scope
.
row
.
registerCapital
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
...
...
@@ -227,7 +227,7 @@
</el-dialog>
</el-card>
</div>
<batchimport
v-if=
"pldr"
:importtype=
"types"
@
cancels=
"
importCancel
"
@
getdatas=
"handleCurrentChange(1)"
></batchimport>
<batchimport
v-if=
"pldr"
:importtype=
"types"
@
cancels=
"
cancelimport
"
@
getdatas=
"handleCurrentChange(1)"
></batchimport>
</div>
</template>
...
...
@@ -304,7 +304,7 @@ export default {
pldrs
(){
this
.
pldr
=
true
},
importCancel
(){
cancelimport
(){
this
.
pldr
=
false
},
//获取客户列表
...
...
@@ -314,12 +314,11 @@ export default {
})
},
//跳转到客户详情
toDetail
(
id
,
type
){
if
(
type
==
1
){
//跟进
}
else
if
(
type
==
2
){
//编辑信息
}
toDetail
(
row
,
type
){
let
customerId
=
row
.
customerId
let
companyId
=
row
.
companyId
let
path
=
type
this
.
$router
.
push
({
path
:
'/party/party-a'
,
query
:{
customerId
:
customerId
,
companyId
:
companyId
,
path
:
path
}})
},
//翻页
handleCurrentChange
(
val
)
{
...
...
dsk-operate-ui/src/views/enterpriseData/components/Owner/index.vue
0 → 100644
View file @
e1bf9236
<
template
>
<div>
<div
class=
"content"
>
<div
class=
"content_item"
>
<div
class=
"label"
>
项目名称
</div>
<div
class=
"content_right item_ckquery_list"
>
<el-input
class=
"ename_input"
placeholder=
"请输入项目名称关键字"
v-model=
"keys"
@
input=
"projectNamebtn('keys',keys,'关键字:')"
>
<div
slot=
"append"
class=
"btn-search"
@
click=
""
>
搜索
</div>
</el-input>
</div>
</div>
<div
class=
"content_item"
>
<div
class=
"label"
>
基本信息
</div>
<div
class=
"content_right item_ckquery_list"
>
<div
class=
"select-popper"
>
<span
:class=
"
{color_text:jskBidQueryDto.provinceIds.length ||jskBidQueryDto.cityIds.length ||jskBidQueryDto.areaIds.length,}">
注册地区
{{
jskBidQueryDto
.
provinceIds
.
length
||
jskBidQueryDto
.
cityIds
.
length
||
jskBidQueryDto
.
areaIds
.
length
?
jskBidQueryDto
.
provinceIds
.
length
+
jskBidQueryDto
.
cityIds
.
length
+
jskBidQueryDto
.
areaIds
.
length
+
"项"
:
""
}}
<i
class=
"el-icon-caret-bottom"
></i>
</span>
<el-cascader
ref=
"address"
class=
"cascader-region"
v-model=
"addressType"
:options=
"addressList"
:props=
"props"
@
change=
"domicileChange"
collapse-tags
clearable
></el-cascader>
</div>
<div
class=
"checkbox"
>
<div
class=
"checkbox-titel"
>
行政等级
</div>
<div
class=
"checkbox-content"
>
<div
class=
"checkbox-content-qx"
>
<el-checkbox
v-model=
"checkuipExecutive"
@
change=
"checkuipExecutivebtn"
>
全部
</el-checkbox>
</div>
<el-checkbox-group
v-model=
"uipExecutiveText"
@
change=
"uipExecutiveLevelbtn"
>
<el-checkbox
v-for=
"item in uipExecutiveLevel"
:label=
"item"
:key=
"item"
>
{{
item
}}
</el-checkbox>
</el-checkbox-group>
</div>
</div>
</div>
</div>
<div
class=
"content_item"
>
<div
class=
"label"
style=
"margin-right: 12px;"
>
城投业务类型
</div>
<div
class=
"content_right "
>
<div
class=
"checkbox"
>
<div
class=
"checkbox-content"
>
<div
class=
"checkbox-content-qx"
>
<el-checkbox
v-model=
"checkuipBusiness"
@
change=
"checkuipBusinessbtn"
>
全部
</el-checkbox>
</div>
<el-checkbox-group
v-model=
"uipBusinessText"
@
change=
"uipBusinessTypebtn"
>
<el-checkbox
v-for=
"item in uipBusinessType"
:label=
"item"
:key=
"item"
>
{{
item
}}
</el-checkbox>
</el-checkbox-group>
</div>
</div>
</div>
</div>
<div
class=
"content_item"
>
<div
class=
"label"
>
主体评级
</div>
<div
class=
"content_right "
>
<div
class=
"checkbox"
>
<div
class=
"checkbox-content"
>
<div
class=
"checkbox-content-qx"
>
<el-checkbox
v-model=
"checkbratingSubject"
@
change=
"checkbratingSubjectbtn"
>
全部
</el-checkbox>
</div>
<el-checkbox-group
v-model=
"bratingSubjectText"
@
change=
"bratingSubjectLevelbtn"
>
<el-checkbox
v-for=
"item in bratingSubjectLevel"
:label=
"item"
:key=
"item"
>
{{
item
}}
</el-checkbox>
</el-checkbox-group>
</div>
</div>
</div>
</div>
<div
class=
"content_item"
>
<div
class=
"label"
>
股东背景
</div>
<div
class=
"content_right "
>
<div
class=
"checkbox"
>
<div
class=
"checkbox-content"
>
<div
class=
"checkbox-content-qx"
>
<el-checkbox
v-model=
"checkshareholder"
@
change=
"checkshareholderbtn"
>
全部
</el-checkbox>
</div>
<el-checkbox-group
v-model=
"shareholderText"
@
change=
"shareholderBgbtn"
>
<el-checkbox
v-for=
"item in shareholderBg"
:label=
"item"
:key=
"item"
>
{{
item
}}
</el-checkbox>
</el-checkbox-group>
</div>
</div>
</div>
</div>
<div
class=
"content_item"
>
<div
class=
"label"
>
股权关系
</div>
<div
class=
"content_right "
>
<div
class=
"checkbox"
>
<div
class=
"checkbox-content"
>
<div
class=
"checkbox-content-qx"
>
<el-checkbox
v-model=
"checkequityRelationship"
@
change=
"checkequityRelationshipbtn"
>
全部
</el-checkbox>
</div>
<el-checkbox-group
v-model=
"equityRelationshipText"
@
change=
"equityRelationshipbtn"
>
<el-checkbox
v-for=
"item in equityRelationship"
:label=
"item"
:key=
"item"
>
{{
item
}}
</el-checkbox>
</el-checkbox-group>
</div>
</div>
</div>
</div>
<div
class=
"content_item"
>
</div>
</div>
<div
class=
"bottomlist"
>
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title-left"
>
<p
class=
"title-left"
>
项目明细
</p>
<el-popover
v-model=
"fieldshow"
placement=
"bottom-start"
trigger=
"click"
popper-class=
"viewlist-el-popover"
>
<ul
class=
"pup_list"
>
<li
v-for=
"(itme,i) in fieldOptions"
:class=
"itme.status?'active':''"
@
click=
"handsequencingList(i)"
:key=
"i"
>
{{
itme
.
value
}}
</li>
</ul>
<span
slot=
"reference"
class=
"toolbar-right-download"
>
{{
fieldText
}}
<i
class=
"el-icon-arrow-down"
:style=
"
{transform:fieldshow?'rotate(180deg)':''}">
</i>
</span>
</el-popover>
</div>
<div
class=
"title-right"
>
<p>
共有
{{
total
}}
条
</p>
<p>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<span>
导出EXCEL
</span>
</p>
</div>
</div>
<div
class=
" table-item-jf"
>
<el-table
:data=
"tableData"
:header-cell-style=
"
{ background:'#F0F3FA'}" element-loading-text="Loading" border highlight-current-row>
<el-table-column
label=
"序号"
width=
"60"
>
<template
slot-scope=
"scope"
>
1
</
template
>
</el-table-column>
<el-table-column
label=
"公司名称"
width=
"430"
>
<
template
slot-scope=
"scope"
>
<router-link
:to=
"'/radar/bxprozbgg/details/'+ 1"
tag=
"a"
class=
"list-titel-a"
>
绿色节能型压缩机基础件、汽车零配件新建项目 (芜湖旭日机械制造有限公司)
</router-link>
</
template
>
</el-table-column>
<el-table-column
label=
"区域"
width=
"60"
>
</el-table-column>
<el-table-column
label=
"招标数量"
width=
"72"
>
<
template
slot-scope=
"scope"
>
--
</
template
>
</el-table-column>
<el-table-column
label=
"城投拿地"
width=
"72"
>
<
template
slot-scope=
"scope"
>
28
</
template
>
</el-table-column>
<el-table-column
label=
"供应商"
width=
"72"
>
<
template
slot-scope=
"scope"
>
28
</
template
>
</el-table-column>
<el-table-column
label=
"主体评级"
width=
"72"
>
<
template
slot-scope=
"scope"
>
28
</
template
>
</el-table-column>
<el-table-column
label=
"债券余额(亿元)"
width=
"124"
>
<
template
slot-scope=
"scope"
>
28
</
template
>
</el-table-column>
<el-table-column
label=
"行政级别"
width=
"72"
>
<
template
slot-scope=
"scope"
>
28
</
template
>
</el-table-column>
<el-table-column
label=
"股东背景"
width=
"84"
>
<
template
slot-scope=
"scope"
>
28
</
template
>
</el-table-column>
<el-table-column
label=
"股权关系"
width=
"84"
>
<
template
slot-scope=
"scope"
>
28
</
template
>
</el-table-column>
<el-table-column
label=
"平台重要性"
width=
"84"
>
<
template
slot-scope=
"scope"
>
28
</
template
>
</el-table-column>
<el-table-column
label=
"城投业务类型"
width=
"94"
>
<
template
slot-scope=
"scope"
>
28
</
template
>
</el-table-column>
<el-table-column
label=
"实控人"
width=
"290"
>
<
template
slot-scope=
"scope"
>
28
</
template
>
</el-table-column>
<el-table-column
label=
"最新报告期"
width=
"92"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"总资产(亿元)"
width=
"112"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"归母净资产(亿元)"
width=
"132"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"货币资金(亿元)"
width=
"120"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"土地资产(亿元)"
width=
"120"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"受限资产(亿元)"
width=
"120"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"应收账款(亿元)"
width=
"120"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"公益性&准公益性主营占比"
width=
"168"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"政府补助(亿元)"
width=
"120"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"专项应付款(亿元)"
width=
"132"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"营业收入(亿元)"
width=
"120"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"归母净利润(亿元)"
width=
"132"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"净资产收益率"
width=
"96"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"经营现金流量净额(亿元)"
width=
"168"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"筹资现金流量净额(亿元)"
width=
"168"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"投资现金流量净额(亿元)"
width=
"168"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"总负债 (亿元)"
width=
"112"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"有息债务 (亿元)"
width=
"124"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"有息债务/总负债"
width=
"114"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"综合融资成本"
width=
"96"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"现金比率"
width=
"72"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"现金流量比率"
width=
"96"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"授信余额(亿元)"
width=
"124"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"授信余额/全部债务"
width=
"126"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"EBITDA保障倍数"
width=
"116"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"私募债余额占比"
width=
"108"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"一年内到期债权占比"
width=
"132"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"债券余额/有息债务"
width=
"132"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"借款余额(亿元)"
width=
"124"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"借款/有息债务"
width=
"102"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"非标余额(亿元)"
width=
"124"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"非标余额/有息债务"
width=
"132"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"对外担保金额(亿元)"
width=
"144"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"对外担保比例"
width=
"96"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"所属开发区"
width=
"84"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
<el-table-column
label=
"开发区类别"
width=
"84"
>
<
template
slot-scope=
"scope"
>
2021-12-13
</
template
>
</el-table-column>
</el-table>
</div>
<div
class=
"pagination clearfix"
v-show=
"total>0"
>
<el-pagination
background
:page-size=
"pageSize"
:current-page=
"pageNum"
@
current-change=
"handleCurrentChange"
layout=
"prev, pager, next"
:total=
"total"
>
</el-pagination>
</div>
</div>
</div>
</template>
<
script
>
import
jsk_data
from
'../../../../../public/jsk.json'
;
import
api
from
'@/api/enterpriseData/enterpriseData.js'
;
export
default
{
name
:
'Owner'
,
data
()
{
return
{
keys
:
''
,
addressList
:
[],
addressType
:
[],
props
:
{
multiple
:
true
,
expandTrigger
:
"hover"
,
value
:
"id"
,
},
pageSize
:
20
,
jskBidQueryDto
:
{
provinceIds
:
[],
cityIds
:
[],
areaIds
:
[]
},
domicile
:
[],
// 行政等级
uipExecutiveLevel
:[],
uipExecutiveText
:[],
checkuipExecutive
:
true
,
// 城投业务类型
uipBusinessType
:[],
uipBusinessText
:[],
checkuipBusiness
:
true
,
// 主体信用等级
bratingSubjectLevel
:[],
bratingSubjectText
:[],
checkbratingSubject
:
true
,
// 股东背景
shareholderBg
:[],
shareholderText
:[],
checkshareholder
:
true
,
// 股权关系
equityRelationship
:[],
equityRelationshipText
:[],
checkequityRelationship
:
true
,
pageFlag
:
true
,
conditionsArr
:
[],
fieldshow
:
false
,
fieldText
:
'默认排序'
,
sort
:
'3'
,
//查询结果排序方式
fieldOptions
:
[{
key
:
"3"
,
value
:
"默认排序"
,
status
:
true
,
},
{
key
:
"3"
,
value
:
"拟建项目从多少"
,
status
:
false
,
},
{
key
:
"7"
,
value
:
"土地数量从多到少"
,
status
:
false
,
},
],
tableData
:[],
total
:
6000
,
pageNum
:
1
,
pageSize
:
20
};
},
computed
:
{
checkJskBidQueryDto
()
{
let
arr
=
[];
let
flag
=
false
;
let
data
=
{};
if
(
this
.
domicile
.
length
>
0
)
{
data
=
{
title
:
"行政区划:"
,
keyid
:
"domicile"
,
value
:
this
.
domicile
.
join
(
","
),
key
:
"domicile"
}
flag
=
true
;
arr
.
push
(
data
)
}
this
.
conditionsArr
=
arr
return
flag
;
},
},
created
()
{
api
.
uipGroupData
().
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
// 行政等级
this
.
uipExecutiveLevel
=
res
.
data
.
uipExecutiveLevel
,
// 城投业务类型
this
.
uipBusinessType
=
res
.
data
.
uipBusinessType
,
// 主体信用等级
this
.
bratingSubjectLevel
=
res
.
data
.
bratingSubjectLevel
,
// 股东背景
this
.
shareholderBg
=
res
.
data
.
shareholderBg
,
// 股权关系
this
.
equityRelationship
=
res
.
data
.
equityRelationship
;
}
}).
catch
(
error
=>
{
});
},
mounted
()
{
this
.
addressListfn
();
},
methods
:
{
domicileChange
()
{
let
arr
=
this
.
$refs
.
address
.
getCheckedNodes
();
let
provinceIds
=
[],
cityIds
=
[],
areaIds
=
[];
this
.
domicile
=
[];
for
(
var
i
in
arr
)
{
if
(
arr
[
i
].
parent
)
{
if
(
!
arr
[
i
].
parent
.
checked
)
{
arr
[
i
].
hasChildren
&&
cityIds
.
push
(
arr
[
i
].
value
);
arr
[
i
].
hasChildren
&&
this
.
domicile
.
push
(
arr
[
i
].
label
);
!
arr
[
i
].
hasChildren
&&
areaIds
.
push
(
arr
[
i
].
value
);
!
arr
[
i
].
hasChildren
&&
this
.
domicile
.
push
(
arr
[
i
].
label
);
}
}
else
{
provinceIds
.
push
(
arr
[
i
].
value
);
this
.
domicile
.
push
(
arr
[
i
].
label
);
}
}
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
landMarketDto
));
obj
.
provinceIds
=
provinceIds
;
obj
.
cityIds
=
cityIds
;
obj
.
areaIds
=
areaIds
;
this
.
landMarketDto
=
obj
;
},
addressListfn
()
{
var
str
=
[];
for
(
let
x
=
0
;
x
<
3
;
x
++
)
{
for
(
let
i
=
0
;
i
<
jsk_data
.
length
;
i
++
)
{
if
(
jsk_data
[
i
].
regionLevel
==
x
+
1
&&
x
+
1
==
1
)
{
str
.
push
({
id
:
jsk_data
[
i
].
id
,
label
:
jsk_data
[
i
].
regionName
,
short
:
jsk_data
[
i
].
short
,
value
:
jsk_data
[
i
].
parentId
,
children
:
jsk_data
[
i
].
id
==
900000
?
undefined
:[],
});
}
else
if
(
jsk_data
[
i
].
regionLevel
==
x
+
1
&&
x
+
1
==
2
&&
str
)
{
for
(
let
j
=
0
;
j
<
str
.
length
;
j
++
)
{
if
(
str
[
j
].
id
==
jsk_data
[
i
].
parentId
)
{
str
[
j
].
children
.
push
({
id
:
jsk_data
[
i
].
id
,
label
:
jsk_data
[
i
].
regionName
,
short
:
jsk_data
[
i
].
short
,
value
:
jsk_data
[
i
].
parentId
,
children
:
[],
});
}
}
}
else
if
(
jsk_data
[
i
].
regionLevel
==
x
+
1
&&
x
+
1
==
3
)
{
for
(
let
j
=
0
;
j
<
str
.
length
;
j
++
)
{
if
(
str
[
j
].
children
){
for
(
let
k
=
0
;
k
<
str
[
j
].
children
.
length
;
k
++
)
{
if
(
str
[
j
].
children
[
k
].
id
==
jsk_data
[
i
].
parentId
)
{
str
[
j
].
children
[
k
].
children
.
push
({
id
:
jsk_data
[
i
].
id
,
label
:
jsk_data
[
i
].
regionName
,
short
:
jsk_data
[
i
].
short
,
value
:
jsk_data
[
i
].
parentId
,
});
}
}
}
}
}
}
}
this
.
addressList
=
str
;
},
reset
()
{
Object
.
assign
(
this
.
$data
,
this
.
$options
.
data
.
call
(
this
));
//重置data
this
.
init
();
},
init
(){
// this.search();
this
.
addressListfn
();
},
checkuipExecutivebtn
(
val
){
if
(
val
){
this
.
uipExecutiveText
=
[];
}
},
uipExecutiveLevelbtn
(
val
){
if
(
val
.
length
>
0
){
this
.
checkuipExecutive
=
false
;
}
else
if
(
val
.
length
==
0
){
this
.
checkuipExecutive
=
true
;
}
this
.
search
();
},
checkuipBusinessbtn
(
val
){
if
(
val
){
this
.
uipBusinessText
=
[];
}
this
.
search
();
},
uipBusinessTypebtn
(
val
){
if
(
val
.
length
>
0
){
this
.
checkuipBusiness
=
false
;
}
else
if
(
val
.
length
==
0
){
this
.
checkuipBusiness
=
true
;
}
this
.
search
();
},
checkbratingSubjectbtn
(
val
){
if
(
val
){
this
.
bratingSubjectText
=
[];
}
this
.
search
();
},
bratingSubjectLevelbtn
(
val
){
if
(
val
.
length
>
0
){
this
.
checkbratingSubject
=
false
;
}
else
if
(
val
.
length
==
0
){
this
.
checkbratingSubject
=
true
;
}
this
.
search
();
},
checkshareholderbtn
(
val
){
if
(
val
){
this
.
shareholderText
=
[];
}
this
.
search
();
},
shareholderBgbtn
(
val
){
if
(
val
.
length
>
0
){
this
.
checkshareholder
=
false
;
}
else
if
(
val
.
length
==
0
){
this
.
checkshareholder
=
true
;
}
this
.
search
();
},
checkequityRelationshipbtn
(
val
){
if
(
val
){
this
.
equityRelationshipText
=
[];
}
this
.
search
();
},
equityRelationshipbtn
(
val
){
if
(
val
.
length
>
0
){
this
.
checkequityRelationship
=
false
;
}
else
if
(
val
.
length
==
0
){
this
.
checkequityRelationship
=
true
;
}
this
.
search
();
},
handsequencingList
(
index
)
{
this
.
fieldshow
=
false
;
this
.
sort
=
this
.
fieldOptions
[
index
].
key
;
for
(
let
i
=
0
;
i
<
this
.
fieldOptions
.
length
;
i
++
)
{
this
.
fieldOptions
[
i
].
status
=
false
;
}
this
.
fieldText
=
this
.
fieldOptions
[
index
].
value
;
this
.
fieldOptions
[
index
].
status
=
true
;
this
.
search
();
},
handleCurrentChange
(
pageNum
)
{
this
.
pageNum
=
pageNum
;
this
.
search
(
pageNum
,
this
.
pageSize
);
},
handleSizeChange
(
pageSize
)
{
this
.
pageSize
=
pageSize
;
this
.
search
(
this
.
pageNum
,
pageSize
);
},
reloadPage
()
{
this
.
pageFlag
=
false
;
this
.
$nextTick
(()
=>
{
this
.
pageFlag
=
true
;
});
},
search
(
pageNum
,
pageSize
,
exportFlag
)
{
if
(
!
pageNum
)
{
this
.
pageNum
=
1
;
}
if
(
!
pageSize
)
{
this
.
pageSize
=
20
;
}
if
(
!
pageNum
&&
!
pageSize
)
{
this
.
reloadPage
();
}
let
params
=
{
pageNum
:
this
.
pageNum
,
pageSize
:
this
.
pageSize
,
sort
:
this
.
sort
,
};
var
data
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
jskBidQueryDto
));
if
(
this
.
keys
){
params
[
'keys'
]
=
this
.
keys
;
}
else
{
delete
params
.
keys
}
if
(
data
.
provinceIds
.
length
>
0
){
params
[
'provinceIds'
]
=
data
.
provinceIds
;
}
else
{
delete
params
.
provinceIds
}
if
(
data
.
cityIds
.
length
>
0
){
params
[
'cityIds'
]
=
data
.
provinceIds
;
}
else
{
delete
params
.
cityIds
}
if
(
data
.
areaIds
.
length
>
0
){
params
[
'areaIds'
]
=
data
.
areaIds
;
}
else
{
delete
params
.
areaIds
}
if
(
this
.
uipExecutiveText
.
length
>
0
){
params
[
'uipExecutiveLevel'
]
=
this
.
uipExecutiveText
;
}
else
{
delete
params
.
uipExecutiveLevel
}
if
(
this
.
uipBusinessText
.
length
>
0
){
params
[
'uipBusinessType'
]
=
this
.
uipBusinessText
;
}
else
{
delete
params
.
uipBusinessType
}
if
(
this
.
bratingSubjectText
.
length
>
0
){
params
[
'bratingSubjectLevel'
]
=
this
.
bratingSubjectText
;
}
else
{
delete
params
.
bratingSubjectLevel
}
if
(
this
.
shareholderText
.
length
>
0
){
params
[
'shareholderBg'
]
=
this
.
shareholderText
;
}
else
{
delete
params
.
shareholderBg
}
if
(
this
.
equityRelationshipText
.
length
>
0
){
params
[
'equityRelationship'
]
=
this
.
equityRelationshipText
;
}
else
{
delete
params
.
equityRelationship
}
api
.
uipSerach
(
params
).
then
(
res
=>
{
console
.
log
(
res
)
if
(
res
.
code
==
200
)
{
// 行政等级
}
}).
catch
(
error
=>
{
});
},
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
.content
{
padding
:
0px
16px
;
border-radius
:
4px
4px
4px
4px
;
background
:
#FFFFFF
;
.content_item
{
padding-top
:
24px
;
display
:
flex
;
align-items
:
center
;
.label
{
width
:
84px
;
font-size
:
14px
;
font-weight
:
400
;
color
:
rgba
(
35
,
35
,
35
,
0
.8
);
}
.content_right
{
.ename_input
{
width
:
640px
;
margin-right
:
20px
;
::v-deep
.el-input-group__append
{
cursor
:
pointer
;
.btn-search
{
color
:
#0081ff
;
}
}
}
.land_ipt_470
{
width
:
640px
;
}
}
.item_ckquery_list
{
display
:
flex
;
align-items
:
center
;
.qualifications-tab
{
margin-right
:
4px
;
border
:
1px
solid
#e0e0e0
;
padding
:
2px
3px
;
border-radius
:
2px
;
height
:
34px
;
margin-top
:
1px
;
span
{
background
:
#fff
;
display
:
inline-block
;
cursor
:
pointer
;
float
:
left
;
border-radius
:
2px
;
padding
:
3px
8px
;
margin-top
:
0
.5px
;
}
.action
{
color
:
#ffffff
;
background
:
#0081ff
;
}
}
.ckquery_list_right
{
width
:
670px
;
}
}
.item_ckquery_list
.el-input__icon
{
position
:
relative
;
top
:
1px
;
}
.ckquery_list_right
{
width
:
640px
;
}
.register_count_ipt
{
margin-left
:
0px
;
}
.register_count_ipt
.el-input__inner
{
width
:
174px
;
}
::v-deep
.el-input-group__prepend
{
padding
:
0
8px
;
}
.content-projecttype
{
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
.projecttype
{
font-weight
:
400
;
color
:
#232323
;
padding
:
1px
5px
;
margin-right
:
4px
;
cursor
:
pointer
;
border-radius
:
3px
3px
3px
3px
;
font-size
:
14px
;
}
.projecttype
:first-child
{
padding-left
:
0px
;
}
.projecttype
:hover
{
background
:
#F3F4F5
;
padding
:
1px
5px
;
}
.activetype
{
background
:
#F3F4F5
;
padding
:
1px
5px
!
important
;
}
}
}
.content_item_padding0
{
padding
:
0
;
}
}
.bottomlist
{
width
:
100%
;
background-color
:
#FFFFFF
;
border-radius
:
4px
4px
4px
4px
;
.bottomlist-title
{
display
:
flex
;
justify-content
:
space-between
;
align-items
:
center
;
margin-top
:
12px
;
padding
:
16px
;
.title-right
{
display
:
flex
;
align-items
:
center
;
p
:first-child
{
font-size
:
12px
;
font-weight
:
400
;
color
:
#3D3D3D
;
margin-right
:
10px
;
}
p
:last-child
{
display
:
flex
;
align-items
:
center
;
font-size
:
14px
;
font-weight
:
400
;
color
:
rgba
(
35
,
35
,
35
,
0
.8
);
}
img
{
width
:
18px
;
height
:
18px
;
}
}
}
.bottomlist-title-left
{
display
:
inline-flex
;;
align-items
:
center
;
.title-left
{
border-left
:
2px
solid
#445781
;
padding-left
:
8px
;
padding-right
:
32px
;
font-size
:
16px
;
height
:
16px
;
line-height
:
16px
;
font-weight
:
bold
;
color
:
#232323
;
}
}
.bottomlist-content
{
padding-bottom
:
0px
;
}
.bottomlist-list
{
padding
:
16px
;
font-size
:
14px
;
border-bottom
:
1px
solid
#EFEFEF
;
padding-bottom
:
14px
;
.list-titel
{
font-size
:
16px
;
font-weight
:
700
;
color
:
#3D3D3D
;
line-height
:
19px
;
.list-titel-a
{
text-decoration
:
none
;
color
:
#3D3D3D
;
}
a
:hover
,
a
:visited
,
a
:link
,
a
:active
{
color
:
#3D3D3D
;
}
}
.content-label
{
margin-top
:
12px
;
.list-label
{
background
:
#F3F3FF
;
color
:
#8491E8
;
border-radius
:
1px
1px
1px
1px
;
padding
:
3px
7px
;
font-size
:
12px
;
}
}
.list-content
{
margin-top
:
8px
;
display
:
flex
;
justify-content
:
start
;
align-items
:
center
;
.list-content-text
{
margin-top
:
7px
;
display
:
flex
;
justify-content
:
start
;
align-items
:
center
;
margin-right
:
27px
;
font-size
:
14px
;
span
:first-child
{
font-weight
:
400
;
color
:
rgba
(
35
,
35
,
35
,
0
.4
);
line-height
:
15px
}
span
:last-child
{
font-weight
:
400
;
color
:
rgba
(
35
,
35
,
35
,
0
.8
);
line-height
:
15px
}
.blue
{
color
:
#0081FF
!
important
;
cursor
:
pointer
;
}
}
}
.list-addree
{
width
:
auto
;
background
:
#F3F4F5
;
display
:
inline-flex
;
margin-top
:
7px
;
.list-content-text
{
margin-top
:
0px
;
span
{
line-height
:
30px
!
important
;
}
}
img
{
width
:
14px
;
margin
:
0
8px
;
}
}
}
.bottomlist-list
:hover
{
background
:
#F6F9FC
;
cursor
:
pointer
;
}
.table-item-jf
{
padding
:
0px
16px
;
.list-titel-a
{
color
:
#0081FF
;
}
::v-deep
.el-table--border
.el-table__cell
:first-child
.cell
{
padding
:
0px
8px
;
padding-left
:
12px
;
font-size
:
12px
;
font-weight
:
400
;
}
::v-deep
.el-table
th
.el-table__cell
>
.cell
{
padding
:
0px
8px
;
padding-left
:
12px
;
font-size
:
12px
;
font-weight
:
400
;
}
::v-deep
.el-table
th
.el-table__cell.is-leaf
,
::v-deep
.el-table
td
.el-table__cell
{
border-bottom
:
1px
solid
#E6EAF1
;
}
::v-deep
.el-table--border
.el-table__cell
{
border-right
:
1px
solid
#E6EAF1
;
}
}
.pagination
{
padding
:
14px
;
.el-pagination
{
float
:
right
;
}
}
}
</
style
>
dsk-operate-ui/src/views/enterpriseData/index.vue
View file @
e1bf9236
...
...
@@ -13,8 +13,8 @@
</div>
</div>
</div>
<!--
企业专项债
-->
<
!--
<debtProject
v-if=
"personnelHerf=='debtProject'"
/>
--
>
<!--
查业主单位
-->
<
Owner
v-if=
"personnelHerf=='Owner'"
/
>
<!-- 查企业 -->
<SearchEnterprise
v-if=
"personnelHerf=='SearchEnterprise'"
/>
...
...
@@ -25,28 +25,29 @@
</
template
>
<
script
>
import
SearchEnterprise
from
"./components/SearchEnterprise/index.vue"
;
import
Owner
from
"./components/Owner/index.vue"
;
import
"@/assets/styles/public.css"
;
export
default
{
name
:
'enterpriseData'
,
components
:
{
SearchEnterprise
},
components
:
{
SearchEnterprise
,
Owner
},
data
()
{
return
{
// tablist
personnelList
:
[{
key
:
'
1
'
,
status
:
fals
e
,
key
:
'
Owner
'
,
status
:
tru
e
,
value
:
'查业主单位'
,
},
{
key
:
'SearchEnterprise'
,
status
:
tru
e
,
status
:
fals
e
,
value
:
'查建筑企业'
,
},
],
personnelHerf
:
'
SearchEnterprise
'
personnelHerf
:
'
Owner
'
}
},
created
()
{},
...
...
dsk-operate-ui/src/views/project/projectList/component/batchImport.vue
View file @
e1bf9236
...
...
@@ -42,7 +42,7 @@
<div
class=
"p3"
>
<img
src=
"@/assets/images/project/success.png"
>
查询成功
</div>
<div
class=
"p2"
>
成功导入
客户
信息
</div>
<div
class=
"p2"
>
成功导入
{{
titletext
}}
信息
</div>
<div
class=
"btns"
>
<div
class=
"btn btn_primary h32"
@
click=
"getmsg"
>
查看
</div>
</div>
...
...
@@ -79,7 +79,7 @@
console
.
log
(
this
.
importtype
)
if
(
this
.
importtype
==
'project'
){
//项目管理
this
.
downloadhref
=
'/file/projectTemplate.xlsx'
this
.
titletext
=
'
项目
'
this
.
titletext
=
'
商机
'
this
.
action
=
process
.
env
.
VUE_APP_BASE_API
+
'/business/info/upload'
}
if
(
this
.
importtype
==
'custom'
){
//客户管理
...
...
@@ -101,8 +101,10 @@
onSuccess
(
res
,
file
,
fileList
)
{
if
(
res
.
code
==
200
)
this
.
addsuccess
=
true
else
this
.
$message
.
error
({
message
:
res
.
msg
,
showClose
:
true
})
else
{
this
.
importCancel
()
this
.
$message
.
error
({
message
:
res
.
msg
,
showClose
:
true
})
}
},
downloadClick
()
{
...
...
dsk-operate-ui/src/views/project/projectList/component/gjjl.vue
View file @
e1bf9236
...
...
@@ -65,7 +65,7 @@
<span
v-if=
"showtype == 'gjdt' && item.companyName != ''"
>
关联企业:{{item.companyName}}
</span>
<span
v-if=
"item.position"
>
职位:{{item.position}}
</span>
<span
v-if=
"item.createTime"
>
拜访时间:{{item.createTime.slice(0, 10)}}
</span>
<span
v-if=
"item.nextVisitTime"
>
下次拜访时间:{{item.
create
Time.slice(0, 10)}}
</span>
<span
v-if=
"item.nextVisitTime"
>
下次拜访时间:{{item.
nextVisit
Time.slice(0, 10)}}
</span>
</div>
</div>
</div>
...
...
@@ -342,8 +342,11 @@
let
day
=
times
.
getDate
()
day
=
day
<
10
?
"0"
+
day
:
day
let
hour
=
times
.
getHours
()
hour
=
hour
<
10
?
"0"
+
hour
:
hour
let
minute
=
times
.
getMinutes
()
minute
=
minute
<
10
?
"0"
+
minute
:
minute
let
second
=
times
.
getSeconds
()
second
=
second
<
10
?
"0"
+
second
:
second
return
year
+
'-'
+
month
+
'-'
+
day
+
' '
+
hour
+
":"
+
minute
+
":"
+
second
}
}
...
...
dsk-operate-ui/src/views/project/projectList/component/gzdb.vue
View file @
e1bf9236
...
...
@@ -28,7 +28,7 @@
</div>
</div>
</div>
<div
class=
"tasktitle"
><strong>
我的任务
</strong><span
@
click=
"getYQ"
>
4
条已逾期
</span>
<!--
<span
class=
"on"
>
4条已逾期
</span>
-->
</div>
<div
class=
"tasktitle"
><strong>
我的任务
</strong><span
@
click=
"getYQ"
>
{{
yqnum
}}
条已逾期
</span>
<!--
<span
class=
"on"
>
4条已逾期
</span>
-->
</div>
<div
class=
"tasklist"
v-for=
"(item,index) in datalist.rows"
>
<div
class=
"task_name"
>
{{
item
.
task
}}
</div>
<div
class=
"task_con"
><span>
发起时间:
{{
item
.
createTime
}}
</span><span
v-if=
"item.target"
>
关联客户:
<font
class=
"wordprimary"
>
{{
item
.
target
}}
</font></span><span
v-if=
"item.finishTime"
>
完成时间:
{{
item
.
finishTime
}}
</span></div>
...
...
@@ -39,7 +39,6 @@
<i
class=
"el-icon-caret-bottom"
></i>
</span>
<el-select
placeholder=
"请选择"
v-model=
"item.state"
class=
"select-multiple"
@
change=
"changes(item.id,$event)"
>
<el-option
label=
"未完成"
value=
"0"
></el-option>
<el-option
label=
"未完成"
value=
"1"
></el-option>
<el-option
label=
"已完成"
value=
"2"
></el-option>
</el-select>
...
...
@@ -94,6 +93,7 @@
state
:
null
,
},
datalist
:[],
yqnum
:
0
,
//已逾期数量
}
},
created
(){
...
...
@@ -117,6 +117,12 @@
getList
(){
getGZDB
(
this
.
searchPram
).
then
(
result
=>
{
this
.
datalist
=
result
.
code
==
200
?
result
:[]
let
num
=
0
this
.
datalist
.
rows
.
forEach
(
item
=>
{
if
(
item
.
state
==
0
)
num
++
;
})
this
.
yqnum
=
num
})
},
handleCurrentChange
(
val
){
...
...
dsk-operate-ui/src/views/project/projectList/component/xmsl.vue
View file @
e1bf9236
...
...
@@ -110,7 +110,7 @@
<div
class=
"flex"
v-if=
"nowedit == 6"
>
<el-input
placeholder=
"待添加"
v-model=
"xmsldata.supervisorPhone"
></el-input>
<div
class=
"flex"
>
<div
class=
"btnsmall btn_primary h28"
@
click=
"isphone(1,
$event
)"
style=
"width: 56px"
>
确定
</div>
<div
class=
"btnsmall btn_primary h28"
@
click=
"isphone(1,
xmsldata.supervisorPhone
)"
style=
"width: 56px"
>
确定
</div>
<div
class=
"cancels h28"
@
click=
"nowedit = -1"
style=
""
>
取消
</div>
</div>
</div>
...
...
@@ -123,7 +123,7 @@
<div
class=
"flex"
v-if=
"nowedit == 7"
>
<el-input
placeholder=
"待添加"
v-model=
"xmsldata.constructionPhone"
></el-input>
<div
class=
"flex"
>
<div
class=
"btnsmall btn_primary h28"
@
click=
"isphone(2,
$event
)"
style=
"width: 56px"
>
确定
</div>
<div
class=
"btnsmall btn_primary h28"
@
click=
"isphone(2,
xmsldata.constructionPhone
)"
style=
"width: 56px"
>
确定
</div>
<div
class=
"cancels h28"
@
click=
"nowedit = -1"
style=
""
>
取消
</div>
</div>
</div>
...
...
@@ -214,16 +214,16 @@
},
//验证电话号码
isphone
(
type
,
value
){
var
regPartton
=
/1
[
3-
8
]
+
\d{9}
/
;
var
regPartton
=
/1
[
3-
9
]
+
\d{9}
/
;
var
regPartton1
=
/^
(
0
[
0-9
]{2,3}[\-]?[
2-9
][
0-9
]{6,7}[\-]?[
0-9
]?)
$/
;
if
(
!
regPartton
.
test
(
value
)
&&
!
regPartton1
.
test
(
value
))
{
this
.
$message
.
error
(
"请输入正确的电话"
);
}
else
{
if
(
type
==
1
)
{
this
.
editXMSL
({
supervisorPhone
:
this
.
xmsldata
.
supervisorPhon
e
})
this
.
editXMSL
({
supervisorPhone
:
valu
e
})
}
if
(
type
==
2
)
{
this
.
editXMSL
({
constructionPhone
:
this
.
xmsldata
.
constructionPhon
e
})
this
.
editXMSL
({
constructionPhone
:
valu
e
})
}
}
},
...
...
dsk-operate-ui/src/views/project/projectList/component/zlwd.vue
View file @
e1bf9236
...
...
@@ -198,9 +198,7 @@
},
downnlod
(
row
){
let
param
=
{
filePath
:
row
.
filePath
}
// this.$download.saveAs(row.filePath,row.name);
this
.
$download
.
exportByPost
(
'/business/file/download'
,
param
);
// // this.$download()
// let a = document.createElement("a");
// a.setAttribute("href", row.filePath);
// a.setAttribute("download", row.name);
...
...
dsk-operate-ui/src/views/project/projectList/detail.vue
View file @
e1bf9236
...
...
@@ -3,9 +3,9 @@
<div
class=
"miantitle"
>
<template
v-if=
"!detailId"
>
<span>
项目管理
</span>
<span>
/ 商机列表
</span>
<span
class=
"on"
@
click=
"tolist"
>
/ 商机列表
</span>
</
template
>
<span
v-else
@
click=
"cooperateList"
>
合作情况
</span>
<span
class=
"on"
v-else
@
click=
"cooperateList"
>
合作情况
</span>
<span>
/ 项目详情
</span>
</div>
<div
class=
"app-container"
v-if=
"ProjectData"
>
...
...
@@ -89,11 +89,10 @@
</div>
</div>
<div
class=
"schedule"
>
<div
class=
"child"
v-for=
"(item,index) in projectStage"
@
mouseover=
"hover(item.dictValue)"
@
mouseleave=
"hover(-1)"
@
click=
"choose(item.dictValue)"
>
<img
v-if=
"item.dictValue == lastindex"
src=
"@/assets/images/project/pro_2.png"
>
<img
v-else-if=
"item.dictValue == thisindex"
src=
"@/assets/images/project/pro_3.png"
>
<img
v-else
src=
"@/assets/images/project/pro_1.png"
>
<span
:class=
"{'now':item.dictValue == thisindex}"
>
{{item.dictLabel}}
</span>
<div
class=
"child"
v-for=
"(item,index) in projectStage"
@
click=
"choose(item.dictValue)"
:class=
"{'on':item.dictValue == thisindex}"
>
<div
class=
"left"
></div>
<span>
{{item.dictLabel}}
</span>
<div
class=
"right"
></div>
</div>
</div>
...
...
@@ -179,6 +178,7 @@
}
},
created
(){
this
.
thistag
=
this
.
$route
.
query
.
tag
this
.
prvinceTree
()
this
.
id
=
this
.
detailId
?
this
.
detailId
:
this
.
$route
.
query
.
id
//项目阶段
...
...
@@ -232,7 +232,8 @@
locks
(
isPrivate
){
isPrivate
=
isPrivate
==
0
?
1
:
0
this
.
editXMSL
({
isPrivate
:
isPrivate
})
this
.
lock
=
false
this
.
islock
=
false
this
.
ProjectData
.
isPrivate
=
isPrivate
},
editXMSL
(
param
){
let
params
=
param
...
...
@@ -337,7 +338,10 @@
// 跳转到企业详情合作情况
cooperateList
(){
this
.
$emit
(
'close-detail'
)
}
},
tolist
(){
this
.
$router
.
push
({
path
:
'/project/projectList'
})
},
}
}
</
script
>
...
...
@@ -395,30 +399,54 @@
}
}
.schedule
{
display
:
flex
;
padding-bottom
:
8px
;
width
:
100%
;
.child
{
cursor
:
pointer
;
margin-right
:
4px
;
color
:
#4f4f4f
;
/*color: rgb(79,79,79);*/
color
:
rgba
(
35
,
35
,
35
,
0
.80
);
position
:
relative
;
width
:
137px
;
min-width
:
137px
;
padding
:
0
20px
;
height
:
32px
;
line-height
:
32px
;
text-align
:
center
;
>
img
{
background
:
#F3F4F5
;
margin-bottom
:
8px
;
display
:
inline-block
;
.left
{
width
:
10px
;
height
:
32px
;
background
:
url("../../../assets/images/project/icol1.png")
no-repeat
top
center
#fff
;
position
:
absolute
;
left
:
0
;
top
:
0
;
}
.right
{
position
:
absolute
;
width
:
100%
;
z-index
:
0
;
top
:
0
;
right
:
0
;
width
:
10px
;
height
:
32px
;
background
:
url("../../../assets/images/project/icor1.png")
no-repeat
top
center
#fff
;
}
>
span
{
position
:
relative
;
z-index
:
1
;
&
.now
{
&
:hover
{
background
:
#E3E6EA
;
.left
{
background
:
url("../../../assets/images/project/icol2.png")
no-repeat
top
center
#fff
;
}
.right
{
background
:
url("../../../assets/images/project/icor2.png")
no-repeat
top
center
#fff
;
}
}
&
.on
{
background
:
#0081FF
;
color
:
#fff
;
.left
{
background
:
url("../../../assets/images/project/icol3.png")
no-repeat
top
center
#fff
;
}
.right
{
background
:
url("../../../assets/images/project/icor3.png")
no-repeat
top
center
#fff
;
}
}
}
...
...
dsk-operate-ui/src/views/project/projectList/index.vue
View file @
e1bf9236
...
...
@@ -113,16 +113,16 @@
</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' && item.followTime"
class=
"people"
><i>
{{
item
.
nickName1
}}
</i>
{{
item
.
nickName
}}
<font
color=
"#FA8A00"
>
正在跟进
</font></span></div>
<div
class=
"det-title"
@
click=
"toDetail(item.id
,'xmsl'
)"
>
{{
item
.
projectName
}}
<span
v-if=
"activeName!='first' && item.followTime"
class=
"people"
><i>
{{
item
.
nickName1
}}
</i>
{{
item
.
nickName
}}
<font
color=
"#FA8A00"
>
正在跟进
</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"
>
<span>
项目类型:
</span>
<span>
{{
item
.
projectType
}}
</span>
<span>
{{
item
.
projectType
||
'--'
}}
</span>
</div>
<div
class=
"det-con"
>
<span>
投资估算(万元):
</span>
<span>
{{
item
.
investmentAmount
}}
</span>
<span>
{{
item
.
investmentAmount
||
'--'
}}
</span>
</div>
<div
class=
"det-con"
>
<span>
最后跟进时间:
</span>
...
...
@@ -130,13 +130,13 @@
</div>
<div
class=
"det-con"
>
<span>
业主单位:
</span>
<span
class=
"wordprimary"
>
{{
item
.
ownerCompany
}}
</span>
<span
class=
"wordprimary"
>
{{
item
.
ownerCompany
||
'--'
}}
</span>
</div>
</div>
<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>
<div
class=
"i1"
><img
src=
"@/assets/images/follow.png"
@
click=
"toDetail(item.id,'gjjl')"
>
跟进
</div>
<div
class=
"i2"
><img
src=
"@/assets/images/edit.png"
@
click=
"toDetail(item.id,'xmsl')"
>
编辑
</div>
<div
class=
"i3"
@
click=
"deldetail(index)"
><img
src=
"@/assets/images/delete.png"
>
删除
</div>
</div>
<div
class=
"delform"
v-if=
"activeName=='first' && ondel == index"
>
...
...
@@ -355,8 +355,8 @@ export default {
this
.
isshow
=
false
this
.
getList
(
1
)
},
toDetail
(
id
){
this
.
$router
.
push
({
path
:
'/project/projectList/detail'
,
query
:
{
id
:
id
}
});
toDetail
(
id
,
tag
){
this
.
$router
.
push
({
path
:
'/project/projectList/detail'
,
query
:
{
id
:
id
,
tag
:
tag
}
});
},
handleClick
(){
...
...
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