biz9-logic 4.9.43 → 4.9.48

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.
Files changed (4) hide show
  1. package/biz9_config +1 -1
  2. package/index.js +101 -14
  3. package/package.json +1 -1
  4. package/test.js +41 -33
package/biz9_config CHANGED
@@ -1,4 +1,4 @@
1
- VERSION='9.1.3'
1
+ VERSION='9.1.8'
2
2
  TITLE='BiZ9-Logic';
3
3
  REPO='git@github.com:biz9framework/biz9-logic.git';
4
4
  BRANCH='main';
package/index.js CHANGED
@@ -117,6 +117,8 @@ class Title {
117
117
  static SOCIAL_URL_INSTAGRAM="https://instagram.com/";
118
118
  static SOCIAL_URL_YOUTUBE="https://youtube.com/";
119
119
  static SOCIAL_URL_LINKEDIN="https://linkedin.com/";
120
+ //stat
121
+ static STAT_NUMBER="ST-";
120
122
  //str
121
123
  static CATEGORY='Category';
122
124
  static DESCRIPTION='Description';
@@ -182,19 +184,16 @@ class Demo_Logic {
182
184
  };
183
185
  }
184
186
  class Type {
185
- static get_stat_type_list = () =>{
186
- return [
187
- {title:Type.get_title(Type.STAT_VIEW),type:Type.STAT_VIEW,label:Type.get_title(Type.STAT_VIEW),value:Type.STAT_VIEW},
188
- {title:Type.get_title(Type.STAT_LOGIN),type:Type.STAT_LOGIN,label:Type.get_title(Type.STAT_LOGIN),value:Type.STAT_LOGIN},
189
- {title:Type.get_title(Type.STAT_REGISTER),type:Type.STAT_REGISTER,label:Type.get_title(Type.STAT_REGISTER),value:Type.STAT_REGISTER},
190
- {title:Type.get_title(Type.STAT_LIKE),type:Type.STAT_LIKE,label:Type.get_title(Type.STAT_LIKE),value:Type.STAT_LIKE},
191
- {title:Type.get_title(Type.STAT_FAVORITE),type:Type.STAT_FAVORITE,label:Type.get_title(Type.STAT_FAVORITE),value:Type.STAT_FAVORITE},
192
- {title:Type.get_title(Type.STAT_CART),type:Type.STAT_CART,label:Type.get_title(Type.STAT_CART),value:Type.STAT_CART},
193
- {title:Type.get_title(Type.STAT_ORDER),type:Type.STAT_ORDER,label:Type.get_title(Type.STAT_ORDER),value:Type.STAT_ORDER},
194
- {title:Type.get_title(Type.STAT_ORDER_PAYMENT),type:Type.STAT_ORDER_PAYMENT,label:Type.get_title(Type.STAT_ORDER_PAYMENT),value:Type.STAT_ORDER_PAYMENT},
195
- {title:Type.get_title(Type.STAT_REVIEW),type:Type.STAT_REVIEW,label:Type.get_title(Type.STAT_REVIEW),value:Type.STAT_REVIEW},
196
- ]
197
- };
187
+ //field
188
+ static ID='id';
189
+ static DATA_TYPE='data_type';
190
+ static DATE_CREATE='date_create';
191
+ static DATE_SAVE='date_save';
192
+ static PARENT_ID='parent_id';
193
+ static PARENT_DATA_TYPE='parent_data_type';
194
+ static SETTING_VISIBLE='setting_visible';
195
+ static SOURCE='source';
196
+
198
197
  //page
199
198
  static PAGE_ABOUT='about';
200
199
  static PAGE_CONTACT='contact';
@@ -264,6 +263,21 @@ class Type {
264
263
  static IMAGE_RESIZE_NORMAL="normal";
265
264
  static IMAGE_RESIZE_SQUARE="squre";
266
265
  static IMAGE_RESIZE_NONE="none";
266
+ //
267
+ static get_stat_type_list = () =>{
268
+ return [
269
+ {title:Type.get_title(Type.STAT_VIEW),type:Type.STAT_VIEW,label:Type.get_title(Type.STAT_VIEW),value:Type.STAT_VIEW},
270
+ {title:Type.get_title(Type.STAT_LOGIN),type:Type.STAT_LOGIN,label:Type.get_title(Type.STAT_LOGIN),value:Type.STAT_LOGIN},
271
+ {title:Type.get_title(Type.STAT_REGISTER),type:Type.STAT_REGISTER,label:Type.get_title(Type.STAT_REGISTER),value:Type.STAT_REGISTER},
272
+ {title:Type.get_title(Type.STAT_LIKE),type:Type.STAT_LIKE,label:Type.get_title(Type.STAT_LIKE),value:Type.STAT_LIKE},
273
+ {title:Type.get_title(Type.STAT_FAVORITE),type:Type.STAT_FAVORITE,label:Type.get_title(Type.STAT_FAVORITE),value:Type.STAT_FAVORITE},
274
+ {title:Type.get_title(Type.STAT_CART),type:Type.STAT_CART,label:Type.get_title(Type.STAT_CART),value:Type.STAT_CART},
275
+ {title:Type.get_title(Type.STAT_ORDER),type:Type.STAT_ORDER,label:Type.get_title(Type.STAT_ORDER),value:Type.STAT_ORDER},
276
+ {title:Type.get_title(Type.STAT_ORDER_PAYMENT),type:Type.STAT_ORDER_PAYMENT,label:Type.get_title(Type.STAT_ORDER_PAYMENT),value:Type.STAT_ORDER_PAYMENT},
277
+ {title:Type.get_title(Type.STAT_REVIEW),type:Type.STAT_REVIEW,label:Type.get_title(Type.STAT_REVIEW),value:Type.STAT_REVIEW},
278
+ ]
279
+ };
280
+
267
281
  static get_data_type_list = () =>{
268
282
  return [
269
283
  {title:Type.get_title(DataType.BLOG_POST),type:DataType.BLOG_POST,label:Type.get_title(DataType.BLOG_POST),value:DataType.BLOG_POST},
@@ -396,6 +410,74 @@ class Type {
396
410
  }
397
411
  }
398
412
  class Stat_Logic {
413
+ static get_new = (parent_data_type,stat_type,user_id) => {
414
+ return DataItem.get_new(DataType.STAT,0,
415
+ {
416
+ user_id:user_id,
417
+ stat_number:Title.STAT_NUMBER + Num.get_id(99999),
418
+ stat_type:stat_type,
419
+ parent_data_type:parent_data_type,
420
+ stat_item_list:[]
421
+ });
422
+ };
423
+ static get_new_stat_item = (stat,post_data) =>{
424
+ let new_stat = DataItem.get_new(DataType.STAT_ITEM,0,{
425
+ parent_data_type:stat.parent_data_type,
426
+ parent_id:!Str.check_is_null(post_data.parent_id)?post_data.parent_id:post_data.id,
427
+ stat_type:stat.stat_type,
428
+ stat_number:stat.stat_number,
429
+ user_id:stat.user_id
430
+ });
431
+ if(!Obj.check_is_empty(post_data)){
432
+ new_stat = Obj.merge(new_stat,Stat_Logic.filter_stat(post_data));
433
+ }
434
+ return new_stat;
435
+ };
436
+ static filter_stat = (post_data) =>{
437
+ let filter_stat = {};
438
+ for(const prop in post_data) {
439
+ const value = post_data[prop];
440
+ if (!Array.isArray(value) && prop != Type.SOURCE && prop != Type.DATE_CREATE && prop != Type.DATE_SAVE && prop != Type.DATA_TYPE && prop != Type.ID) {
441
+ filter_stat[prop] = post_data[prop];
442
+ }
443
+ }
444
+ return filter_stat;
445
+ }
446
+ }
447
+ class Stat_Logic_Old {
448
+ static get_new = (user_id,stat_type,post_data)=>{
449
+ console.log('4444444444444');
450
+ Log.w('55_user_id',user_id);
451
+ Log.w('66_stat_type',stat_type);
452
+ Log.w('77_post_data',post_data);
453
+ let stat = DataItem.get_new(DataType.STAT,0,{user_id:user_id,stat_type:stat_type,post_data_list:[]});
454
+ console.log('55555555');
455
+ if(post_data[Type.PARENT_ID] && post_data[Type.PARENT_DATA_TYPE]){
456
+ console.log('666666666666');
457
+ stat.post_data[Type.PARENT_ID] = post_data[Type.PARENT_ID];
458
+ stat.post_data[Type.PARENT_DATA_TYPE] = post_data[Type.PARENT_DATA_TYPE];
459
+ }else{
460
+ console.log('77777777777777');
461
+ console.log(post_data);
462
+ /*
463
+ console.log(post_data[Type.ID]);
464
+ stat.post_data[Type.PARENT_ID] = post_data[Type.ID];
465
+ stat.post_data[Type.PARENT_DATA_TYPE] = post_data[Type.DATA_TYPE];
466
+ */
467
+ }
468
+ /*
469
+ for(const prop in post_data) {
470
+ if (Object.prototype.hasOwnProperty.call(post_data, prop)){
471
+ const value = post_data[prop];
472
+ }else if (!Array.isArray(value) && prop != Type.DATE_CREATE && prop != Type.DATE_SAVE ) {
473
+ stat.post_data[prop] = post_data[prop];
474
+ }
475
+ }
476
+ */
477
+ Log.w('88_post_data',stat);
478
+
479
+ //return stat;
480
+ }
399
481
  static get_user_activity_filter = (user_id_filter) =>{
400
482
  return {
401
483
  $and: [
@@ -415,7 +497,7 @@ class Stat_Logic {
415
497
  data:data,
416
498
  }
417
499
  };
418
- static get_new = (user_id,stat_type,parent_item_list,data)=>{
500
+ static old_get_new = (user_id,stat_type,parent_item_list,data)=>{
419
501
  let stat_list = [];
420
502
  for(const item of parent_item_list){
421
503
  let stat = DataItem.get_new(DataType.STAT,0);
@@ -448,6 +530,10 @@ class Stat_Logic {
448
530
  stat.parent_payment_amount = item.payment_amount;
449
531
  stat.parent_transaction_id = item.transaction_id;
450
532
  }
533
+ if(item.data_type==DataType.REVIEW){
534
+ stat.rating = item.rating;
535
+ }
536
+
451
537
  stat_list.push(stat);
452
538
  };
453
539
  return stat_list;
@@ -1252,6 +1338,7 @@ static APP='app_biz';
1252
1338
  static SERVICE='service_biz';
1253
1339
  static SECURITY='security_biz';
1254
1340
  static STAT='stat_biz';
1341
+ static STAT_ITEM='stat_item_biz';
1255
1342
  static TEMPLATE='template_biz';
1256
1343
  static TYPE='type_biz';
1257
1344
  static USER='user_biz';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "biz9-logic",
3
- "version": "4.9.43",
3
+ "version": "4.9.48",
4
4
  "main": "index.js",
5
5
  "scripts": {
6
6
  "test": "echo \"Error: no test specified\" && exit 1"
package/test.js CHANGED
@@ -1,5 +1,5 @@
1
1
  const series = require('async-series');
2
- const {DataItem,DataType,Page_Logic,Product_Logic,Type,Title,Stat_Logic,Service_Logic,Blog_Post_Logic,Event_Logic,Demo_Logic,Cart_Logic,Order_Logic} = require('./index');
2
+ const {DataItem,DataType,Item_Logic,Page_Logic,Product_Logic,Type,Title,Stat_Logic,Service_Logic,Blog_Post_Logic,Event_Logic,Demo_Logic,Cart_Logic,Order_Logic} = require('./index');
3
3
  const {Log,Num,Str} = require('biz9-utility');
4
4
  const {Scriptz}= require('biz9-scriptz');
5
5
 
@@ -30,45 +30,53 @@ describe("connect", () => {
30
30
  it("_connect", () => {
31
31
  series([
32
32
 
33
- /* --- TEST LOGIC - CONNECT - START --- */
34
- function(call) {
35
- console.log('CONNECT-CMS-DEMO-START');
36
- let category_type = DataType.PRODUCT;
37
- let category_count = 12;
38
- let item_count = 500;
33
+ function(call) {
34
+ console.log('CONNECT-BASE-START');
35
+ let data_type = DataType.PRODUCT;
36
+ let id = 0;
37
+ let parent_data_type = DataType.PRODUCT;
38
+ let parent_id = 0;
39
+ let user_id = 0;
40
+ let item = Product_Logic.get_test();
41
+ item.id = 333;
42
+ item.items = ['a','b'];
43
+ console.log('here');
44
+ let stat = Stat_Logic.get_new(data_type,Type.STAT_VIEW,user_id);
45
+ let stat_item = Stat_Logic.get_new_stat_item(stat,item);
46
+ //Log.w('33_stat',item);
47
+ //Log.w('11_stat',stat);
48
+ //Log.w('22_stat_item',stat_item);
39
49
 
40
- //let category_type_title_list = ['Add On','Admin Panel','Hosting','Landing Page','Mobile','Website'];
41
- //let category_title_list = ['Beauty','Church','Fashion','Food Trucks','Health Care','Music','Pets','Services','Service Repair','Sports','Trucking'];
50
+ console.log('CONNECT-BASE-END');
51
+ }
52
+ /*
53
+ function(call) {
54
+ console.log('CONNECT-CMS-DEMO-START');
55
+ let category_type = DataType.PRODUCT;
56
+ let category_count = 12;
57
+ let item_count = 500;
42
58
 
43
- let category_type_title_list = '';
44
- let category_title_list = '';
59
+ //let category_type_title_list = ['Add On','Admin Panel','Hosting','Landing Page','Mobile','Website'];
60
+ //let category_title_list = ['Beauty','Church','Fashion','Food Trucks','Health Care','Music','Pets','Services','Service Repair','Sports','Trucking'];
45
61
 
62
+ let category_type_title_list = '';
63
+ let category_title_list = '';
46
64
 
47
- let item_title_list = [];
48
- let post_type_list = [];
49
- let val_category_title = '';
50
- let cat_max = 0;
51
- let option = {get_category:true,category_count:category_count,category_data_type:category_type,categorys:val_category_title?val_category_title:null,
65
+ let item_title_list = [];
66
+ let post_type_list = [];
67
+ let val_category_title = '';
68
+ let cat_max = 0;
69
+ let option = {get_category:true,category_count:category_count,category_data_type:category_type,categorys:val_category_title?val_category_title:null,
52
70
  get_item:true,item_count:item_count,item_data_type:category_type,items:null}
53
71
 
54
- console.log(Demo_Logic.get_new_type('',option));
55
- /*
56
- for(const item of category_type_title_list){
57
- post_type_list.push(
58
- Demo_Logic.get_new_type(item,option));
59
- }
60
-
61
- Log.w('44-post_type_list',post_type_list);
62
- Log.w('55-post_type_list-a',post_type_list.length);
63
- Log.w('55-post_type_list-b',post_type_list[0].categorys[0].items.length);
64
- Log.w('55-post_type_list-b',post_type_list[0].categorys[1].items.length);
65
- Log.w('55-post_type_list-b',post_type_list[0].categorys[2].items.length);
66
- Log.w('55-post_type_list-b',post_type_list[0].categorys[3].items.length);
67
- Log.w('55-post_type_list-b',post_type_list[0].categorys[4].items.length);
68
- console.log('CONNECT-CMS-DEMO-SUCCESS');
69
- */
70
-
72
+ console.log(Demo_Logic.get_new_type('',option));
73
+ for(const item of category_type_title_list){
74
+ post_type_list.push(
75
+ Demo_Logic.get_new_type(item,option));
76
+ }
77
+ console.log('CONNECT-CMS-DEMO-SUCCESS');
71
78
  },
79
+ */
72
80
  /*
73
81
  function(call) {
74
82
  //console.log('CONNECT-START');