88 lines
4.1 KiB
TypeScript
88 lines
4.1 KiB
TypeScript
import { Injectable, Inject } from '@angular/core';
|
|
import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';
|
|
import { Observable } from 'rxjs';
|
|
import { ConcessionValidation, ResultModel, ConfigureUrl } from '../models';
|
|
import moment from 'moment';
|
|
import { AppSettingService } from '../shares';
|
|
@Injectable({ providedIn: 'root' })
|
|
export class ConcessionValidationService {
|
|
private dateRange:any;
|
|
constructor(private http: HttpClient,
|
|
private appSetting :AppSettingService
|
|
) {
|
|
this.dateRange = {};
|
|
this.dateRange.fromDate = '';
|
|
this.dateRange.toDate = '';
|
|
console.log("constructor concessionValidationService daterange", this.dateRange);
|
|
}
|
|
public setDateRange(fromDate:any, toDate:any)
|
|
{
|
|
this.dateRange.fromDate = moment(fromDate).toDate();
|
|
this.dateRange.toDate = moment(toDate).toDate();
|
|
console.log("concessionValidationService setdaterange", this.dateRange);
|
|
}
|
|
public getDate() :any {
|
|
console.log("concessionValidationService getdaterange", this.dateRange);
|
|
return this.dateRange;
|
|
}
|
|
loadConcessionvalidations(): Observable<ResultModel<ConcessionValidation[]>> {
|
|
const baseUrl = this.appSetting.appSetting.baseUrl +"/"+ConfigureUrl.concessionValidationUrl;
|
|
let config = { headers : { 'Content-Type': 'application/json' } };
|
|
// console.log("the concession", baseUrl);
|
|
return this.http.get<ResultModel<ConcessionValidation[]>>(baseUrl);
|
|
}
|
|
loadConcessionvalidationByStaffId(staffLinkId:string, fromDate:Date, toDate:Date): Observable<ResultModel<ConcessionValidation[]>> {
|
|
const strDate = moment(fromDate).format("YYYY-MM-DD");
|
|
const strtoDate = moment(toDate).format("YYYY-MM-DD");
|
|
const url = this.appSetting.appSetting.baseUrl + "/" +ConfigureUrl.concessionValidationByIdUrl;
|
|
const params = new HttpParams().set("staffLinkNo", staffLinkId)
|
|
.set("fromDate", strDate)
|
|
.set("toDate", strtoDate);
|
|
const headers = new HttpHeaders().set('Content-Type', 'application/json');
|
|
const options = {
|
|
headers: headers,
|
|
params: params
|
|
};
|
|
console.log("loadConcessionvalidationByStaffId url", url);
|
|
return this.http.get<ResultModel<ConcessionValidation[]>>(url, options);
|
|
}
|
|
loadConcessionvalidationById(id:number): Observable<ResultModel<ConcessionValidation>> {
|
|
let params = new HttpParams().set("id", ""+id);
|
|
const baseUrl = this.appSetting.appSetting.baseUrl +"/"+ConfigureUrl.concessionValidationUrl;
|
|
let headers = new HttpHeaders().set('Content-Type', 'application/json');
|
|
let options = {
|
|
headers: headers,
|
|
params: params
|
|
};
|
|
//return this.http.get<Concessionvalidation>(this.baseUrl + 'api/Concessionvalidation/LoadConcessionvalidationById',options);
|
|
return this.http.get<ResultModel<ConcessionValidation>>(baseUrl + "/" + id);
|
|
}
|
|
checkConcessionValidationByStaff(staffLinkNo:string, concessionCard: string, currentDate:string, id :number): Observable<ResultModel<number>> {
|
|
let params = new HttpParams().set("staffLinkNo", staffLinkNo)
|
|
.set("concessionCard", concessionCard)
|
|
.set("currentDate", currentDate)
|
|
.set("id", "" +id);
|
|
|
|
let headers = new HttpHeaders().set('Content-Type', 'application/json');
|
|
let options = {
|
|
headers: headers,
|
|
params: params
|
|
};
|
|
const baseUrl = this.appSetting.appSetting.baseUrl;
|
|
const url = baseUrl + "/" + ConfigureUrl.CheckConcessionValidationByStaffUrl;
|
|
//return this.http.get<Concessionvalidation>(this.baseUrl + 'api/Concessionvalidation/LoadConcessionvalidationById',options);
|
|
return this.http.get<ResultModel<number>>(url,options);
|
|
}
|
|
saveConcessionvalidation(item:ConcessionValidation): Observable<ResultModel<number>> { //insert Concessionvalidation
|
|
let config = { headers : { 'Content-Type': 'application/json' } };
|
|
const baseUrl = this.appSetting.appSetting.baseUrl +"/"+ConfigureUrl.concessionValidationUrl;
|
|
return this.http.post<ResultModel<number>>(baseUrl, item, config);
|
|
}
|
|
deleteConcessionvalidation(Id:number): Observable<ResultModel<number>>{
|
|
let config = { headers : { 'Content-Type': 'application/json' } };
|
|
const baseUrl = this.appSetting.appSetting.baseUrl +"/"+ConfigureUrl.concessionValidationUrl;
|
|
return this.http.delete<ResultModel<number>>(baseUrl + "/" + Id);
|
|
}
|
|
}
|
|
|