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
342a9eab
Commit
342a9eab
authored
Aug 10, 2019
by
wangqinghua
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
api update
parent
38ee4369
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
514 additions
and
138 deletions
+514
-138
app.module.ts
src/app/app.module.ts
+2
-0
app.scss
src/app/app.scss
+2
-0
modal-transitions.ts
src/app/modal-transitions.ts
+2
-2
business-detail.html
...-pages/business-unit/business-detail/business-detail.html
+12
-0
business-detail.scss
...-pages/business-unit/business-detail/business-detail.scss
+3
-0
business-detail.ts
...ve-pages/business-unit/business-detail/business-detail.ts
+17
-0
business-unit.html
src/pages/serve-pages/business-unit/business-unit.html
+83
-0
business-unit.module.ts
src/pages/serve-pages/business-unit/business-unit.module.ts
+19
-0
business-unit.scss
src/pages/serve-pages/business-unit/business-unit.scss
+124
-0
business-unit.ts
src/pages/serve-pages/business-unit/business-unit.ts
+138
-0
evaluation.html
...ages/serve-pages/goods-collect/evaluation/evaluation.html
+2
-0
evaluation.scss
...ages/serve-pages/goods-collect/evaluation/evaluation.scss
+41
-69
evaluation.ts
src/pages/serve-pages/goods-collect/evaluation/evaluation.ts
+17
-44
goods-collect.scss
src/pages/serve-pages/goods-collect/goods-collect.scss
+1
-1
serve.service.ts
src/pages/serve-pages/serve.service.ts
+0
-0
vistor-apply.ts
.../serve-pages/vistor-register/vistor-apply/vistor-apply.ts
+4
-4
vistor-register.html
src/pages/serve-pages/vistor-register/vistor-register.html
+7
-2
vistor-register.ts
src/pages/serve-pages/vistor-register/vistor-register.ts
+2
-10
discover.html
src/pages/tabs/discover/discover.html
+4
-1
discover.ts
src/pages/tabs/discover/discover.ts
+28
-4
key.html
src/pages/tabs/key/key.html
+1
-1
tabs.service.ts
src/pages/tabs/tabs.service.ts
+5
-0
No files found.
src/app/app.module.ts
View file @
342a9eab
...
...
@@ -52,6 +52,7 @@ import {MeetRoomPageModule} from "../pages/serve-pages/meet-room/meet-room.modul
import
{
UseCarPageModule
}
from
"../pages/serve-pages/use-car/use-car.module"
;
import
{
AppMainService
}
from
"./app.service"
;
import
{
VistorRegisterPageModule
}
from
"../pages/serve-pages/vistor-register/vistor-register.module"
;
import
{
BusinessUnitPageModule
}
from
"../pages/serve-pages/business-unit/business-unit.module"
;
@
NgModule
({
...
...
@@ -90,6 +91,7 @@ import {VistorRegisterPageModule} from "../pages/serve-pages/vistor-register/vis
MeetRoomPageModule
,
UseCarPageModule
,
VistorRegisterPageModule
,
BusinessUnitPageModule
],
bootstrap
:
[
IonicApp
],
entryComponents
:
[
...
...
src/app/app.scss
View file @
342a9eab
...
...
@@ -190,6 +190,8 @@ ion-navbar .header-ios .toolbar-ios:last-child .toolbar-background-ios {
.scroll-tab
{
overflow
:
hidden
;
position
:
relative
;
padding-right
:
50px
;
background-color
:
#fff1f0
;
}
.scroll-tab
{
span
.more
{
...
...
src/app/modal-transitions.ts
View file @
342a9eab
import
{
Animation
,
PageTransition
}
from
'ionic-angular'
;
export
class
ModalFromRightEnter
extends
PageTransition
{
public
init
()
{
super
.
init
();
const
ele
=
this
.
enteringView
.
pageRef
().
nativeElement
;
const
backdrop
=
new
Animation
(
this
.
plt
,
ele
.
querySelector
(
'ion-backdrop'
));
backdrop
.
beforeStyles
({
'z-index'
:
0
,
'opacity'
:
0.3
,
'visibility'
:
'visible'
});
const
wrapper
=
new
Animation
(
this
.
plt
,
ele
.
querySelector
(
'.modal-wrapper'
));
wrapper
.
beforeStyles
({
'opacity'
:
1
});
wrapper
.
fromTo
(
'transform'
,
'translateX(100%)'
,
'translateX(10%)'
);
const
contentWrapper
=
new
Animation
(
this
.
plt
,
ele
.
querySelector
(
'ion-content.content'
));
contentWrapper
.
beforeStyles
({
'width'
:
'90%'
});
this
.
element
(
this
.
enteringView
.
pageRef
())
.
duration
(
300
)
.
easing
(
'cubic-bezier(.25, .1, .25, 1)'
)
.
add
(
backdrop
)
.
add
(
wrapper
)
.
add
(
contentWrapper
);
}
}
export
class
ModalFromRightLeave
extends
PageTransition
{
public
init
()
{
super
.
init
();
const
ele
=
this
.
leavingView
.
pageRef
().
nativeElement
;
const
backdrop
=
new
Animation
(
this
.
plt
,
ele
.
querySelector
(
'ion-backdrop'
));
backdrop
.
beforeStyles
({
'visibility'
:
'hidden'
});
const
wrapper
=
new
Animation
(
this
.
plt
,
ele
.
querySelector
(
'.modal-wrapper'
));
wrapper
.
fromTo
(
'transform'
,
'translateX(10%)'
,
'translateX(100%)'
);
this
.
element
(
this
.
leavingView
.
pageRef
())
.
duration
(
300
)
.
easing
(
'cubic-bezier(.25, .1, .25, 1)'
)
.
add
(
backdrop
)
.
add
(
wrapper
);
}
}
export
class
ModalScaleEnter
extends
PageTransition
{
public
init
()
{
super
.
init
();
const
ele
=
this
.
enteringView
.
pageRef
().
nativeElement
;
const
wrapper
=
new
Animation
(
this
.
plt
,
ele
.
querySelector
(
'.modal-wrapper'
));
wrapper
.
beforeStyles
({
'opacity'
:
1
});
wrapper
.
fromTo
(
'transform'
,
'scale(0)'
,
'scale(1)'
);
this
.
element
(
this
.
enteringView
.
pageRef
())
.
duration
(
400
)
.
easing
(
'cubic-bezier(.1, .7, .1, 1)'
)
.
add
(
wrapper
);
}
}
export
class
ModalScaleLeave
extends
PageTransition
{
public
init
()
{
super
.
init
();
const
ele
=
this
.
leavingView
.
pageRef
().
nativeElement
;
const
wrapper
=
new
Animation
(
this
.
plt
,
ele
.
querySelector
(
'.modal-wrapper'
));
wrapper
.
fromTo
(
'transform'
,
'scale(1)'
,
'scale(0)'
);
this
.
element
(
this
.
leavingView
.
pageRef
())
.
duration
(
400
)
.
easing
(
'cubic-bezier(.1, .7, .1, 1)'
)
.
add
(
wrapper
);
}
}
\ No newline at end of file
import
{
Animation
,
PageTransition
}
from
'ionic-angular'
;
export
class
ModalFromRightEnter
extends
PageTransition
{
public
init
()
{
super
.
init
();
const
ele
=
this
.
enteringView
.
pageRef
().
nativeElement
;
const
backdrop
=
new
Animation
(
this
.
plt
,
ele
.
querySelector
(
'ion-backdrop'
));
backdrop
.
beforeStyles
({
'z-index'
:
0
,
'opacity'
:
0.3
,
'visibility'
:
'visible'
});
const
wrapper
=
new
Animation
(
this
.
plt
,
ele
.
querySelector
(
'.modal-wrapper'
));
wrapper
.
beforeStyles
({
'opacity'
:
1
});
wrapper
.
fromTo
(
'transform'
,
'translateX(100%)'
,
'translateX(0%)'
);
const
contentWrapper
=
new
Animation
(
this
.
plt
,
ele
.
querySelector
(
'ion-content.content'
));
contentWrapper
.
beforeStyles
({
'width'
:
'100%'
});
this
.
element
(
this
.
enteringView
.
pageRef
())
.
duration
(
300
)
.
easing
(
'cubic-bezier(.25, .1, .25, 1)'
)
.
add
(
backdrop
)
.
add
(
wrapper
)
.
add
(
contentWrapper
);
}
}
export
class
ModalFromRightLeave
extends
PageTransition
{
public
init
()
{
super
.
init
();
const
ele
=
this
.
leavingView
.
pageRef
().
nativeElement
;
const
backdrop
=
new
Animation
(
this
.
plt
,
ele
.
querySelector
(
'ion-backdrop'
));
backdrop
.
beforeStyles
({
'visibility'
:
'hidden'
});
const
wrapper
=
new
Animation
(
this
.
plt
,
ele
.
querySelector
(
'.modal-wrapper'
));
wrapper
.
fromTo
(
'transform'
,
'translateX(0%)'
,
'translateX(100%)'
);
this
.
element
(
this
.
leavingView
.
pageRef
())
.
duration
(
300
)
.
easing
(
'cubic-bezier(.25, .1, .25, 1)'
)
.
add
(
backdrop
)
.
add
(
wrapper
);
}
}
export
class
ModalScaleEnter
extends
PageTransition
{
public
init
()
{
super
.
init
();
const
ele
=
this
.
enteringView
.
pageRef
().
nativeElement
;
const
wrapper
=
new
Animation
(
this
.
plt
,
ele
.
querySelector
(
'.modal-wrapper'
));
wrapper
.
beforeStyles
({
'opacity'
:
1
});
wrapper
.
fromTo
(
'transform'
,
'scale(0)'
,
'scale(1)'
);
this
.
element
(
this
.
enteringView
.
pageRef
())
.
duration
(
400
)
.
easing
(
'cubic-bezier(.1, .7, .1, 1)'
)
.
add
(
wrapper
);
}
}
export
class
ModalScaleLeave
extends
PageTransition
{
public
init
()
{
super
.
init
();
const
ele
=
this
.
leavingView
.
pageRef
().
nativeElement
;
const
wrapper
=
new
Animation
(
this
.
plt
,
ele
.
querySelector
(
'.modal-wrapper'
));
wrapper
.
fromTo
(
'transform'
,
'scale(1)'
,
'scale(0)'
);
this
.
element
(
this
.
leavingView
.
pageRef
())
.
duration
(
400
)
.
easing
(
'cubic-bezier(.1, .7, .1, 1)'
)
.
add
(
wrapper
);
}
}
\ No newline at end of file
...
...
src/pages/serve-pages/business-unit/business-detail/business-detail.html
0 → 100644
View file @
342a9eab
<ion-header>
<ion-navbar>
<ion-title>
businessDetail
</ion-title>
</ion-navbar>
</ion-header>
<ion-content
padding
>
</ion-content>
src/pages/serve-pages/business-unit/business-detail/business-detail.scss
0 → 100644
View file @
342a9eab
page-business-detail
{
}
src/pages/serve-pages/business-unit/business-detail/business-detail.ts
0 → 100644
View file @
342a9eab
import
{
Component
}
from
'@angular/core'
;
import
{
IonicPage
,
NavController
,
NavParams
}
from
'ionic-angular'
;
@
Component
({
selector
:
'page-business-detail'
,
templateUrl
:
'business-detail.html'
,
})
export
class
BusinessDetailPage
{
constructor
(
public
navCtrl
:
NavController
,
public
navParams
:
NavParams
)
{
}
ionViewDidLoad
()
{
console
.
log
(
'ionViewDidLoad BusinessDetailPage'
);
}
}
src/pages/serve-pages/business-unit/business-unit.html
0 → 100644
View file @
342a9eab
<ion-header>
<ion-navbar>
<ion-title>
业务制度
</ion-title>
</ion-navbar>
<ion-content>
<ion-refresher
(
ionRefresh
)="
doRefresh
($
event
)"
>
<ion-refresher-content
pullingText=
"下拉刷新"
refreshingSpinner=
"bubbles"
>
</ion-refresher-content>
</ion-refresher>
<div
class=
"search-content"
>
<ng-container
*
ngFor=
"let item of newList"
>
<div
class=
"search-item"
(
click
)="
goToDetail
(
item
)"
>
<p
class=
"item-info"
>
<span
class=
"item-source"
>
{{item.source}}
</span>
<span>
{{item.publishTime | date:'yyyy-MM-dd'}}
</span>
</p>
<div
class=
"item-news"
>
<ion-row
class=
"news-item"
>
<!-- 标题图片 -->
<ng-container
*
ngIf=
"item.path"
>
<ng-container
*
ngIf=
"item.resourceType == 1"
>
<ion-col
col-8
class=
"news-left"
>
<p
class=
"news-title"
>
{{item.title}}
<ion-icon
*
ngIf=
"item.topTime"
class=
"icon-fire iconfont"
></ion-icon>
</p>
</ion-col>
<ion-col
col-4
class=
"news-right"
>
<img
src=
"{{picture + item.path}}"
>
</ion-col>
</ng-container>
<ng-container
*
ngIf=
"item.resourceType == 2"
>
<ion-col
col-12
class=
"news-left"
>
<p
class=
"news-title"
>
{{item.title}}
<ion-icon
*
ngIf=
"item.topTime"
class=
"icon-fire iconfont"
></ion-icon>
</p>
</ion-col>
</ng-container>
<!-- 视频 -->
<ng-container
*
ngIf=
"item.resourceType == 3"
>
<ion-col
col-12
class=
"news-left"
>
<p
class=
"news-title"
>
{{item.title}}
<ion-icon
*
ngIf=
"item.topTime"
class=
"icon-fire iconfont"
></ion-icon>
</p>
<div
style=
"width: 100%;max-height: 180px;"
>
<video
width=
"100%"
height=
"100%"
crossorigin=
"anonymous"
(
canplay
)="
loadVideo
($
event
)"
(
play
)="
clickVideo
($
event
)"
preload=
"metadata"
controls=
"controls"
muted=
"muted"
>
<source
[
src
]="
picture
+
item
.
path
+
'#
t=
1'
"
>
您的浏览器不支持 html5。
</video>
</div>
</ion-col>
</ng-container>
</ng-container>
<ng-container
*
ngIf=
"!item.path"
>
<ion-col
col-12
class=
"news-left"
>
<p
class=
"news-title"
>
{{item.title}}
<ion-icon
*
ngIf=
"item.topTime"
class=
"icon-fire iconfont"
></ion-icon>
</p>
</ion-col>
</ng-container>
</ion-row>
</div>
</div>
</ng-container>
</div>
<ion-infinite-scroll
(
ionInfinite
)="
doInfinite
($
event
)"
>
<ion-infinite-scroll-content
loadingSpinner=
"bubbles"
loadingText=
"加载中"
></ion-infinite-scroll-content>
</ion-infinite-scroll>
</ion-content>
src/pages/serve-pages/business-unit/business-unit.module.ts
0 → 100644
View file @
342a9eab
import
{
NgModule
}
from
'@angular/core'
;
import
{
IonicPageModule
}
from
'ionic-angular'
;
import
{
BusinessUnitPage
}
from
'./business-unit'
;
import
{
BusinessDetailPage
}
from
"./business-detail/business-detail"
;
@
NgModule
({
declarations
:
[
BusinessUnitPage
,
BusinessDetailPage
],
imports
:
[
IonicPageModule
.
forChild
(
BusinessUnitPage
),
],
entryComponents
:
[
BusinessDetailPage
,
]
})
export
class
BusinessUnitPageModule
{
}
src/pages/serve-pages/business-unit/business-unit.scss
0 → 100644
View file @
342a9eab
page-business-unit
{
.search-header
{
display
:
flex
;
flex-direction
:
row
;
align-items
:
center
;
justify-content
:
center
;
box-sizing
:
border-box
;
width
:
95%
;
margin-left
:
5px
;
ion-input
{
border-bottom
:
1px
solid
#ffffff
;
background-color
:
#fff
;
border-radius
:
5px
;
height
:
30px
;
padding-left
:
10px
;
}
}
ion-navbar
{
height
:
44px
;
}
.
text-input
:
:-
webkit-input-placeholder
{
color
:
#ffffff
;
}
.clear
{
border-radius
:
15px
;
text-align
:
center
;
margin-left
:
10px
;
color
:
#ffffff
;
font-size
:
1
.8rem
;
}
.filter-new
{
height
:
3rem
;
line-height
:
2
.2rem
;
}
.segment-ios
.segment-button
{
border-color
:
#e12724
;
color
:
#e12724
;
height
:
2
.2rem
;
line-height
:
2rem
;
}
.segment-ios
.segment-button.segment-activated
{
background-color
:
#e12724
;
}
.header-ios
.toolbar-ios
:last-child
.toolbar-background-ios
{
border
:
none
;
}
//新闻区
.search-content
{
padding
:
0
1rem
5rem
1rem
;
.search-item
{
padding
:
.2rem
0
;
.item-info
{
margin
:
.8rem
0
;
color
:
#989898
;
.item-source
{
color
:
#d88f27
;
font-weight
:
500
;
margin-right
:
1rem
;
}
}
.news-left
{
display
:
flex
;
flex-flow
:
row
wrap
;
min-height
:
100%
;
padding
:
5px
;
.news-title
{
align-self
:
flex-start
;
font-weight
:
bold
;
width
:
100%
;
//margin-bottom: 1rem;
color
:
#333333
;
font-size
:
1
.6rem
;
font-family
:
SourceHanSans-Bold
;
position
:
relative
;
.icon-fire
{
position
:
absolute
;
top
:
3px
;
left
:
-14px
;
font-size
:
1
.5rem
;
color
:
#e42417
;
}
}
.news-end
{
align-self
:
flex-end
;
color
:
#989898
;
font-size
:
1
.5rem
;
margin-top
:
.5rem
;
ion-icon
{
font-size
:
1
.2rem
;
}
span
{
margin-right
:
.8rem
;
font-size
:
1rem
;
}
}
}
.news-right
{
padding
:
5px
;
text-align
:
center
;
max-height
:
60px
;
img
{
border-radius
:
.5rem
;
}
}
}
.search-item
+
.search-item
{
border-top
:
1px
solid
#eeeeee
;
}
}
}
src/pages/serve-pages/business-unit/business-unit.ts
0 → 100644
View file @
342a9eab
import
{
Component
,
ViewChild
}
from
'@angular/core'
;
import
{
InfiniteScrollContent
,
IonicPage
,
NavController
,
NavParams
}
from
'ionic-angular'
;
import
{
AppGlobal
}
from
"../../../service/http.service"
;
import
{
TabsService
}
from
"../../tabs/tabs.service"
;
import
{
StuffDetailPage
}
from
"../../home-pages/stuff-detail/stuff-detail"
;
@
IonicPage
()
@
Component
({
selector
:
'page-business-unit'
,
templateUrl
:
'business-unit.html'
,
})
export
class
BusinessUnitPage
{
@
ViewChild
(
InfiniteScrollContent
)
infiniteScrollContent
:
InfiniteScrollContent
;
picture
:
string
=
AppGlobal
.
domain
+
'/wisdomgroup'
;
newList
=
[];
searchObj
=
{
title
:
''
,
stuffType
:
null
,
//类型:(1图文,2视频)
order
:
'desc'
,
//asc升序 desc 降序
};
pageNum
:
number
=
1
;
pageSize
=
AppGlobal
.
pageCount
;
totalNum
:
number
;
constructor
(
public
navCtrl
:
NavController
,
public
navParams
:
NavParams
,
public
tabs
:
TabsService
)
{
}
ionViewDidEnter
()
{
this
.
search
();
}
ionViewDidLeave
()
{
const
videoArr
=
document
.
querySelectorAll
(
"video"
);
for
(
let
i
=
0
;
i
<
videoArr
.
length
;
i
++
)
{
videoArr
[
i
].
pause
();
}
}
//查询列表
search
()
{
const
data
=
{
pageNum
:
1
,
pageSize
:
this
.
pageSize
,
isRecent
:
0
,
obj
:
this
.
searchObj
,
};
this
.
tabs
.
stuffPage
(
data
).
subscribe
(
(
res
)
=>
{
this
.
newList
=
res
.
data
.
list
;
this
.
totalNum
=
res
.
data
.
total
;
this
.
newList
.
forEach
(
e
=>
{
if
(
e
.
attachments
&&
e
.
attachments
.
length
>
0
)
{
e
.
path
=
e
.
attachments
[
0
].
path
;
e
.
resourceType
=
e
.
attachments
[
0
].
resourceType
;
}
})
}
)
}
//下拉刷新
doRefresh
(
e
)
{
this
.
infiniteScrollContent
.
inf
.
enable
(
true
);
this
.
search
();
setTimeout
(()
=>
{
e
.
complete
();
},
800
);
}
//上拉加载
doInfinite
(
e
)
{
if
(
this
.
totalNum
==
this
.
newList
.
length
)
{
console
.
log
(
'done'
);
e
.
enable
(
false
);
return
false
;
}
this
.
pageNum
++
;
const
data
=
{
pageNum
:
1
,
pageSize
:
this
.
pageSize
,
isRecent
:
0
,
obj
:
this
.
searchObj
,
};
this
.
tabs
.
stuffPage
(
data
).
subscribe
(
(
res
)
=>
{
this
.
totalNum
=
res
.
data
.
total
;
res
.
data
.
list
.
forEach
(
e
=>
{
if
(
e
.
attachments
&&
e
.
attachments
.
length
>
0
)
{
e
.
path
=
e
.
attachments
[
0
].
path
;
e
.
resourceType
=
e
.
attachments
[
0
].
resourceType
;
}
this
.
newList
.
push
(
e
);
});
e
.
complete
();
}
)
}
//查看详情
goToDetail
(
item
)
{
this
.
navCtrl
.
push
(
StuffDetailPage
,
{
id
:
item
.
id
});
}
//列表视频不同时播放
clickVideo
(
e
)
{
const
videoArr
=
document
.
querySelectorAll
(
"video"
);
for
(
let
i
=
0
;
i
<
videoArr
.
length
;
i
++
)
{
if
(
videoArr
[
i
]
!=
e
.
target
)
{
videoArr
[
i
].
pause
();
}
}
}
loadVideo
(
e
)
{
const
scale
=
0.8
;
const
canvas
=
document
.
createElement
(
'canvas'
);
canvas
.
width
=
120
*
scale
;
canvas
.
height
=
120
*
scale
;
//绘制图片
canvas
.
getContext
(
'2d'
).
drawImage
(
e
.
target
,
0
,
0
,
canvas
.
width
,
canvas
.
height
);
//设置标签的poster属性
let
img
=
new
Image
();
img
.
src
=
canvas
.
toDataURL
(
"image/png"
);
img
.
setAttribute
(
"crossOrigin"
,
'Anonymous'
)
img
.
onload
=
()
=>
{
// console.log(img);
e
.
target
.
setAttribute
(
"poster"
,
canvas
.
toDataURL
(
"image/png"
));
}
}
}
src/pages/serve-pages/goods-collect/evaluation/evaluation.html
View file @
342a9eab
<ion-header>
<ion-navbar>
<ion-title>
申领评价
</ion-title>
</ion-navbar>
</ion-header>
<ion-content>
<div
class=
"order"
*
ngFor=
"let item of orderList"
>
<div
class=
"orderTips"
>
<p>
<span
*
ngIf=
"item.status == 2"
>
已申请
</span>
<span
*
ngIf=
"item.status == 3"
>
已领取
</span>
<span
*
ngIf=
"item.status == 4"
>
已驳回
</span>
<span
float-right
>
时间:{{item.submitTime | date:'yyyy-MM-dd HH:mm:ss'}}
</span>
</p>
<p>
<span>
申请人:{{item.applicantName}}
</span>
<span
float-right
>
申请部门:{{item.orgName}}
</span>
</p>
</div>
<div
class=
"goodsList"
>
<ng-container
*
ngFor=
"let goods of item.suppies"
>
<div
class=
"goodsItem"
>
<div
class=
"goods-img"
>
<img
[
src
]="
picture
+
goods
.
url
"
>
</div>
<div
class=
"goods-info"
>
<p
class=
"model"
>
{{goods.brand}}
<span>
{{goods.model}}
</span>
</p>
<p>
<span
class=
"specs"
>
规格:
<span>
{{goods.specs1}}
</span>
<span>
{{goods.specs2}}
</span>
<span>
{{goods.specs3}}
</span>
<span>
{{goods.specs4}}
</span>
<span>
{{goods.specs5}}
</span>
</span>
<span
class=
"amount"
>
数量:{{goods.amount}}
</span>
</p>
</div>
</div>
</ng-container>
</div>
</div>
</ion-content>
\ No newline at end of file
...
...
src/pages/serve-pages/goods-collect/evaluation/evaluation.scss
View file @
342a9eab
page-evaluation
{
.main
{
background-color
:
rgba
(
0
,
0
,
0
,
.4
);
height
:
100%
;
}
.content
{
position
:
relative
;
height
:
100%
;
width
:
100%
;
}
.comment
{
position
:
absolute
;
width
:
100%
;
bottom
:
0
;
height
:
60%
;
background
:
#fff
;
.order
{
font-size
:
1
.6rem
;
color
:
#333333
;
background-color
:
#fff
;
margin
:
10px
;
border-radius
:
8px
;
box-shadow
:
-5px
0px
5px
1px
#f2f2f2
,
0px
-5px
5px
1px
#f2f2f2
,
5px
0px
5px
1px
#f2f2f2
,
0px
5px
5px
1px
#f2f2f2
;
.orderTips
{
padding
:
10px
;
background-color
:
#fff1f0
;
color
:
#e42417
;
border-top-right-radius
:
8px
;
border-top-left-radius
:
8px
;
padding
:
5px
15px
;
.name
{
padding
:
20px
5px
;
font-size
:
2rem
;
font-weight
:
bold
;
font-size
:
1
.4rem
;
p
+
p
{
margin-top
:
10px
;
}
ion-icon
{
font-size
:
3rem
;
font-weight
:
bold
;
ion-checkbox
{
vertical-align
:
bottom
;
margin-right
:
10px
;
}
.p-name
{
padding
:
10px
5px
;
font-weight
:
bold
;
}
.detail-item
{
margin-bottom
:
10px
;
margin-top
:
10px
;
span
{
display
:
inline-block
;
padding
:
5px
20px
;
background-color
:
#f2f2f2
;
border-radius
:
10px
;
margin-right
:
20px
;
margin-bottom
:
10px
;
border
:
1px
solid
#f2f2f2
;
.goodsList
{
padding
:
10px
;
border-bottom-right-radius
:
8px
;
border-bottom-left-radius
:
8px
;
}
span
.select
{
background-color
:
#fdf8f2
;
border
:
1px
solid
#e42417
;
color
:
#e42417
;
.model
{
padding
:
5px
0
;
font-size
:
1
.4rem
;
}
.specs
{
color
:
#666666
;
font-size
:
1
.3rem
;
}
.choose-spces
{
display
:
flex
;
.amount
{
color
:
#666666
;
font-size
:
1
.3rem
;
div
:last-child
{
margin-left
:
auto
;
span
{
margin-left
:
5px
;
}
}
}
.choose-nu
m
{
.goodsIte
m
{
display
:
flex
;
height
:
40px
;
line-height
:
40px
;
div
:last-child
{
margin-left
:
auto
;
}
}
.img-star
{
span
{
color
:
#999999
;
font-size
:
2rem
;
}
.goods-img
{
width
:
20%
;
padding
:
5px
10px
5px
5px
;
}
.submit-btn
{
position
:
absolute
;
bottom
:
20px
;
margin-left
:
8%
;
.goods-info
{
width
:
80%
;
}
}
}
src/pages/serve-pages/goods-collect/evaluation/evaluation.ts
View file @
342a9eab
...
...
@@ -2,64 +2,37 @@ import {Component, ElementRef, Renderer2, ViewChild} from '@angular/core';
import
{
IonicPage
,
NavController
,
NavParams
,
ViewController
}
from
'ionic-angular'
;
import
{
ServeService
}
from
"../../serve.service"
;
import
{
CommonService
}
from
"../../../../provide/common.service"
;
import
{
AppGlobal
}
from
"../../../../service/http.service"
;
@
Component
({
selector
:
'page-evaluation'
,
templateUrl
:
'evaluation.html'
,
})
export
class
EvaluationPage
{
@
ViewChild
(
'starEle'
)
starEle
:
ElementRef
;
goods
;
goodsId
;
choose
=
{
amount
:
<
any
>
'1'
,
brand
:
''
,
officeId
:
''
,
id
:
''
,
model
:
''
,
};
orderId
;
orderList
;
select
=
0
;
starList
=
new
Array
(
5
);
picture
=
AppGlobal
.
picture
;
goodsDetail
;
constructor
(
private
viewCtrl
:
ViewController
,
private
params
:
NavParams
,
private
renderer
:
Renderer2
,
private
serveSer
:
ServeService
,
private
commonSer
:
CommonService
)
{
this
.
goodsId
=
this
.
params
.
get
(
'goodsId'
);
this
.
goodsDetail
=
this
.
params
.
get
(
'data'
);
if
(
this
.
goodsDetail
)
{
this
.
choose
.
amount
=
this
.
goodsDetail
.
amount
;
}
this
.
serveSer
.
supplyDetail
(
this
.
goodsId
).
subscribe
(
(
res
)
=>
{
this
.
goods
=
res
;
}
)
constructor
(
public
navCtrl
:
NavController
,
public
navParams
:
NavParams
,
private
serveSer
:
ServeService
)
{
}
checkStar
(
index
)
{
console
.
log
(
this
.
starEle
);
this
.
select
=
index
;
ionViewDidLoad
(
)
{
this
.
orderId
=
this
.
navParams
.
get
(
'id'
);
this
.
getDetail
()
;
}
close
()
{
this
.
viewCtrl
.
dismiss
();
getDetail
(){
const
data
=
{
type
:
0
,
parentId
:
this
.
orderId
}
stop
(
e
)
{
e
.
stopPropagation
()
;
this
.
serveSer
.
searchSubmited
(
data
).
subscribe
(
(
res
)
=>
{
this
.
orderList
=
res
.
list
;
}
//提交
submit
()
{
this
.
choose
.
brand
=
this
.
goods
.
brand
;
this
.
choose
.
officeId
=
this
.
goods
.
id
;
if
(
this
.
goodsDetail
)
this
.
choose
.
id
=
this
.
goods
.
id
;
//购物车编辑
this
.
choose
.
model
=
this
.
goods
.
model
;
console
.
log
(
this
.
choose
);
this
.
viewCtrl
.
dismiss
(
this
.
choose
);
)
}
}
src/pages/serve-pages/goods-collect/goods-collect.scss
View file @
342a9eab
...
...
@@ -112,7 +112,7 @@ page-goods-collect {
}
.scroll-tab
{
margin-right
:
50px
;
background-color
:
#fff
;
}
.tabs-parent
{
...
...
src/pages/serve-pages/serve.service.ts
View file @
342a9eab
This diff is collapsed.
Click to expand it.
src/pages/serve-pages/vistor-register/vistor-apply/vistor-apply.ts
View file @
342a9eab
...
...
@@ -13,7 +13,7 @@ import {PersonMulComponent} from "../../../../components/person-mul/person-mul";
})
export
class
VistorApplyPage
{
obj
=
<
any
>
{
obj
=
<
any
>
{
visitorName
:
''
,
visitorOrg
:
''
,
carNumber
:
''
,
...
...
@@ -77,14 +77,14 @@ export class VistorApplyPage {
}
if
(
checkBool
)
return
false
;
this
.
obj
.
visitTime
=
this
.
datePipe
.
transform
(
this
.
obj
.
visitTime
,
'yyyy-MM-dd HH:mm'
);
if
(
this
.
applyId
)
this
.
obj
.
id
=
this
.
applyId
;
this
.
obj
.
visitTime
=
new
Date
(
this
.
obj
.
visitTime
).
getTime
(
);
if
(
this
.
applyId
)
this
.
obj
.
id
=
this
.
applyId
;
this
.
commonSer
.
alert
(
'确定提交登记?'
,
()
=>
{
this
.
serveSer
.
saveVisitorApply
(
this
.
obj
).
subscribe
(
(
res
)
=>
{
if
(
res
.
errcode
==
1000
)
{
this
.
navCtrl
.
pop
()
this
.
navCtrl
.
pop
()
;
this
.
commonSer
.
toast
(
'访客登记成功'
);
}
else
{
this
.
commonSer
.
toast
(
res
.
errmsg
);
...
...
src/pages/serve-pages/vistor-register/vistor-register.html
View file @
342a9eab
...
...
@@ -4,7 +4,7 @@
<ion-title>
访客登记
</ion-title>
<ion-buttons
end
>
<button
ion-button
(
click
)="
goApply
(
null
)"
>
<ion-icon
class=
"top-right-icon icon-fabu iconfont"
></ion-icon>
<ion-icon
style=
"font-size: 2rem"
class=
"top-right-icon icon-fabu iconfont"
></ion-icon>
</button>
</ion-buttons>
</ion-navbar>
...
...
@@ -92,7 +92,12 @@
<ion-item-sliding
class=
"apply"
*
ngFor=
"let item of applyList"
>
<ion-item>
<p>
访客名称:{{item.visitorName}}
<span>
访客名称:
<span>
{{item.visitorName}}
</span>
</span>
<span
float-end
>
访问时间:
<span>
{{item.visitTime | date:'yyyy-MM-dd HH:mm'}}
</span>
</span>
...
...
src/pages/serve-pages/vistor-register/vistor-register.ts
View file @
342a9eab
...
...
@@ -138,16 +138,8 @@ export class VistorRegisterPage {
//新增申请
goApply
(
item
)
{
if
(
this
.
role
.
includes
(
0
))
return
false
;
let
data
;
if
(
item
)
{
data
=
{
roomId
:
item
.
id
,
roomName
:
item
.
name
,
startTime
:
this
.
selectDate
+
' 9:00:00'
,
};
}
this
.
navCtrl
.
push
(
RoomApplyPage
,
{
data
:
data
});
this
.
navCtrl
.
push
(
VistorApplyPage
);
}
}
src/pages/tabs/discover/discover.html
View file @
342a9eab
...
...
@@ -75,7 +75,7 @@
</div>
<div
class=
"fixed-toolbar"
>
<div
class=
"tabs-fixed"
>
<div
class=
"scroll-tab"
>
<div
class=
"scroll-tab"
style=
"padding: 0;background-color:#fff;"
>
<div
class=
"news-content"
#
newsContent
>
<div
class=
"tabs-parent"
>
<div
class=
"tabs-child"
>
...
...
@@ -85,6 +85,9 @@
</div>
</div>
</div>
<span
class=
"more"
(
click
)="
moreParty
()"
>
<ion-icon
name=
"list"
></ion-icon>
</span>
</div>
</div>
</div>
...
...
src/pages/tabs/discover/discover.ts
View file @
342a9eab
...
...
@@ -231,9 +231,11 @@ export class DiscoverPage {
itemWidth
;
spanWidth
;
branchList
;
//党支部列表
constructor
(
public
navCtrl
:
NavController
,
public
navParams
:
NavParams
,
public
commonSer
:
CommonService
,
public
renderer
:
Renderer2
,
public
zone
:
NgZone
,
public
storage
:
Storage
,
private
modalCtrl
:
ModalController
,
public
zone
:
NgZone
,
public
storage
:
Storage
,
private
modalCtrl
:
ModalController
,
public
tabsSer
:
TabsService
,
public
emitSer
:
EmitService
)
{
// 接收发射过来的数据
this
.
emitSer
.
eventEmit
.
subscribe
((
value
:
any
)
=>
{
...
...
@@ -250,6 +252,7 @@ export class DiscoverPage {
this
.
initSwiper
();
this
.
getBanner
();
this
.
scrollHeight
();
this
.
getBranch
();
timer
(
20
).
subscribe
(()
=>
{
const
htmlFontSize
=
getComputedStyle
(
window
.
document
.
documentElement
)[
'font-size'
];
this
.
itemWidth
=
htmlFontSize
.
split
(
"px"
)[
0
]
*
8
;
...
...
@@ -266,6 +269,15 @@ export class DiscoverPage {
}
}
//获取党支部
getBranch
()
{
this
.
tabsSer
.
getBranchList
().
subscribe
(
(
res
)
=>
{
this
.
branchList
=
res
.
data
;
}
)
}
public
dragTo
(
e
)
{
if
(
e
.
target
.
scrollLeft
>
window
.
screen
.
width
/
3
)
{
this
.
toRight
=
false
;
...
...
@@ -417,7 +429,6 @@ export class DiscoverPage {
});
this
.
slides
.
slideTo
(
this
.
indexParent
,
500
);
this
.
slideList
[
this
.
indexParent
]
=
this
.
newList
;
console
.
log
(
this
.
newList
);
}
)
}
...
...
@@ -514,7 +525,7 @@ export class DiscoverPage {
//上拉加载更多
doInfinite
(
e
)
{
console
.
log
(
'doInfinite:'
+
this
.
slideList
[
this
.
indexParent
].
length
);
console
.
log
(
'doInfinite:'
+
this
.
slideList
[
this
.
indexParent
].
length
);
if
(
this
.
totalNum
==
this
.
slideList
[
this
.
indexParent
].
length
||
this
.
totalNum
<
this
.
slideList
[
this
.
indexParent
].
length
)
{
e
.
complete
();
return
false
;
...
...
@@ -620,7 +631,7 @@ export class DiscoverPage {
}
//多模块
moreTab
(){
moreTab
()
{
let
modal
=
this
.
modalCtrl
.
create
(
FilterComponent
,
{
list
:
this
.
tabsList
,
type
:
this
.
obj
.
plateType
},
{
enterAnimation
:
'modal-from-right-enter'
,
leaveAnimation
:
'modal-from-right-leave'
...
...
@@ -633,5 +644,18 @@ export class DiscoverPage {
modal
.
present
();
}
moreParty
()
{
let
modal
=
this
.
modalCtrl
.
create
(
FilterComponent
,
{
list
:
this
.
branchList
,
type
:
this
.
obj
.
plateType
},
{
enterAnimation
:
'modal-from-right-enter'
,
leaveAnimation
:
'modal-from-right-leave'
});
modal
.
onDidDismiss
(
data
=>
{
if
(
data
)
{
this
.
changeParent
(
data
)
}
});
modal
.
present
();
}
}
src/pages/tabs/key/key.html
View file @
342a9eab
...
...
@@ -56,7 +56,7 @@
<label
class=
"label2-2 more2-2"
>
值班管理
</label>
</div>
</div>
<div
(
click
)="
goTo
('
LearningLis
tPage
')"
>
<div
(
click
)="
goTo
('
BusinessUni
tPage
')"
>
<div
class=
"card"
>
<img
src=
"./assets/imgs/home/icon-ywzd.png"
>
<label
class=
"label2-2 more2-2"
>
业务制度
</label>
...
...
src/pages/tabs/tabs.service.ts
View file @
342a9eab
...
...
@@ -213,4 +213,9 @@ export class TabsService {
updatePassword
(
data
):
Observable
<
any
>
{
return
this
.
http
.
post
(
AppGlobal
.
domain
+
'/wisdomgroup/manager/updatePassword'
,
this
.
commonSer
.
toFormData
(
data
));
}
//获取党支部
getBranchList
():
Observable
<
any
>
{
return
this
.
http
.
get
(
AppGlobal
.
domain
+
'/wisdomgroup/sysmanagement/org/getBranchList'
);
}
}
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