|
@@ -0,0 +1,594 @@
|
|
|
+import {Component, OnInit} from '@angular/core';
|
|
|
+import {ActivatedRoute, Router} from "@angular/router";
|
|
|
+import {Config, ConfigService, RequsetData} from "../../../../../service/config.service";
|
|
|
+import {UserService} from "../../../../../service/user.service";
|
|
|
+import {AlertController, LoadingController} from "@ionic/angular";
|
|
|
+import {JsBridgeService} from "../../../../../service/js-bridge.service";
|
|
|
+import {DatePipe} from "@angular/common";
|
|
|
+import {interval} from 'rxjs';
|
|
|
+import {BaseComponent} from "../../../../../comm/base.component";
|
|
|
+import {takeUntil} from "rxjs/operators";
|
|
|
+
|
|
|
+@Component({
|
|
|
+ selector: 'app-detail',
|
|
|
+ templateUrl: './detail.component.html',
|
|
|
+ styleUrls: ['./detail.component.scss'],
|
|
|
+})
|
|
|
+export class DetailComponent extends BaseComponent {
|
|
|
+
|
|
|
+ secondsCounter = interval(10000);
|
|
|
+
|
|
|
+ loading: any = null;
|
|
|
+ userInfo: any = {};
|
|
|
+
|
|
|
+ webServerHost: string = '';
|
|
|
+
|
|
|
+ getDataUrl: string = '/appApi/shyk/getMeetingById';
|
|
|
+ getTopicUrl: string = '/appApi/shyk/getMeetingTopicList';
|
|
|
+ getUserUrl: string = '/appApi/shyk/getMeetingUserList';
|
|
|
+
|
|
|
+ saveSigninUrl: string = '/appApi/shyk/signinMeeting';
|
|
|
+ saveCheckinUrl: string = '/appApi/shyk/checkinMeeting';
|
|
|
+ saveStudyUrl: string = '/appApi/shyk/saveUserStudy';
|
|
|
+ clearMessageUrl: string = '/appApi/message/clearMessageByBusinessId';
|
|
|
+ cancelMeetingUrl: string = '/appApi/shyk/cancelMeeting';
|
|
|
+ cancelUserSigninUrl: string = '/appApi/shyk/cancelUserSignin';
|
|
|
+ cancelUserCheckinUrl: string = '/appApi/shyk/cancelUserCheckin';
|
|
|
+
|
|
|
+ meetingId: string = '';
|
|
|
+ dataModel: any = {};
|
|
|
+ topicList: any = [];
|
|
|
+ userList: any[] = [];
|
|
|
+ meetingUserModel: any = {};
|
|
|
+ shykTypeName: string = '';
|
|
|
+
|
|
|
+
|
|
|
+ difftime: any = 0;
|
|
|
+ isEdit: any = false;
|
|
|
+ isSigin: any = false;
|
|
|
+ isChecked: any = false;
|
|
|
+ isStudy: any = false;
|
|
|
+ isEditStudy: any = false;
|
|
|
+ isShowimg: any = false;
|
|
|
+ isQrcode: any = false;
|
|
|
+ isCancel: any = false;
|
|
|
+ isEditUser: any = false;
|
|
|
+ isEditRecord: any = false;
|
|
|
+
|
|
|
+ endTime: any;
|
|
|
+ beginTime: any;
|
|
|
+
|
|
|
+ imgOption1: any = {
|
|
|
+ fileRefid: '',
|
|
|
+ fileName: '',
|
|
|
+ fileType: 1,
|
|
|
+ isMulti: true,
|
|
|
+ readonly: true
|
|
|
+ };
|
|
|
+
|
|
|
+ imgOption2: any = {
|
|
|
+ fileRefid: '',
|
|
|
+ fileName: '',
|
|
|
+ fileType: 2,
|
|
|
+ isMulti: true,
|
|
|
+ readonly: true
|
|
|
+ };
|
|
|
+
|
|
|
+ constructor(private router: Router, private routeInfo: ActivatedRoute, private configService: ConfigService, private userService: UserService, public alertController: AlertController,
|
|
|
+ public loadingController: LoadingController, private jsBridgeService: JsBridgeService, private datePipe: DatePipe) {
|
|
|
+ super();
|
|
|
+ }
|
|
|
+
|
|
|
+ ngOnInit(): void {
|
|
|
+ this.userInfo = this.userService.GetUser();
|
|
|
+ this.configService.GetConfig().subscribe((config) => {
|
|
|
+ this.webServerHost = config.webServerHost;
|
|
|
+ });
|
|
|
+ this.routeInfo.queryParams.subscribe(params => {
|
|
|
+ this.meetingId = params['id'];
|
|
|
+ this.imgOption1.fileRefid = this.meetingId;
|
|
|
+ this.imgOption2.fileRefid = this.meetingId;
|
|
|
+ this.loadData();
|
|
|
+ });
|
|
|
+
|
|
|
+ this.secondsCounter.pipe(takeUntil(this.$destory)).subscribe(data => {
|
|
|
+ this.loadUserList();
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ loadData() {
|
|
|
+ this.configService.HttpGetRomote(this.getDataUrl, {
|
|
|
+ id: this.meetingId,
|
|
|
+ userId: this.userInfo.userid,
|
|
|
+ userName: this.userInfo.username
|
|
|
+ }).subscribe((data: RequsetData) => {
|
|
|
+ if (data.success) {
|
|
|
+ if (data.item != null) {
|
|
|
+ this.dataModel = data.item;
|
|
|
+ if (data.extdata.meetingUser != null) {
|
|
|
+ this.meetingUserModel = data.extdata.meetingUser;
|
|
|
+ if (this.userInfo.userid == this.meetingUserModel.usercode) {
|
|
|
+ this.clearMessage(this.userInfo.userid, 1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ this.shykTypeName = data.extdata.shykTypeName;
|
|
|
+ this.difftime = data.extdata.difftime;
|
|
|
+
|
|
|
+ this.endTime = new Date(this.datePipe.transform(this.dataModel.endtime, "yyyy/MM/dd HH:mm:ss"));
|
|
|
+
|
|
|
+
|
|
|
+ this.setPermiss();
|
|
|
+
|
|
|
+ this.loadUserList();
|
|
|
+ this.loadTopicList();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ setPermiss() {
|
|
|
+ this.isEdit = this.dataModel.createuserid == this.userInfo.userid;
|
|
|
+ this.isCancel = this.dataModel.createuserid == this.userInfo.userid;
|
|
|
+ this.isEditUser = this.dataModel.createuserid == this.userInfo.userid;
|
|
|
+
|
|
|
+
|
|
|
+ this.isEditRecord = this.dataModel.createuserid == this.userInfo.userid && (this.dataModel.shykstatus == 1 || this.dataModel.shykstatus == 4 || this.dataModel.shykstatus == 5)
|
|
|
+ && this.difftime <= 0 ;
|
|
|
+
|
|
|
+ this.isCancel = this.isEdit && this.difftime > 0;
|
|
|
+
|
|
|
+
|
|
|
+ this.isSigin = this.dataModel.shykstatus != 2 && this.difftime > 30 && (this.meetingUserModel.signinstatus == 1 || this.meetingUserModel.signinstatus == 2)
|
|
|
+ && this.dataModel.createuserid != this.userInfo.userid;
|
|
|
+
|
|
|
+
|
|
|
+ this.isChecked = this.dataModel.shykstatus != 2 && this.difftime <= 30 && new Date() <= this.endTime && this.meetingUserModel.checkinstatus == 0;
|
|
|
+
|
|
|
+
|
|
|
+ this.isQrcode = this.dataModel.shykstatus != 2 && this.difftime <= 30 && new Date() <= this.endTime
|
|
|
+ && (this.dataModel.createuserid == this.userInfo.userid || this.meetingUserModel.checkinstatus == 1);
|
|
|
+
|
|
|
+
|
|
|
+ this.isShowimg = this.dataModel.isuploadimg == 1;
|
|
|
+
|
|
|
+
|
|
|
+ this.isStudy = this.dataModel.meetingrecordstate == 1 && (this.meetingUserModel.signinstatus == 1 || this.meetingUserModel.signinstatus == 3);
|
|
|
+ this.isEditStudy = (this.meetingUserModel.makeuupstudy == null || this.meetingUserModel.makeuupstudy == '');
|
|
|
+
|
|
|
+
|
|
|
+ this.isEditUser = this.difftime <= 0
|
|
|
+
|
|
|
+ && this.dataModel.createuserid == this.userInfo.userid
|
|
|
+ && this.dataModel.shykstatus != 0 && this.dataModel.shykstatus != 2;*/
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ loadUserList() {
|
|
|
+ this.configService.HttpGetRomote(this.getUserUrl, {
|
|
|
+ pageindex: 1,
|
|
|
+ pagesize: 10000,
|
|
|
+ meetingId: this.meetingId,
|
|
|
+ }).subscribe((data: RequsetData) => {
|
|
|
+ if (data.success) {
|
|
|
+ if (data.item != null) {
|
|
|
+ this.userList = data.item.list;
|
|
|
+
|
|
|
+ this.userList = this.userList.filter(it => it.USERCODE == this.userInfo.userid);
|
|
|
+ }*/
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ loadTopicList() {
|
|
|
+ this.configService.HttpGetRomote(this.getTopicUrl, {
|
|
|
+ meetingId: this.meetingId,
|
|
|
+ }).subscribe((data: RequsetData) => {
|
|
|
+ if (data.success) {
|
|
|
+ if (data.item != null) {
|
|
|
+ this.topicList = data.item;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ signin(isback, userId, isSignin, userremark) {
|
|
|
+ this.presentAlertConfirm(isSignin ? "确认参加?" : "确认请假?", () => {
|
|
|
+ this.presentLoading("提交中...").then(val => {
|
|
|
+ this.configService.HttpPostRomote(this.saveSigninUrl, {
|
|
|
+ meetingId: this.dataModel.meetingid,
|
|
|
+ userCode: userId,
|
|
|
+ isSignin: isSignin,
|
|
|
+ userId: this.userInfo.userid,
|
|
|
+ userName: this.userInfo.username,
|
|
|
+ userRemark: !isSignin ? userremark : ""
|
|
|
+ }).subscribe((fdata: RequsetData) => {
|
|
|
+ this.loading.dismiss();
|
|
|
+ if (fdata.success) {
|
|
|
+ if (isback) {
|
|
|
+ this.backPage();
|
|
|
+ } else {
|
|
|
+ this.loadUserList();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ this.presentAlert(fdata.msg);
|
|
|
+ });
|
|
|
+ });
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ checkin(isback, userId: string) {
|
|
|
+
|
|
|
+ this.presentLoading("签到中...").then(val => {
|
|
|
+ this.configService.HttpPostRomote(this.saveCheckinUrl, {
|
|
|
+ meetingId: this.dataModel.meetingid,
|
|
|
+ userCode: userId,
|
|
|
+ userId: this.userInfo.userid,
|
|
|
+ userName: this.userInfo.username
|
|
|
+ }).subscribe((fdata: RequsetData) => {
|
|
|
+ this.loading.dismiss();
|
|
|
+ if (fdata.success) {
|
|
|
+ if (isback) {
|
|
|
+ this.backPage();
|
|
|
+ } else {
|
|
|
+ this.loadUserList();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ this.presentAlert(fdata.msg);
|
|
|
+ });
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ scanQRCode() {
|
|
|
+ this.jsBridgeService.ScanQRCode().subscribe(req => {
|
|
|
+ if (req.success == false) {
|
|
|
+ this.presentAlert(req.error);
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ if (req.data.qrcode != this.dataModel.meetingid) {
|
|
|
+ this.presentAlert("会议二维码不匹配!");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ if (new Date() > this.endTime) {
|
|
|
+ this.presentAlert("请在会议结束前进行签到!");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ this.checkin(true, this.userInfo.userid);
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ saveStudy() {
|
|
|
+ this.presentLoading("提交中...").then(val => {
|
|
|
+ this.configService.HttpPostRomote(this.saveStudyUrl, {
|
|
|
+ meetingId: this.dataModel.meetingid,
|
|
|
+ userCode: this.userInfo.userid,
|
|
|
+ makeuupstudy: this.meetingUserModel.makeuupstudy,
|
|
|
+ userId: this.userInfo.userid,
|
|
|
+ userName: this.userInfo.username,
|
|
|
+ }).subscribe((fdata: RequsetData) => {
|
|
|
+ this.loading.dismiss();
|
|
|
+ if (fdata.success) {
|
|
|
+ this.clearMessage(this.userInfo.userid, 2);
|
|
|
+ this.backPage();
|
|
|
+ }
|
|
|
+ this.presentAlert(fdata.msg);
|
|
|
+ });
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ showQrcode() {
|
|
|
+ this.configService.GetConfig().subscribe((config) => {
|
|
|
+ var url = config.webServerHost + "/appApi/home/ShowQRCode?code=" + encodeURI(this.dataModel.meetingid)
|
|
|
+ this.presentAlertQrcode(url);
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ clearMessage(userId: string, messageType) {
|
|
|
+ this.configService.HttpGetRomote(this.clearMessageUrl, {
|
|
|
+ businessId: this.dataModel.meetingid,
|
|
|
+ userId: userId,
|
|
|
+ messageType: messageType
|
|
|
+ }).subscribe((fdata: RequsetData) => {
|
|
|
+
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ editUserSignin(user) {
|
|
|
+
|
|
|
+ this.presentAlertUserSignin(user);
|
|
|
+ }
|
|
|
+
|
|
|
+ if ((user.SIGNINSTATUS == 2 || user.SIGNINSTATUS == 3) && this.isEditUser) {
|
|
|
+ this.presentAlertUserSignin_Cancel(user);
|
|
|
+ }*/
|
|
|
+ if (this.isEditUser) {
|
|
|
+ this.presentAlertUserSignin(user);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ editUserCheckin(user) {
|
|
|
+ if (user.CHECKINSTATUS == 0 && this.isEditUser) {
|
|
|
+ this.presentAlertUserCheckin(user);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (user.CHECKINSTATUS == 1 && this.isEditUser) {
|
|
|
+ this.presentAlertUserCheckin_Cancel(user);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ cancel() {
|
|
|
+ this.presentAlertConfirm("确认取消会议?", () => {
|
|
|
+ this.presentLoading("取消中...").then(val => {
|
|
|
+ this.configService.HttpPostRomote(this.cancelMeetingUrl, {
|
|
|
+ meetingId: this.dataModel.meetingid,
|
|
|
+ userId: this.userInfo.userid,
|
|
|
+ userName: this.userInfo.username
|
|
|
+ }).subscribe((fdata: RequsetData) => {
|
|
|
+ this.loading.dismiss();
|
|
|
+ if (fdata.success) {
|
|
|
+ this.backPage();
|
|
|
+ }
|
|
|
+ this.presentAlert(fdata.msg);
|
|
|
+ });
|
|
|
+ });
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ showTopic(id) {
|
|
|
+ if (id != null && id != '') {
|
|
|
+
|
|
|
+ this.router.navigate(['../shykshowtopic'], {
|
|
|
+ relativeTo: this.routeInfo,
|
|
|
+ queryParams: {id: id, random: Math.random()}
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ editUserLeave() {
|
|
|
+ this.presentAlertUserLeave();
|
|
|
+ }
|
|
|
+
|
|
|
+ editMeeting() {
|
|
|
+ this.router.navigate(['../shykEdit'], {
|
|
|
+ relativeTo: this.routeInfo,
|
|
|
+ queryParams: {id: this.dataModel.meetingid, random: Math.random()}
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ editRecord() {
|
|
|
+ this.router.navigate(['../shykrecord'], {
|
|
|
+ relativeTo: this.routeInfo,
|
|
|
+ queryParams: {id: this.dataModel.meetingid, random: Math.random()}
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ async presentLoading(msg: string) {
|
|
|
+ this.loading = await this.loadingController.create({
|
|
|
+ message: msg,
|
|
|
+ spinner: 'circles'
|
|
|
+ });
|
|
|
+ return this.loading.present();
|
|
|
+ }
|
|
|
+
|
|
|
+ async presentAlert(msg: string) {
|
|
|
+ const alert = await this.alertController.create({
|
|
|
+ header: '提示',
|
|
|
+ subHeader: '',
|
|
|
+ message: msg,
|
|
|
+ buttons: ['确定']
|
|
|
+ });
|
|
|
+
|
|
|
+ await alert.present();
|
|
|
+ }
|
|
|
+
|
|
|
+ async presentAlertConfirm(msg: string, handler) {
|
|
|
+ const alert = await this.alertController.create({
|
|
|
+ header: '提示',
|
|
|
+ message: '<strong>' + msg + '</strong>',
|
|
|
+ buttons: [
|
|
|
+ {
|
|
|
+ text: '关闭',
|
|
|
+ role: 'cancel',
|
|
|
+ cssClass: 'secondary',
|
|
|
+ handler: () => {
|
|
|
+
|
|
|
+ }
|
|
|
+ }, {
|
|
|
+ text: '确定',
|
|
|
+ handler: handler
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ });
|
|
|
+
|
|
|
+ await alert.present();
|
|
|
+ }
|
|
|
+
|
|
|
+ async presentAlertQrcode(url) {
|
|
|
+ const alert = await this.alertController.create({
|
|
|
+ header: '会议二维码',
|
|
|
+ message: '<img src="' + url + '"/>',
|
|
|
+ buttons: ['关闭']
|
|
|
+ });
|
|
|
+
|
|
|
+ await alert.present();
|
|
|
+ }
|
|
|
+
|
|
|
+ async presentAlertUserSignin(user) {
|
|
|
+ const alert = await this.alertController.create({
|
|
|
+ header: user.USERNAME,
|
|
|
+ inputs: [
|
|
|
+ {
|
|
|
+ name: 'userremark',
|
|
|
+ type: 'text',
|
|
|
+ placeholder: '请输入未参加原因',
|
|
|
+ value: user.USERREMARK
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ buttons: [{
|
|
|
+ text: '未参加',
|
|
|
+ handler: (result) => {
|
|
|
+ if (result.userremark == "" || result.userremark == null) {
|
|
|
+ this.presentAlert("请填写未参加原因");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ this.signin(false, user.USERCODE, false, result.userremark);
|
|
|
+
|
|
|
+ this.clearMessage(user.USERCODE, 1);
|
|
|
+ }
|
|
|
+ }, {
|
|
|
+ text: '参加',
|
|
|
+ handler: (result) => {
|
|
|
+ this.signin(false, user.USERCODE, true, "");
|
|
|
+
|
|
|
+ this.clearMessage(user.USERCODE, 1);
|
|
|
+ }
|
|
|
+ }]
|
|
|
+ });
|
|
|
+
|
|
|
+ await alert.present();
|
|
|
+ }
|
|
|
+
|
|
|
+ async presentAlertUserCheckin(user) {
|
|
|
+ const alert = await this.alertController.create({
|
|
|
+ header: user.USERNAME,
|
|
|
+ buttons: [{
|
|
|
+ text: '关闭',
|
|
|
+ role: 'cancel',
|
|
|
+ cssClass: 'secondary',
|
|
|
+ handler: () => {
|
|
|
+
|
|
|
+ }
|
|
|
+ }, {
|
|
|
+ text: '签到',
|
|
|
+ handler: (result) => {
|
|
|
+ this.checkin(false, user.USERCODE);
|
|
|
+
|
|
|
+ this.clearMessage(user.USERCODE, 1);
|
|
|
+ }
|
|
|
+ }]
|
|
|
+ });
|
|
|
+
|
|
|
+ await alert.present();
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ async presentAlertUserLeave() {
|
|
|
+ const alert = await this.alertController.create({
|
|
|
+ header: '请假',
|
|
|
+ inputs: [
|
|
|
+ {
|
|
|
+ name: 'userremark',
|
|
|
+ type: 'text',
|
|
|
+ placeholder: '请输入未参加原因',
|
|
|
+ value: this.meetingUserModel.userremark
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ buttons: [{
|
|
|
+ text: '请假',
|
|
|
+ handler: (result) => {
|
|
|
+ if (result.userremark == "" || result.userremark == null) {
|
|
|
+ this.presentAlert("请填写未参加原因");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ this.signin(true, this.userInfo.userid, false, result.userremark);
|
|
|
+
|
|
|
+ this.clearMessage(this.userInfo.userid, 1);
|
|
|
+ }
|
|
|
+ }]
|
|
|
+ });
|
|
|
+
|
|
|
+ await alert.present();
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ async presentAlertUserSignin_Cancel(user) {
|
|
|
+ const alert = await this.alertController.create({
|
|
|
+ header: user.USERNAME,
|
|
|
+ message: "取消会议签收?",
|
|
|
+ buttons: [{
|
|
|
+ text: '关闭',
|
|
|
+ role: 'cancel',
|
|
|
+ cssClass: 'secondary',
|
|
|
+ handler: () => {
|
|
|
+
|
|
|
+ }
|
|
|
+ }, {
|
|
|
+ text: '确认',
|
|
|
+ handler: (result) => {
|
|
|
+ this.presentLoading("取消中...").then(val => {
|
|
|
+ this.configService.HttpPostRomote(this.cancelUserSigninUrl, {
|
|
|
+ meetingId: this.dataModel.meetingid,
|
|
|
+ userCode: user.USERCODE,
|
|
|
+ userId: this.userInfo.userid,
|
|
|
+ userName: this.userInfo.username
|
|
|
+ }).subscribe((fdata: RequsetData) => {
|
|
|
+ this.loading.dismiss();
|
|
|
+ if (fdata.success) {
|
|
|
+ this.loadUserList();
|
|
|
+ }
|
|
|
+ this.presentAlert(fdata.msg);
|
|
|
+ });
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }]
|
|
|
+ });
|
|
|
+
|
|
|
+ await alert.present();
|
|
|
+ }
|
|
|
+
|
|
|
+ async presentAlertUserCheckin_Cancel(user) {
|
|
|
+ const alert = await this.alertController.create({
|
|
|
+ header: user.USERNAME,
|
|
|
+ message: "取消签到?",
|
|
|
+ buttons: [{
|
|
|
+ text: '关闭',
|
|
|
+ role: 'cancel',
|
|
|
+ cssClass: 'secondary',
|
|
|
+ handler: () => {
|
|
|
+
|
|
|
+ }
|
|
|
+ }, {
|
|
|
+ text: '确认',
|
|
|
+ handler: (result) => {
|
|
|
+ this.presentLoading("取消中...").then(val => {
|
|
|
+ this.configService.HttpPostRomote(this.cancelUserCheckinUrl, {
|
|
|
+ meetingId: this.dataModel.meetingid,
|
|
|
+ userCode: user.USERCODE,
|
|
|
+ userId: this.userInfo.userid,
|
|
|
+ userName: this.userInfo.username
|
|
|
+ }).subscribe((fdata: RequsetData) => {
|
|
|
+ this.loading.dismiss();
|
|
|
+ if (fdata.success) {
|
|
|
+ this.loadUserList();
|
|
|
+ }
|
|
|
+ this.presentAlert(fdata.msg);
|
|
|
+ });
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }]
|
|
|
+ });
|
|
|
+
|
|
|
+ await alert.present();
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ backPage() {
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ this.router.navigate(['../shykindex'], {relativeTo: this.routeInfo});
|
|
|
+ }
|
|
|
+}
|