Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
liyeyun
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
cfld-frontend
liyeyun
Commits
b7297819
Commit
b7297819
authored
Dec 01, 2023
by
王玉鑫
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: 各详情页所属或包含列表
parent
4b46de35
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
87 additions
and
5 deletions
+87
-5
landDetail.ts
src/types/api/landDetail.ts
+1
-0
CarrierDetail.vue
src/views/carrier/CarrierDetail.vue
+23
-2
DevelopZoneDetail.vue
src/views/develop/DevelopZoneDetail.vue
+24
-2
IndustrialParkDetail.vue
src/views/industrial-park/IndustrialParkDetail.vue
+14
-0
LandDetail.vue
src/views/land/LandDetail.vue
+25
-1
No files found.
src/types/api/landDetail.ts
View file @
b7297819
...
...
@@ -52,6 +52,7 @@ export interface LandDetailResp {
regionName
:
string
;
/** 类型 */
type
:
string
;
id
:
number
;
};
/** */
energyRequire
:
string
;
...
...
src/views/carrier/CarrierDetail.vue
View file @
b7297819
...
...
@@ -13,7 +13,13 @@
<DetailInfo
:infos=
"joinRequired"
></DetailInfo>
</DetailInfoCell>
<DetailInfoCell
title=
"配套设施"
></DetailInfoCell>
<DetailInfoCell
title=
"所属产业园"
></DetailInfoCell>
<DetailInfoCell
title-center
title=
"所属产业园"
>
<ParkItem
:type=
"ParkItemType.industrial"
:item=
"detail.carrierParkVo"
@
to-detail=
"toIndustrial"
></ParkItem>
</DetailInfoCell>
</div>
</div>
</
template
>
...
...
@@ -22,13 +28,17 @@
import
DetailInfo
from
'@/components/detail/DetailInfo.vue'
;
import
DetailInfoCell
from
'@/components/detail/DetailInfoCell.vue'
;
import
DetailMain
from
'@/components/detail/DetailMain.vue'
;
import
ParkItem
from
'@/components/list/ParkItem.vue'
;
import
{
useDetail
}
from
'@/composable/useDetail.ts'
;
import
{
useJoinRequired
}
from
'@/composable/useJoinRequired.ts'
;
import
{
useJump
}
from
'@/composable/useJump.ts'
;
import
{
RouteName
}
from
'@/router/router.ts'
;
import
{
RequestUrl
}
from
'@/types/api.ts'
;
import
type
{
CarrierDetailResp
}
from
'@/types/api/carrierDetail'
;
import
{
ParkItemType
}
from
'@/types/enum.ts'
;
import
{
computed
}
from
'vue'
;
const
{
detail
,
initDetail
}
=
useDetail
<
CarrierDetailResp
>
(
RequestUrl
.
industrialParkDeta
l
);
const
{
detail
,
initDetail
}
=
useDetail
<
CarrierDetailResp
>
(
RequestUrl
.
carrierDetai
l
);
const
{
joinRequired
}
=
useJoinRequired
(
computed
(()
=>
{
...
...
@@ -43,5 +53,16 @@ const { joinRequired } = useJoinRequired(
}),
);
const
{
open
}
=
useJump
();
const
toIndustrial
=
()
=>
{
open
({
query
:
{
id
:
detail
.
value
?.
carrierParkVo
.
id
,
},
path
:
RouteName
.
industrialParkDetail
,
});
};
initDetail
();
</
script
>
src/views/develop/DevelopZoneDetail.vue
View file @
b7297819
...
...
@@ -43,6 +43,7 @@
v-for=
"item of industrials.slice(0, 4)"
:key=
"item.name"
:detail=
"item"
@
to-detail=
"toIndustrialDetail(item)"
></MiniListItem>
</div>
</DetailInfoCell>
...
...
@@ -58,6 +59,7 @@
v-for=
"item of lands.slice(0, 4)"
:key=
"item.name"
:detail=
"item"
@
to-detail=
"toLandDetail(item)"
></MiniListItem>
</div>
</DetailInfoCell>
...
...
@@ -235,11 +237,12 @@ const industryFund = computed(() => {
/** 产业园列表 */
const
industrials
=
computed
(()
=>
{
if
(
detail
.
value
)
{
return
detail
.
value
.
parkPageList
.
map
(({
imgUrl
,
name
,
levelName
,
coverArea
})
=>
{
return
detail
.
value
.
parkPageList
.
map
(({
imgUrl
,
name
,
levelName
,
coverArea
,
id
})
=>
{
return
{
imgUrl
,
name
,
info
:
[
levelName
,
coverArea
?
`
${
coverArea
}
㎡`
:
''
].
filter
(
haveValue
).
join
(
' | '
),
id
,
};
});
}
else
{
...
...
@@ -250,11 +253,12 @@ const industrials = computed(() => {
/** 开发区列表 */
const
lands
=
computed
(()
=>
{
if
(
detail
.
value
)
{
return
detail
.
value
.
landPageList
.
map
(({
name
,
imgUrl
,
area
,
typeName
})
=>
{
return
detail
.
value
.
landPageList
.
map
(({
name
,
imgUrl
,
area
,
typeName
,
id
})
=>
{
return
{
imgUrl
,
name
,
info
:
[
area
?
`
${
area
}
亩`
:
''
,
typeName
].
filter
(
haveValue
).
join
(
' | '
),
id
,
};
});
}
else
{
...
...
@@ -270,5 +274,23 @@ const toLandList = () => {
open
(
RouteName
.
landList
);
};
const
toIndustrialDetail
=
({
id
}:
{
id
:
string
|
number
})
=>
{
open
({
name
:
RouteName
.
industrialParkDetail
,
query
:
{
id
,
},
});
};
const
toLandDetail
=
({
id
}:
{
id
:
string
|
number
})
=>
{
open
({
name
:
RouteName
.
landDetail
,
query
:
{
id
,
},
});
};
initDetail
();
</
script
>
src/views/industrial-park/IndustrialParkDetail.vue
View file @
b7297819
...
...
@@ -71,6 +71,7 @@
v-for=
"item of carriers.slice(0, 4)"
:key=
"item.name"
:detail=
"item"
@
to-detail=
"toCarrierDetail(item as any)"
></MiniListItem>
</div>
</DetailInfoCell>
...
...
@@ -255,5 +256,18 @@ const toCarrierList = () => {
open
(
RouteName
.
carrierList
);
};
/**
* 载体详情
* todo id属性?
*/
const
toCarrierDetail
=
({
id
}:
{
id
:
string
})
=>
{
open
({
name
:
RouteName
.
carrierDetail
,
query
:
{
id
,
},
});
};
initDetail
();
</
script
>
src/views/land/LandDetail.vue
View file @
b7297819
...
...
@@ -16,7 +16,13 @@
<DetailInfo
:infos=
"joinRequired"
></DetailInfo>
</DetailInfoCell>
<DetailInfoCell
title=
"周边配套"
></DetailInfoCell>
<DetailInfoCell
title=
"所属开发区"
></DetailInfoCell>
<DetailInfoCell
title-center
title=
"所属开发区"
>
<ParkItem
:type=
"ParkItemType.develop"
:item=
"detail.development"
@
to-detail=
"toDevelop"
></ParkItem>
</DetailInfoCell>
</div>
</div>
</
template
>
...
...
@@ -30,6 +36,9 @@ import { useJoinRequired } from '@/composable/useJoinRequired.ts';
import
{
RequestUrl
}
from
'@/types/api.ts'
;
import
type
{
LandDetailResp
}
from
'@/types/api/landDetail'
;
import
{
computed
}
from
'vue'
;
import
{
ParkItemType
}
from
'@/types/enum.ts'
;
import
{
useJump
}
from
'@/composable/useJump.ts'
;
import
{
RouteName
}
from
'@/router/router.ts'
;
const
{
detail
,
initDetail
}
=
useDetail
<
LandDetailResp
>
(
RequestUrl
.
landDetail
);
...
...
@@ -46,5 +55,20 @@ const { joinRequired } = useJoinRequired(
}),
);
const
{
open
}
=
useJump
();
/**
* 开发区
* todo id?
*/
const
toDevelop
=
()
=>
{
open
({
name
:
RouteName
.
developZoneDetail
,
query
:
{
id
:
detail
.
value
?.
development
.
id
,
},
});
};
initDetail
();
</
script
>
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