flamerest 1.0.28 → 1.0.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/REST.d.ts +6 -6
- package/REST.js +14 -7
- package/package.json +1 -1
package/REST.d.ts
CHANGED
|
@@ -32,13 +32,13 @@ export function get(table: string, where: object | string | null, expand: object
|
|
|
32
32
|
export function all(table: string, params: {where: object, fields: object|Array<string>, sort: Array<string>, page: number, perPage: number}): object;
|
|
33
33
|
|
|
34
34
|
/**
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
35
|
+
* Получить одну запись по ID или по условию выборки [первая запись]
|
|
36
|
+
* @param {string} table
|
|
37
|
+
* @param {number|string|object} IDOrWhere
|
|
38
|
+
* @param {object|Array} fields
|
|
39
|
+
* @param {string} primaryKeyName если указан ID, то указать название первичного ключа, если от id он отличается
|
|
40
40
|
*/
|
|
41
|
-
export function one(table: string,
|
|
41
|
+
export function one(table: string, IDOrWhere: number|string|object, fields: object|Array<string>, primaryKeyName: string): object;
|
|
42
42
|
|
|
43
43
|
/**
|
|
44
44
|
* Создать новую запись
|
package/REST.js
CHANGED
|
@@ -354,17 +354,24 @@ class FLAMEREST {
|
|
|
354
354
|
}
|
|
355
355
|
|
|
356
356
|
/**
|
|
357
|
-
* Получить одну запись по ID
|
|
357
|
+
* Получить одну запись по ID или по условию выборки [первая запись]
|
|
358
358
|
* @param {string} table
|
|
359
|
-
* @param {number|string}
|
|
359
|
+
* @param {number|string|object} IDOrWhere
|
|
360
360
|
* @param {object|Array} fields
|
|
361
361
|
* @param {string} primaryKeyName
|
|
362
362
|
* @returns {object}
|
|
363
363
|
*/
|
|
364
|
-
async one(table,
|
|
365
|
-
|
|
364
|
+
async one(table, IDOrWhere, fields = null, primaryKeyName = 'id') {
|
|
365
|
+
|
|
366
|
+
let where = {};
|
|
367
|
+
if(typeof IDOrWhere === 'string' || typeof IDOrWhere === 'number') where = {[primaryKeyName]:id};
|
|
368
|
+
else if(typeof IDOrWhere === 'object') where = IDOrWhere;
|
|
369
|
+
else throw "Нужно передавать ID или объект";
|
|
370
|
+
|
|
371
|
+
let resp = await this.get(table, where , null, fields, null, 1, 1);
|
|
366
372
|
if(resp.errors) return resp;
|
|
367
|
-
if(resp.data.length === 0) return
|
|
373
|
+
if(resp.data.length === 0) return null;
|
|
374
|
+
|
|
368
375
|
return resp.data[0];
|
|
369
376
|
}
|
|
370
377
|
|
|
@@ -396,10 +403,10 @@ class FLAMEREST {
|
|
|
396
403
|
// Нормализуем имена таблиц
|
|
397
404
|
table = table.replace(/_/g, "");
|
|
398
405
|
|
|
399
|
-
params = {};
|
|
406
|
+
let params = {};
|
|
400
407
|
if(byFields instanceof Object) params = byFields;
|
|
401
408
|
|
|
402
|
-
return this.request(this.SERVER + '/api/' + this.version + '/' + table + '/delete?id=' + id, params, 'DELETE');
|
|
409
|
+
return this.request(this.SERVER + '/api/' + this.version + '/' + table + '/delete?id=' + id, JSON.stringify(params), 'DELETE');
|
|
403
410
|
|
|
404
411
|
}
|
|
405
412
|
|