@digione/node-custom-api 0.1.9-beta1 → 0.1.9-beta11

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@digione/node-custom-api",
3
- "version": "0.1.9-beta1",
3
+ "version": "0.1.9-beta11",
4
4
  "description": "Typescript node digione-api",
5
5
  "author": "Monchai Jirayupong <monchai.j@seven.co.th>",
6
6
  "license": "MIT",
package/utils/db.js CHANGED
@@ -32,7 +32,7 @@ const getWhereVal = (smth) => {
32
32
  return [key, value].join(` ${smth.comparator} `);
33
33
  };
34
34
  const genWhere = (where = {}, { as = "", delimiter = ".", prefix = true, bracket = false } = {}) => {
35
- as = as ? as + delimiter : as;
35
+ as = as ? "`" + as + "`" + delimiter : as;
36
36
  let symbolKeys = Object.getOwnPropertySymbols(where);
37
37
  let rawWhere = (Object.keys(where).concat(symbolKeys)).reduce((result, key) => {
38
38
  let value = where[key];
@@ -48,7 +48,7 @@ const genWhere = (where = {}, { as = "", delimiter = ".", prefix = true, bracket
48
48
  result = `${result}( ${op}) AND `;
49
49
  }
50
50
  else {
51
- result = `${result + key} IN (${value.map(i => "'" + i + "'").join(',')}) AND `;
51
+ result = result + "`" + key + "`" + ` IN (${value.map(i => "'" + i + "'").join(',')}) AND `;
52
52
  }
53
53
  return result;
54
54
  }
@@ -62,10 +62,10 @@ const genWhere = (where = {}, { as = "", delimiter = ".", prefix = true, bracket
62
62
  return result;
63
63
  }
64
64
  else if (typeof value == "object" && value['val']) {
65
- result = `${result}${key}=${value['val']} AND `;
65
+ result = result + "`" + key + "`" + `=${value['val']} AND `;
66
66
  return result;
67
67
  }
68
- result = result + key + "=" + value + " AND ";
68
+ result = result + "`" + key + "`" + "=" + value + " AND ";
69
69
  }
70
70
  return result;
71
71
  }, "");
package/utils/file.d.ts CHANGED
@@ -147,7 +147,7 @@ export declare class FileUtil {
147
147
  hidden?: number;
148
148
  input?: {};
149
149
  }): Promise<any>;
