Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
party-build-cloud
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
wangqinghua
party-build-cloud
Commits
28afe850
Commit
28afe850
authored
Apr 24, 2019
by
wangqinghua
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
style
parent
841de323
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
345 additions
and
44 deletions
+345
-44
app.module.ts
src/app/app.module.ts
+4
-0
app.scss
src/app/app.scss
+35
-13
publish.html
src/pages/discover-pages/publish/publish.html
+35
-0
publish.module.ts
src/pages/discover-pages/publish/publish.module.ts
+13
-0
publish.scss
src/pages/discover-pages/publish/publish.scss
+24
-0
publish.ts
src/pages/discover-pages/publish/publish.ts
+35
-0
duty-sign-up.ts
src/pages/home/dutyAll/duty-sign-up/duty-sign-up.ts
+14
-10
home.service.ts
src/pages/home/home.service.ts
+24
-0
discover.html
src/pages/tabs/discover/discover.html
+42
-4
discover.scss
src/pages/tabs/discover/discover.scss
+37
-0
discover.ts
src/pages/tabs/discover/discover.ts
+67
-14
home.html
src/pages/tabs/home/home.html
+1
-1
home.ts
src/pages/tabs/home/home.ts
+5
-1
serve.html
src/pages/tabs/serve/serve.html
+1
-1
serve.scss
src/pages/tabs/serve/serve.scss
+8
-0
No files found.
src/app/app.module.ts
View file @
28afe850
...
...
@@ -37,6 +37,8 @@ import {EmitService} from "../provide/emit.service";
import
{
TextToSpeech
}
from
"@ionic-native/text-to-speech"
;
import
{
SearchNewPageModule
}
from
"../pages/home-pages/search-new/search-new.module"
;
import
{
StuffDetailPageModule
}
from
"../pages/home-pages/stuff-detail/stuff-detail.module"
;
import
{
HomeService
}
from
"../pages/home/home.service"
;
import
{
PublishPageModule
}
from
"../pages/discover-pages/publish/publish.module"
;
@
NgModule
({
declarations
:
[
...
...
@@ -67,6 +69,7 @@ import {StuffDetailPageModule} from "../pages/home-pages/stuff-detail/stuff-deta
JsonpModule
,
SearchNewPageModule
,
StuffDetailPageModule
,
PublishPageModule
],
bootstrap
:
[
IonicApp
],
entryComponents
:
[
...
...
@@ -99,6 +102,7 @@ import {StuffDetailPageModule} from "../pages/home-pages/stuff-detail/stuff-deta
CommonService
,
TabsService
,
BackButtonService
,
HomeService
,
EmitService
,
{
provide
:
ErrorHandler
,
useClass
:
IonicErrorHandler
}
]
...
...
src/app/app.scss
View file @
28afe850
...
...
@@ -164,23 +164,37 @@ p {
}
//tab切换头
.tabs-parent
{
display
:
flex
;
flex-direction
:
row
;
flex-wrap
:
nowrap
;
.scroll-tab
{
overflow
:
hidden
;
position
:
relative
;
background-color
:
#fff
;
margin-bottom
:
.5rem
;
font-size
:
1
.7rem
;
}
.news-content
{
overflow-y
:
hidden
;
overflow-x
:
scroll
;
.tabs-parent
{
position
:
relative
;
background-color
:
#fff
;
margin-bottom
:
.5rem
;
font-size
:
1
.7rem
;
white-space
:
nowrap
;
}
.
tabs-parent
:
:-
webkit-scrollbar
{
display
:
none
;
}
.tabs-children
{
flex
:
1
;
text-align
:
center
;
cursor
:
pointer
;
height
:
4rem
;
line-height
:
4rem
;
.tabs-children
{
text-align
:
center
;
cursor
:
pointer
;
height
:
4rem
;
line-height
:
4rem
;
width
:
calc
(
100%
/
4
);
display
:
inline-block
;
}
}
.
news-content
:
:-
webkit-scrollbar
{
display
:
none
;
}
#tips
{
position
:
absolute
;
...
...
@@ -295,4 +309,11 @@ p {
a
[
disabled
],
button
[
disabled
],
[
ion-button
][
disabled
],
.bar-button-default-ios.activated
,
.bar-button-default.bar-button-ios-default.activated
,
.bar-button-clear-ios-default.activated
{
opacity
:
1
;
}
.content-textarea
{
padding
:
10px
;
min-height
:
100px
;
width
:
100%
;
border
:
1px
solid
#ddd
;
}
\ No newline at end of file
src/pages/discover-pages/publish/publish.html
0 → 100644
View file @
28afe850
<ion-header>
<ion-navbar>
<ion-title>
发布
</ion-title>
<ion-buttons
end
>
<button
ion-button
icon-only
(
click
)="
publish
()"
class=
"toolbar-icon"
>
<ion-icon
name=
"share-alt"
></ion-icon>
发布
</button>
</ion-buttons>
</ion-navbar>
</ion-header>
<ion-content
padding
>
<ion-item>
<ion-label
class=
"main-color"
>
选择板块
</ion-label>
<ion-select
[(
ngModel
)]="
obj
.
type
"
cancelText=
"取消"
okText=
"确定"
>
<ion-option
value=
"1"
>
机关党委
</ion-option>
<ion-option
value=
"2"
>
机关党委
</ion-option>
<ion-option
value=
"3"
>
机关党委
</ion-option>
<ion-option
value=
"4"
>
机关党委
</ion-option>
<ion-option
value=
"5"
>
机关党委
</ion-option>
<ion-option
value=
"6"
>
机关党委
</ion-option>
</ion-select>
</ion-item>
<ion-item>
<ion-input
[(
ngModel
)]="
obj
.
title
"
placeholder=
"请输入内容标题"
></ion-input>
</ion-item>
<ion-item>
<textarea
[(
ngModel
)]="
obj
.
content
"
class=
"content-textarea"
placeholder=
"请在此输入内容标题"
></textarea>
</ion-item>
</ion-content>
src/pages/discover-pages/publish/publish.module.ts
0 → 100644
View file @
28afe850
import
{
NgModule
}
from
'@angular/core'
;
import
{
IonicPageModule
}
from
'ionic-angular'
;
import
{
PublishPage
}
from
'./publish'
;
@
NgModule
({
declarations
:
[
PublishPage
,
],
imports
:
[
IonicPageModule
.
forChild
(
PublishPage
),
],
})
export
class
PublishPageModule
{}
src/pages/discover-pages/publish/publish.scss
0 → 100644
View file @
28afe850
page-publish
{
.toolbar-icon
{
color
:
#fff
;
margin-right
:
1rem
;
font-size
:
1
.5rem
;
}
.item-ios.item-block
.item-inner
{
border-bottom
:none
;
padding-right
:
0px
;
}
.item-ios
+
.item-ios
{
border-top
:
1px
solid
#eeeeee
;
}
.main-color
{
color
:
#e12724
;
font-size
:
1
.4rem
;
}
.content-textarea
{
min-height
:
320px
;
}
.label-ios
{
margin-right
:
0px
;
}
}
src/pages/discover-pages/publish/publish.ts
0 → 100644
View file @
28afe850
import
{
Component
}
from
'@angular/core'
;
import
{
IonicPage
,
NavController
,
NavParams
}
from
'ionic-angular'
;
import
{
CommonService
}
from
"../../../provide/common.service"
;
@
IonicPage
()
@
Component
({
selector
:
'page-publish'
,
templateUrl
:
'publish.html'
,
})
export
class
PublishPage
{
obj
=
{
type
:
1
,
title
:
''
,
content
:
''
,
}
constructor
(
public
navCtrl
:
NavController
,
public
navParams
:
NavParams
,
public
commonSer
:
CommonService
)
{
}
ionViewDidLoad
()
{
console
.
log
(
'ionViewDidLoad PublishPage'
);
}
//发布
publish
(){
this
.
commonSer
.
alert
(
'确定提交审核当前内容?'
,()
=>
{
this
.
commonSer
.
toast
(
'已提交审核'
)
setTimeout
(()
=>
{
this
.
navCtrl
.
pop
()
},
1000
)
})
}
}
src/pages/home/dutyAll/duty-sign-up/duty-sign-up.ts
View file @
28afe850
...
...
@@ -3,6 +3,8 @@ import {IonicPage, NavController, NavParams} from 'ionic-angular';
import
{
AppService
}
from
"../../../../service/http.service"
;
import
{
Geolocation
}
from
"@ionic-native/geolocation"
;
import
*
as
moment
from
"moment"
;
import
{
HomeService
}
from
"../../home.service"
;
import
{
CommonService
}
from
"../../../../provide/common.service"
;
@
IonicPage
()
@
Component
({
...
...
@@ -14,9 +16,7 @@ export class DutySignUpPage {
id
;
signState
;
signStatus
=
'fail'
;
signInfo
=
{
id
:
''
};
signInfo
;
//市委组织部坐标
mainLat
=
31.205033
;
//纬度
// mainLat = 31.231871; //纬度test 31.231871, 121.393319
...
...
@@ -24,18 +24,22 @@ export class DutySignUpPage {
// mainLng = 121.393319; //经度test
nowDay
;
constructor
(
public
navCtrl
:
NavController
,
public
navParams
:
NavParams
,
constructor
(
public
navCtrl
:
NavController
,
public
navParams
:
NavParams
,
public
homeSer
:
HomeService
,
public
commonSer
:
CommonService
,
public
appService
:
AppService
,
public
geolocation
:
Geolocation
)
{
}
ionViewDidLoad
()
{
this
.
nowDay
=
moment
().
format
(
'l'
);
this
.
appService
.
ObserverHttpGetOption
(
'/wisdomgroup/schedule/myScheduleOfToday'
,
null
)
.
subscribe
((
res
)
=>
{
if
(
res
){
this
.
signInfo
=
res
.
json
();
}
})
this
.
homeSer
.
myScheduleOfToday
().
subscribe
(
(
res
)
=>
{
if
(
res
){
this
.
signInfo
=
res
.
json
();
}
else
{
this
.
commonSer
.
toast
(
'暂无值班'
)
}
}
)
}
//签到
...
...
src/pages/home/home.service.ts
0 → 100644
View file @
28afe850
import
{
Injectable
}
from
"@angular/core"
;
import
{
HttpClient
}
from
"@angular/common/http"
;
import
{
Http
}
from
"@angular/http"
;
import
{
Observable
}
from
"rxjs/Observable"
;
import
{
AppGlobal
}
from
"../../service/http.service"
;
import
{
CommonService
}
from
"../../provide/common.service"
;
@
Injectable
()
export
class
HomeService
{
constructor
(
private
http
:
HttpClient
,
//该请求 将结果转为json
private
commonSer
:
CommonService
,
private
https
:
Http
,
//该请求不转json
){}
//值班签到
myScheduleOfToday
():
Observable
<
any
>
{
return
this
.
http
.
get
(
AppGlobal
.
domain
+
'/wisdomgroup/schedule/myScheduleOfToday'
,{
responseType
:
'text'
});
}
}
\ No newline at end of file
src/pages/tabs/discover/discover.html
View file @
28afe850
...
...
@@ -10,7 +10,7 @@
<ion-icon
class=
"search-icon"
name=
"search"
></ion-icon>
</ion-buttons>
<ion-buttons
end
>
<button
ion-button
icon-only
(
click
)="
isSign =
true
"
class=
"toolbar-signUp"
>
<button
ion-button
icon-only
(
click
)="
goToPublish
()
"
class=
"toolbar-signUp"
>
<ion-icon
class=
"icon-fabu iconfont"
></ion-icon>
<span
class=
"signUp-span"
>
发布
</span>
</button>
...
...
@@ -23,8 +23,46 @@
</ion-buttons>
</ion-navbar>
</ion-header>
<ion-content>
<div
class=
"scroll-tab"
>
<div
class=
"news-content"
>
<div
#
tabsParent
class=
"tabs-parent"
>
<div
#
tabsChildren
*
ngFor=
"let item of tabsList;"
(
click
)="
change
(
item
.
type
)"
class=
"tabs-children"
>
<span
#
tabSpan
[
style
.
color
]="
index =
=
item
.
type
?
'#
e12724
'
:
''"
>
{{item.name}}
</span>
</div>
<span
#
tips
id=
"tips"
></span>
</div>
</div>
</div>
<ion-content
padding
>
<div
class=
"search-content"
>
<ng-container
*
ngFor=
"let item of newList"
>
<div
class=
"search-item"
(
click
)="
goToDetail
(
item
)"
>
<p
class=
"item-info"
>
<span>
{{item.source}}
</span>
<span>
{{item.publishTime | date:'yyyy-MM-dd'}}
</span>
</p>
<div
class=
"item-news"
>
<ion-row
class=
"news-item"
>
<ion-col
col-8
class=
"news-left"
>
<p
class=
"news-title"
>
{{item.title}}
</p>
<p
class=
"news-end"
>
<ion-icon
style=
"font-size: 2.5rem;vertical-align: sub"
name=
"eye"
></ion-icon>
<span>
{{item.browseCount}}
</span>
<ion-icon
name=
"chatboxes"
></ion-icon>
<span>
{{item.commentCount}}
</span>
<ion-icon
name=
"thumbs-up"
></ion-icon>
<span>
{{item.likeCount}}
</span>
<ion-icon
name=
"heart"
></ion-icon>
<span>
{{item.collectionCount}}
</span>
</p>
</ion-col>
<ion-col
col-4
class=
"news-right"
>
<img
src=
"./assets/imgs/demo.png"
>
</ion-col>
</ion-row>
</div>
</div>
</ng-container>
</div>
</ion-content>
src/pages/tabs/discover/discover.scss
View file @
28afe850
...
...
@@ -29,6 +29,7 @@ page-discover {
padding-left
:
24px
;
}
//发布
.toolbar-signUp
{
.signUp-span
{
color
:
#fff
;
...
...
@@ -54,4 +55,40 @@ page-discover {
margin-right
:
-.3rem
;
}
}
//新闻区
.search-content
{
padding
:
0
1rem
;
.search-item
{
padding
:
.8rem
0
;
.news-left
{
display
:
flex
;
flex-flow
:
row
wrap
;
min-height
:
100%
;
padding
:
5px
0
;
.news-title
{
align-self
:
flex-start
;
font-weight
:
bold
;
width
:
100%
;
}
.news-end
{
align-self
:
flex-end
;
color
:
#999999
;
font-size
:
1
.5rem
;
span
{
margin-right
:
1rem
;
}
}
}
.news-right
{
padding
:
5px
0
;
img
{
border-radius
:
.5rem
;
}
}
}
.search-item
+
.search-item
{
border-top
:
1px
solid
#eeeeee
;
}
}
}
src/pages/tabs/discover/discover.ts
View file @
28afe850
import
{
Component
}
from
'@angular/core'
;
import
{
IonicPage
,
NavController
,
NavParams
}
from
'ionic-angular'
;
import
{
Component
,
ElementRef
,
ViewChild
}
from
'@angular/core'
;
import
{
IonicPage
,
NavController
,
NavParams
}
from
'ionic-angular'
;
import
{
SearchNewPage
}
from
"../../home-pages/search-new/search-new"
;
import
{
TabsService
}
from
"../tabs.service"
;
import
{
StuffDetailPage
}
from
"../../home-pages/stuff-detail/stuff-detail"
;
import
{
PublishPage
}
from
"../../discover-pages/publish/publish"
;
@
IonicPage
()
@
Component
({
selector
:
'page-discover'
,
templateUrl
:
'discover.html'
,
selector
:
'page-discover'
,
templateUrl
:
'discover.html'
,
})
export
class
DiscoverPage
{
@
ViewChild
(
'tips'
)
tips
:
ElementRef
;
@
ViewChild
(
'tabsParent'
)
tabsParent
:
ElementRef
;
@
ViewChild
(
'tabsChildren'
)
tabsChildren
:
ElementRef
;
@
ViewChild
(
'tabSpan'
)
tabSpan
:
ElementRef
;
isSign
=
false
;
constructor
(
public
navCtrl
:
NavController
,
public
navParams
:
NavParams
)
{
}
tabsList
=
[
{
name
:
"支部风采"
,
type
:
0
},
{
name
:
"机关党委"
,
type
:
1
},
{
name
:
"党风廉政"
,
type
:
2
},
{
name
:
"互动交流"
,
type
:
3
},
{
name
:
"知识拓展"
,
type
:
4
},
];
index
=
0
;
isSign
=
false
;
newList
;
//新闻列表
constructor
(
public
navCtrl
:
NavController
,
public
navParams
:
NavParams
,
public
tabsSer
:
TabsService
)
{
}
ionViewDidLoad
()
{
console
.
log
(
'ionViewDidLoad DiscoverPage'
);
}
ionViewDidEnter
()
{
this
.
change
(
0
);
}
//前往搜索页面
goToSearch
(){
this
.
navCtrl
.
push
(
SearchNewPage
);
}
//所属板块类型(1党规党章,2系列讲话,3中央精神,4本市部署,5通知公告,6党建动态,7工作提示,
// * 8党务参考,9廉政格言,10纪检提示,11风险排查,12警示教育,13支部活动,14党建联建,15结对帮扶)
change
(
index
)
{
let
itemWidth
=
window
.
screen
.
width
/
4
;
let
spanWidth
=
this
.
tabSpan
.
nativeElement
.
offsetWidth
;
//文字宽度
this
.
tips
.
nativeElement
.
style
.
width
=
this
.
tabSpan
.
nativeElement
.
offsetWidth
+
'px'
;
// 自身div的一半 - 滑块的一半
this
.
tips
.
nativeElement
.
style
.
left
=
itemWidth
*
(
index
)
+
(
itemWidth
-
spanWidth
)
/
2
+
'px'
;
this
.
index
=
index
;
const
data
=
{
pageSize
:
1
,
pageCount
:
100
,
obj
:
{
'plateType'
:
index
+
1
}
}
this
.
tabsSer
.
stuffPage
(
data
).
subscribe
(
(
res
)
=>
{
this
.
newList
=
res
.
data
;
}
)
}
//前往搜索页面
goToSearch
()
{
this
.
navCtrl
.
push
(
SearchNewPage
);
}
//查看详情
goToDetail
(
item
)
{
this
.
navCtrl
.
push
(
StuffDetailPage
,
{
id
:
item
.
id
});
}
//前往发布页面
goToPublish
(){
this
.
navCtrl
.
push
(
PublishPage
);
}
}
src/pages/tabs/home/home.html
View file @
28afe850
...
...
@@ -46,7 +46,7 @@
<div
class=
"news-content"
>
<div
class=
"tabs-parent"
>
<div
*
ngFor=
"let item of tabsList;let i = index"
(
click
)="
change
(
i
)"
class=
"tabs-children"
>
<span
[
style
.
color
]="
index =
=
i
?
'#
e12724
'
:
''"
>
{{item.name}}
</span>
<span
#
tabSpan
[
style
.
color
]="
index =
=
i
?
'#
e12724
'
:
''"
>
{{item.name}}
</span>
</div>
<span
#
tips
id=
"tips"
></span>
</div>
...
...
src/pages/tabs/home/home.ts
View file @
28afe850
...
...
@@ -32,6 +32,7 @@ declare var Swiper;
export
class
HomePage
{
@
ViewChild
(
Slides
)
slides
:
Slides
;
@
ViewChild
(
'tips'
)
tips
:
ElementRef
;
@
ViewChild
(
'tabSpan'
)
tabSpan
:
ElementRef
;
picture
:
string
=
AppGlobal
.
picture
;
slidersItems
=
[];
...
...
@@ -65,6 +66,7 @@ export class HomePage {
getBanner
(){
const
data
=
{
obj
:{
resourceType
:
2
,
isRecommend
:
1
,
}
}
...
...
@@ -79,8 +81,10 @@ export class HomePage {
// * 8党务参考,9廉政格言,10纪检提示,11风险排查,12警示教育,13支部活动,14党建联建,15结对帮扶)
change
(
index
)
{
let
itemWidth
=
window
.
screen
.
width
/
4
;
let
spanWidth
=
this
.
tabSpan
.
nativeElement
.
offsetWidth
;
//文字宽度
this
.
tips
.
nativeElement
.
style
.
width
=
this
.
tabSpan
.
nativeElement
.
offsetWidth
+
'px'
;
// 自身div的一半 - 滑块的一半
this
.
tips
.
nativeElement
.
style
.
left
=
itemWidth
*
index
+
itemWidth
/
2
-
this
.
tips
.
nativeElement
.
offsetWidth
/
2
+
'px'
;
this
.
tips
.
nativeElement
.
style
.
left
=
itemWidth
*
(
index
)
+
(
itemWidth
-
spanWidth
)
/
2
+
'px'
;
this
.
index
=
index
;
const
data
=
{
pageSize
:
1
,
...
...
src/pages/tabs/serve/serve.html
View file @
28afe850
...
...
@@ -7,7 +7,7 @@
</ion-buttons>
<ion-buttons
end
>
<button
ion-button
icon-only
class=
"toolbar-icon"
>
<ion-icon
name=
"mail
"
></ion-icon>
<ion-icon
class=
"icon-youjian iconfont
"
></ion-icon>
<span
class=
"num"
>
2
</span>
</button>
</ion-buttons>
...
...
src/pages/tabs/serve/serve.scss
View file @
28afe850
...
...
@@ -384,4 +384,12 @@ page-serve {
opacity
:
1
;
}
.toolbar-icon
{
ion-icon
.iconfont
{
color
:
#ffffff
;
font-size
:
2
.5rem
;
line-height
:
.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