File: /var/www/vhost/disk-apps/pwa.sports-crowd.com/src/app/services/business.service.ts
import { Injectable } from '@angular/core';
import { ApiService } from './api.service';
import { UtilsService } from './utils.service';
@Injectable({
providedIn: 'root'
})
export class BusinessService {
categories = [];
businesses: any = [];
centerFirstMarker: boolean = false;
params: any;
userHaveBusiness: boolean = false;
loadingBusiness: boolean = true;
constructor(
public api: ApiService,
private utilsService: UtilsService
) { }
async getCategories(sortByName: boolean) {
this.categories = [];
return new Promise(async (resolve, reject) => {
let seq = this.api.get("business/getCategories/" + sortByName, await this.utilsService.getAccessToken());
(await seq).subscribe(
(res: any) => {
this.categories = res;
resolve(res);
},
(err) => {
console.error("Error getCategories", err);
reject(err);
}
);
});
}
async registerBusiness(data) {
let token = await this.utilsService.getAccessToken();
return new Promise(async (resolve, reject) => {
(await this.api.post("business/register", data, token)).subscribe((res: any) => {
resolve(res);
}, (err) => {
console.error("Error registerBusiness", err);
reject(err);
}
);
});
}
async getBusinesses(params: any) {
this.params = params;
let token = await this.utilsService.getAccessToken();
if (params.reset) {
this.businesses = [];
}
return new Promise(async (resolve, reject) => {
let seq = this.api.get("business/getBusinesses", token, params);
(await seq).subscribe(
(res: any) => {
this.loadingBusiness = false;
if (params.reset)
this.businesses = res;
else
this.businesses.push(...res);
if (params.user && res.length) {
this.userHaveBusiness = true;
}
this.centerFirstMarker = params.search || res.length == 1 ? true : false;
resolve(this.businesses);
},
(err) => {
console.error("Error getBusinesses", err);
reject(err);
}
);
});
}
async deleteBusiness(id) {
let token = await this.utilsService.getAccessToken();
return new Promise(async (resolve, reject) => {
(await this.api.delete("business/delete/" + id, token)).subscribe((res: any) => {
resolve(res);
}, (err) => {
console.error("Error registerBusiness", err);
reject(err);
}
);
});
}
async getParameters() {
return new Promise(async (resolve, reject) => {
let seq = this.api.get("business/getParameters", await this.utilsService.getAccessToken());
(await seq).subscribe(
(res: any) => {
resolve(res);
},
(err) => {
console.error("Error getParemeters", err);
reject(err);
}
);
});
}
async getScoringOptions() {
return new Promise(async (resolve, reject) => {
let seq = this.api.get("business/getScoringOptions", await this.utilsService.getAccessToken());
(await seq).subscribe(
(res: any) => {
resolve(res);
},
(err) => {
console.error("Error getParemeters", err);
reject(err);
}
);
});
}
async registerScoring(data) {
let token = await this.utilsService.getAccessToken();
return new Promise(async (resolve, reject) => {
(await this.api.post("business/scoreRegistry", data, token)).subscribe((res: any) => {
resolve(res);
}, (err) => {
console.error("Error registerScoring", err);
reject(err);
}
);
});
}
}