biz9-logic 4.9.43 → 4.9.49

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 +55 -76
  3. package/package.json +1 -1
  4. package/test.js +37 -33
package/biz9_config CHANGED
@@ -1,4 +1,4 @@
1
- VERSION='9.1.3'
1
+ VERSION='9.1.9'
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,69 +410,30 @@ class Type {
396
410
  }
397
411
  }
398
412
  class Stat_Logic {
399
- static get_user_activity_filter = (user_id_filter) =>{
400
- return {
401
- $and: [
402
- { $or: [ { type: Type.STAT_LOGIN }, { type: Type.STAT_REGISTER } ] },
403
- user_id_filter
404
- ]
405
- }
406
- }
407
- static url_search_activity = (app_id,url,param) => {
408
- let action_url="item/search_activity";
409
- return get_cloud_url_main(app_id,url,action_url,param);
410
- };
411
- static get_new_user = (user_id,stat_type,data)=>{
412
- return {
413
- user_id:user_id,
414
- type:stat_type,
415
- data:data,
416
- }
417
- };
418
- static get_new = (user_id,stat_type,parent_item_list,data)=>{
419
- let stat_list = [];
420
- for(const item of parent_item_list){
421
- let stat = DataItem.get_new(DataType.STAT,0);
422
- stat.user_id=user_id;
423
- stat.type=stat_type;
424
- if(item.parent_id){
425
- stat.parent_id=item.parent_id;
426
- stat.parent_data_type=item.parent_data_type;
427
- }else{
428
- stat.parent_id=item.id;
429
- stat.parent_data_type=item.data_type;
430
- }
431
- if(item.cost){
432
- stat.parent_cost = item.cost;
433
- }
434
- if(item.quanity){
435
- stat.parent_quanity = item.quanity;
436
- }
437
- if(item.data_type==DataType.CART_ITEM){
438
- stat.parent_cart_id = item.cart_id;
439
- stat.parent_cart_number = item.cart_number;
440
- }
441
- if(item.data_type==DataType.ORDER_ITEM){
442
- stat.parent_order_id = item.order_id;
443
- stat.parent_order_number = item.order_number;
444
- }
445
- if(item.data_type==DataType.ORDER_PAYMENT){
446
- stat.parent_order_number = item.order_number;
447
- stat.parent_payment_method_type = item.payment_method_type;
448
- stat.parent_payment_amount = item.payment_amount;
449
- stat.parent_transaction_id = item.transaction_id;
450
- }
451
- stat_list.push(stat);
452
- };
453
- return stat_list;
454
- };
455
- static get_new_activity = (user_id,stat_type,activity_data)=>{
456
- return {
457
- user_id:user_id,
458
- type:stat_type,
459
- activity:data,
413
+ static get_new = (parent_data_type,parent_id,stat_type,user_id,post_data) => {
414
+ let new_stat = 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
+ parent_id:parent_id
421
+ });
422
+ if(!Obj.check_is_empty(post_data)){
423
+ new_stat = Obj.merge(new_stat,Stat_Logic.filter_stat(post_data));
460
424
  }
425
+ return new_stat;
461
426
  };
427
+ static filter_stat = (post_data) =>{
428
+ let filter_stat = {};
429
+ for(const prop in post_data) {
430
+ const value = post_data[prop];
431
+ if (!Array.isArray(value) && prop != Type.SOURCE && prop != Type.DATE_CREATE && prop != Type.DATE_SAVE && prop != Type.DATA_TYPE && prop != Type.ID) {
432
+ filter_stat[prop] = post_data[prop];
433
+ }
434
+ }
435
+ return filter_stat;
436
+ }
462
437
  }
463
438
  class Page_Logic {
464
439
  static get_page_list(){
@@ -1256,7 +1231,6 @@ static APP='app_biz';
1256
1231
  static TYPE='type_biz';
1257
1232
  static USER='user_biz';
1258
1233
  static VIDEO='video_biz';
1259
-
1260
1234
  }
1261
1235
  class Favorite_Logic {
1262
1236
  static get_new = (parent_data_type,parent_id,user_id) =>{
@@ -1266,13 +1240,18 @@ class Favorite_Logic {
1266
1240
  user_id:user_id
1267
1241
  });
1268
1242
  }
1269
- static get_favorite_by_list = (favorite_list,item_list) =>{
1243
+ static old_get_favorite_by_list = (favorite_list,item_list) =>{
1244
+ if(!item_list){
1245
+ item_list = [];
1246
+ }
1247
+ if(item_list.length>0){
1270
1248
  favorite_list.forEach(item => {
1271
1249
  const item_match = item_list.find(item_find => item_find.id === item.parent_id);
1272
1250
  if (item_match) {
1273
1251
  item_match.is_favorite = true;
1274
1252
  }
1275
1253
  });
1254
+ }
1276
1255
  return item_list;
1277
1256
  }
1278
1257
  static get_user_search_filter = (item_data_type,user_id) =>{
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "biz9-logic",
3
- "version": "4.9.43",
3
+ "version": "4.9.49",
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,49 @@ describe("connect", () => {
30
30
  it("_connect", () => {
31
31
  series([
32
32
 
33
- /* --- TEST LOGIC - CONNECT - START --- */
34
- function(call) {
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 = 3334;
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(parent_data_type,parent_id,Type.STAT_VIEW,user_id,item);
45
+ Log.w('stat',stat);
46
+ console.log('CONNECT-BASE-END');
47
+ }
48
+ /*
49
+ function(call) {
35
50
  console.log('CONNECT-CMS-DEMO-START');
36
- let category_type = DataType.PRODUCT;
37
- let category_count = 12;
38
- let item_count = 500;
39
-
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'];
51
+ let category_type = DataType.PRODUCT;
52
+ let category_count = 12;
53
+ let item_count = 500;
42
54
 
43
- let category_type_title_list = '';
44
- let category_title_list = '';
55
+ //let category_type_title_list = ['Add On','Admin Panel','Hosting','Landing Page','Mobile','Website'];
56
+ //let category_title_list = ['Beauty','Church','Fashion','Food Trucks','Health Care','Music','Pets','Services','Service Repair','Sports','Trucking'];
45
57
 
58
+ let category_type_title_list = '';
59
+ let category_title_list = '';
46
60
 
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,
61
+ let item_title_list = [];
62
+ let post_type_list = [];
63
+ let val_category_title = '';
64
+ let cat_max = 0;
65
+ let option = {get_category:true,category_count:category_count,category_data_type:category_type,categorys:val_category_title?val_category_title:null,
52
66
  get_item:true,item_count:item_count,item_data_type:category_type,items:null}
53
67
 
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
-
68
+ console.log(Demo_Logic.get_new_type('',option));
69
+ for(const item of category_type_title_list){
70
+ post_type_list.push(
71
+ Demo_Logic.get_new_type(item,option));
72
+ }
73
+ console.log('CONNECT-CMS-DEMO-SUCCESS');
71
74
  },
75
+ */
72
76
  /*
73
77
  function(call) {
74
78
  //console.log('CONNECT-START');