Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
T
techbook
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
front-end-dev
techbook
Commits
fcd3bbd4
Commit
fcd3bbd4
authored
Oct 24, 2019
by
zhangyanni
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
筛选
parent
d7e1e796
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
261 additions
and
14 deletions
+261
-14
phone.scss
public/css/phone.scss
+9
-0
checked.png
src/assets/img/mobile/checked.png
+0
-0
line.png
src/assets/img/mobile/line.png
+0
-0
en.js
src/common/lang/en.js
+1
-0
zh.js
src/common/lang/zh.js
+1
-0
breadTop.vue
src/components/mobile/breadTop.vue
+1
-1
screenCmpt.vue
src/components/mobile/screenCmpt.vue
+0
-0
searchList.vue
src/components/mobile/searchList.vue
+30
-7
main.js
src/main.js
+3
-0
router.js
src/router.js
+2
-1
api.js
src/views/mobile/api.js
+34
-0
bBusinessList.vue
src/views/mobile/requirement/bBusinessList.vue
+14
-3
searchempty.vue
src/views/mobile/searchempty.vue
+3
-2
selectScreen.vue
src/views/mobile/selectScreen.vue
+163
-0
No files found.
public/css/phone.scss
View file @
fcd3bbd4
...
...
@@ -926,3 +926,11 @@ textarea:focus {
font-size
:
1px
;
line-height
:
0
;
}
.height15px
{
width
:
100%
;
height
:
.15rem
;
background
:
#ECECF2
;
position
:
absolute
;
left
:
0
;
bottom
:
0
;
}
\ No newline at end of file
src/assets/img/mobile/checked.png
0 → 100644
View file @
fcd3bbd4
320 Bytes
src/assets/img/mobile/line.png
0 → 100644
View file @
fcd3bbd4
246 Bytes
src/common/lang/en.js
View file @
fcd3bbd4
...
...
@@ -549,6 +549,7 @@ module.exports = {
flagRepeatTitle
:
"Same label existed, please edit"
,
showUp
:
"Hide All"
,
showDown
:
"More"
,
reset
:
"Reset"
,
resetItem
:
"Reset"
,
currentStatus
:
"Current Status"
,
visited
:
"Viewed"
,
...
...
src/common/lang/zh.js
View file @
fcd3bbd4
...
...
@@ -547,6 +547,7 @@ module.exports = {
flagRepeatTitle
:
"已存在相同标签,请修改"
,
showUp
:
"收起全部筛选项"
,
showDown
:
"展开全部筛选项"
,
reset
:
"重置"
,
resetItem
:
"重置筛选"
,
currentStatus
:
"当前需求状态"
,
visited
:
"被查看"
,
...
...
src/components/mobile/breadTop.vue
View file @
fcd3bbd4
...
...
@@ -34,7 +34,7 @@
},
methods
:{
handleScreen
(){
this
.
$emit
(
"isShowScreen"
,
true
);
}
}
...
...
src/components/mobile/screenCmpt.vue
0 → 100644
View file @
fcd3bbd4
This diff is collapsed.
Click to expand it.
src/components/mobile/searchList.vue
View file @
fcd3bbd4
<
template
>
<div
class=
"contentList"
:class=
"isMargin?'marginTop':''"
>
<mt-loadmore
:top-method=
"loadTop"
:bottom-method=
"loadBottom"
:auto-fill=
"false"
:bottom-all-loaded=
"allLoaded"
ref=
"loadmore"
v-if=
"tableData"
>
<ul>
<ul
v-if=
"tableData"
>
<li
v-for=
"(item,index) in tableData"
:key=
"item.businessId"
@
click=
"handleToDetail(item)"
>
<div
class=
"companyInfo"
>
<div
class=
"leftInfo"
>
...
...
@@ -25,23 +25,27 @@
</ul>
</mt-loadmore>
<noData
v-if=
"!tableData"
:nodata=
"tableData"
></noData>
<selectScreen
v-if=
"isVisible"
@
active=
"groupdata"
></selectScreen>
</div>
</
template
>
<
script
>
import
api
from
'../../views/bigbusiness/api/api'
;
import
noData
from
'../../views/mobile/searchempty'
;
import
selectScreen
from
'../../views/mobile/selectScreen'
export
default
{
name
:
"searchList"
,
components
:{
noData
noData
,
selectScreen
},
props
:{
isMargin
:{
type
:
Boolean
,
default
:
false
},
isWhich
:
0
isWhich
:
0
,
isVisible
:
false
},
data
(){
return
{
...
...
@@ -54,11 +58,21 @@
stateData
:{},
fullscreenLoading
:
false
,
whichTab
:
0
,
key
:
this
.
Base64
.
decode
(
this
.
$route
.
query
.
key
)
isSelect
:
false
}
},
methods
:{
groupdata
(
val
){
this
.
stateData
=
val
;
this
.
fullscreenLoading
=
true
;
this
.
getInitList
();
},
isScreenVisible
(
data
){
},
getProjectList
(
param
){
this
.
stateData
.
context
=
window
.
sessionStorage
.
getItem
(
"keyword"
)?
window
.
sessionStorage
.
getItem
(
"keyword"
):
undefined
;
let
params
=
{
...
...
@@ -80,7 +94,7 @@
}
else
{
this
.
tableData
=
res
.
result
.
records
;
}
this
.
totalPage
=
res
.
result
.
total
;
this
.
totalPage
=
res
.
result
.
pages
;
this
.
flags
=
(
this
.
page
>=
this
.
totalPage
)
?
false
:
true
;
this
.
isHaveMore
(
this
.
flags
);
}
else
{
...
...
@@ -95,7 +109,9 @@
},
getInitList
(
param
){
this
.
stateData
.
context
=
window
.
sessionStorage
.
getItem
(
"keyword"
)?
window
.
sessionStorage
.
getItem
(
"keyword"
):
undefined
;
if
(
!
this
.
isMargin
){
this
.
stateData
.
context
=
window
.
sessionStorage
.
getItem
(
"keyword"
)?
window
.
sessionStorage
.
getItem
(
"keyword"
):
""
;
};
let
params
=
{
pagination
:{
numberOfPages
:
this
.
page
,
...
...
@@ -128,7 +144,7 @@
}
else
{
this
.
tableData
=
res
.
result
.
records
;
}
this
.
totalPage
=
res
.
result
.
total
;
this
.
totalPage
=
res
.
result
.
pages
;
this
.
flags
=
(
this
.
page
>=
this
.
totalPage
)
?
false
:
true
;
this
.
isHaveMore
(
this
.
flags
);
}
else
{
...
...
@@ -185,6 +201,13 @@
if
(
this
.
isWhich
==
2
||
this
.
isMargin
)
this
.
getInitList
();
this
.
whichTab
=
this
.
isWhich
;
})
globalMsg
.
$on
(
"isVisible"
,(
data
)
=>
{
this
.
isSelect
=
data
;
})
globalMsg
.
$on
(
"isShowScreen"
,(
data
)
=>
{
console
.
log
(
data
)
this
.
isSelect
=
data
;
})
},
}
</
script
>
...
...
src/main.js
View file @
fcd3bbd4
...
...
@@ -128,6 +128,9 @@ router.beforeEach((to, from, next) => {
if
(
to
.
name
==
"dashboard"
){
if
(
ismobile
==
1
)
router
.
replace
(
'/index'
);
}
// if(to.name=="mobileRegister"){
// if(ismobile == 1) router.replace('/index');
// }
if
(
to
.
name
==
"mobileLogin"
)
{
if
(
i18n
.
locale
==
"zh-CN"
)
router
.
replace
(
'/loginByPhone'
);
else
router
.
replace
(
'/loginByEmail'
)
...
...
src/router.js
View file @
fcd3bbd4
...
...
@@ -62,6 +62,7 @@ import phoneBusinessList from './views/mobile/requirement/bBusinessList';//大B
import
phoneBusinessDetail
from
'./views/mobile/requirement/bBdetail'
;
//大B详情
import
phoneRequireDetail
from
'./views/mobile/requirement/reqDetail'
;
//需求详情
import
mobileSearchResult
from
'./views/mobile/searchRecord'
;
//搜索结果页
import
mobileSearchScreen
from
'./views/mobile/selectScreen'
;
//筛选香
import
mobileLogined
from
'./views/mobile/logined'
;
//登录之后
Vue
.
use
(
Router
)
...
...
@@ -596,7 +597,7 @@ export default new Router({
meta
:
{
title
:
'温馨提示'
}
},
]
}
,
}
]
})
src/views/mobile/api.js
0 → 100644
View file @
fcd3bbd4
import
api
from
'../../api/api'
;
import
Qs
from
'qs'
;
let
baseUrl
=
"/business"
;
export
default
{
//获取所在地
getCityTreeDataList
(
params
){
return
api
.
fetchGet
(
baseUrl
+
"/geo/selectByMix?geoId="
+
params
);
},
//获取所属行业
getIndustryAxios
(
params
){
return
api
.
fetchGet
(
baseUrl
+
"/industry/selectBigBusinessTree"
);
},
selectDictList
(
params
){
return
api
.
fetchGet
(
'/business/dict/selectDictList?groupCode='
+
params
);
},
selectSmallBusinessTree
(){
return
api
.
fetchGet
(
baseUrl
+
'/industry/selectSmallBusinessTree'
);
},
selectNationList
(){
return
api
.
fetchGet
(
'/business/geo/selectNationList'
);
},
selectCityList
(
params
){
return
api
.
fetchGet
(
'/business/geo/selectCityList?geoId='
+
params
);
},
selectProvinceList
(
params
){
return
api
.
fetchGet
(
'/business/geo/selectProvinceList?geoId='
+
params
);
},
}
\ No newline at end of file
src/views/mobile/requirement/bBusinessList.vue
View file @
fcd3bbd4
<
template
>
<div
class=
"wrapper"
>
<breadTop
:title=
"title"
:isSearch=
"true"
:isTranslate=
"true"
></breadTop>
<businessList
:isMargin=
"true"
></businessList>
<breadTop
:title=
"title"
:isSearch=
"true"
:isTranslate=
"true"
@
isShowScreen=
"isShowScreen"
></breadTop>
<businessList
:isMargin=
"true"
:isVisible=
"isShow"
></businessList>
</div>
</
template
>
...
...
@@ -18,8 +18,19 @@
},
data
(){
return
{
title
:
this
.
$t
(
"topNav.findCustomer"
)
title
:
this
.
$t
(
"topNav.findCustomer"
),
isShow
:
false
}
},
methods
:{
isShowScreen
(
data
){
this
.
isShow
=
data
;
}
},
mounted
(){
globalMsg
.
$on
(
"isVisible"
,(
data
)
=>
{
this
.
isShow
=
data
;
})
}
}
</
script
>
...
...
src/views/mobile/searchempty.vue
View file @
fcd3bbd4
...
...
@@ -3,7 +3,7 @@
<div
style=
"margin: 0.7rem 0"
>
<p
style=
"text-align: center"
><img
src=
"../../assets/img/searchempty.png"
style=
"width: 4.25rem;height: 4.4rem;"
alt=
""
></p>
</div>
<p
style=
"font-size:0.32rem;color:rgba(63,63,83,1);margin: 0 0.7rem;line-height: 0.6rem"
>
<p
style=
"font-size:0.32rem;color:rgba(63,63,83,1);margin: 0 0.7rem;line-height: 0.6rem
;text-align: center
"
>
<span
v-if=
"$route.query.tab==1"
>
{{
$t
(
'emptyDataTitle.searchRecordSB'
)
}}
</span>
<span
v-if=
"$route.query.tab==2"
>
{{
$t
(
'emptyDataTitle.searchRecordBB'
)
}}
</span>
<span
v-if=
"!nodata"
>
{{
$t
(
"emptyDataTitle.commonTitle"
)
}}
</span>
...
...
@@ -23,6 +23,6 @@
}
</
script
>
<
style
scoped
>
<
style
scoped
lang=
"scss"
>
</
style
>
\ No newline at end of file
src/views/mobile/selectScreen.vue
0 → 100644
View file @
fcd3bbd4
<
template
>
<div
class=
"screenWrapper"
>
<div
class=
"closeBtn"
>
<i
class=
"iconfont icon-cuowu"
@
click=
"handleConfirm"
></i>
</div>
<screenCmpt
:titleName=
"$t('indexCount.industryInvolved')"
:screenlist=
"companyIndustry"
:screenchildListIf=
"true"
ref=
"screenchild"
@
changecheck=
"screenData"
></screenCmpt>
<screenCmpt
class=
"statebottm"
:screenlist=
"bigbusinesslevelist"
:screenchildListIf=
"true"
ref=
"bigbusinesslevechild"
:titleName=
"$t('searchResult.targetCooperation')"
@
changecheck=
"bigbusinessleveData"
></screenCmpt>
<screenCmpt
class=
"statebottm"
:isCity=
"true"
ref=
"regionchild"
:titleName=
"$t('indexCount.addressBy')"
@
changecheck=
"regionData"
></screenCmpt>
<div
class=
"buttonWrapper"
>
<el-button
plain
type=
"primary"
@
click=
"resetClik"
>
{{
$t
(
"commonTitle.reset"
)
}}
</el-button>
<el-button
type=
"primary"
@
click=
"handleConfirm"
>
{{
$t
(
"operationjson.determine"
)
}}
</el-button>
</div>
</div>
</
template
>
<
script
>
import
api
from
'./api'
;
import
screenCmpt
from
'../../components/mobile/screenCmpt'
;
export
default
{
name
:
"selectScreen"
,
components
:{
screenCmpt
},
data
(){
return
{
companyIndustry
:
[],
//所属行业
bigbusinesslevelist
:
[],
//目标客户行业
downIf
:
false
,
//收起展开
stateData
:{},
}
},
methods
:{
//行业领域
screenData
(
a
,
b
){
if
(
b
)
this
.
stateData
.
companyIndustryList
=
b
;
else
this
.
stateData
.
companyIndustryList
=
a
?[
a
]:[];
this
.
$emit
(
'active'
,
this
.
stateData
);
},
//获取目标客户行业
selectBigBusinessLevelOneSet
()
{
api
.
selectSmallBusinessTree
().
then
(
response
=>
{
if
(
response
.
code
==
0
)
{
response
.
result
.
forEach
(
(
item
)
=>
{
item
.
checked
=
false
;
item
.
screenchildList
=
item
.
childrenList
;
}
);
this
.
bigbusinesslevelist
=
response
.
result
;
}
else
{
this
.
$toast
(
response
.
msg
);
}
}
)
.
catch
(
error
=>
{
return
false
;
}
);
},
//目标客户行业
bigbusinessleveData
(
a
,
b
){
if
(
b
)
this
.
stateData
.
targetIndustryList
=
b
;
else
this
.
stateData
.
targetIndustryList
=
a
?[
a
]:[];
this
.
$emit
(
'active'
,
this
.
stateData
);
},
//公司总部所在地
regionData
(
a
,
b
,
c
){
if
(
a
){
this
.
stateData
.
companyNationIds
=
[
1
];
this
.
stateData
.
companyProvinceIds
=
b
;
this
.
stateData
.
companyCityIds
=
c
;
}
else
{
if
(
!!
b
)
this
.
stateData
.
companyNationIds
=
b
;
else
{
this
.
stateData
.
companyNationIds
=
[
-
1
];
this
.
stateData
.
companyProvinceIds
=
[];
this
.
stateData
.
companyCityIds
=
[];
}
}
this
.
$emit
(
'active'
,
this
.
stateData
);
},
//获取行业领域接口
bigBusinessselect
()
{
api
.
getIndustryAxios
().
then
(
response
=>
{
if
(
response
.
code
==
0
)
{
response
.
result
.
forEach
(
(
item
)
=>
{
item
.
checked
=
false
;
item
.
screenchildList
=
item
.
childrenList
;
}
);
this
.
companyIndustry
=
response
.
result
;
}
else
{
this
.
$toast
(
response
.
msg
);
}
}
)
.
catch
(
error
=>
{
return
false
;
}
);
},
resetClik
(){
this
.
$refs
.
screenchild
.
stateinit
();
this
.
$refs
.
regionchild
.
stateinitCity
();
this
.
$refs
.
bigbusinesslevechild
.
stateinit
();
this
.
stateData
=
{};
this
.
$emit
(
'active'
,
this
.
stateData
);
},
handleConfirm
(){
globalMsg
.
$emit
(
"isVisible"
,
false
);
}
},
mounted
(){
this
.
bigBusinessselect
();
this
.
selectBigBusinessLevelOneSet
();
}
}
</
script
>
<
style
scoped
lang=
"scss"
>
.screenWrapper
{
position
:
fixed
;
left
:
0
;
top
:
0
;
width
:
100%
;
background
:
#fff
;
height
:
100%
;
padding-bottom
:
1rem
;
overflow
:
auto
;
z-index
:
101
;
.closeBtn
{
position
:
fixed
;
top
:
.2rem
;
right
:
.3rem
;
height
:
.4rem
;
background
:
transparent
;
z-index
:
10
;
.icon-cuowu
:before
{
font-size
:
30px
;
}
}
}
.buttonWrapper
{
position
:
fixed
;
bottom
:
0
;
left
:
0
;
width
:
100%
;
height
:
1
.2rem
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
border-top
:
1px
solid
#ECECF2
;
background-color
:
#fff
;
&
>
.el-button
{
width
:
44%
;
-webkit-border-radius
:
.4rem
;
-moz-border-radius
:
.4rem
;
border-radius
:
.4rem
;
}
}
</
style
>
\ No newline at end of file
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