150
- createFileByPath(files: Array<string>, slug: string, user_id: any, { parent_slug, type, name, root, upload, tags, group }?: {
150
+ createFileByPath(files: Array<any>, slug: string, user_id: any, { parent_slug, type, name, root, upload, tags, group }?: {
151
151
  parent_slug?: string;
152
152
  type?: string;
153
153
  name?: any;
@@ -171,7 +171,7 @@ export declare class FileUtil {
171
171
  user_id: any;
172
172
  organ_id: any;
173
173
  organ_by: any;
174
- sort: string;
174
+ sort: any;
175
175
  date_added: string;
176
176
  name: any;
177
177
  filename: any;
@@ -181,7 +181,8 @@ export declare class FileUtil {
181
181
  extension: string;
182
182
  type: any;
183
183
  is_hidden: any;
184
- tags: TagFile;
184
+ tags: any;
185
+ custom: any;
185
186
  group: any;
186
187
  }[]>;
187
188
  insertFileUnique(results: Array<any>, { format, thumb, width, height }?: {
package/utils/file.js CHANGED
@@ -133,6 +133,7 @@ class FileUtil {
133
133
  let reqs = [], results = [];
134
134
  for (let file of files) {
135
135
  let extension = mime.extension(file.mimetype);
136
+ extension = extension ? extension : String(file.mimetype).split('/')[1];
136
137
  let input = {
137
138
  Bucket: this.bucket,
138
139
  Key: this.ref + "/" + (0, helper_1.getDateTime)().format('X') + '.' + (0, helper_1.getSlug)(32) + '.' + extension,
@@ -256,7 +257,7 @@ class FileUtil {
256
257
  result[width + 'x' + height] = thumb;
257
258
  yield (0, db_1.update)(this.ref, file_1.FileModel.getTableName().toString(), { thumb: JSON.stringify(result) }, { where: { id: item['id'] } });
258
259
  }
259
- if (item['filename'] == path) {
260
+ if (thumb && item['filename'] == path) {
260
261
  yield this.getStorage();
261
262
  let data = yield this.afterQueryFile({ filename: thumb, path: thumb });
262
263
  thumb = data.path;
@@ -406,6 +407,7 @@ class FileUtil {
406
407
  let folder = yield this.createFolder(slug, { parent_id, root, name });
407
408
  for (let file of req.files) {
408
409
  let extension = mime.extension(file.mimetype);
410
+ extension = extension ? extension : String(file.mimetype).split('/')[1];
409
411
  let input = {
410
412
  Bucket: this.bucket,
411
413
  Key: this.ref + "/" + (0, helper_1.getDateTime)().format('X') + '.' + (0, helper_1.getSlug)(32) + '.' + extension,
@@ -470,8 +472,13 @@ class FileUtil {
470
472
  let folder = yield this.createFolder(slug, { parent_id, root, name });
471
473
  let results = [], reqs = [];
472
474
  files.forEach((item) => {
473
- results.push({ Location: item, Key: item });
474
- reqs.push({ originalname: (0, helper_1.getSlug)(32), mimetype: null, size: 0, type });
475
+ let addition = {}, path = item;
476
+ if (typeof item == "object") {
477
+ addition = item;
478
+ path = item['path'];
479
+ }
480
+ results.push({ Location: path, Key: path });
481
+ reqs.push(Object.assign({ originalname: (0, helper_1.getSlug)(32), mimetype: null, size: 0, type }, addition));
475
482
  });
476
483
  results = yield this.formatFile(folder['id'], user_id, reqs, results, { input, tags, group });
477
484
  return yield this.insertFileUnique(results);
@@ -574,14 +581,11 @@ class FileUtil {
574
581
  path = (index < 0) ? protocol + path : path;
575
582
  }
576
583
  let extension = mime.extension(reqs[key].mimetype);
584
+ extension = extension ? extension : String(reqs[key].mimetype).split('/')[1];
577
585
  let item = Object.assign(Object.assign({}, input), { folder_id,
578
586
  user_id,
579
587
  organ_id,
580
- organ_by,
581
- sort,
582
- date_added, name: reqs[key].originalname || (0, helper_1.getSlug)(32), filename: reqs[key].Key || file.Key || input['filename'], path, mimetype: reqs[key].mimetype, filesize: reqs[key].size, extension: (extension ? "." + extension : ''), type: reqs[key].type || file.type || input['type'], is_hidden,
583
- tags,
584
- group });
588
+ organ_by, sort: reqs[key].sort || sort, date_added, name: reqs[key].originalname || (0, helper_1.getSlug)(32), filename: reqs[key].Key || file.Key || input['filename'], path, mimetype: reqs[key].mimetype, filesize: reqs[key].size, extension: (extension ? "." + extension : ''), type: reqs[key].type || file.type || input['type'], is_hidden, tags: reqs[key].tags || tags, custom: reqs[key].custom || input['custom'], group });
585
589
  if (format) {
586
590
  item = yield this.afterQueryFile(item);
587
591
  }
package/utils/helper.d.ts CHANGED
@@ -64,7 +64,7 @@ export declare const randomRef: ({ length_digital, length_alphabet }?: {
64
64
  length_alphabet?: number;
65
65
  }) => string;
66
66
  export declare const treeToArray: (items: Array<any>, array?: Array<any>, level?: number) => Promise<any[]>;
67
- export declare const buildTree: (nodes: Array<any>, { index, field_children, json_convert, key_index, key_parent, root, to_array }?: {
67
+ export declare const buildTree: (nodes: Array<any>, { index, field_children, json_convert, key_index, key_parent, root, to_array, notfound_parent }?: {
68
68
  index?: any;
69
69
  field_children?: string;
70
70
  json_convert?: boolean;
@@ -72,6 +72,7 @@ export declare const buildTree: (nodes: Array<any>, { index, field_children, jso
72
72
  key_parent?: string;
73
73
  root?: any;
74
74
  to_array?: boolean;
75
+ notfound_parent?: boolean;
75
76
  }) => Promise<any[]>;
76
77
  export declare const expandTree: (items: Array<any>, { array, parent, level, prefix, field_index, field_children, key_value }?: {
77
78
  array?: any[];
package/utils/helper.js CHANGED
@@ -154,8 +154,9 @@ exports.removeHyphen = removeHyphen;
154
154
  const getMobileNumber = (str, { prefix = "+66" } = {}) => {
155
155
  if (str) {
156
156
  str = str.replace(/_/g, "").replace(/-/g, "").replace(/ /g, "");
157
- if (str.indexOf("+") == -1 && str.length == 10) {
158
- str = str.substr(1);
157
+ if (str.indexOf("+") == -1 && (str.length == 10 || str.length == 9)) {
158
+ if (str.length == 10 && str[0] == "0")
159
+ str = str.substr(1);
159
160
  str = prefix + str;
160
161
  }
161
162
  }
@@ -228,7 +229,7 @@ const treeToArray = (items, array = [], level = 1) => tslib_1.__awaiter(void 0,
228
229
  return array;
229
230
  });
230
231
  exports.treeToArray = treeToArray;
231
- const buildTree = (nodes, { index = undefined, field_children = "children", json_convert = false, key_index = "id", key_parent = "parent", root = undefined, to_array = false } = {}) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
232
+ const buildTree = (nodes, { index = undefined, field_children = "children", json_convert = false, key_index = "id", key_parent = "parent", root = undefined, to_array = false, notfound_parent = false } = {}) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
232
233
  if (!nodes) {
233
234
  return null;
234
235
  }
@@ -266,11 +267,16 @@ const buildTree = (nodes, { index = undefined, field_children = "children", json
266
267
  }
267
268
  }
268
269
  parent[field_children] = results;
270
+ delete children[parent[key_index]];
269
271
  }
270
272
  };
271
273
  for (let i = 0, len = roots.length; i < len; ++i) {
272
274
  findChildren(roots[i]);
273
275
  }
276
+ if (notfound_parent) {
277
+ let items = Object.keys(children).reduce((total, key) => total.concat(children[key]), []);
278
+ roots.unshift({ [key_index]: -1, [field_children]: items });
279
+ }
274
280
  if (index)
275
281
  roots = roots[0];
276
282
  if (roots && to_array) {
package/utils/stream.d.ts CHANGED
@@ -40,7 +40,7 @@ export declare class StreamUtil {
40
40
  private fileUtil;
41
41
  private languageUtil;
42
42
  constructor(ref?: string, option?: QueryParamOption, fileUtil?: FileUtil);
43
- findField(slug: string, namespace: string, { index, option, no_lang, field_slug, field_only, field_required, lang, lang_code, is_required, default_value, addition, include, include_only, convert_option, field_option, require, multiple_table, multiple_spread, text, bullets, multiple, relationship, file, image, field_exclude, section }?: {
43
+ findField(slug: string, namespace: string, { index, option, no_lang, field_slug, field_only, field_required, lang, lang_code, is_required, default_value, addition, include, include_only, convert_option, convert_value, field_option, require, multiple_table, multiple_spread, text, bullets, multiple, relationship, file, image, field_exclude, section }?: {
44
44
  index?: string;
45
45
  option?: {};
46
46
  no_lang?: boolean;
@@ -55,6 +55,7 @@ export declare class StreamUtil {
55
55
  include?: any;
56
56
  include_only?: boolean;
57
57
  convert_option?: boolean;
58
+ convert_value?: boolean;
58
59
  field_option?: {};
59
60
  require?: boolean;
60
61
  multiple_table?: boolean;
@@ -117,7 +118,7 @@ export declare class StreamUtil {
117
118
  result: {};
118
119
  labels: any[];
119
120
  }>;
120
- genField(streams: Array<any>, { index, option, slug, id_stream, prefix, multiple_table, multiple_spread, addition, convert_option, field_option, default_value, default_lang, lang_code, no_lang, lang, country, section }?: {
121
+ genField(streams: Array<any>, { index, option, slug, id_stream, prefix, multiple_table, multiple_spread, addition, convert_option, convert_value, field_option, default_value, default_lang, lang_code, no_lang, lang, country, section }?: {
121
122
  index?: string;
122
123
  option?: {};
123
124
  slug?: string;
@@ -127,6 +128,7 @@ export declare class StreamUtil {
127
128
  multiple_spread?: boolean;
128
129
  addition?: {};
129
130
  convert_option?: boolean;
131
+ convert_value?: boolean;
130
132
  field_option?: {};
131
133
  default_value?: any;
132
134
  default_lang?: string;
package/utils/stream.js CHANGED
@@ -101,7 +101,7 @@ class StreamUtil {
101
101
  this.fileUtil = fileUtil || new file_2.FileUtil(this.ref, this.option);
102
102
  this.languageUtil = new language_1.LanguageUtil(this.ref, this.option);
103
103
  }
104
- findField(slug, namespace, { index = "", option = {}, no_lang = false, field_slug = [], field_only = true, field_required = true, lang = [], lang_code = "en", is_required = "", default_value = {}, addition = {}, include = undefined, include_only = false, convert_option = false, field_option = {}, require = false, multiple_table = false, multiple_spread = false, text = false, bullets = false, multiple = false, relationship = false, file = false, image = false, field_exclude = [], section = false } = {}) {
104
+ findField(slug, namespace, { index = "", option = {}, no_lang = false, field_slug = [], field_only = true, field_required = true, lang = [], lang_code = "en", is_required = "", default_value = {}, addition = {}, include = undefined, include_only = false, convert_option = false, convert_value = false, field_option = {}, require = false, multiple_table = false, multiple_spread = false, text = false, bullets = false, multiple = false, relationship = false, file = false, image = false, field_exclude = [], section = false } = {}) {
105
105
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
106
106
  let data;
107
107
  let where = {};
@@ -184,7 +184,7 @@ class StreamUtil {
184
184
  }
185
185
  }
186
186
  if (convert_option) {
187
- data['fields'] = yield this.genField(data['fields'], { index, option, slug, id_stream: data['id'], prefix: data['stream_prefix'], multiple_table, multiple_spread, addition, field_option, default_value, lang_code, no_lang, lang, section });
187
+ data['fields'] = yield this.genField(data['fields'], { index, option, slug, id_stream: data['id'], prefix: data['stream_prefix'], multiple_table, multiple_spread, addition, convert_value, field_option, default_value, lang_code, no_lang, lang, section });
188
188
  }
189
189
  if (field_only) {
190
190
  return data['fields'];
@@ -347,7 +347,7 @@ class StreamUtil {
347
347
  return { result, labels };
348
348
  });
349
349
  }
350
- genField(streams, { index = "", option = {}, slug = "", id_stream = "", prefix = "", multiple_table = false, multiple_spread = false, addition = {}, convert_option = true, field_option = {}, default_value = {}, default_lang = "en", lang_code = "en", no_lang = false, lang = [], country = undefined, section = false } = {}) {
350
+ genField(streams, { index = "", option = {}, slug = "", id_stream = "", prefix = "", multiple_table = false, multiple_spread = false, addition = {}, convert_option = true, convert_value = false, field_option = {}, default_value = {}, default_lang = "en", lang_code = "en", no_lang = false, lang = [], country = undefined, section = false } = {}) {
351
351
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
352
352
  let fields = [], sections = [];
353
353
  let exclude = option['excludeObj'] || {};
@@ -472,7 +472,9 @@ class StreamUtil {
472
472
  continue;
473
473
  }
474
474
  if (convert_option) {
475
+ let obj_value = {};
475
476
  if (item['field_type'] == "choice") {
477
+ let opt_empty = false;
476
478
  if (field_data['choice_data']) {
477
479
  let data = [];
478
480
  data = field_data['choice_data'].split('\n');
@@ -495,12 +497,16 @@ class StreamUtil {
495
497
  data[k] = { key, value };
496
498
  }
497
499
  else {
500
+ opt_empty = true;
498
501
  data[k] = { key: '', value };
499
502
  }
500
503
  }
501
504
  else {
502
505
  data[k] = { key: v, value: v };
503
506
  }
507
+ if (convert_value && data[k]) {
508
+ obj_value[data[k]['key']] = data[k]['value'];
509
+ }
504
510
  });
505
511
  item['data'] = data;
506
512
  }
@@ -510,9 +516,23 @@ class StreamUtil {
510
516
  if (value && value.indexOf('lang:') > -1) {
511
517
  item['value'] = (0, i18n_1.__)({ phrase: value, locale: lang_code });
512
518
  }
519
+ if (!item['key'])
520
+ opt_empty = true;
521
+ if (convert_value && item['key']) {
522
+ obj_value[item['key']] = item['value'];
523
+ }
513
524
  return item;
514
525
  });
515
526
  }
527
+ if (field_data['default_value'] && !opt_empty && (item['field_value'] == '' || item['field_value'] == null)) {
528
+ item['field_value'] = field_data['default_value'];
529
+ }
530
+ if (convert_value && typeof item['field_value'] != "undefined") {
531
+ let field_value = item['field_value'];
532
+ if (item['field_value'] == null && opt_empty)
533
+ field_value = '';
534
+ field_data['value'] = obj_value[field_value];
535
+ }
516
536
  }
517
537
  else if (!field_option[item['field_slug']] && (item['field_type'] == "relationship" || item['field_type'] == "multiple") && field_data['choose_stream']) {
518
538
  try {
@@ -557,6 +577,9 @@ class StreamUtil {
557
577
  item['title'] = item['title'] ? item['title'] : item[stream['title_column']];
558
578
  (0, helper_2.getValueFunctionLang)('title')(item, { result: item, lang_code });
559
579
  let value = item['title'] ? item['title'] : item['id'];
580
+ if (convert_value && item['id']) {
581
+ obj_value[item['id']] = value;
582
+ }
560
583
  return {
561
584
  key: item['id'],
562
585
  value
@@ -567,6 +590,9 @@ class StreamUtil {
567
590
  }
568
591
  }
569
592
  item['data'] = data;
593
+ if (convert_value && item['field_value']) {
594
+ field_data['value'] = obj_value[item['field_value']];
595
+ }
570
596
  }
571
597
  catch (err) { }
572
598
  }
@@ -1636,8 +1662,10 @@ class StreamUtil {
1636
1662
  }
1637
1663
  }
1638
1664
  }
1639
- let sort_order = yield field_1.FieldModel.schema(this.ref, "_").max('sort_order', { where: { stream_id: stream['id'] } });
1640
- field['sort_order'] = sort_order ? Number(sort_order + 1) : 1;
1665
+ if (typeof field['sort_order'] == "undefined") {
1666
+ let sort_order = yield field_1.FieldModel.schema(this.ref, "_").max('sort_order', { where: { stream_id: stream['id'] } });
1667
+ field['sort_order'] = sort_order ? Number(sort_order + 1) : 1;
1668
+ }
1641
1669
  if (!field['stream_id']) {
1642
1670
  field['stream_id'] = stream['id'];
1643
1671
  }
@@ -1897,11 +1925,13 @@ class StreamUtil {
1897
1925
  allow_type = new RegExp(/^(image.*)$/).test(file[field_slug]['mimetype']);
1898
1926
  if (!allow_type) {
1899
1927
  input[field_slug] = mime.extension(file[field_slug]['mimetype']);
1928
+ input[field_slug] = input[field_slug] ? input[field_slug] : String(file[field_slug]['mimetype']).split('/')[1];
1900
1929
  field = Joi.string().valid('image/*');
1901
1930
  }
1902
1931
  }
1903
1932
  if (!allow_type && field_data['allowed_types']) {
1904
1933
  let extension = String(mime.extension(file[field_slug]['mimetype']));
1934
+ extension = extension ? extension : String(file[field_slug]['mimetype']).split('/')[1];
1905
1935
  if (!new RegExp(`^(${field_data['allowed_types']})$`).test(extension)) {
1906
1936
  input[field_slug] = extension;
1907
1937
  field = Joi.string().valid(...(field_data['allowed_types'].split('|') || []));
package/utils/user.d.ts CHANGED
@@ -40,9 +40,9 @@ export declare const convertAddress: (data: any, { lang_code, transform }?: {
40
40
  lang_code?: string;
41
41
  transform?: boolean;
42
42
  }) => Promise<any>;
43
- export declare const getAddressIndex: (data: any, { condition, lang_code }?: {
43
+ export declare const getAddressIndex: (data: any, { condition, where }?: {
44
44
  condition?: {};
45
- lang_code?: string;
45
+ where?: {};
46
46
  }) => Promise<{}>;
47
47
  export declare const getCountry: (ref: string, { organ_id, lang_code, setting }?: {
48
48
  organ_id?: string;
package/utils/user.js CHANGED
@@ -229,12 +229,11 @@ const convertAddress = (data, { lang_code = "en", transform = false } = {}) => t
229
229
  return data;
230
230
  });
231
231
  exports.convertAddress = convertAddress;
232
- const getAddressIndex = (data, { condition = {}, lang_code = "en" } = {}) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
233
- let result = {}, where = { lang_code: [lang_code, "en"] }, bol = false;
234
- let order = [sequelize.literal(`FIELD(lang_code,${'\'' + where['lang_code'].join('\',\'') + '\''})`)];
232
+ const getAddressIndex = (data, { condition = {}, where = {} } = {}) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
233
+ let result = {}, bol = false;
235
234
  if (!bol && data['country'] && !condition['country_id']) {
236
235
  let country = yield country_1.CountryModel.schema("core", "_").findOne({
237
- raw: true, where: Object.assign(Object.assign({}, where), { country_name: data['country'] }), attributes: ['id'], order
236
+ raw: true, where: Object.assign(Object.assign({}, where), { country_name: data['country'] }), attributes: ['id']
238
237
  });
239
238
  if (country) {
240
239
  result['country_id'] = country['id'];
@@ -245,7 +244,7 @@ const getAddressIndex = (data, { condition = {}, lang_code = "en" } = {}) => tsl
245
244
  if (!bol && data['state'] && !condition['state_id']) {
246
245
  let country_id = condition['country_id'] || null;
247
246
  let state = yield state_1.StateModel.schema("core", "_").findOne({
248
- raw: true, where: Object.assign(Object.assign({}, where), { country_id, state_name: data['state'] }), attributes: ['id'], order
247
+ raw: true, where: Object.assign(Object.assign({}, where), { country_id, state_name: data['state'] }), attributes: ['id']
249
248
  });
250
249
  if (state) {
251
250
  result['state_id'] = state['id'];
@@ -256,7 +255,7 @@ const getAddressIndex = (data, { condition = {}, lang_code = "en" } = {}) => tsl
256
255
  if (!bol && data['city'] && !condition['city_id']) {
257
256
  let state_id = condition['state_id'] || null;
258
257
  let city = yield city_1.CityModel.schema("core", "_").findOne({
259
- raw: true, where: Object.assign(Object.assign({}, where), { state_id, city_name: data['city'] }), attributes: ['id'], order
258
+ raw: true, where: Object.assign(Object.assign({}, where), { state_id, city_name: data['city'] }), attributes: ['id']
260
259
  });
261
260
  if (city) {
262
261
  result['city_id'] = city['id'];
@@ -267,7 +266,7 @@ const getAddressIndex = (data, { condition = {}, lang_code = "en" } = {}) => tsl
267
266
  if (!bol && data['district']) {
268
267
  let city_id = condition['city_id'] || null;
269
268
  let district = yield district_1.DistrictModel.schema("core", "_").findOne({
270
- raw: true, where: Object.assign(Object.assign({}, where), { city_id, district_name: data['district'] }), attributes: ['id'], order
269
+ raw: true, where: Object.assign(Object.assign({}, where), { city_id, district_name: data['district'] }), attributes: ['id']
271
270
  });
272
271
  if (district)
273
272
  result['district_id'] = district['id'];
@@ -277,7 +276,14 @@ const getAddressIndex = (data, { condition = {}, lang_code = "en" } = {}) => tsl
277
276
  exports.getAddressIndex = getAddressIndex;
278
277
  const getCountry = (ref, { organ_id = "", lang_code = "en", setting = {} } = {}) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
279
278
  let where = { status: 1, lang_code }, default_country;
280
- if (setting['country_id']) {
279
+ if (organ_id) {
280
+ let query = yield organ_1.UserOrganModel.schema(ref, "_").findOne({ where: { id: organ_id }, attributes: ['setting'], raw: true });
281
+ setting = query ? (query['setting'] || {}) : {};
282
+ }
283
+ if (setting['mobile_code']) {
284
+ where['mobilecode'] = setting['mobile_code'].split(",");
285
+ }
286
+ else if (setting['country_id']) {
281
287
  where['id'] = setting['country_id'].split(",");
282
288
  }
283
289
  let data = yield country_1.CountryModel.schema("core", "_").findAll({
@@ -57,5 +57,13 @@ export declare const convertService: ({ convert_type, schema }?: {
57
57
  convert_type?: any[];
58
58
  schema?: {};
59
59
  }) => (req: any, res: any, next: any) => Promise<any>;
60
+ export declare const entryValidateService: ({ module, schema }?: {
61
+ module?: string[];
62
+ schema?: {};
63
+ }) => (req: any, res: any, next: any) => Promise<any>;
64
+ export declare const entryParamService: ({ module, schema }?: {
65
+ module?: string[];
66
+ schema?: {};
67
+ }) => (req: any, res: any, next: any) => Promise<any>;
60
68
  export declare const createdByValidate: (req: any, res: any, next: any) => Promise<any>;
61
69
  export {};
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createdByValidate = exports.convertService = exports.fieldService = exports.dataService = exports.printService = exports.exportService = exports.importService = exports.streamService = exports.multiService = exports.fileService = exports.paramService = exports.validateService = exports.validate = void 0;
3
+ exports.createdByValidate = exports.entryParamService = exports.entryValidateService = exports.convertService = exports.fieldService = exports.dataService = exports.printService = exports.exportService = exports.importService = exports.streamService = exports.multiService = exports.fileService = exports.paramService = exports.validateService = exports.validate = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const Joi = require("joi");
6
6
  const errors_1 = require("../errors");
@@ -291,6 +291,20 @@ const convertService = ({ convert_type = [], schema = {} } = {}) => (req, res, n
291
291
  return (0, exports.validateService)(Joi.object().keys(Object.assign({ ids: Joi.array().items(Joi.number()).min(1), convert_type: Joi.string().valid(...convert_type) }, schema)).unknown())(req, res, next);
292
292
  });
293
293
  exports.convertService = convertService;
294
+ const entryValidateService = ({ module = ['contact'], schema = {} } = {}) => (req, res, next) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
295
+ return (0, exports.validateService)(Joi.object().keys(Object.assign({ module: Joi.string().valid(...module), entry_id: Joi.number().required() }, schema)).unknown())(req, res, next);
296
+ });
297
+ exports.entryValidateService = entryValidateService;
298
+ const entryParamService = ({ module = ['contact'], schema = {} } = {}) => (req, res, next) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
299
+ if (req.query.module) {
300
+ res.locals.option = Object.assign(Object.assign({}, (res.locals.option || {})), { module: req.query.module });
301
+ }
302
+ if (req.query.entry_id) {
303
+ res.locals.option = Object.assign(Object.assign({}, (res.locals.option || {})), { entry_id: req.query.entry_id });
304
+ }
305
+ return (0, exports.paramService)(Joi.object().keys(Object.assign({ module: Joi.string().valid(...module), entry_id: Joi.number().required() }, schema)).unknown())(req, res, next);
306
+ });
307
+ exports.entryParamService = entryParamService;
294
308
  exports.createdByValidate = (0, exports.validateService)(Joi.object().keys({
295
309
  created_by: Joi.alternatives().try(Joi.string(), Joi.number()).required()
296
310
  }).unknown());