rc
DenisN 2025-04-03 10:15:35 -04:00
parent ee211030ae
commit 931b6c95af
3 changed files with 34 additions and 31 deletions

File diff suppressed because one or more lines are too long

View File

@ -1,31 +1,19 @@
import { Controller, Get, Post } from '@nestjs/common';
import { MufapiService, ConnectorsService } from './mufapi.service';
import { MufapiService } from './mufapi.service';
@Controller('api')
export class MufapiController {
constructor(private readonly mufapiService: MufapiService) {}
//Получаем данные по GET, потом это изничтожим
@Get()
async getHello() : Promise<string> {
let connector : ConnectorsService = new ConnectorsService();
connector.SetConnData();
return await this.mufapiService.getAccessToken(connector.path, connector.creds, connector.options);
async getHello() {
let token = this.mufapiService.getAccessToken();
return token;
}
@Get('test')
async getQuery() : Promise<string> {
let connector : ConnectorsService = new ConnectorsService();
connector.SetConnData();
let token : string =await this.mufapiService.getAccessToken(connector.path, connector.creds, connector.options);
connector.GetMenuData(token);
return await this.mufapiService.getMenu(connector.path, connector.body, connector.options);
}
//Получаем данные по POST будет финалка
@Post('menu')
getMenu () : JSON {
let menu : JSON = JSON.parse('{"id": 2}');
getMenu () {
let menu = this.mufapiService.getMenu();
return menu;
}

View File

@ -33,7 +33,7 @@ export class ConnectorsService {
};
//Пробуем получить данные для меню
GetMenuData (token : string){
SetMenuData (token : string){
this.path = 'http://192.168.244.1/e-cmdb/api/query';
this.body = '{"id":["/measures/device$18"],"data":{"links":{"flatten":true,"filter":{"cls":"measure"},"fields":["$id","id","cls","name"]}},"postQuery":"links","enableActions":false,"ts":1740060679399}';
this.options = {
@ -49,13 +49,18 @@ export class MufapiService {
token: string; //Глобальная переменная класса под токен
//Получение токена через шаблонизацию
async getAccessToken (path:string, body:string, headers) : Promise<string> {
async getAccessToken () {
interface Authtorise {
access_token: string;
};
let connService : ConnectorsService = new ConnectorsService;
connService.SetConnData();
let auth : Authtorise;
this.token = 'Error';
await axios.post(path, body, headers).then((response)=>{
await axios.post(connService.path, connService.creds, connService.options).then((response)=>{
auth = response.data;
this.token = auth.access_token;
}).catch((error)=>{
@ -65,14 +70,24 @@ export class MufapiService {
return this.token;
}
//Получение данных для формирования меню в МУФ
async getMenu (path:string, body:string, headers) : Promise<string> {
//*interface MenuController {
// name: string;
//
let resp : string = 'Zlo';
await axios.post(path, body, headers).then((response)=>{
resp = response.data;
// this.token=resp.name;
async getMenu () {
interface MenuController {
id: number,
name: string,
}
await this.getAccessToken();
let connService : ConnectorsService = new ConnectorsService;
connService.SetMenuData(this.token);
//let resp : MenuController;
let resp : string = '';
console.log(connService.path);
console.log(connService.body);
await axios.post(connService.path, connService.body, connService.options).then((response)=>{
resp = JSON.parse(response.data);
//this.token=resp[1].name;
//this.token = auth.access_token;
console.log(resp);
}).catch((error)=>{