Commit a5600786 authored by wangqinghua's avatar wangqinghua

申请列表

parent 87077db2
...@@ -522,6 +522,12 @@ a[disabled], button[disabled], [ion-button][disabled], ...@@ -522,6 +522,12 @@ a[disabled], button[disabled], [ion-button][disabled],
padding-bottom: 20px; padding-bottom: 20px;
} }
ion-buttons button .top-right-icon{
color: #ffffff;
font-size: 2rem;
margin-left: 5px;
}
//相机的actionsheet //相机的actionsheet
.cameraAction { .cameraAction {
.action-sheet-wrapper { .action-sheet-wrapper {
......
<!--
Generated template for the HairApplyPage page.
See http://ionicframework.com/docs/components/#navigation for more info on
Ionic pages and navigation.
-->
<ion-header> <ion-header>
<ion-navbar> <ion-navbar>
<ion-title>hairApply</ion-title> <ion-title>预约理发</ion-title>
</ion-navbar> </ion-navbar>
</ion-header> </ion-header>
<ion-content padding> <ion-content>
<div class="padding-6">
<ion-item>
<ion-label class="item-left"><span class="color-red">*</span>预约时间:</ion-label>
<ion-datetime cancelText="取消" doneText="确认" displayFormat="YYYY-MM-DD"
pickerFormat="YYYY MM DD" placeholder="请选择"
(ionChange)="console($event)"
[(ngModel)]="obj.startTime"></ion-datetime>
<ion-label *ngIf="check.startTime" class="check-tips">请选择开始时间</ion-label>
</ion-item>
<ion-item>
<ion-label class="item-left"><span class="color-red">*</span>时间段:</ion-label>
<ion-label class="choose" (click)="chooseTime()">{{obj.timeText}}</ion-label>
<ion-label class="right-arrow">
<ion-icon name="arrow-forward"></ion-icon>
</ion-label>
<ion-label *ngIf="check.startTime" class="check-tips">请选择开始时间</ion-label>
</ion-item>
<div class="item-box">
<div class="left">服务类型:</div>
<div class="right">
<span *ngFor="let item of leaderList;" class="tag"
(click)="chooseLeader(item)"
[ngClass]="obj.orgLeader.indexOf(item.id) > -1 ? 'selectLead':''">
{{item.userName}}
</span>
</div>
</div>
<div class="item-box">
<div class="left">备注:</div>
<div class="right">
<ion-textarea [(ngModel)]="obj.remark"></ion-textarea>
</div>
</div>
</div>
<button class="submit-btn submit" (click)="submit()">提交</button>
</ion-content> </ion-content>
page-hair-apply { page-hair-apply {
.item-left {
text-align: right;
width: 20%;
font-weight: bold;
font-size: 1.4rem;
flex: none;
}
.item-ios.item-block .item-inner {
border-bottom: 0.55px solid #eeeeee;
}
ion-datetime, ion-select {
width: 80%;
max-width: 80%;
text-align: right;
font-size: 1.4rem;
}
ion-input input {
text-align: right;
font-size: 1.4rem;
}
.item-box {
display: flex;
border-bottom: 0.55px solid #eeeeee;
.left {
text-align: right;
width: 20%;
font-weight: bold;
font-size: 1.4rem;
margin: 11px 8px 11px 0;
}
.right {
width: 80%;
padding: 11px 8px 11px 16px;
.div-tag {
padding: 10px 0;
span {
display: inline-block;
margin-right: 10px;
white-space: initial;
border: 1px solid #eee;
padding: 2px 5px;
font-size: 1rem;
margin-bottom: 5px;
border-radius: 4px;
ion-icon {
margin-left: 3px;
color: #666666;
font-size: 1rem;
}
}
}
button {
margin: 0;
}
ion-textarea {
padding: 6px;
height: 100px;
border: 1px solid #ddd;
}
.tag {
border: 1px solid #ccc;
margin: 0 5px 10px 0;
display: inline-block;
border-radius: 4px;
font-size: 1.2rem;
width: 60px;
height: 25px;
text-align: center;
line-height: 25px;
}
span.selectLead {
background-color: #fdf8f2;
border: 1px solid #e42417;
color: #e42417;
}
}
}
ion-item,.item-box{
position: relative;
}
.check-tips{
position: absolute;
font-size: 1.2rem;
top: 24px;
color: red;
left: 10px;
}
.right-arrow {
position: absolute;
right: 2px;
top: 5px;
color: #999;
font-size: 1.6rem;
}
.choose{
text-align: right;
margin-right: 20px;
font-size: 1.5rem;
color: #999;
}
}
.picker-columns > div:first-child,
.picker-columns > div:last-child{
flex: 2;
} }
import { Component } from '@angular/core'; import {Component} from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular'; import {ActionSheetController, IonicPage, ModalController, NavController, NavParams} from 'ionic-angular';
import {ServeService} from "../../serve.service";
import {CommonService} from "../../../../provide/common.service";
import {DatePipe} from "@angular/common";
import {PersonMulComponent} from "../../../../components/person-mul/person-mul";
@Component({ @Component({
...@@ -8,11 +12,236 @@ import { IonicPage, NavController, NavParams } from 'ionic-angular'; ...@@ -8,11 +12,236 @@ import { IonicPage, NavController, NavParams } from 'ionic-angular';
}) })
export class HairApplyPage { export class HairApplyPage {
constructor(public navCtrl: NavController, public navParams: NavParams) {
obj = {
meetingType: '1',
roomId: null,
orgId: null,
startTime: '',
endTime: '',
orgLeader: [],
personList: [],
remark: '',
participant: '',
participantAmount: '',
equipmervice: [],
time: '',
timeText: '请选择'
};
check = {
roomId: false,
startTime: false,
participantAmount: false,
personList: false,
orgId: false
};
roomList = [];
orgList = [];
leaderList = [];
personList = [];
roomMax = '请输入参会人数'; //会议室最大人数
applyId; //是否编辑
constructor(public navCtrl: NavController, public navParams: NavParams, private actionSheetCtrl: ActionSheetController,
private serveSer: ServeService, public modalCtrl: ModalController,
private commonSer: CommonService, private datePipe: DatePipe) {
} }
ionViewDidLoad() { ionViewDidLoad() {
console.log('ionViewDidLoad HairApplyPage'); this.getList();
this.applyId = this.navParams.get('id');
if (this.applyId) {
this.meetDetail();
}
}
//会议详情
meetDetail() {
this.serveSer.meetDetail(this.applyId).subscribe(
(res) => {
if (res) {
this.personList = res.participants.map(e => {
const m = {
id: e.userId,
userName: e.userName
};
return m;
});
this.obj.orgLeader = res.leaders;
this.obj.meetingType = res.meetingType;
this.obj.startTime = this.datePipe.transform(res.startTime, 'yyyy-MM-dd HH:mm');
this.obj.remark = res.remark;
this.obj.equipmervice = res.equipmervice.split(',');
this.obj.participantAmount = res.participantAmount;
this.obj.orgId = res.orgId;
this.obj.roomId = res.roomId;
}
}
)
}
//会议室列表,部领导列表,处室列表
getList() {
this.serveSer.getLeaders().subscribe(
(res) => {
this.leaderList = res.data;
}
);
this.serveSer.getRoomList().subscribe(
(res) => {
this.roomList = res.data;
}
);
const data = {order: 0};
this.serveSer.getAllOrganization(data).subscribe(
(res) => {
this.orgList = res;
}
)
}
//选择部领导
chooseLeader(item) {
const index = this.obj.orgLeader.indexOf(item.id);
if (index > -1) {
this.obj.orgLeader.splice(index, 1);
} else {
this.obj.orgLeader.push(item.id);
}
}
//选择时间段
chooseTime() {
const buttonsArr = [
{
text: '9:00-10:00',
handler: () => {
this.obj.time = '1';
this.obj.timeText = '9:00-10:00';
}
},
{
text: '10:00-11:00',
handler: () => {
this.obj.time = '2';
this.obj.timeText = '10:00-11:00';
}
},
{
text: '11:00-12:00',
handler: () => {
this.obj.time = '3';
this.obj.timeText = '11:00-12:00';
}
},
{
text: '14:00-15:00',
handler: () => {
this.obj.time = '4';
this.obj.timeText = '14:00-15:00';
}
},
{
text: '15:00-16:00',
handler: () => {
this.obj.time = '5';
this.obj.timeText = '15:00-16:00';
}
},
{
text: '16:00-17:00',
handler: () => {
this.obj.time = '6';
this.obj.timeText = '16:00-17:00';
}
}, {
text: '取消',
role: 'cancel',
handler: () => {
console.log('Cancel clicked');
}
}
];
const actionSheet = this.actionSheetCtrl.create({
cssClass: 'cameraAction',
buttons: buttonsArr
});
actionSheet.present();
}
//选择人员
choose() {
let modal = this.modalCtrl.create(PersonMulComponent, {
enterAnimation: 'modal-scale-enter',
leaveAnimation: 'modal-scale-leave'
});
modal.onDidDismiss(data => {
if (data) {
this.personList = data;
}
});
modal.present();
}
submit() {
//校验
let checkBool = false;
for (let i in this.check) {
if (!this.obj[i] || this.personList.length == 0) {
checkBool = true;
this.check[i] = true;
} else {
this.check[i] = false;
}
}
if (checkBool) return false;
let orgName;
this.orgList.forEach(e => {
if (this.obj.orgId == e.id) {
orgName = e.name;
}
});
const data = {
meetingType: this.obj.meetingType,
roomId: this.obj.roomId,
orgId: this.obj.orgId,
orgName: orgName,
startTime: new Date(this.obj.startTime).getTime(),
endTime: new Date(this.obj.endTime).getTime(),
orgLeader: this.obj.orgLeader.join(','),
remark: this.obj.remark,
participant: this.personList.map(e => {
return e.id
}).join(','),
participantAmount: this.obj.participantAmount,
equipmervice: this.obj.equipmervice.join(','),
};
if (this.applyId) data['id'] = this.applyId;
console.log(data);
this.commonSer.alert('确定提交申请?', () => {
this.serveSer.saveApply(data).subscribe(
(res) => {
if (res.errcode == 1000) {
this.navCtrl.pop()
this.commonSer.toast('会议室申请成功');
} else {
this.commonSer.toast(res.errmsg);
}
}
)
});
}
console(e) {
console.log(e)
} }
} }
<ion-header> <ion-header>
<ion-navbar> <ion-navbar>
<ion-title>会议室预定</ion-title> <ion-title>理发</ion-title>
<ion-buttons end> <ion-buttons end>
<button ion-button (click)="addMeet()"> <button ion-button (click)="addOrder()">
<span ion-text style="font-size: 1.4rem" class="color-fff margin-right-10">新增预定</span> <ion-icon class="top-right-icon icon-fabu iconfont"></ion-icon>
</button>
</ion-buttons>
<ion-buttons end *ngIf="role.includes(1) || role.includes(6)">
<button ion-button icon-only (click)="goDeal()" class="toolbar-icon">
<span style="font-size: 2.5rem" class="top-right-icon icon iconfont icon-shenhe"></span>
</button> </button>
</ion-buttons> </ion-buttons>
</ion-navbar> </ion-navbar>
<div class="duty"> <div class="duty">
<div class="dutyItem" (click)="change(1)"> <div class="dutyItem" (click)="change(1)">
<span class="{{changeType == 1?'duty-title':''}}">会议安排</span> <span class="{{changeType == 1?'duty-title':''}}">理发安排</span>
</div> </div>
<div class="dutyItem" (click)="change(2)"> <div class="dutyItem" (click)="change(2)">
<span class="{{changeType == 2?'duty-title':''}}">我的预定</span> <span class="{{changeType == 2?'duty-title':''}}">我的预约</span>
</div> </div>
</div> </div>
</ion-header> </ion-header>
...@@ -31,7 +36,7 @@ ...@@ -31,7 +36,7 @@
</ion-calendar> </ion-calendar>
<div class="room"> <div class="room">
<div class="already"> <div class="already">
<p>已预定会议室</p> <p>已预约时间</p>
<div class="morning"> <div class="morning">
<div class="morning-text"> <div class="morning-text">
上午 上午
...@@ -54,7 +59,7 @@ ...@@ -54,7 +59,7 @@
</div> </div>
</div> </div>
<div class="notYet"> <div class="notYet">
<p>可预定会议室</p> <p>可预约时间</p>
<div class="morning"> <div class="morning">
<div class="morning-text"> <div class="morning-text">
上午 上午
...@@ -123,5 +128,6 @@ ...@@ -123,5 +128,6 @@
</div> </div>
</ng-container> </ng-container>
</ion-content> </ion-content>
</ion-content> </ion-content>
...@@ -14,7 +14,7 @@ import {CalendarModule} from "ion2-calendar"; ...@@ -14,7 +14,7 @@ import {CalendarModule} from "ion2-calendar";
IonicPageModule.forChild(HairCutPage), IonicPageModule.forChild(HairCutPage),
], ],
entryComponents: [ entryComponents: [
HairApplyPage HairApplyPage,
] ]
}) })
export class HairCutPageModule { export class HairCutPageModule {
......
import { Component } from '@angular/core'; import {Component} from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular'; import {IonicPage, NavController, NavParams} from 'ionic-angular';
import {CalendarComponentOptions} from "ion2-calendar"; import {CalendarComponentOptions} from "ion2-calendar";
import {monthCh, weekDay} from "../../../app/main"; import {monthCh, weekDay} from "../../../app/main";
import {AppGlobal} from "../../../service/http.service"; import {AppGlobal} from "../../../service/http.service";
...@@ -7,6 +7,9 @@ import {ServeService} from "../serve.service"; ...@@ -7,6 +7,9 @@ import {ServeService} from "../serve.service";
import {DatePipe} from "@angular/common"; import {DatePipe} from "@angular/common";
import {CommonService} from "../../../provide/common.service"; import {CommonService} from "../../../provide/common.service";
import {RoomApplyPage} from "../meet-room/room-apply/room-apply"; import {RoomApplyPage} from "../meet-room/room-apply/room-apply";
import {HairApplyPage} from "./hair-apply/hair-apply";
import {AppMainService} from "../../../app/app.service";
import {HairDealPage} from "./hair-deal/hair-deal";
@IonicPage() @IonicPage()
...@@ -29,6 +32,7 @@ export class HairCutPage { ...@@ -29,6 +32,7 @@ export class HairCutPage {
room; room;
applyList = []; applyList = [];
role = [];
pageNumber = 1; pageNumber = 1;
pageSize = AppGlobal.pageCount; pageSize = AppGlobal.pageCount;
...@@ -37,13 +41,19 @@ export class HairCutPage { ...@@ -37,13 +41,19 @@ export class HairCutPage {
constructor(public navCtrl: NavController, public navParams: NavParams, constructor(public navCtrl: NavController, public navParams: NavParams,
private serveSer: ServeService, public datePipe: DatePipe, private serveSer: ServeService, public datePipe: DatePipe,
private commonSer: CommonService) { private commonSer: CommonService, private appMainSer: AppMainService) {
} }
ionViewDidEnter() { ionViewDidEnter() {
const date = this.datePipe.transform(new Date(), 'yyyy-MM-dd'); const date = this.datePipe.transform(new Date(), 'yyyy-MM-dd');
this.getApply(date); this.getApply(date);
this.myApply(); this.myApply();
//获取权限
this.appMainSer.role.subscribe(value => {
this.role = value;
}
);
} }
//获取预定日程 //获取预定日程
...@@ -86,8 +96,12 @@ export class HairCutPage { ...@@ -86,8 +96,12 @@ export class HairCutPage {
} }
//新增预定 //新增预定
addMeet() { addOrder() {
this.navCtrl.push(RoomApplyPage); this.navCtrl.push(HairApplyPage);
}
goDeal(){
this.navCtrl.push(HairDealPage);
} }
//改变 //改变
......
...@@ -3,8 +3,13 @@ ...@@ -3,8 +3,13 @@
<ion-navbar> <ion-navbar>
<ion-title>会议室预定</ion-title> <ion-title>会议室预定</ion-title>
<ion-buttons end> <ion-buttons end>
<button ion-button (click)="addMeet()"> <button ion-button (click)="addOrder()">
<span ion-text style="font-size: 1.4rem" class="color-fff margin-right-10">新增预定</span> <ion-icon class="top-right-icon icon-fabu iconfont"></ion-icon>
</button>
</ion-buttons>
<ion-buttons end *ngIf="role.includes(1) || role.includes(6)">
<button ion-button icon-only (click)="goDeal()" class="toolbar-icon">
<span style="font-size: 2.5rem" class="top-right-icon icon iconfont icon-shenhe"></span>
</button> </button>
</ion-buttons> </ion-buttons>
......
...@@ -3,18 +3,21 @@ import {IonicPageModule} from 'ionic-angular'; ...@@ -3,18 +3,21 @@ import {IonicPageModule} from 'ionic-angular';
import {MeetRoomPage} from './meet-room'; import {MeetRoomPage} from './meet-room';
import {RoomApplyPage} from "./room-apply/room-apply"; import {RoomApplyPage} from "./room-apply/room-apply";
import {CalendarModule} from "ion2-calendar"; import {CalendarModule} from "ion2-calendar";
import {RoomDealPage} from "./room-deal/room-deal";
@NgModule({ @NgModule({
declarations: [ declarations: [
MeetRoomPage, MeetRoomPage,
RoomApplyPage, RoomApplyPage,
RoomDealPage
], ],
imports: [ imports: [
CalendarModule, CalendarModule,
IonicPageModule.forChild(MeetRoomPage), IonicPageModule.forChild(MeetRoomPage),
], ],
entryComponents: [ entryComponents: [
RoomApplyPage RoomApplyPage,
RoomDealPage
] ]
}) })
export class MeetRoomPageModule { export class MeetRoomPageModule {
......
...@@ -7,6 +7,8 @@ import {ServeService} from "../serve.service"; ...@@ -7,6 +7,8 @@ import {ServeService} from "../serve.service";
import {DatePipe} from "@angular/common"; import {DatePipe} from "@angular/common";
import {AppGlobal} from "../../../service/http.service"; import {AppGlobal} from "../../../service/http.service";
import {CommonService} from "../../../provide/common.service"; import {CommonService} from "../../../provide/common.service";
import {AppMainService} from "../../../app/app.service";
import {RoomDealPage} from "./room-deal/room-deal";
@IonicPage() @IonicPage()
@Component({ @Component({
...@@ -26,6 +28,7 @@ export class MeetRoomPage { ...@@ -26,6 +28,7 @@ export class MeetRoomPage {
color: 'danger' color: 'danger'
}; };
role = [];
room; room;
applyList = []; applyList = [];
...@@ -36,13 +39,19 @@ export class MeetRoomPage { ...@@ -36,13 +39,19 @@ export class MeetRoomPage {
constructor(public navCtrl: NavController, public navParams: NavParams, constructor(public navCtrl: NavController, public navParams: NavParams,
private serveSer: ServeService, public datePipe: DatePipe, private serveSer: ServeService, public datePipe: DatePipe,
private commonSer: CommonService) { private commonSer: CommonService,private appMainSer:AppMainService) {
} }
ionViewDidEnter() { ionViewDidEnter() {
const date = this.datePipe.transform(new Date(), 'yyyy-MM-dd'); const date = this.datePipe.transform(new Date(), 'yyyy-MM-dd');
this.getApply(date); this.getApply(date);
this.myApply(); this.myApply();
//获取权限
this.appMainSer.role.subscribe(value => {
this.role = value;
}
);
} }
//获取预定日程 //获取预定日程
...@@ -85,10 +94,15 @@ export class MeetRoomPage { ...@@ -85,10 +94,15 @@ export class MeetRoomPage {
} }
//新增预定 //新增预定
addMeet() { addOrder() {
this.navCtrl.push(RoomApplyPage); this.navCtrl.push(RoomApplyPage);
} }
//审核
goDeal(){
this.navCtrl.push(RoomDealPage);
}
//改变 //改变
change(type) { change(type) {
this.changeType = type; this.changeType = type;
......
...@@ -102,3 +102,8 @@ page-room-apply { ...@@ -102,3 +102,8 @@ page-room-apply {
left: 10px; left: 10px;
} }
} }
.picker-columns > div:first-child,
.picker-columns > div:last-child{
flex: 2;
}
<!--
Generated template for the RoomDealPage page.
See http://ionicframework.com/docs/components/#navigation for more info on
Ionic pages and navigation.
-->
<ion-header>
<ion-navbar>
<ion-title>roomDeal</ion-title>
</ion-navbar>
</ion-header>
<ion-content padding>
</ion-content>
import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
@Component({
selector: 'page-room-deal',
templateUrl: 'room-deal.html',
})
export class RoomDealPage {
constructor(public navCtrl: NavController, public navParams: NavParams) {
}
ionViewDidLoad() {
console.log('ionViewDidLoad RoomDealPage');
}
}
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 ServeService { constructor( private http: HttpClient, //该请求 将结果转为json private commonSer: CommonService, private https: Http, //该请求不转json ) { } getAllOrganization(data): Observable<any> { return this.http.get(AppGlobal.domain + '/wisdomgroup/sysmanagement/org/getAllOrganization?' + this.commonSer.toQuery(data)); } /** 物品领用 **/ //办公用品列表 searchSupplies(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/officesupplies/searchSupplies', this.commonSer.toFormData(data)); } //物品详情 supplyDetail(params): Observable<any> { return this.http.get(AppGlobal.domain + '/wisdomgroup/modules/ordermanage/detail/' + params); } //保存订单 saveOrder(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/ordermanage/saveOrder', data); } //查询订单 myOrder(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/ordermanage/myOrder', this.commonSer.toFormData(data)); } //类型列表 getTypeList(): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/officesupplies/getTypeList', null); } //购物车 shoppingCar(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/ordermanage/shoppingCar', this.commonSer.toFormData(data)); } //更新购物车 saveOrderSuppy(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/ordermanage/saveOrderSuppy', data); } //删除购物车物品 deleteOrderSuppy(params): Observable<any> { return this.http.get(AppGlobal.domain + '/wisdomgroup/modules/ordermanage/deleteOrderSuppy/' + params); } //申请审核 dealOrder(data, params): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/ordermanage/dealOrder/' + params, this.commonSer.toFormData(data) ); } //查询未提交的 searchUnsubmit(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/ordermanage/searchUnsubmit',this.commonSer.toFormData(data) ); } //查询已提交的 searchSubmited(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/ordermanage/searchSubmited', this.commonSer.toFormData(data)); } /** 会议室预定 **/ queryMeetingRoomByDate(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/meetingapply/queryMeetingRoomByDate', this.commonSer.toFormData(data)); } //预定详情 meetDetail(params): Observable<any> { return this.http.get(AppGlobal.domain + '/wisdomgroup/modules/meetingapply/detail/' + params); } //会议室列表 getRoomList(): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/meetingapply/getRoomList', null); } //部领导列表 getLeaders(): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/meetingapply/getLeaders', null); } //保存会议申请 saveApply(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/meetingapply/saveApply', data); } //我的预定列表 queryMyApply(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/meetingapply/queryMyApply', this.commonSer.toFormData(data)); } //取消预定 cancelApply(params): Observable<any> { return this.http.get(AppGlobal.domain + '/wisdomgroup/modules/meetingapply/cancel/' + params); } /** 用车申请 **/ saveCarApply(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/carapply/saveApply', data); } //获取司机 getCarList(): Observable<any> { return this.http.get(AppGlobal.domain + '/wisdomgroup/modules/carapply/getCarList'); } //获取车辆 getDriverList(): Observable<any> { return this.http.get(AppGlobal.domain + '/wisdomgroup/modules/carapply/getDriverList'); } } 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 ServeService { constructor( private http: HttpClient, //该请求 将结果转为json private commonSer: CommonService, private https: Http, //该请求不转json ) { } getAllOrganization(data): Observable<any> { return this.http.get(AppGlobal.domain + '/wisdomgroup/sysmanagement/org/getAllOrganization?' + this.commonSer.toQuery(data)); } /** 物品领用 **/ //办公用品列表 searchSupplies(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/officesupplies/searchSupplies', this.commonSer.toFormData(data)); } //物品详情 supplyDetail(params): Observable<any> { return this.http.get(AppGlobal.domain + '/wisdomgroup/modules/ordermanage/detail/' + params); } //保存订单 saveOrder(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/ordermanage/saveOrder', data); } //查询订单 myOrder(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/ordermanage/myOrder', this.commonSer.toFormData(data)); } //类型列表 getTypeList(): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/officesupplies/getTypeList', null); } //购物车 shoppingCar(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/ordermanage/shoppingCar', this.commonSer.toFormData(data)); } //更新购物车 saveOrderSuppy(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/ordermanage/saveOrderSuppy', data); } //删除购物车物品 deleteOrderSuppy(params): Observable<any> { return this.http.get(AppGlobal.domain + '/wisdomgroup/modules/ordermanage/deleteOrderSuppy/' + params); } //申请审核 dealOrder(data, params): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/ordermanage/dealOrder/' + params, this.commonSer.toFormData(data)); } //查询未提交的 searchUnsubmit(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/ordermanage/searchUnsubmit', this.commonSer.toFormData(data)); } //查询已提交的 searchSubmited(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/ordermanage/searchSubmited', this.commonSer.toFormData(data)); } /** 会议室预定 **/ queryMeetingRoomByDate(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/meetingapply/queryMeetingRoomByDate', this.commonSer.toFormData(data)); } //预定详情 meetDetail(params): Observable<any> { return this.http.get(AppGlobal.domain + '/wisdomgroup/modules/meetingapply/detail/' + params); } //会议室列表 getRoomList(): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/meetingapply/getRoomList', null); } //部领导列表 getLeaders(): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/meetingapply/getLeaders', null); } //保存会议申请 saveApply(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/meetingapply/saveApply', data); } //我的预定列表 queryMyApply(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/meetingapply/queryMyApply', this.commonSer.toFormData(data)); } //取消预定 cancelApply(params): Observable<any> { return this.http.get(AppGlobal.domain + '/wisdomgroup/modules/meetingapply/cancel/' + params); } /** 用车申请 **/ //保存申请 saveCarApply(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/carapply/saveApply', data); } //获取司机 getCarList(): Observable<any> { return this.http.get(AppGlobal.domain + '/wisdomgroup/modules/carapply/getCarList'); } //获取车辆 getDriverList(): Observable<any> { return this.http.get(AppGlobal.domain + '/wisdomgroup/modules/carapply/getDriverList'); } //根据日期查询用车信息 queryCarApplyByDate(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/carapply/queryCarApplyByDate', data); } //查询用车详情 carDetail(params): Observable<any> { return this.http.get(AppGlobal.domain + '/wisdomgroup/modules/carapply/detail/' + params,); } //审核通过/驳回 operate(data): Observable<any> { return this.http.post(AppGlobal.domain + '/wisdomgroup/modules/carapply/operate', data); } }
\ No newline at end of file \ No newline at end of file
......
...@@ -114,3 +114,8 @@ page-car-apply { ...@@ -114,3 +114,8 @@ page-car-apply {
.cameraAction .action-sheet-wrapper .action-sheet-container .action-sheet-group .action-sheet-button { .cameraAction .action-sheet-wrapper .action-sheet-container .action-sheet-group .action-sheet-button {
font-size: 1.3rem; font-size: 1.3rem;
} }
.picker-columns > div:first-child,
.picker-columns > div:last-child{
flex: 2;
}
...@@ -24,16 +24,6 @@ export class CarApplyPage { ...@@ -24,16 +24,6 @@ export class CarApplyPage {
fromTo: '' fromTo: ''
}; };
reasonList = [
{id:'1',name:'参加市委市政府有市领导参加的重要会议及活动'},
{id:'2',name:'有中央领导部委及外省市主要部门负责人来访的重要公务接待活动'},
{id:'3',name:'有部领导参加的郊区调研。范围包括浦东新区(中环线以外)、宝山区、嘉定区、松江区、闵行区、青浦区、奉贤区、金山区、崇明区。(同乘一辆车)'},
{id:'4',name:'携带保密文件出席本市重要会议或向市领导汇报工作'},
{id:'5',name:'集中群体性上访人员紧急分流安置'},
{id:'6',name:'老同志用车'},
{id:'7',name:'机要交通'}
];
carList = []; carList = [];
driverList = []; driverList = [];
...@@ -54,9 +44,9 @@ export class CarApplyPage { ...@@ -54,9 +44,9 @@ export class CarApplyPage {
} }
} }
//会议详情 //用车详情
meetDetail() { meetDetail() {
this.serveSer.meetDetail(this.applyId).subscribe( this.serveSer.carDetail(this.applyId).subscribe(
(res) => { (res) => {
if (res) { if (res) {
console.log(this.obj); console.log(this.obj);
......
<!--
Generated template for the CarDealPage page.
See http://ionicframework.com/docs/components/#navigation for more info on
Ionic pages and navigation.
-->
<ion-header>
<ion-navbar>
<ion-title>carDeal</ion-title>
</ion-navbar>
</ion-header>
<ion-content padding>
</ion-content>
import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
@Component({
selector: 'page-car-deal',
templateUrl: 'car-deal.html',
})
export class CarDealPage {
constructor(public navCtrl: NavController, public navParams: NavParams) {
}
ionViewDidLoad() {
console.log('ionViewDidLoad CarDealPage');
}
}
...@@ -4,10 +4,9 @@ ...@@ -4,10 +4,9 @@
<ion-title>用车申请</ion-title> <ion-title>用车申请</ion-title>
<ion-buttons end> <ion-buttons end>
<button ion-button (click)="addApply()"> <button ion-button (click)="addApply()">
<span ion-text style="font-size: 1.4rem" class="color-fff margin-right-10">申请用车</span> <ion-icon class="top-right-icon icon-fabu iconfont"></ion-icon>
</button> </button>
</ion-buttons> </ion-buttons>
</ion-navbar> </ion-navbar>
<div class="duty"> <div class="duty">
<div class="dutyItem" (click)="change(1)"> <div class="dutyItem" (click)="change(1)">
......
...@@ -3,18 +3,21 @@ import {IonicPageModule} from 'ionic-angular'; ...@@ -3,18 +3,21 @@ import {IonicPageModule} from 'ionic-angular';
import {UseCarPage} from './use-car'; import {UseCarPage} from './use-car';
import {CarApplyPage} from "./car-apply/car-apply"; import {CarApplyPage} from "./car-apply/car-apply";
import {CalendarModule} from "ion2-calendar"; import {CalendarModule} from "ion2-calendar";
import {CarDealPage} from "./car-deal/car-deal";
@NgModule({ @NgModule({
declarations: [ declarations: [
UseCarPage, UseCarPage,
CarApplyPage CarApplyPage,
CarDealPage
], ],
imports: [ imports: [
CalendarModule, CalendarModule,
IonicPageModule.forChild(UseCarPage), IonicPageModule.forChild(UseCarPage),
], ],
entryComponents: [ entryComponents: [
CarApplyPage CarApplyPage,
CarDealPage
] ]
}) })
export class UseCarPageModule { export class UseCarPageModule {
......
import { Component } from '@angular/core'; import {Component} from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular'; import {IonicPage, NavController, NavParams} from 'ionic-angular';
import {CalendarComponentOptions} from "ion2-calendar"; import {CalendarComponentOptions} from "ion2-calendar";
import {monthCh, weekDay} from "../../../app/main"; import {monthCh, weekDay} from "../../../app/main";
import {ServeService} from "../serve.service"; import {ServeService} from "../serve.service";
...@@ -8,6 +8,7 @@ import {RoomApplyPage} from "../meet-room/room-apply/room-apply"; ...@@ -8,6 +8,7 @@ import {RoomApplyPage} from "../meet-room/room-apply/room-apply";
import {AppGlobal} from "../../../service/http.service"; import {AppGlobal} from "../../../service/http.service";
import {CommonService} from "../../../provide/common.service"; import {CommonService} from "../../../provide/common.service";
import {CarApplyPage} from "./car-apply/car-apply"; import {CarApplyPage} from "./car-apply/car-apply";
import {AppMainService} from "../../../app/app.service";
@IonicPage() @IonicPage()
@Component({ @Component({
...@@ -29,6 +30,7 @@ export class UseCarPage { ...@@ -29,6 +30,7 @@ export class UseCarPage {
room; room;
applyList = []; applyList = [];
role = [];
pageNumber = 1; pageNumber = 1;
pageSize = AppGlobal.pageCount; pageSize = AppGlobal.pageCount;
...@@ -37,19 +39,25 @@ export class UseCarPage { ...@@ -37,19 +39,25 @@ export class UseCarPage {
constructor(public navCtrl: NavController, public navParams: NavParams, constructor(public navCtrl: NavController, public navParams: NavParams,
private serveSer: ServeService, public datePipe: DatePipe, private serveSer: ServeService, public datePipe: DatePipe,
private commonSer: CommonService) { private commonSer: CommonService, private appMainSer: AppMainService) {
} }
ionViewDidEnter() { ionViewDidEnter() {
const date = this.datePipe.transform(new Date(), 'yyyy-MM-dd'); const date = this.datePipe.transform(new Date(), 'yyyy-MM-dd');
this.getApply(date); this.getApply(date);
this.myApply(); this.myApply();
//获取权限
this.appMainSer.role.subscribe(value => {
this.role = value;
}
);
} }
//获取预定日程 //获取预定日程
getApply(date) { getApply(date) {
const data = {'dateStr': date}; const data = {'dateStr': date};
this.serveSer.queryMeetingRoomByDate(data).subscribe( this.serveSer.queryCarApplyByDate(data).subscribe(
(res) => { (res) => {
this.room = res.data; this.room = res.data;
} }
...@@ -97,7 +105,7 @@ export class UseCarPage { ...@@ -97,7 +105,7 @@ export class UseCarPage {
//编辑申请 //编辑申请
goApplyEdit(item) { goApplyEdit(item) {
this.navCtrl.push(RoomApplyPage, {id: item.applyId}); this.navCtrl.push(CarApplyPage, {id: item.applyId});
} }
//新增申请 //新增申请
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment