|
|
|
|
@ -5,15 +5,15 @@ import { SharedDataService } from '../shared-data-service/shared-data.service';
|
|
|
|
|
import { BarcodeScanner } from '@ionic-native/barcode-scanner/ngx';
|
|
|
|
|
import { AttendanceService } from 'src/app/home/services/attendance.services';
|
|
|
|
|
import { ZBar } from '@ionic-native/zbar/ngx';
|
|
|
|
|
import { Geolocation } from "@ionic-native/geolocation/ngx";
|
|
|
|
|
import { Geolocation } from '@ionic-native/geolocation/ngx';
|
|
|
|
|
import { attendanceSwipeScannerRequest } from 'src/app/home/models/attendanceSwipe.Request';
|
|
|
|
|
import { AuthenticatedUser } from '../authentication/models/authenticated-user';
|
|
|
|
|
import { CommonService } from '../common/common.service';
|
|
|
|
|
import { TranslatorService } from '../translator/translator.service';
|
|
|
|
|
import { Response } from "src/app/hmg-common/services/models/response";
|
|
|
|
|
import { Camera, CameraOptions,PictureSourceType} from "@ionic-native/Camera/ngx";
|
|
|
|
|
import { DevicePermissionsService } from '../../services/device-permissions/device-permissions.service'
|
|
|
|
|
import { Device } from "@ionic-native/device/ngx";
|
|
|
|
|
import { Response } from 'src/app/hmg-common/services/models/response';
|
|
|
|
|
import { Camera, CameraOptions, PictureSourceType} from '@ionic-native/Camera/ngx';
|
|
|
|
|
import { DevicePermissionsService } from '../../services/device-permissions/device-permissions.service';
|
|
|
|
|
import { Device } from '@ionic-native/device/ngx';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Injectable({
|
|
|
|
|
@ -28,50 +28,49 @@ export class AttendScanService {
|
|
|
|
|
scannedResult: any;
|
|
|
|
|
userData: any = {};
|
|
|
|
|
constructor(private device: Device,
|
|
|
|
|
private zbar: ZBar,
|
|
|
|
|
private geolocation: Geolocation,
|
|
|
|
|
private attendance_service: AttendanceService,
|
|
|
|
|
private barcodeScanner: BarcodeScanner,
|
|
|
|
|
private cameraController: Camera,
|
|
|
|
|
public sharedData: SharedDataService,
|
|
|
|
|
private sanitizer: DomSanitizer,
|
|
|
|
|
private permissions: DevicePermissionsService,
|
|
|
|
|
public common:CommonService,
|
|
|
|
|
public ts: TranslatorService,) {
|
|
|
|
|
this.userData =this.common.sharedService.getSharedData(AuthenticatedUser.SHARED_DATA,false);
|
|
|
|
|
private zbar: ZBar,
|
|
|
|
|
private geolocation: Geolocation,
|
|
|
|
|
private attendance_service: AttendanceService,
|
|
|
|
|
private barcodeScanner: BarcodeScanner,
|
|
|
|
|
private cameraController: Camera,
|
|
|
|
|
public sharedData: SharedDataService,
|
|
|
|
|
private sanitizer: DomSanitizer,
|
|
|
|
|
private permissions: DevicePermissionsService,
|
|
|
|
|
public common: CommonService,
|
|
|
|
|
public ts: TranslatorService, ) {
|
|
|
|
|
this.userData = this.common.sharedService.getSharedData(AuthenticatedUser.SHARED_DATA, false);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public getDeviceLocation() {
|
|
|
|
|
let isVirtual = this.device.isVirtual;
|
|
|
|
|
if(isVirtual==true){
|
|
|
|
|
alert("emulater>>>>>>>"+isVirtual);
|
|
|
|
|
alert("You are using virtual device");
|
|
|
|
|
const isVirtual = this.device.isVirtual;
|
|
|
|
|
// tslint:disable-next-line: triple-equals
|
|
|
|
|
if (isVirtual == true) {
|
|
|
|
|
alert('emulater>>>>>>>' + isVirtual);
|
|
|
|
|
alert('You are using virtual device');
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.permissions.requestLocationAutherization().then(granted => {
|
|
|
|
|
this.location = granted as boolean;
|
|
|
|
|
if (this.location) {
|
|
|
|
|
this.geolocation
|
|
|
|
|
.getCurrentPosition({ maximumAge: 3000, timeout: 10000, enableHighAccuracy: true })
|
|
|
|
|
.then(resp => {
|
|
|
|
|
// console.log(resp.coords.latitude);
|
|
|
|
|
// console.log(resp.coords.longitude);
|
|
|
|
|
this.lat = resp.coords.latitude;
|
|
|
|
|
this.longt = resp.coords.longitude;
|
|
|
|
|
this.attendance();
|
|
|
|
|
})
|
|
|
|
|
.catch(error => {
|
|
|
|
|
console.log("Error getting location", error);
|
|
|
|
|
console.log('Error getting location', error);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public attendance() {
|
|
|
|
|
this.permissions.requestCameraAutherization().then(granted => {
|
|
|
|
|
this.camera = granted as boolean;
|
|
|
|
|
@ -81,43 +80,43 @@ export class AttendScanService {
|
|
|
|
|
}
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public scanCode() {
|
|
|
|
|
this.barcodeScanner.scan().then(barcodeData => {
|
|
|
|
|
console.log('Barcode data', barcodeData);
|
|
|
|
|
// let strResult = JSON.parse(barcodeData);
|
|
|
|
|
// console.log(strResult.QRValue);
|
|
|
|
|
this.scannedResult = barcodeData;
|
|
|
|
|
this.deviceID = this.device.uuid;
|
|
|
|
|
this.swipeAttendance();
|
|
|
|
|
if (!barcodeData.cancelled) {
|
|
|
|
|
this.scannedResult = barcodeData;
|
|
|
|
|
this.deviceID = this.device.uuid;
|
|
|
|
|
this.swipeAttendance();
|
|
|
|
|
}
|
|
|
|
|
}).catch(err => {
|
|
|
|
|
console.log('Error', err);
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public swipeAttendance() {
|
|
|
|
|
let request: attendanceSwipeScannerRequest = new attendanceSwipeScannerRequest();
|
|
|
|
|
const request: attendanceSwipeScannerRequest = new attendanceSwipeScannerRequest();
|
|
|
|
|
request.Latitude = this.lat;
|
|
|
|
|
request.Longitude = this.longt;
|
|
|
|
|
request.QRValue = this.scannedResult.text;
|
|
|
|
|
request.UID = this.deviceID;
|
|
|
|
|
request.UserName = this.userData.EMPLOYEE_NUMBER;
|
|
|
|
|
console.log("request");
|
|
|
|
|
console.log('request');
|
|
|
|
|
console.log(JSON.stringify(request));
|
|
|
|
|
this.attendance_service
|
|
|
|
|
.attendanceSwipeScanner(request, () => {
|
|
|
|
|
console.log("Error inside in swipe attendance");
|
|
|
|
|
console.log('Error inside in swipe attendance');
|
|
|
|
|
})
|
|
|
|
|
.subscribe((result: Response) => {
|
|
|
|
|
if (this.common.validResponse(result)) {
|
|
|
|
|
console.log("response");
|
|
|
|
|
console.log('response');
|
|
|
|
|
console.log(result);
|
|
|
|
|
this.common.presentAlert(this.ts.trPK("home", "swipeAlertSuccess"));
|
|
|
|
|
} else {
|
|
|
|
|
this.common.presentAlert(this.ts.trPK("home", "swipeAlertFailed"));
|
|
|
|
|
this.common.presentAlert(this.ts.trPK('home', 'swipeAlertSuccess'));
|
|
|
|
|
}
|
|
|
|
|
// else {
|
|
|
|
|
// this.common.presentAlert(this.ts.trPK("home", "swipeAlertFailed"));
|
|
|
|
|
// }
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|