Commit 2be6d0e3 authored by wangqinghua's avatar wangqinghua

common.service

parent fbddaeaf
......@@ -32,6 +32,7 @@ import {LearnService} from "../pages/home/learning/learn.service";
import {LoginService} from "../pages/login/login.service";
import {LearnManageService} from "../pages/home/learn-manage/learnManage.service";
import {CommonService} from "../service/common.service";
import {TabsService} from "../pages/tabs/tabs.service";
@NgModule({
declarations: [
......@@ -89,6 +90,7 @@ import {CommonService} from "../service/common.service";
LearnManageService,
LoginService,
CommonService,
TabsService,
{provide: ErrorHandler, useClass: IonicErrorHandler}
]
})
......
import {HttpClient} from "@angular/common/http";
import {Injectable} from "@angular/core";
import {Observable} from "rxjs/Observable";
import {Api} from "../../../provide/api";
import {AppGlobal} from "../../../service/appHttpService";
@Injectable()
export class LearnManageService{
......@@ -9,10 +9,10 @@ export class LearnManageService{
constructor(private http:HttpClient){}
getLearnTestList(data): Observable<any>{
return this.http.post(Api.api_url+'/modules/learnTest/getLearnTestList',data)
return this.http.post(AppGlobal.domain+'//wisdomgroup/modules/learnTest/getLearnTestList',data)
}
startTest(data): Observable<any>{
return this.http.post(Api.api_url+'/modules/learnTest/startTest',data)
return this.http.post(AppGlobal.domain+'//wisdomgroup/modules/learnTest/startTest',data)
}
}
\ No newline at end of file
import {HttpClient} from "@angular/common/http";
import {Injectable} from "@angular/core";
import {Observable} from "rxjs/Observable";
import {Api} from "../../../provide/api";
import {AppGlobal} from "../../../service/appHttpService";
import {CommonService} from "../../../service/common.service";
@Injectable()
export class LearnService{
constructor(private http:HttpClient){}
constructor(private http:HttpClient,private commonSer:CommonService){}
getLearnTestList(data): Observable<any>{
return this.http.post(Api.api_url+'/modules/learnTest/getLearnTestList',data)
return this.http.post(AppGlobal.domain+'/wisdomgroup/modules/learnTest/getLearnTestList',this.commonSer.toFormData(data) );
}
startTest(data): Observable<any>{
return this.http.post(Api.api_url+'/modules/learnTest/startTest',data)
return this.http.post(AppGlobal.domain+'/wisdomgroup/modules/learnTest/startTest',this.commonSer.toFormData(data) )
}
}
\ No newline at end of file
......@@ -19,63 +19,63 @@
<!--判断题目类型-->
<p>
<span class="color-red" *ngIf="item.isAns == 1">*</span>{{index}}、
<span *ngIf="item.quesType == 1">(判断)</span>
<span *ngIf="item.quesType == 2">(单选)</span>
<span *ngIf="item.quesType == 3">(多选)</span>
<span *ngIf="item.quesType == 4">(填空)</span>
<span *ngIf="item.quesType == 5">(问答)</span>
{{item.title}}
<span *ngIf="item.questionType == 1">(判断)</span>
<span *ngIf="item.questionType == 2">(单选)</span>
<span *ngIf="item.questionType == 3">(多选)</span>
<span *ngIf="item.questionType == 4">(填空)</span>
<span *ngIf="item.questionType == 5">(问答)</span>
{{item.questionContent}}
</p>
</div>
<div class="item-content">
<div class="padding-0-20">
<!--判断题-->
<ng-container *ngIf="item.quesType == 1">
<p>
<label>
<input [(ngModel)]="item.answerdesc" name="{{item.questionQueId}}" value="0" type="radio">
<span class=" selectIndex">A</span>&nbsp;&nbsp;
</label>
</p>
<p>
<label>
<input [(ngModel)]="item.answerdesc" name="{{item.questionQueId}}" value="1" type="radio">
<span class=" selectIndex">B</span>&nbsp;&nbsp;
</label>
</p>
</ng-container>
<!--单选题-->
<ng-container *ngIf="item.quesType == 2">
<ng-container *ngFor=" let option1 of item.quesDesc;let optIndex = index;">
<ng-container *ngIf="item.questionType == 1">
<ng-container *ngFor=" let option1 of item.options;let optIndex = index;">
<p>
<label>
<input [(ngModel)]="item.answerdesc" type="radio" value="{{optIndex}}" name="{{item.questionQueId}}">
<input [(ngModel)]="item.answerdesc" type="radio" value="{{optIndex}}" name="{{item.questionId}}">
<span class=" selectIndex">{{optIndex +1 | charCode}}</span>&nbsp;&nbsp;
{{option1.option_title}}
{{option1.comment}}
</label>
</p>
</ng-container>
</ng-container>
<!--多选题-->
<ng-container *ngIf="item.quesType == 3">
<ng-container *ngFor=" let option2 of item.quesDesc;let quesIndex = index;">
<ng-container *ngIf="item.questionType == 2">
<ng-container *ngFor=" let option2 of item.options;let quesIndex = index;">
<p>
<label>
<input type="checkbox" (change)="mutiSelect(i,quesIndex)" value="{{quesIndex}}">
<input type="checkbox" (change)="mutiSelect(i,quesIndex)" value="{{quesIndex}}" name="{{item.questionId}}">
<span class="input-duox selectIndex">{{quesIndex +1 | charCode}}</span>&nbsp;&nbsp;
{{option2.option_title}}
{{option2.comment}}
</label>
</p>
</ng-container>
</ng-container>
<!--填空-->
<ng-container *ngIf="item.quesType == 4">
<ng-container *ngIf="item.questionType == 3">
<textarea [(ngModel)]="item.answerdesc" class="content-textarea"></textarea>
</ng-container>
<!--判断题-->
<ng-container *ngIf="item.questionType == 4">
<p>
<label>
<input [(ngModel)]="item.answerdesc" name="{{item.questionQueId}}" value="0" type="radio">
<span class=" selectIndex">A</span>&nbsp;&nbsp;
</label>
</p>
<p>
<label>
<input [(ngModel)]="item.answerdesc" name="{{item.questionQueId}}" value="1" type="radio">
<span class=" selectIndex">B</span>&nbsp;&nbsp;
</label>
</p>
</ng-container>
<!--问答-->
<ng-container *ngIf="item.quesType == 5">
<ng-container *ngIf="item.questionType == 5">
<textarea [(ngModel)]="item.answerdesc" class="content-textarea"></textarea>
</ng-container>
</div>
......@@ -91,7 +91,7 @@
<div (click)="next()" class="next">下一题</div>
</div>
<div class="footer-submit">
<div class="time">01:30:30</div>
<div class="time">{{timeText}}</div>
<div class="submit" (click)="submit()">
<span>交卷</span>
</div>
......
......@@ -3,6 +3,8 @@ import {IonicPage, Navbar, NavController, NavParams, Slides, ToastController} fr
import {message} from "../../../../app/main";
import {AppGlobal, AppService} from "../../../../service/appHttpService";
import {LearningResultPage} from "../learning-result/learning-result";
import {LearnService} from "../learn.service";
import {DatePipe} from "@angular/common";
@IonicPage()
@Component({
......@@ -11,38 +13,61 @@ import {LearningResultPage} from "../learning-result/learning-result";
})
export class LearningDoPage {
@ViewChild(Slides) slides: Slides;
@ViewChild(Navbar) navbar:Navbar
@ViewChild(Navbar) navbar: Navbar
list = [
{title: "你最喜欢玩的游戏是什么?", questionQueId:'1',quesType: '1'}, //单选题
{
title: "你最喜欢吃的水果是什么",
quesType: '2',
questionQueId:'2',
quesDesc: [{option_title: "苹果", index: 1}, {option_title: "香蕉", index: 2}, {option_title: "梨", index: 3},]
}, //多选题
{
title: "你最喜欢玩的地方是什么?",
quesType: '3',
questionQueId:'3',
quesDesc: [{option_title: "北京", index: 1}, {option_title: "上海", index: 2}, {option_title: "广州", index: 3},]
}, //判断题
{title: "你最喜欢什么手机?", quesType: '4',questionQueId:'4',}, //填空题
{title: "你最喜欢什么耳机?", quesType: '5',questionQueId:'5',} //问答题
];
clock; //
list = [];
timeText = '00:00:00';
totalTime;
index = 1; //当前题目的序号
constructor(public navCtrl: NavController, public navParams: NavParams,
public toastCtrl: ToastController, public appService: AppService) {
constructor(public navCtrl: NavController, public navParams: NavParams, private learnSer: LearnService,
public toastCtrl: ToastController, public appService: AppService, public datePipe: DatePipe) {
}
ionViewDidLoad() {
const testId = this.navParams.get('testId');
const data = {
testId: testId
};
this.learnSer.startTest(data).subscribe(
(res) => {
this.list = res.data.detailVos;
this.totalTime = res.data.timeLimit;
this.countTime();
}
)
//返回按钮的提示
this.navbar.backButtonClick = (event)=>{
let index = this.navCtrl.length() -2;
this.navCtrl.remove(2,index)
this.navbar.backButtonClick = (event) => {
let index = this.navCtrl.length() - 2;
this.navCtrl.remove(2, index)
}
}
//倒计时
countTime() {
let totalTime = this.totalTime;
this.clock = window.setInterval(() => {
totalTime--;
let hourse = (Math.floor(totalTime / 3600));
hourse = (hourse > 10 ? hourse:hourse + '0');
let minutes = Math.floor(totalTime / 60);
minutes = (minutes > 10 ? minutes:minutes + '0');
let seconds = Math.floor(totalTime % 60);
seconds = (seconds > 10 ? seconds:seconds + '0');
this.timeText = hourse + ":" + minutes + ":" + seconds;
if (totalTime < 0) {
window.clearInterval(this.clock)
this.timeText = "00:00:00";
this.forceSubmit();
}
}, 1000)
}
//清楚定时器
ionViewDidLeave(){
window.clearInterval(this.clock);
}
//上一题
prev() {
if (this.index == 1) {
......@@ -72,6 +97,13 @@ export class LearningDoPage {
}
//强制交卷
forceSubmit(){
this.appService.alert("答题时间已到,交卷!");
let index = this.navCtrl.length() - 2;
this.navCtrl.remove(2, index)
}
//交卷
submit() {
this.appService.alert("确定提交问卷", () => {
......
import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
import {Component} from '@angular/core';
import {IonicPage, NavController, NavParams} from 'ionic-angular';
import {LearningDoPage} from "../learning-do/learning-do";
import {LearnService} from "../learn.service";
import {AppGlobal, AppService} from "../../../../service/appHttpService";
@IonicPage()
@Component({
selector: 'page-learning-explain',
templateUrl: 'learning-explain.html',
selector: 'page-learning-explain',
templateUrl: 'learning-explain.html',
})
export class LearningExplainPage {
item = {
questionCount:'0',
fullMarks:'0',
timeLimit:'0',
testId:null
}; //测试对象
constructor(public navCtrl: NavController, public navParams: NavParams,
public learnSer:LearnService) {
}
testId;
item = {
questionCount: 0,
fullMarks: '0',
timeLimit: '0',
testId:null
}; //测试对象
constructor(public navCtrl: NavController, public navParams: NavParams,
public learnSer: LearnService,public appService:AppService) {
}
ionViewDidLoad() {
this.item = this.navParams.get('item');
let formData = new FormData();
formData.append('testId',this.item.testId);
this.learnSer.startTest(formData).subscribe(
(res)=>{
this.item = res.data;
}
)
}
ionViewDidLoad() {
this.item = this.navParams.get('item');
this.testId = this.item.testId;
const data = {
testId: this.testId
};
this.learnSer.startTest(data).subscribe(
(res) => {
this.item = res.data;
}
)
}
//跳转答题页面
goToDO(){
this.navCtrl.push("LearningDoPage")
//跳转答题页面
goToDO() {
if(this.item.questionCount > 0){
this.navCtrl.push("LearningDoPage", {testId: this.testId});
}else{
this.appService.toast('当前试卷试题为空');
}
}
}
import {Component, ElementRef, ViewChild} from '@angular/core';
import {IonicPage, NavController, NavParams, Slides} from 'ionic-angular';
import {LearningDoPage} from "../learning-do/learning-do";
import {LearningResultPage} from "../learning-result/learning-result";
import {LearningExplainPage} from "../learning-explain/learning-explain";
import {LearnService} from "../learn.service";
import {DatePipe} from "@angular/common";
import {CommonService} from "../../../../service/common.service";
@IonicPage()
......@@ -24,7 +21,7 @@ export class LearningListPage {
list = []; //全部测试
link = false; //是否请求完成
constructor(public navCtrl: NavController, public navParams: NavParams,public comomSer:CommonService,
constructor(public navCtrl: NavController, public navParams: NavParams,
public learnSer: LearnService, public datePipe: DatePipe) {
}
......@@ -42,8 +39,7 @@ export class LearningListPage {
selectType:'1',
queryTime:nowDate,
};
let formData = this.comomSer.toFormData(data);
this.learnSer.getLearnTestList(formData).subscribe(
this.learnSer.getLearnTestList(data).subscribe(
(res) => {
this.link = true;
this.list = res.data.list;
......
import {HttpClient} from "@angular/common/http";
import {Injectable} from "@angular/core";
import {Observable} from "rxjs/Observable";
import {Api} from "../../provide/api";
import {AppGlobal} from "../../service/appHttpService";
@Injectable()
export class LoginService{
......@@ -9,7 +9,7 @@ export class LoginService{
constructor(private http:HttpClient){}
loginpost(data): Observable<any>{
return this.http.post(Api.api_url+'/app/loginpost',data)
return this.http.post(AppGlobal.domain+'/app/loginpost',data)
}
}
\ No newline at end of file
......@@ -19,6 +19,7 @@ import {NoticePage} from "../notice/notice";
import {monthCh, weekDay} from "../../../app/main";
import {Badge} from '@ionic-native/badge';
import {LearningListPage} from "../../home/learning/learning-list/learning-list";
import {TabsService} from "../tabs.service";
declare var Swiper;
......@@ -73,7 +74,7 @@ export class HomePage {
constructor(public navCtrl: NavController, public activityStatisticService: ActivityStatisticService,
public appService: AppService, public http: Http, private calendar: Calendar, public storage: Storage,
public badge: Badge) {
public badge: Badge,public tabsSer:TabsService) {
}
......@@ -134,11 +135,14 @@ export class HomePage {
//获取权限
getRole() {
this.appService.ObserverHttpGet("/wisdomgroup/app/getRoles", null).subscribe((res: Response) => {
this.role = res.json();
}, error => {
this.appService.alert('系统错误!');
});
this.tabsSer.getRoles().subscribe(
(res)=>{
this.role = res
},
error=>{
this.appService.alert('系统错误!');
}
)
}
wait() {
......@@ -213,6 +217,7 @@ export class HomePage {
this.appService.ObserverHttpGet("/wisdomgroup/modules/activity/hasNewActivity", null)
.subscribe((res: Response) => {
let data = res.json();
console.log(data)
this.hasNewActivity = data;
}, error => {
}
......
import {Injectable} from "@angular/core";
import {HttpClient} from "@angular/common/http";
import {Observable} from "rxjs/Observable";
import {AppGlobal} from "../../service/appHttpService";
import {CommonService} from "../../service/common.service";
@Injectable()
export class TabsService{
constructor(private http:HttpClient,private commonSer:CommonService){}
getRoles(): Observable<any>{
return this.http.get(AppGlobal.domain+'/wisdomgroup/app/getRoles', );
}
}
\ No newline at end of file
......@@ -78,20 +78,4 @@ export class TabsPage {
this.tabsIndex =e;
this.myTabs.select(e);
}
// ionViewDidEnter() {
// this.queryUserRole();
// }
// //获取角色
// queryUserRole() {
// this.storage.get("userLoginInfo").then((data) => {
// this.appService.ObserverHttpGet("/wisdomgroup/sysmanagement/user/queryRoleByUserid", { userid: data.userid })
// .subscribe((res: Response) => {
// this.role = res.json();
// }, error => {
// }
// );
// });
// }
}
import {Injectable} from "@angular/core";
import {HttpClient} from "@angular/common/http";
@Injectable()
export class Api{
//路径配置
//接口基地址 //测试环境
//public static api_url = "http://220.248.107.115:2239";
//正式环境
// public static api_url = "http://101.89.112.92:80";
//public static api_url = "http://180.168.156.212:2931";
//public static api_url = "http://localhost:8080"
//本地环境
public static api_url = '/wisdomgroup';
}
\ No newline at end of file
......@@ -11,20 +11,19 @@ export class AppGlobal {
slides: "_dress_slides",
categories: "_dress_categories",
products: "_dress_products"
}
};
//接口基地址 //测试环境
// static domain = "http://220.248.107.115:2239";
static domain = "";
//正式环境
static domain = "http://101.89.112.92:80";
// static domain = "http://101.89.112.92:80";
// static domain = "http://180.168.156.212:2931";
//static domain = "http://localhost:8080"
//测试
// static picture = "http://220.248.107.115:2239/wisdomgroup/manager/getIcon/";
//正式
static picture = "http://101.89.112.92:80/wisdomgroup/manager/getIcon/";
// static picture = "http://180.168.156.212:2931/wisdomgroup/manager/getIcon/";
// static picture = "http://101.89.112.92:80/wisdomgroup/manager/getIcon/";
static picture = "http://180.168.156.212:2931/wisdomgroup/manager/getIcon/";
//通知公告图片参数
static pictureNotice = "http://101.89.112.92:80";
......@@ -260,6 +259,7 @@ export class AppService {
let toast = this.toastCtrl.create({
message: message,
duration: 2000,
position:'middle',
dismissOnPageChange: true,
});
toast.present();
......@@ -323,19 +323,20 @@ export class AppService {
// //接口基地址 //测试环境
// // static domain = "http://220.248.107.115:2239";
// //正式环境
// static domain = "http://101.89.112.92:80";
// // static domain = "http://180.168.156.212:2931";
// // static domain = "http://101.89.112.92:80";
// static domain = "http://180.168.156.212:2931";
// //static domain = "http://localhost:8080"
//
//
// //测试
// // static picture = "http://220.248.107.115:2239/wisdomgroup/manager/getIcon/";
// //正式
// static picture = "http://101.89.112.92:80/wisdomgroup/manager/getIcon/";
// // static picture = "http://180.168.156.212:2931/wisdomgroup/manager/getIcon/";
// // static picture = "http://101.89.112.92:80/wisdomgroup/manager/getIcon/";
// static picture = "http://180.168.156.212:2931/wisdomgroup/manager/getIcon/";
//
// //通知公告图片参数
// static pictureNotice = "http://101.89.112.92:80";
// // static pictureNotice = "http://101.89.112.92:80";
// static pictureNotice = "http://180.168.156.212:2931";
//
// //接口地址
// static API: any = {
......
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