Commit ad9e8103 authored by wangqinghua's avatar wangqinghua

color

parent 1d8a2caf
......@@ -4,6 +4,7 @@
/plugins
/platforms
/resources
/*.apk
......
<?xml version='1.0' encoding='utf-8'?>
<widget id="io.ionic.starter" version="1.3.6" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<widget id="io.ionic.starter2" version="1.3.8" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>智汇19号(测)</name>
<description>An awesome Ionic/Cordova app.</description>
<author email="hi@ionicframework" href="http://ionicframework.com/">Ionic Framework Team</author>
......
This diff is collapsed.
{
"name": "ionic-demo",
"version": "0.0.1",
"version": "0.0.5",
"author": "Ionic Framework",
"homepage": "http://ionicframework.com/",
"private": true,
......@@ -27,21 +27,32 @@
"@ionic-native/file": "^4.11.0",
"@ionic-native/file-opener": "^4.11.0",
"@ionic-native/file-transfer": "^4.11.0",
"@ionic-native/geolocation": "^4.15.0",
"@ionic-native/keyboard": "^4.6.0",
"@ionic-native/splash-screen": "4.4.0",
"@ionic-native/status-bar": "4.4.0",
"@ionic/storage": "2.1.3",
"cordova": "^8.0.0",
"cordova-android": "7.0.0",
"cordova-browser": "5.0.4",
"cordova-ios": "4.5.5",
"cordova-plugin-app-version": "^0.1.9",
"cordova-plugin-badge": "^0.8.7",
"cordova-plugin-device": "^2.0.1",
"cordova-plugin-ionic-keyboard": "^2.0.5",
"cordova-plugin-file": "^6.0.1",
"cordova-plugin-file-opener2": "^2.0.19",
"cordova-plugin-file-transfer": "^1.7.1",
"cordova-plugin-geolocation": "^4.0.1",
"cordova-plugin-ionic-webview": "^1.1.16",
"cordova-plugin-splashscreen": "^5.0.2",
"cordova-plugin-statusbar": "^2.4.2",
"cordova-plugin-whitelist": "^1.3.3",
"ion2-calendar": "^2.2.0",
"ionic-angular": "3.9.2",
"ionic-plugin-keyboard": "^2.2.1",
"ionicons": "3.0.0",
"ios": "0.0.1",
"moment": "^2.22.2",
"rxjs": "5.5.2",
"sw-toolbox": "3.6.0",
"zone.js": "0.8.18"
......@@ -57,10 +68,22 @@
"cordova-plugin-device": {},
"cordova-plugin-splashscreen": {},
"cordova-plugin-ionic-webview": {},
"cordova-plugin-ionic-keyboard": {},
"cordova-plugin-app-version": {},
"cordova-plugin-badge": {},
"cordova-plugin-file": {},
"cordova-plugin-file-transfer": {},
"cordova-plugin-geolocation": {
"GEOLOCATION_USAGE_DESCRIPTION": "To locate you"
},
"ionic-plugin-keyboard": {},
"cordova-plugin-app-version": {}
"cordova-plugin-file-opener2": {},
"cordova-plugin-ionic-keyboard": {},
"cordova-plugin-statusbar": {}
},
"platforms": []
"platforms": [
"ios",
"browser",
"android"
]
}
}
\ No newline at end of file
......@@ -23,34 +23,92 @@
"is_top_level": true,
"variables": {}
},
"cordova-plugin-ionic-keyboard": {
"cordova-plugin-device": {
"source": {
"type": "registry",
"id": "cordova-plugin-ionic-keyboard@^2.0.5"
"id": "cordova-plugin-device@^2.0.1"
},
"is_top_level": true,
"variables": {}
},
"cordova-plugin-device": {
"cordova-plugin-app-version": {
"source": {
"type": "registry",
"id": "cordova-plugin-device@^2.0.1"
"id": "cordova-plugin-app-version"
},
"is_top_level": true,
"variables": {}
},
"cordova-plugin-badge": {
"source": {
"type": "registry",
"id": "cordova-plugin-badge"
},
"is_top_level": true,
"variables": {}
},
"cordova-plugin-file": {
"source": {
"type": "registry",
"id": "cordova-plugin-file@6.0.1"
},
"is_top_level": true,
"variables": {}
},
"cordova-plugin-file-transfer": {
"source": {
"type": "registry",
"id": "cordova-plugin-file-transfer"
},
"is_top_level": true,
"variables": {}
},
"cordova-plugin-geolocation": {
"source": {
"type": "registry",
"id": "cordova-plugin-geolocation@^4.0.1"
},
"is_top_level": true,
"variables": {
"GEOLOCATION_USAGE_DESCRIPTION": "To locate you"
}
},
"ionic-plugin-keyboard": {
"source": {
"type": "registry",
"id": "ionic-plugin-keyboard@^2.2.1"
"id": "ionic-plugin-keyboard"
},
"is_top_level": true,
"variables": {}
},
"cordova-plugin-app-version": {
"cordova-plugin-file-opener2": {
"source": {
"type": "registry",
"id": "cordova-plugin-app-version"
"id": "cordova-plugin-file-opener2@^2.0.19"
},
"is_top_level": true,
"variables": {}
},
"cordova-plugin-ionic-keyboard": {
"source": {
"type": "registry",
"id": "cordova-plugin-ionic-keyboard@^2.0.5"
},
"is_top_level": true,
"variables": {}
},
"cordova-hot-code-push-plugin": {
"source": {
"type": "registry",
"id": "cordova-hot-code-push-plugin@^1.5.3"
},
"is_top_level": true,
"variables": {}
},
"cordova-plugin-statusbar": {
"source": {
"type": "registry",
"id": "cordova-plugin-statusbar@2.4.2"
},
"is_top_level": true,
"variables": {}
......
......@@ -38,7 +38,13 @@
<ion-item *ngFor="let item of allList">
<div class="group">
<div class="inner-group">
<img src="./assets/imgs/head.png" class="person-photo">
<ng-container *ngIf="item?.picUrl && item?.picUrl != ''">
<img src="{{picture+item?.picUrl}}" class="contact-img">
</ng-container>
<ng-container *ngIf="!item?.picUrl || item?.picUrl == ''">
<img src="./assets/imgs/man.png" class="contact-img" *ngIf="item.gender =='1'||item.gender==null">
<img src="./assets/imgs/woman.png" class="contact-img" *ngIf="item.gender =='0'">
</ng-container>
<div class="item-box">
<p class="person-name">{{item?.name}}
<ion-icon class="person-sex-male" *ngIf="item?.gender == '1'||item?.gender == null"
......@@ -84,7 +90,13 @@
<ion-item *ngFor="let item of notSignList">
<div class="group">
<div class="inner-group">
<img src="./assets/imgs/head.png" class="person-photo">
<ng-container *ngIf="item?.picUrl && item?.picUrl != ''">
<img src="{{picture+item.picUrl}}" class="contact-img">
</ng-container>
<ng-container *ngIf="!item?.picUrl || item?.picUrl == ''">
<img src="./assets/imgs/man.png" class="contact-img" *ngIf="item.gender =='1'||item.gender==null">
<img src="./assets/imgs/woman.png" class="contact-img" *ngIf="item.gender =='0'">
</ng-container>
<div class="item-box">
<p class="person-name">{{item?.name}}
<ion-icon class="person-sex-male" *ngIf="item?.gender == '1'||item?.gender == null"
......@@ -107,25 +119,27 @@
</ion-item>
</ng-container>
<ng-container *ngIf="type == 3">
<ion-item *ngFor="let item of signList">
<ion-item *ngFor="let item of signList" style="position: relative">
<div class="group">
<div class="inner-group">
<img src="./assets/imgs/head.png" class="person-photo">
<ng-container *ngIf="item?.picUrl && item?.picUrl != ''">
<img src="{{picture+item.picUrl}}" class="contact-img">
</ng-container>
<ng-container *ngIf="!item?.picUrl || item?.picUrl == ''">
<img src="./assets/imgs/man.png" class="contact-img" *ngIf="item.gender =='1'||item.gender==null">
<img src="./assets/imgs/woman.png" class="contact-img" *ngIf="item.gender =='0'">
</ng-container>
<div class="item-box">
<p class="person-name">{{item?.name}}
<ion-icon class="person-sex-male" *ngIf="item?.gender == '1'||item?.gender == null"
name="male"></ion-icon>
<ion-icon class="person-sex-female" *ngIf="item?.gender == '0'"
name="female"></ion-icon>
<span (click)="cancelSignUp(item)" ion-button round class="cancelButton btn color3 blue-btn">取消报名</span>
</p>
<span class="person-batch">批次:{{item?.batchNames}}</span>
</div>
</div>
<button disabled ion-button round class="btn color2" *ngIf="item?.orderstate == 1">已报名</button>
<button disabled ion-button round class="btn color1" *ngIf="item?.orderstate == 2">待确认</button>
<button disabled ion-button round class="btn color5" *ngIf="item?.orderstate == 3">未出行</button>
<button disabled ion-button round class="btn color4" *ngIf="item?.orderstate == 4">已出行</button>
<button disabled ion-button round class="btn color3" *ngIf="item?.orderstate == 0">未报名</button>
</div>
</ion-item>
</ng-container>
......@@ -133,7 +147,13 @@
<ion-item *ngFor="let item of noJoinList">
<div class="group">
<div class="inner-group">
<img src="./assets/imgs/head.png" class="person-photo">
<ng-container *ngIf="item?.picUrl && item?.picUrl != ''">
<img src="{{picture+item.picUrl}}" class="contact-img">
</ng-container>
<ng-container *ngIf="!item?.picUrl || item?.picUrl == ''">
<img src="./assets/imgs/man.png" class="contact-img" *ngIf="item.gender =='1'||item.gender==null">
<img src="./assets/imgs/woman.png" class="contact-img" *ngIf="item.gender =='0'">
</ng-container>
<div class="item-box">
<p class="person-name">{{item?.name}}
<ion-icon class="person-sex-male" *ngIf="item?.gender == '1'||item?.gender == null"
......
......@@ -139,12 +139,12 @@ page-joinDetail {
.item-box{
display: inline-block;
margin-left: 20px;
}
.person-name{
font-size: 18px;
color: black;
}
.person-sex-male{
......@@ -191,5 +191,15 @@ page-joinDetail {
color: #fff;
border: 2px solid #34b4fc;
}
.contact-img{
width: 4rem;
height: 4rem;
border-radius: 2px;
}
.cancelButton{
position: absolute;
right: 10px;
top: 10px;
}
}
......@@ -3,7 +3,7 @@ import {IonicPage, NavController, NavParams, AlertController, ToastController} f
import {Http, Response,} from '@angular/http';
import {AppService} from '../../../service/appHttpService';
import {AppGlobal, AppService} from '../../../service/appHttpService';
import {ActivityStatisticService} from '../../../service/activityStatisticService';
import {ReplaceApplyPage} from "../replace-apply/replace-apply";
import {message} from "../../../app/main";
......@@ -39,6 +39,7 @@ export class JoinDetailPage {
//未报名
notSign: number;
notSignList = [];
picture: string = AppGlobal.picture;
constructor(public navCtrl: NavController,
public navParams: NavParams,
......@@ -180,6 +181,11 @@ export class JoinDetailPage {
);
}
//取消报名
cancelSignUp(item){
}
search() {
this.navCtrl.push('ActivitySearchPage', {id: this.acitivityid});
}
......
......@@ -16,7 +16,8 @@
</ion-item>
<ion-item class="margin-top-15">
<ion-label>换班原因</ion-label>
<ion-textarea placeholder="请输入换班原因" class="duty-textarea" [(ngModel)]="reason"></ion-textarea>
<ion-textarea placeholder="请在此处输入换班原因" class="duty-textarea" [(ngModel)]="reason"></ion-textarea>
<ion-label class="textarea-tips">100/200</ion-label>
</ion-item>
</ion-list>
<button class="submit-btn submit" (click)="submit()">申请</button>
......
......@@ -15,4 +15,11 @@ page-duty-apply {
.list-ios > .item-block:last-child, .list-ios > .item-wrapper:last-child .item-block{
border-bottom: none;
}
.textarea-tips{
position: absolute;
bottom: -5px;
right: 10px;
color: #808080;
font-size: 12px;
}
}
......@@ -11,7 +11,7 @@ export class DutyApplyPage {
id;
date;
reason;
reason = '';
constructor(public navCtrl: NavController, public navParams: NavParams,
public appService: AppService) {
}
......@@ -26,10 +26,13 @@ export class DutyApplyPage {
scheduleId:this.id,
reason:this.reason
};
this.appService.alert('确定提交该申请?',res=>{
this.appService.ObserverHttpPost('/wisdomgroup/changeApply/app/apply',data)
.subscribe((res )=>{
this.appService.popToastView('提交该申请成功!','middle',1000);
this.navCtrl.pop();
})
});
}
}
......@@ -29,13 +29,14 @@ export class DutyDetailPage {
}
submitOrder() {
console.log(this.dutyDetail);
const id = this.dutyDetail.id;
this.appService.alert('确定撤销该申请?', (res) => {
this.appService.ObserverHttpGetOption('/wisdomgroup/changeApply/app/deleteApply', {'id': id})
.subscribe((res) => {
this.appService.popToastView('撤销申请成功!','middle',1500);
this.navCtrl.pop();
// this.dutyDetail = res;
})
});
}
}
......@@ -7,16 +7,9 @@
</ion-header>
<!--<ion-content class="text-center">-->
<!--<p *ngIf="signState == 0">未签到</p>-->
<!--<p *ngIf="signState == 1">已签到</p>-->
<!--</ion-content>-->
<ion-content class="bgc-e7e8ed">
<!--没有值班-->
<ng-container *ngIf="signState == 0">
<ng-container *ngIf="!signInfo">
<div text-center class="bgc-fff" style="padding: 5rem;">
<img style="width: 20%;" src="./assets/imgs/no-info.png">
<p text-center class="color-666">
......@@ -43,10 +36,12 @@
</div>
</div>
</ng-container>
<ng-container *ngIf="signState == 1">
<ng-container *ngIf="signInfo">
<div class="padding-10-20 bgc-fff detail-title">
<div class="title-left">
<span>{{nowDay | date:'yyyy-MM-dd'}}</span>
<span class="dayType" *ngIf="signInfo.type == 0">白班</span>
<span class="dayType" *ngIf="signInfo.type == 1">夜班</span>
</div>
<div class="title-right">
<ng-container *ngIf="signStatus == 'success'">
......@@ -61,25 +56,25 @@
</div>
<div class="detail-item">
<p class="detail-title1"><span class="color-666">签到:</span>规定签到时间10:00之前</p>
<ng-container>
<p>尚未签到</p>
<ng-container *ngIf="!signInfo?.signInTime">
<p class="not-sign">尚未签到</p>
</ng-container>
<ng-container *ngIf="signInfo?.signInTime">
<p class="sign-in">签到时间:{{signInfo?.signInTime | date:'yyyy-MM-dd HH:mm:ss'}}</p>
<p class="sign-in">签到地点:上海市委组织部</p>
</ng-container>
<!--<ng-container>-->
<!--<p>签到时间</p>-->
<!--<p>签到地点:上海市委组织部</p>-->
<!--</ng-container>-->
</div>
<button class="submit-btn submit" (click)="signIn()">定位签到</button>
<button class="submit-btn submit" (click)="calcuDistance()">定位签到</button>
<div class="detail-item">
<p class="detail-title2"> <span class="color-666">签退:</span>规定签到时间10:00之前</p>
<ng-container>
<p>尚未签退</p>
<ng-container *ngIf="!signInfo?.signOutTime">
<p class="not-sign">尚未签退</p>
</ng-container>
<ng-container *ngIf="signInfo?.signOutTime">
<p class="sign-in">签退时间:{{signInfo?.signOutTime | date:'yyyy-MM-dd HH:mm:ss'}}</p>
<p class="sign-in">签退地点:上海市委组织部</p>
</ng-container>
<!--<ng-container>-->
<!--<p>签退时间</p>-->
<!--<p>签退地点:上海市委组织部</p>-->
<!--</ng-container>-->
</div>
<button class="submit-btn submit" (click)="signBack()">定位签退</button>
</ng-container>
......
......@@ -9,12 +9,18 @@ page-duty-sign-up {
margin: 10px;
border-radius: 4px;
padding-bottom: 10px;
p:not(:first-child){
.not-sign{
margin:20px 10px;
height: 5rem;
text-align: center;
line-height: 5rem;
}
.sign-in{
margin:20px 10px;
height: 2rem;
line-height: 2rem;
padding-left: 20px;
}
.detail-title1{
background-color: #f4f4f4;
color: #999999;
......@@ -62,4 +68,11 @@ page-duty-sign-up {
margin: 5px 0;
}
}
.dayType{
background-color: #34b4fc;
color: #fff;
border-radius: 2px;
font-size: 12px;
padding: 2px 5px;
}
}
......@@ -14,7 +14,9 @@ export class DutySignUpPage {
id;
signState;
signStatus = 'fail';
signInfo = {
id:''
};
//市委组织部坐标
mainLat = 31.205033; //纬度
// mainLat = 31.231871; //纬度test 31.231871, 121.393319
......@@ -27,23 +29,23 @@ export class DutySignUpPage {
}
ionViewDidLoad() {
this.nowDay = moment().format('l');
console.log(this.nowDay);
this.appService.ObserverHttpGet('/wisdomgroup/schedule/mySchedleOfToday', null)
this.appService.ObserverHttpGetOption('/wisdomgroup/schedule/myScheduleOfToday', null)
.subscribe((res) => {
this.signState = res.json();
if(res){
this.signInfo = res.json();
}
})
}
//签到
signIn() {
const data = {
id: this.id, //值班记录id,
id: this.signInfo.id, //值班记录id,
address: '上海市委组织部' //签到地址
};
this.appService.ObserverHttpGet('/wisdomgroup/schedule/signIn', data)
this.appService.ObserverHttpGetOption('/wisdomgroup/schedule/signIn', data)
.subscribe((res) => {
console.log(res);
})
......@@ -53,7 +55,7 @@ export class DutySignUpPage {
signBack() {
this.calcuDistance();
const data = {
id:this.id, //值班记录id,
id:this.signInfo.id, //值班记录id,
address:'上海市委组织部' //签到地址
};
this.appService.ObserverHttpGet('/wisdomgroup/schedule/signOut',data)
......
......@@ -13,7 +13,13 @@
<ion-item *ngFor="let item of items">
<div class="group">
<div class="inner-group">
<img src="./assets/imgs/head.png" class="person-photo">
<ng-container *ngIf="item?.picUrl && item?.picUrl != ''">
<img src="{{picture+item.picUrl}}" class="contact-img">
</ng-container>
<ng-container *ngIf="!item?.picUrl || item?.picUrl == ''">
<img src="./assets/imgs/man.png" class="contact-img" *ngIf="item.gender =='1'||item.gender==null">
<img src="./assets/imgs/woman.png" class="contact-img" *ngIf="item.gender =='0'">
</ng-container>
<div class="item-box">
<p class="person-name">{{item.name}}
<ion-icon class="person-sex-male" *ngIf="item.gender === 1" name="male"></ion-icon>
......
......@@ -135,6 +135,7 @@ page-report-search {
.item-box {
display: inline-block;
margin-left: 10px;
}
.person-name {
......@@ -172,4 +173,9 @@ page-report-search {
.text-input::-webkit-input-placeholder{
color:#fff;
}
.contact-img{
width: 4rem;
height: 4rem;
border-radius: 2px;
}
}
import {Component} from '@angular/core';
import {IonicPage, NavController, NavParams} from 'ionic-angular';
import {AppService} from "../../../service/appHttpService";
import {AppGlobal, AppService} from "../../../service/appHttpService";
import {Storage} from "@ionic/storage";
@IonicPage()
......@@ -14,6 +14,7 @@ export class ReportSearchPage {
searchValue = '';
items;
id;
picture: string = AppGlobal.picture;
constructor(public navCtrl: NavController, public navParams: NavParams,
public appService: AppService, public storage: Storage) {
......
......@@ -33,7 +33,13 @@
<ion-item *ngFor="let item of items">
<div class="group">
<div class="inner-group">
<img src="./assets/imgs/head.png" class="person-photo">
<ng-container *ngIf="item?.picUrl && item?.picUrl != ''">
<img src="{{picture+item.picUrl}}" class="contact-img">
</ng-container>
<ng-container *ngIf="!item?.picUrl || item?.picUrl == ''">
<img src="./assets/imgs/man.png" class="contact-img" *ngIf="item.gender =='1'||item.gender==null">
<img src="./assets/imgs/woman.png" class="contact-img" *ngIf="item.gender =='0'">
</ng-container>
<div class="item-box">
<p class="person-name">{{item.name}}
<ion-icon class="person-sex-male" *ngIf="item.gender === 1" name="male"></ion-icon>
......
page-reportDetail {
.contact-img{
width: 4rem;
height: 4rem;
border-radius: 2px;
}
.searchToolBar {
display: flex;
flex-direction: row;
......@@ -112,6 +117,7 @@ page-reportDetail {
.item-box {
display: inline-block;
margin-left: 10px;
}
.person-name {
......
......@@ -3,7 +3,7 @@ import {IonicPage, NavController, NavParams, AlertController, ToastController} f
import {Http, Response} from '@angular/http';
import {Storage} from '@ionic/storage';
import {AppService} from '../../../service/appHttpService';
import {AppGlobal, AppService} from '../../../service/appHttpService';
import {ReportSearchPage} from "../report-search/report-search";
@IonicPage()
......@@ -20,6 +20,7 @@ export class ReportDetailPage {
title: string;
type: number;
id;
picture: string = AppGlobal.picture;
premanager; //报备信息
constructor(public navCtrl: NavController,
......
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