flexbiz-server 12.2.3 → 12.2.4

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 (108) hide show
  1. package/package.json +1 -1
  2. package/server/auths/local.js +27 -26
  3. package/server/controllers/controller.js +56 -55
  4. package/server/controllers/controllerRPT.js +18 -17
  5. package/server/libs/cdpstk.js +1 -1
  6. package/server/libs/databanle.js +13 -13
  7. package/server/libs/getGiaban.js +23 -22
  8. package/server/libs/post-book.js +9 -8
  9. package/server/libs/post-socai.js +9 -9
  10. package/server/libs/prototypes.js +4 -4
  11. package/server/libs/tinhGtPhanboSltp.js +5 -5
  12. package/server/libs/tinhGtPhanboYtcp.js +2 -2
  13. package/server/libs/tinhGtThcppstk.js +1 -1
  14. package/server/libs/tinhGtTrucTiep.js +8 -7
  15. package/server/libs/tinhgiatb.js +4 -4
  16. package/server/libs/tinhgiatb1vt.js +3 -3
  17. package/server/libs/tinhhoahong.js +32 -0
  18. package/server/libs/utils.js +4 -3
  19. package/server/models/app.js +9 -8
  20. package/server/models/approve.js +4 -4
  21. package/server/models/customer.js +8 -8
  22. package/server/models/dh2.js +10 -9
  23. package/server/models/dmgiaban.js +6 -6
  24. package/server/models/dmhoahonghd.js +6 -5
  25. package/server/models/fbconversation.js +9 -0
  26. package/server/models/fbmessage.js +2 -0
  27. package/server/models/fbpage.js +2 -0
  28. package/server/models/group.js +4 -2
  29. package/server/models/hd2.js +8 -8
  30. package/server/models/hd3.js +9 -9
  31. package/server/models/hd7.js +1 -1
  32. package/server/models/notification.js +3 -2
  33. package/server/models/participant.js +5 -5
  34. package/server/models/pbl.js +4 -4
  35. package/server/models/reportinfo.js +2 -2
  36. package/server/models/rptform.js +3 -2
  37. package/server/models/schedule.js +1 -1
  38. package/server/models/so1.js +7 -6
  39. package/server/models/socai.js +4 -4
  40. package/server/models/tdttco.js +8 -4
  41. package/server/models/tdttno.js +8 -4
  42. package/server/models/tokens.js +2 -2
  43. package/server/models/usergroup.js +5 -4
  44. package/server/models/vatra.js +2 -2
  45. package/server/models/vatvao.js +4 -4
  46. package/server/modules/lists/ls-assinvestment.js +1 -1
  47. package/server/modules/lists/ls-customer.js +13 -14
  48. package/server/modules/lists/ls-dmvt.js +48 -39
  49. package/server/modules/lists/ls-fbconversation.js +3 -0
  50. package/server/modules/lists/ls-fbmessage.js +3 -0
  51. package/server/modules/lists/ls-fbpage.js +10 -0
  52. package/server/modules/lists/ls-introducecode.js +1 -1
  53. package/server/modules/lists/ls-news.js +1 -1
  54. package/server/modules/lists/ls-opportunity.js +3 -3
  55. package/server/modules/lists/ls-session.js +1 -1
  56. package/server/modules/public/callin.js +6 -6
  57. package/server/modules/reports/rp-cdpstk.js +3 -3
  58. package/server/modules/reports/rp-chitiettaisan.js +9 -8
  59. package/server/modules/reports/rp-ckvt.js +9 -7
  60. package/server/modules/reports/rp-ctbanle.js +13 -12
  61. package/server/modules/reports/rp-databanle.js +8 -4
  62. package/server/modules/reports/rp-dtbanletheoct.js +16 -9
  63. package/server/modules/reports/rp-dtbanletheokh.js +12 -6
  64. package/server/modules/reports/rp-dtbanletheokho.js +14 -9
  65. package/server/modules/reports/rp-dtbanletheonam.js +15 -9
  66. package/server/modules/reports/rp-dtbanletheongay.js +13 -8
  67. package/server/modules/reports/rp-dtbanletheonv.js +15 -9
  68. package/server/modules/reports/rp-dtbanletheoquy.js +15 -9
  69. package/server/modules/reports/rp-dtbanletheothang.js +15 -9
  70. package/server/modules/reports/rp-getinvoice2pay.js +4 -6
  71. package/server/modules/reports/rp-getinvoice2receive.js +4 -6
  72. package/server/modules/reports/rp-hoahong.js +9 -0
  73. package/server/modules/reports/rp-kqhdkd.js +5 -4
  74. package/server/modules/reports/rp-ptcttct.js +7 -6
  75. package/server/modules/reports/rp-pttct.js +8 -8
  76. package/server/modules/reports/rp-pttctkho.js +3 -2
  77. package/server/modules/reports/rp-pttctkho2.js +3 -3
  78. package/server/modules/reports/rp-thnxt.js +8 -8
  79. package/server/modules/reports/rp-thnxt_sl.js +6 -6
  80. package/server/modules/reports/rp-thnxttt.js +6 -6
  81. package/server/modules/reports/rp-tmbctc.js +16 -16
  82. package/server/modules/systems/sys-app.js +25 -24
  83. package/server/modules/systems/sys-notification.js +2 -2
  84. package/server/modules/systems/sys-schedule.js +1 -1
  85. package/server/modules/systems/sys-user.js +8 -8
  86. package/server/modules/vouchers/vo-bc1.js +9 -8
  87. package/server/modules/vouchers/vo-bg2.js +9 -9
  88. package/server/modules/vouchers/vo-bn1.js +5 -4
  89. package/server/modules/vouchers/vo-dh2.js +15 -38
  90. package/server/modules/vouchers/vo-dnm.js +11 -12
  91. package/server/modules/vouchers/vo-hd2.js +63 -83
  92. package/server/modules/vouchers/vo-hd3.js +28 -22
  93. package/server/modules/vouchers/vo-hd7.js +37 -36
  94. package/server/modules/vouchers/vo-pbl.js +49 -49
  95. package/server/modules/vouchers/vo-pc1.js +9 -8
  96. package/server/modules/vouchers/vo-pn1.js +24 -22
  97. package/server/modules/vouchers/vo-pn5.js +1 -1
  98. package/server/modules/vouchers/vo-pn9.js +23 -23
  99. package/server/modules/vouchers/vo-pnc.js +8 -8
  100. package/server/modules/vouchers/vo-pnh.js +5 -5
  101. package/server/modules/vouchers/vo-pt1.js +17 -16
  102. package/server/modules/vouchers/vo-pxc.js +16 -16
  103. package/server/modules/vouchers/vo-pxh.js +12 -10
  104. package/server/modules/vouchers/vo-so1.js +94 -119
  105. package/server/modules/vouchers/vo-so4.js +1 -1
  106. package/server/modules/vouchers/vo-so5.js +2 -2
  107. package/server/workers/restoreApp.js +21 -12
  108. package/server/workers/runScript.js +3 -3
@@ -1,6 +1,6 @@
1
1
  'use strict';const dktk=require("./dktk"),cktk=require("./cktk"),pstk=require("./pstk"),Account=global.getModel("account"),async=require("async"),underscore=require("underscore"),setBacTKCon=($data$$,$tk_me$$,$bac_tk_me$$)=>{$data$$.filter($d$$=>$d$$.tk_me==$tk_me$$).forEach($tk$$=>{$tk$$.bac_tk=$bac_tk_me$$+1;setBacTKCon($data$$,$tk$$.tk,$tk$$.bac_tk)})};
2
2
  module.exports=function($query$$,$fn$$){if(!$query$$.tu_ngay||!$query$$.den_ngay||!$query$$.id_app)return $fn$$(Error("H\u00e0m n\u00e0y y\u00eau c\u1ea7u c\u00e1c tham s\u1ed1 tu_ngay,den_ngay,id_app"));$query$$.tk||($query$$.tk="");$query$$.ma_dvcs||($query$$.ma_dvcs="");let $bac_tk$$=$query$$.bac_tk||0;delete $query$$.bac_tk;async.series({dk:function($callback$$){setImmediate(()=>{let $condition$$={};underscore.extend($condition$$,$query$$);$condition$$.ngay=$query$$.tu_ngay;dktk($condition$$,
3
- function($error$$,$result$$){if($error$$)return $callback$$($error$$);$callback$$(null,$result$$)})})},ps:function($callback$$){setImmediate(()=>{let $condition$$={id_app:$query$$.id_app};$condition$$.tk={$regex:"^"+$query$$.tk,$options:"i"};$condition$$.ma_dvcs={$regex:$query$$.ma_dvcs,$options:"i"};$condition$$.ngay_ct={$gte:$query$$.tu_ngay,$lte:$query$$.den_ngay};$condition$$.ma_kho&&($condition$$.ma_kho=$query$$.ma_kho);pstk($condition$$,function($error$$,$result$$){if($error$$)return $callback$$($error$$);
3
+ function($error$$,$result$$){if($error$$)return $callback$$($error$$);$callback$$(null,$result$$)})})},ps:function($callback$$){setImmediate(()=>{let $condition$$={id_app:$query$$.id_app};$condition$$.tk={$regex:"^"+$query$$.tk,$options:"i"};$condition$$.ma_dvcs={$regex:$query$$.ma_dvcs,$options:"i"};$condition$$.ngay_ct={$gte:$query$$.tu_ngay,$lte:$query$$.den_ngay};$query$$.ma_kho&&($condition$$.ma_kho=$query$$.ma_kho);pstk($condition$$,function($error$$,$result$$){if($error$$)return $callback$$($error$$);
4
4
  $callback$$(null,$result$$)})})},ck:function($callback$$){setImmediate(()=>{let $condition$$={};underscore.extend($condition$$,$query$$);$condition$$.ngay=$query$$.den_ngay;cktk($condition$$,function($error$$,$result$$){if($error$$)return $callback$$($error$$);$callback$$(null,$result$$)})})}},function($error$jscomp$1$$,$results$$){if($error$jscomp$1$$)return $fn$$($error$jscomp$1$$);let $data$jscomp$0$$=$results$$.ps;$results$$.dk.forEach(function($r$$){$r$$.dk_no=$r$$.du_no00;$r$$.dk_co=$r$$.du_co00;
5
5
  $r$$.dk_no_nt=$r$$.du_no_nt00;$r$$.dk_co_nt=$r$$.du_co_nt00;$data$jscomp$0$$.push($r$$)});$results$$.ck.forEach(function($r$$){$r$$.ck_no=$r$$.du_no00;$r$$.ck_co=$r$$.du_co00;$r$$.ck_no_nt=$r$$.du_no_nt00;$r$$.ck_co_nt=$r$$.du_co_nt00;$data$jscomp$0$$.push($r$$)});$data$jscomp$0$$.groupBy("tk",[{name:"dk_no",value:"dk_no"},{name:"dk_co",value:"dk_co"},{name:"dk_no_nt",value:"dk_no_nt"},{name:"dk_co_nt",value:"dk_co_nt"},{name:"ps_no",value:"ps_no"},{name:"ps_co",value:"ps_co"},{name:"ps_no_nt",value:"ps_no_nt"},
6
6
  {name:"ps_co_nt",value:"ps_co_nt"},{name:"ck_no",value:"ck_no"},{name:"ck_co",value:"ck_co"},{name:"ck_no_nt",value:"ck_no_nt"},{name:"ck_co_nt",value:"ck_co_nt"}],function($error$jscomp$0$$,$data$$){let $cdpstkme$$=[];async.mapSeries($data$$,function($acc$$,$callback$$){setImmediate(()=>{$acc$$.loai_tk=1;let $tk$$=$acc$$.tk;async.forever(function($next$$){Account.find({tk:$tk$$,id_app:$query$$.id_app},{tk_me:1},function($error1_vTK$$,$r$$){$r$$&&1==$r$$.length&&$r$$[0].tk_me?($error1_vTK$$={},underscore.extend($error1_vTK$$,
@@ -1,15 +1,15 @@
1
1
  'use strict';const pbl=global.getModel("pbl"),hd2=global.getModel("hd2"),hd3=global.getModel("hd3"),so1=global.getModel("so1"),hd7=global.getModel("hd7"),async=require("async"),trangthai=global.getModel("trangthai"),transaction=global.getModel("transaction");
2
2
  module.exports=function($condition$$,$callback$jscomp$0$$){if(!$condition$$.id_app)return $callback$jscomp$0$$("H\u00e0m n\u00e0y y\u00eau c\u1ea7u tham s\u1ed1 id_app");async.series({hd2:$callback$$=>{setImmediate(()=>{!$condition$$.ma_ct||0<=$condition$$.ma_ct.indexOf("HD2")?hd2.find({...$condition$$}).lean().exec(($error$$,$rs$$)=>{if($error$$)return $callback$$($error$$);$rs$$.forEach($v$$=>{$v$$.details.forEach($r$$=>{$r$$.tien_hang_nt=$r$$.tien_nt;$r$$.tien_hang=$r$$.tien_hang_nt*($v$$.ty_gia||
3
- 1);!$r$$.tien_ck_nt&&$r$$.tien_ck?$r$$.tien_ck_nt=$r$$.tien_ck:$r$$.tien_ck=($r$$.tien_ck_nt||0)*($v$$.ty_gia||1);$r$$.tien_nt=$r$$.tien_hang_nt-($r$$.tien_ck_nt||0);$r$$.tien=$r$$.tien_nt*($v$$.ty_gia||1)})});$callback$$(null,$rs$$)}):$callback$$(null,[])})},hd3:$callback$$=>{setImmediate(()=>{if(!$condition$$.ma_ct||0<=$condition$$.ma_ct.indexOf("HD2")){let $_cd$$={...$condition$$};delete $_cd$$.ma_ct;hd3.find($_cd$$).lean().exec(($error$$,$rs$$)=>{if($error$$)return $callback$$($error$$);$callback$$(null,
4
- $rs$$)})}else $callback$$(null,[])})},pbl:$callback$$=>{setImmediate(()=>{!$condition$$.ma_ct||0<=$condition$$.ma_ct.indexOf("PBL")?pbl.find({...$condition$$}).lean().exec(($error$$,$rs$$)=>{if($error$$)return $callback$$($error$$);$rs$$.forEach($pbl$$=>{$pbl$$.details.forEach($r$$=>{$r$$.tien_hang_nt=$r$$.tien_hang_nt||$r$$.tien_nt;$r$$.tien_hang=$r$$.tien_hang_nt*($pbl$$.ty_gia||1);!$r$$.tien_ck_nt&&$r$$.tien_ck?$r$$.tien_ck_nt=$r$$.tien_ck:$r$$.tien_ck=($r$$.tien_ck_nt||0)*($pbl$$.ty_gia||1);$r$$.tien_nt=
5
- $r$$.tien_hang_nt-($r$$.tien_ck_nt||0);$r$$.tien=$r$$.tien_nt*($pbl$$.ty_gia||1)})});$callback$$(null,$rs$$)}):$callback$$(null,[])})},so:$callback$$=>{setImmediate(()=>{!$condition$$.ma_ct||0<=$condition$$.ma_ct.indexOf("SO1")?so1.find({...$condition$$}).lean().exec(($error$$,$rs$$)=>{if($error$$)return $callback$$($error$$);$rs$$.forEach($r$$=>{$r$$.ngay_ct=$r$$.ngay_giao_hang||$r$$.ngay_ct;$r$$.tien_hang_nt=$r$$.tien_hang_nt||$r$$.tien_nt;$r$$.tien_hang=$r$$.tien_hang||$r$$.tien;$r$$.tien_nt=$r$$.tien_hang_nt-
6
- ($r$$.tien_ck_nt||0);$r$$.tien=$r$$.tien_hang-($r$$.tien_ck||0)});$callback$$(null,$rs$$)}):$callback$$(null,[])})},so_tl:$callback$$=>{setImmediate(()=>{if(!$condition$$.ma_ct||0<=$condition$$.ma_ct.indexOf("SO1")){let $_cd$$={...$condition$$};$_cd$$.ngay_tra_lai=$condition$$.ngay_ct;delete $_cd$$.ngay_ct;delete $_cd$$.ma_ct;so1.find($_cd$$).lean().exec(($error$$,$rs$$)=>{if($error$$)return $callback$$($error$$);$rs$$.forEach($r$$=>{$r$$.ngay_ct=$r$$.ngay_tra_lai||$r$$.ngay_ct;$r$$.tien_hang=$r$$.tien_hang||
7
- $r$$.tien;$r$$.tien_hang_nt=$r$$.tien_hang_nt||$r$$.tien_nt;$r$$.tien=$r$$.tien_hang-($r$$.tien_ck||0);$r$$.tien_nt=$r$$.tien_hang_nt-($r$$.tien_ck_nt||0)});$callback$$(null,$rs$$)})}else $callback$$(null,[])})},tl:$callback$$=>{setImmediate(()=>{if(!$condition$$.ma_ct||0<=$condition$$.ma_ct.indexOf("PBL")){let $_cd$$={...$condition$$};delete $_cd$$.ma_ct;hd7.find($_cd$$).lean().exec(($error$$,$rs$$)=>{if($error$$)return $callback$$($error$$);$callback$$(null,$rs$$)})}else $callback$$(null,[])})}},
8
- async($error$$,$rs$$)=>{$error$$&&$callback$jscomp$0$$($error$$);async.series({pbl:$callback$$=>{setImmediate(()=>{$rs$$.pbl.forEach($m$$=>{$m$$.details.filter($d$$=>$d$$.promotion&&$d$$.promotion.details_km).map($d$$=>$d$$.promotion.details_km).reduce(($a$$,$b$$)=>$a$$.concat($b$$),[]).forEach($d$$=>{$d$$.sl_xuat=$d$$.sl_km;$m$$.details.push($d$$)});$m$$.promotion&&$m$$.promotion.forEach($p$$=>{$p$$=Object.assign({},$p$$);$p$$.sl_xuat=$p$$.sl_km;$m$$.details.push($p$$)})});$callback$$()})},so:$callback$$=>
9
- {setImmediate(()=>{$rs$$.so.forEach($r$$=>{$r$$.ctcpbhs&&$r$$.ctcpbhs.forEach($c$$=>{$c$$.tien_hang=0;$c$$.tien_hang_nt=0;$c$$.sl_xuat=0;$c$$.tien=$c$$.tien_hang+$c$$.tien_cp;$c$$.tien_nt=$c$$.tien_hang_nt+$c$$.tien_cp_nt;$r$$.details.push($c$$)});$rs$$.pbl.push($r$$)});$callback$$()})},so_tl:$callback$$=>{setImmediate(()=>{$rs$$.so_tl.forEach($r$$=>{"5"===$r$$.trang_thai&&($r$$.details_tl=Object.assign({},$r$$).details.map($d$$=>{$d$$.sl_nhap=$d$$.sl_xuat;$d$$.sl_xuat=0;$d$$.tien_nhap=$d$$.tien_xuat;
10
- $d$$.tien_xuat=0;return $d$$}),$r$$.details=[],$rs$$.pbl.push($r$$))});$callback$$()})},hd2:$callback$$=>{setImmediate(()=>{$rs$$.hd2.forEach($r$$=>{$rs$$.pbl.push($r$$)});$rs$$.hd3.forEach($r$jscomp$0$$=>{$r$jscomp$0$$.details_tl=$r$jscomp$0$$.details.forEach($r$$=>{$r$$.tien_hang=$r$$.tien;$r$$.tien_hang_nt=$r$$.tien_nt;$r$$.tien=$r$$.tien_hang-$r$$.tien_ck;$r$$.tien_nt=$r$$.tien_hang_nt-$r$$.tien_ck_nt});$r$jscomp$0$$.details=[];$rs$$.pbl.push($r$jscomp$0$$)});$rs$$.tl.forEach($r$jscomp$0$$=>{$r$jscomp$0$$.details_doi||
11
- ($r$jscomp$0$$.details_doi=[]);let $t_tien_tl$$=$r$jscomp$0$$.details.csum("tien_hang_nt")-$r$jscomp$0$$.details.csum("tien_ck_nt"),$t_tien_doi$$=$r$jscomp$0$$.details_doi.csum("tien_hang_nt")-$r$jscomp$0$$.details_doi.csum("tien_ck_nt");$r$jscomp$0$$.details_tl=$r$jscomp$0$$.details.map($r$$=>{$t_tien_doi$$&&$t_tien_doi$$<=$t_tien_tl$$&&($r$$.tien_hang=0,$r$$.tien_hang_nt=0,$r$$.tien=0,$r$$.tien_nt=0,$r$$.tien_ck=0,$r$$.tien_ck_nt=0);return $r$$});$r$jscomp$0$$.details=$r$jscomp$0$$.details_doi.map($r$$=>
12
- {$t_tien_doi$$&&$t_tien_doi$$<=$t_tien_tl$$&&($r$$.tien_hang=0,$r$$.tien_hang_nt=0,$r$$.tien=0,$r$$.tien_nt=0,$r$$.tien_ck=0,$r$$.tien_ck_nt=0);return $r$$});$r$jscomp$0$$.details.forEach($r$$=>{$r$$.tien_hang=$r$$.tien_hang||$r$$.tien;$r$$.tien_hang_nt=$r$$.tien_hang_nt||$r$$.tien_nt;$r$$.tien=$r$$.tien_hang-$r$$.tien_ck;$r$$.tien_nt=$r$$.tien_hang_nt-$r$$.tien_ck_nt});$rs$$.pbl.push($r$jscomp$0$$)});$callback$$()})}},async()=>{let $reportData$$=$rs$$.pbl;await $reportData$$.asyncJoinModel2(null,
13
- trangthai,[{where:{trang_thai:"ma_trang_thai",ma_ct:"ma_ct"},fields:["post_sokho","post","post_socai","ten_trang_thai"]}]);$reportData$$=$reportData$$.filter($p$$=>$p$$.post);const $ptthanhtoans$$=(await global.getModel("ptthanhtoan").find({status:!0,id_app:$condition$$.id_app}).lean()).map($pt$$=>{$pt$$.ma=`pttt__${$pt$$._id}`;return $pt$$});async.mapSeries($reportData$$,($r$$,$callback$$)=>{setImmediate(async()=>{if($condition$$.show_bonus_points){let $trans$$=await transaction.find({id_ct:{$regex:$r$$._id.toString(),
14
- $options:"i"}}).lean();$r$$.bonus_points=$trans$$.filter($tran$$=>$tran$$.receiver.email.toLowerCase()===$r$$.ma_kh.toLowerCase()).map($tran$$=>$tran$$.amount).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$r$$.used_points=$trans$$.filter($tran$$=>$tran$$.sender.email.toLowerCase()===$r$$.ma_kh.toLowerCase()).map($tran$$=>$tran$$.amount).reduce(($a$$,$b$$)=>$a$$+$b$$,0)}$r$$.thanh_toan=$ptthanhtoans$$;$r$$.thanh_toan.forEach($pt$$=>{$r$$[$pt$$.ma]=0;$r$$.pt_thanh_toan===$pt$$._id.toString()&&($r$$[$pt$$.ma]+=
15
- $r$$.tien_thu||$r$$.tien_con_lai||0);$r$$.pt_thanh_toan2===$pt$$._id.toString()&&($r$$[$pt$$.ma]+=$r$$.tien_thu2||0);$pt$$.tien_thu=$r$$[$pt$$.ma]});$callback$$(null,$r$$)})},()=>{$callback$jscomp$0$$(null,$reportData$$,$ptthanhtoans$$)})})})};
3
+ 1);!$r$$.tien_ck_nt&&$r$$.tien_ck?$r$$.tien_ck_nt=$r$$.tien_ck:$r$$.tien_ck=($r$$.tien_ck_nt||0)*($v$$.ty_gia||1);$r$$.tien_nt=$r$$.tien_hang_nt-($r$$.tien_ck_nt||0);$r$$.tien=$r$$.tien_nt*($v$$.ty_gia||1)})});$callback$$(null,$rs$$)}):$callback$$(null,[])})},hd3:$callback$$=>{setImmediate(()=>{if(!$condition$$.ma_ct||0<=$condition$$.ma_ct.indexOf("HD2")){let $_cd$$={...$condition$$};$_cd$$.$or&&$_cd$$.$or.find($o$$=>$o$$.user_nv)&&($_cd$$.details={$elemMatch:{$or:$_cd$$.$or}},delete $_cd$$.$or);
4
+ delete $_cd$$.ma_ct;hd3.find($_cd$$).lean().exec(($error$$,$rs$$)=>{if($error$$)return $callback$$($error$$);$callback$$(null,$rs$$)})}else $callback$$(null,[])})},pbl:$callback$$=>{setImmediate(()=>{!$condition$$.ma_ct||0<=$condition$$.ma_ct.indexOf("PBL")?pbl.find({...$condition$$}).lean().exec(($error$$,$rs$$)=>{if($error$$)return $callback$$($error$$);$rs$$.forEach($pbl$$=>{$pbl$$.details.forEach($r$$=>{$r$$.tien_hang_nt=$r$$.tien_hang_nt||$r$$.tien_nt;$r$$.tien_hang=$r$$.tien_hang_nt*($pbl$$.ty_gia||
5
+ 1);!$r$$.tien_ck_nt&&$r$$.tien_ck?$r$$.tien_ck_nt=$r$$.tien_ck:$r$$.tien_ck=($r$$.tien_ck_nt||0)*($pbl$$.ty_gia||1);$r$$.tien_nt=$r$$.tien_hang_nt-($r$$.tien_ck_nt||0);$r$$.tien=$r$$.tien_nt*($pbl$$.ty_gia||1)})});$callback$$(null,$rs$$)}):$callback$$(null,[])})},so:$callback$$=>{setImmediate(()=>{!$condition$$.ma_ct||0<=$condition$$.ma_ct.indexOf("SO1")?so1.find({...$condition$$}).lean().exec(($error$$,$rs$$)=>{if($error$$)return $callback$$($error$$);$rs$$.forEach($r$$=>{$r$$.ngay_ct=$r$$.ngay_giao_hang||
6
+ $r$$.ngay_ct;$r$$.tien_hang_nt=$r$$.tien_hang_nt||$r$$.tien_nt;$r$$.tien_hang=$r$$.tien_hang||$r$$.tien;$r$$.tien_nt=$r$$.tien_hang_nt-($r$$.tien_ck_nt||0);$r$$.tien=$r$$.tien_hang-($r$$.tien_ck||0)});$callback$$(null,$rs$$)}):$callback$$(null,[])})},so_tl:$callback$$=>{setImmediate(()=>{if(!$condition$$.ma_ct||0<=$condition$$.ma_ct.indexOf("SO1")){let $_cd$$={...$condition$$};$_cd$$.ngay_tra_lai=$condition$$.ngay_ct;delete $_cd$$.ngay_ct;delete $_cd$$.ma_ct;so1.find($_cd$$).lean().exec(($error$$,
7
+ $rs$$)=>{if($error$$)return $callback$$($error$$);$rs$$.forEach($r$$=>{$r$$.ngay_ct=$r$$.ngay_tra_lai||$r$$.ngay_ct;$r$$.tien_hang=$r$$.tien_hang||$r$$.tien;$r$$.tien_hang_nt=$r$$.tien_hang_nt||$r$$.tien_nt;$r$$.tien=$r$$.tien_hang-($r$$.tien_ck||0);$r$$.tien_nt=$r$$.tien_hang_nt-($r$$.tien_ck_nt||0)});$callback$$(null,$rs$$)})}else $callback$$(null,[])})},tl:$callback$$=>{setImmediate(()=>{if(!$condition$$.ma_ct||0<=$condition$$.ma_ct.indexOf("PBL")){let $_cd$$={...$condition$$};delete $_cd$$.ma_ct;
8
+ hd7.find($_cd$$).lean().exec(($error$$,$rs$$)=>{if($error$$)return $callback$$($error$$);$callback$$(null,$rs$$)})}else $callback$$(null,[])})}},async($error$$,$rs$$)=>{$error$$&&$callback$jscomp$0$$($error$$);async.series({pbl:$callback$$=>{setImmediate(()=>{$rs$$.pbl.forEach($m$$=>{$m$$.details.filter($d$$=>$d$$.promotion&&$d$$.promotion.details_km).map($d$$=>$d$$.promotion.details_km).reduce(($a$$,$b$$)=>$a$$.concat($b$$),[]).forEach($d$$=>{$d$$.sl_xuat=$d$$.sl_km;$m$$.details.push($d$$)});$m$$.promotion&&
9
+ $m$$.promotion.forEach($p$$=>{$p$$=Object.assign({},$p$$);$p$$.sl_xuat=$p$$.sl_km;$m$$.details.push($p$$)})});$callback$$()})},so:$callback$$=>{setImmediate(()=>{$rs$$.so.forEach($r$$=>{$r$$.ctcpbhs&&$r$$.ctcpbhs.forEach($c$$=>{$c$$.tien_hang=0;$c$$.tien_hang_nt=0;$c$$.sl_xuat=0;$c$$.tien=$c$$.tien_hang+$c$$.tien_cp;$c$$.tien_nt=$c$$.tien_hang_nt+$c$$.tien_cp_nt;$r$$.details.push($c$$)});$rs$$.pbl.push($r$$)});$callback$$()})},so_tl:$callback$$=>{setImmediate(()=>{$rs$$.so_tl.forEach($r$$=>{"5"===
10
+ $r$$.trang_thai&&($r$$.details_tl=Object.assign({},$r$$).details.map($d$$=>{$d$$.sl_nhap=$d$$.sl_xuat;$d$$.sl_xuat=0;$d$$.tien_nhap=$d$$.tien_xuat;$d$$.tien_xuat=0;return $d$$}),$r$$.details=[],$rs$$.pbl.push($r$$))});$callback$$()})},hd2:$callback$$=>{setImmediate(()=>{$rs$$.hd2.forEach($r$$=>{$rs$$.pbl.push($r$$)});$rs$$.hd3.forEach($r$jscomp$0$$=>{$r$jscomp$0$$.details_tl=$r$jscomp$0$$.details.map($r$$=>{$r$$.tien_hang=$r$$.tien;$r$$.tien_hang_nt=$r$$.tien_nt;$r$$.tien=$r$$.tien_hang-$r$$.tien_ck;
11
+ $r$$.tien_nt=$r$$.tien_hang_nt-$r$$.tien_ck_nt;return $r$$});$r$jscomp$0$$.details=[];$rs$$.pbl.push($r$jscomp$0$$)});$rs$$.tl.forEach($r$jscomp$0$$=>{$r$jscomp$0$$.details_doi||($r$jscomp$0$$.details_doi=[]);let $t_tien_tl$$=$r$jscomp$0$$.details.csum("tien_hang_nt")-$r$jscomp$0$$.details.csum("tien_ck_nt"),$t_tien_doi$$=$r$jscomp$0$$.details_doi.csum("tien_hang_nt")-$r$jscomp$0$$.details_doi.csum("tien_ck_nt");$r$jscomp$0$$.details_tl=$r$jscomp$0$$.details.map($r$$=>{$t_tien_doi$$&&$t_tien_doi$$<=
12
+ $t_tien_tl$$&&($r$$.tien_hang=0,$r$$.tien_hang_nt=0,$r$$.tien=0,$r$$.tien_nt=0,$r$$.tien_ck=0,$r$$.tien_ck_nt=0);return $r$$});$r$jscomp$0$$.details=$r$jscomp$0$$.details_doi.map($r$$=>{$t_tien_doi$$&&$t_tien_doi$$<=$t_tien_tl$$&&($r$$.tien_hang=0,$r$$.tien_hang_nt=0,$r$$.tien=0,$r$$.tien_nt=0,$r$$.tien_ck=0,$r$$.tien_ck_nt=0);return $r$$});$r$jscomp$0$$.details.forEach($r$$=>{$r$$.tien_hang=$r$$.tien_hang||$r$$.tien;$r$$.tien_hang_nt=$r$$.tien_hang_nt||$r$$.tien_nt;$r$$.tien=$r$$.tien_hang-$r$$.tien_ck;
13
+ $r$$.tien_nt=$r$$.tien_hang_nt-$r$$.tien_ck_nt});$rs$$.pbl.push($r$jscomp$0$$)});$callback$$()})}},async()=>{let $reportData$$=$rs$$.pbl;await $reportData$$.asyncJoinModel2(null,trangthai,[{where:{trang_thai:"ma_trang_thai",ma_ct:"ma_ct"},fields:["post_sokho","post","post_socai","ten_trang_thai"]}]);$reportData$$=$reportData$$.filter($p$$=>$p$$.post);const $ptthanhtoans$$=(await global.getModel("ptthanhtoan").find({status:!0,id_app:$condition$$.id_app}).lean()).map($pt$$=>{$pt$$.ma=`pttt__${$pt$$._id}`;
14
+ return $pt$$});async.mapSeries($reportData$$,($r$$,$callback$$)=>{setImmediate(async()=>{if($condition$$.show_bonus_points){let $trans$$=await transaction.find({id_ct:{$regex:$r$$._id.toString(),$options:"i"}}).lean();$r$$.bonus_points=$trans$$.filter($tran$$=>$tran$$.receiver.email.toLowerCase()===$r$$.ma_kh.toLowerCase()).map($tran$$=>$tran$$.amount).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$r$$.used_points=$trans$$.filter($tran$$=>$tran$$.sender.email.toLowerCase()===$r$$.ma_kh.toLowerCase()).map($tran$$=>
15
+ $tran$$.amount).reduce(($a$$,$b$$)=>$a$$+$b$$,0)}$r$$.thanh_toan=$ptthanhtoans$$;$r$$.thanh_toan.forEach($pt$$=>{$r$$[$pt$$.ma]=0;$r$$.pt_thanh_toan===$pt$$._id.toString()&&($r$$[$pt$$.ma]+=$r$$.tien_thu||$r$$.tien_con_lai||0);$r$$.pt_thanh_toan2===$pt$$._id.toString()&&($r$$[$pt$$.ma]+=$r$$.tien_thu2||0);$pt$$.tien_thu=$r$$[$pt$$.ma]});$callback$$(null,$r$$)})},()=>{$callback$jscomp$0$$(null,$reportData$$,$ptthanhtoans$$)})})})};
@@ -2,25 +2,26 @@
2
2
  "details.id_cs":$item$$._id.toString(),trang_thai:{$nin:["9","10","LCT"]}})).map($r$$=>$r$$.details||[]).reduce(($a$$,$b$$)=>$a$$.concat($b$$),[]).filter($a$$=>$a$$.id_cs===$item$$._id.toString());$item$$.sl_da_ban=$details$$.map($r$$=>$item$$.sl_ap_dung?Math.min($r$$.sl_xuat,$item$$.sl_ap_dung):$r$$.sl_xuat).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$item$$.sl_con_lai=Math.max(($item$$.tong_sl_ap_dung||0)-$item$$.sl_da_ban,0);$item$$.sl_ap_dung=$item$$.tong_sl_ap_dung?Math.min($item$$.sl_ap_dung,$item$$.sl_con_lai):
3
3
  $item$$.sl_ap_dung;$cb$$(null,$item$$)}catch($e$$){$cb$$($e$$)}})},$e$$=>{if($e$$)return $rj$$($e$$);$rs$$($items$$)})});
4
4
  module.exports=async($condition$$,$fn$$)=>{!$condition$$.ma_vt&&$condition$$.vt&&($condition$$.ma_vt=$condition$$.vt.ma_vt);$condition$$.so_luong=$condition$$.so_luong||$condition$$.sl_xuat||0;!$condition$$.ma_vt&&$condition$$.vt&&$condition$$.vt._id&&($condition$$.vt=await dmvt.findOne({_id:$condition$$.vt._id},{ma_vt:1,ma_nvt:1,ma_danh_muc:1,gia_ban_le0:1,gia_ban_buon0:1,gia_ban_le:1,gia_ban_buon:1,ty_le_ck0:1,tien_ck0:1}).lean(),$condition$$.vt&&($condition$$.ma_vt=$condition$$.vt.ma_vt));if($condition$$&&
5
- $condition$$.ma_vt&&$condition$$.id_app){var $vt$$=$condition$$.vt;if(!$vt$$||void 0===$vt$$.gia_ban_le||void 0===$vt$$.gia_ban_le0||void 0===$vt$$.ty_le_ck0||void 0===$vt$$.tien_ck0)if($vt$$=await dmvt.findOne({ma_vt:$condition$$.ma_vt,id_app:$condition$$.id_app},{ma_vt:1,ma_nvt:1,ma_danh_muc:1,gia_ban_le0:1,gia_ban_buon0:1,gia_ban_le:1,gia_ban_buon:1,ty_le_ck0:1,tien_ck0:1}).lean(),!$vt$$)return $fn$$("Not found product: "+$condition$$.ma_vt);if($condition$$.ma_tt1){var $hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$=
6
- {id_app:$vt$$.id_app_vt||$condition$$.id_app,ma_vt:$vt$$.ma_vt,status:!0};$hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.ma_tt=$condition$$.ma_tt1;$hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.loai_tt="1";if($hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$=await global.getModel("dmtt").findOne($hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$).lean())$vt$$.gia_ban_le0=
7
- $hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.gia_ban_le||$vt$$.gia_ban_le0||$vt$$.gia_ban_le||0,$vt$$.gia_ban_buon0=$hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.gia_ban_buon||$vt$$.gia_ban_buon0||$vt$$.gia_ban_buon||0}else if($condition$$.ma_tt2){if($hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$={id_app:$vt$$.id_app_vt||$condition$$.id_app,ma_vt:$vt$$.ma_vt,status:!0},$hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.ma_tt=
8
- $condition$$.ma_tt2,$hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.loai_tt="2",$hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$=await global.getModel("dmtt").findOne($hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$).lean())$vt$$.gia_ban_le0=$hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.gia_ban_le||$vt$$.gia_ban_le0||$vt$$.gia_ban_le||0,$vt$$.gia_ban_buon0=
9
- $hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.gia_ban_buon||$vt$$.gia_ban_buon0||$vt$$.gia_ban_buon||0}else $condition$$.ma_tt3&&($hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$={id_app:$vt$$.id_app_vt||$condition$$.id_app,ma_vt:$vt$$.ma_vt,status:!0},$hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.ma_tt=$condition$$.ma_tt3,$hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.loai_tt=
10
- "3",$hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$=await global.getModel("dmtt").findOne($hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$).lean())&&($vt$$.gia_ban_le0=$hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.gia_ban_le||$vt$$.gia_ban_le0||$vt$$.gia_ban_le||0,$vt$$.gia_ban_buon0=$hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.gia_ban_buon||$vt$$.gia_ban_buon0||
11
- $vt$$.gia_ban_buon||0);var $_cust_den_ngay_hieu_luc_tu$$;if($condition$$.user&&!$condition$$.ma_kh)try{if($_cust_den_ngay_hieu_luc_tu$$=await customer.findOne({id_app:$condition$$.id_app,of_user:$condition$$.user.email}))$condition$$.ma_kh=$_cust_den_ngay_hieu_luc_tu$$.ma_kh,$condition$$.nh_kh=$_cust_den_ngay_hieu_luc_tu$$.nh_kh}catch($e$$){console.log("Error find customer code of user",$e$$)}if($condition$$.ma_kh){$hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$=
12
- {$in:[null,void 0,"",$condition$$.ma_kh]};var $lan_mua_thu$$=await so1.countDocuments({id_app:$condition$$.id_app,ma_kh:$condition$$.ma_kh,trang_thai:{$in:["4","5"]}});($lan_mua_thu$$+=await pbl.countDocuments({id_app:$condition$$.id_app,ma_kh:$condition$$.ma_kh,trang_thai:{$in:["5","6"]}}))||($lan_mua_thu$$=0);$lan_mua_thu$$+=1;!$_cust_den_ngay_hieu_luc_tu$$&&($_cust_den_ngay_hieu_luc_tu$$=await customer.findOne({id_app:$condition$$.id_app,ma_kh:$condition$$.ma_kh}))&&($condition$$.nh_kh=$_cust_den_ngay_hieu_luc_tu$$.nh_kh)}else $hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$=
13
- {$in:[null,void 0,""]},$lan_mua_thu$$=0;var $query$$={ma_vt:$condition$$.ma_vt,id_app:$condition$$.id_app,status:!0};$query$$.$and=[{$or:[{$and:[{ma_kh:$hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$,nh_kh:{$in:[null,void 0,""]}}]},{$and:[{nh_kh:{$in:[null,void 0,"",$condition$$.nh_kh]},ma_kh:{$in:["",null,void 0]}}]}]}];$query$$.ma_kho={$in:[null,void 0,"",$condition$$.ma_kho]};$query$$.ma_ban={$in:[null,void 0,"",$condition$$.ma_ban]};$query$$.ma_tt1={$in:[null,
14
- void 0,"",$condition$$.ma_tt1]};$query$$.ma_tt2={$in:[null,void 0,"",$condition$$.ma_tt2]};$query$$.ma_tt3={$in:[null,void 0,"",$condition$$.ma_tt3]};$condition$$.ngay_ct=$condition$$.ngay_ct?new Date($condition$$.ngay_ct):new Date;$hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$=$_cust_den_ngay_hieu_luc_tu$$=$condition$$.ngay_ct;$_cust_den_ngay_hieu_luc_tu$$={$lte:$_cust_den_ngay_hieu_luc_tu$$};$hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$=
15
- {$gte:$hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$};$query$$.hieu_luc_tu=$_cust_den_ngay_hieu_luc_tu$$;$query$$.hieu_luc_den=$hieu_luc_den_ma_kh_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$;var $sort$$={stt_uu_tien:1,sl_tu:-1,sl_den:-1,id_cs:-1,tien_ck:-1,ty_le_ck:-1,ma_kho:-1,ma_ban:-1,ma_kh:-1,nh_kh:-1,hieu_luc_tu:-1,ma_tt1:-1,ma_tt2:-1,ma_tt3:-1};async.series({giabans:$callback$$=>{setImmediate(()=>{let $_query$$=Object.assign({},$query$$);
16
- $_query$$.$and.push({$or:[{ap_dung_lan_mua_tu_thu:{$in:[0,void 0,null]}},{ap_dung_lan_mua_tu_thu:{$lte:$lan_mua_thu$$}}]});$_query$$.$and.push({$or:[{ap_dung_lan_mua_den_thu:{$in:[0,void 0,null]}},{ap_dung_lan_mua_den_thu:{$gte:$lan_mua_thu$$}}]});void 0!=$condition$$.online&&($_query$$.online=$condition$$.online);void 0!=$condition$$.offline&&($_query$$.offline=$condition$$.offline);$_query$$.sl_tu={$lte:$condition$$.so_luong};$_query$$.$and.push({$or:[{sl_den:null},{sl_den:0},{sl_den:{$gte:$condition$$.so_luong}}]});
17
- dmgiaban.find($_query$$).sort($sort$$).lean().exec(($_q_e$$,$giabans$$)=>{if($_q_e$$)return $callback$$($_q_e$$);0<$giabans$$.length?$callback$$(null,$giabans$$):($_q_e$$=Object.assign({},$_query$$),$_q_e$$.ma_vt={$in:["",null,void 0]},$_q_e$$.ma_nvt={$in:["",null,void 0,$vt$$.ma_nvt]},$_q_e$$.ma_danh_muc={$in:["",null,void 0,$vt$$.ma_danh_muc]},dmgiaban.find($_q_e$$).sort($sort$$).lean().exec(($e$$,$giabans$$)=>{if($e$$)return $callback$$($e$$);0===$giabans$$.length&&($giabans$$=[{gia_ban_le:$vt$$.gia_ban_le0||
18
- $vt$$.gia_ban_le||0,gia_ban_buon:$vt$$.gia_ban_buon0||$vt$$.gia_ban_buon||0}]);$callback$$(null,$giabans$$)}))})})},discount_vt:$callback$$=>{setImmediate(()=>{let $query_ck$$=Object.assign({},$query$$);$query_ck$$.$and.push({$or:[{ap_dung_lan_mua_tu_thu:{$in:[0,void 0,null]}},{ap_dung_lan_mua_tu_thu:{$lte:$lan_mua_thu$$}}]});$query_ck$$.$and.push({$or:[{ap_dung_lan_mua_den_thu:{$in:[0,void 0,null]}},{ap_dung_lan_mua_den_thu:{$gte:$lan_mua_thu$$}}]});$condition$$.sl_xuat&&($query_ck$$.$and.push({$or:[{sl_tu:{$in:[0,
19
- void 0,null]}},{sl_tu:{$lte:$condition$$.sl_xuat}}]}),$query_ck$$.$and.push({$or:[{sl_den:{$in:[0,void 0,null]}},{sl_den:{$gte:$condition$$.sl_xuat}}]}));$condition$$.t_gt_hd&&($query_ck$$.$and.push({$or:[{gt_hd_tu:{$in:[0,void 0,null]}},{gt_hd_tu:{$lte:$condition$$.t_gt_hd}}]}),$query_ck$$.$and.push({$or:[{gt_hd_den:{$in:[0,void 0,null]}},{gt_hd_den:{$gte:$condition$$.t_gt_hd}}]}));void 0!=$condition$$.online&&($query_ck$$.online=$condition$$.online);void 0!=$condition$$.offline&&($query_ck$$.offline=
20
- $condition$$.offline);dmchietkhau.find($query_ck$$).sort($sort$$).lean().exec(async($_q$jscomp$1_e$$,$chietkhaus$$)=>{if($_q$jscomp$1_e$$)return $callback$$($_q$jscomp$1_e$$);await getSLDaBanCKs($chietkhaus$$);($chietkhaus$$=$chietkhaus$$.filter($ck$$=>!$ck$$.tong_sl_ap_dung||!$ck$$.sl_da_ban||0<$ck$$.sl_con_lai))&&0<$chietkhaus$$.length?$callback$$(null,$chietkhaus$$):($_q$jscomp$1_e$$=Object.assign({},$query_ck$$),$_q$jscomp$1_e$$.ma_vt={$in:["",null,void 0]},$_q$jscomp$1_e$$.ma_nvt={$in:["",null,
21
- void 0,$vt$$.ma_nvt]},$_q$jscomp$1_e$$.ma_danh_muc={$in:["",null,void 0,$vt$$.ma_danh_muc]},dmchietkhau.find($_q$jscomp$1_e$$).sort($sort$$).lean().exec(async($e$$,$chietkhaus$$)=>{if($e$$)return $callback$$($e$$);await getSLDaBanCKs($chietkhaus$$);$chietkhaus$$=$chietkhaus$$.filter($ck$$=>!$ck$$.tong_sl_ap_dung||!$ck$$.sl_da_ban||0<$ck$$.sl_con_lai);$callback$$(null,$chietkhaus$$)}))})})},promotion_vt:$callback$$=>{setImmediate(()=>{let $query_ck$$=Object.assign({},$query$$);void 0!=$condition$$.online&&
22
- ($query_ck$$.online=$condition$$.online);void 0!=$condition$$.offline&&($query_ck$$.offline=$condition$$.offline);let $sort_km$$={stt_uu_tien:1,sl_tu:-1,ma_vt:-1,ma_nvt:-1};dmkhuyenmai.find($query_ck$$).sort($sort_km$$).lean().exec(($_q$jscomp$2_e$$,$khuyenmai$$)=>{if($_q$jscomp$2_e$$)return $callback$$($_q$jscomp$2_e$$);$khuyenmai$$&&0<$khuyenmai$$.length?$callback$$(null,$khuyenmai$$):($_q$jscomp$2_e$$=Object.assign({},$query_ck$$),$_q$jscomp$2_e$$.ma_vt={$in:["",null,void 0]},$_q$jscomp$2_e$$.ma_nvt=
23
- {$in:["",null,void 0,$vt$$.ma_nvt]},$_q$jscomp$2_e$$.ma_danh_muc={$in:["",null,void 0,$vt$$.ma_danh_muc]},dmkhuyenmai.find($_q$jscomp$2_e$$).sort($sort_km$$).lean().exec(($e$$,$khuyenmai$$)=>{if($e$$)return $callback$$($e$$);$callback$$(null,$khuyenmai$$)}))})})}},async($default_ck_e$$,$rs$$)=>{if($default_ck_e$$)return $fn$$($default_ck_e$$);$rs$$.discount=$rs$$.discount_vt;$rs$$.promotion=$rs$$.promotion_vt;$rs$$.promotion&&$rs$$.promotion.forEach($p$$=>{delete $p$$.status;delete $p$$.user_created;
24
- delete $p$$.user_updated;delete $p$$.date_created;delete $p$$.date_updated;delete $p$$.exfields;delete $p$$.id_app;delete $p$$.dmkh;delete $p$$.dmkho;delete $p$$.dmnvt;delete $p$$.dmvt;delete $p$$.__v});$rs$$.price={gia_ban_le:$rs$$.giabans[0].gia_ban_le,gia_ban_buon:$rs$$.giabans[0].gia_ban_buon,prices:$rs$$.giabans};$rs$$.price.discount=$rs$$.discount.sort(function($a$$,$b$$){return($b$$.ap_dung_lan_mua_tu_thu||0)>($a$$.ap_dung_lan_mua_tu_thu||0)?1:$b$$.ty_le_ck-$a$$.ty_le_ck});let $gt_hd$$=$condition$$.t_gt_hd||
25
- 0;($default_ck_e$$=$rs$$.price.discount.find($d$$=>(!$d$$.gt_hd_tu||$d$$.gt_hd_tu<$gt_hd$$)&&(!$d$$.gt_hd_den||$d$$.gt_hd_den>=$gt_hd$$)&&!$d$$.mua_them))&&underscore.extend($rs$$.price,{sl_tu:$default_ck_e$$.sl_tu,ty_le_ck:$default_ck_e$$.ty_le_ck,tien_ck:$default_ck_e$$.tien_ck,gt_hd_tu:$default_ck_e$$.gt_hd_tu,gt_hd_den:$default_ck_e$$.gt_hd_den,sl_ap_dung:$default_ck_e$$.sl_ap_dung,so_tien_max:$default_ck_e$$.so_tien_max,id_cs:$default_ck_e$$._id});$default_ck_e$$=underscore.filter($rs$$.discount,
26
- $d$$=>1<$d$$.sl_tu).sort(function($a$$,$b$$){return $b$$.ty_le_ck-$a$$.ty_le_ck});0<$default_ck_e$$.length&&($rs$$.price.ck_sl_tu2=$default_ck_e$$);$rs$$.price.promotion=$rs$$.promotion||[];async.mapSeries($rs$$.price.promotion,($p$$,$callback$$)=>{setImmediate(()=>{($p$$.details_km||[]).joinModel2($condition$$.id_app,dmvt,{where:"ma_vt",fields:["ten_vt","picture"]},()=>{$callback$$()})})},()=>{$fn$$(null,$rs$$.price)})})}else $fn$$(`Condition required ma_vt,id_app. Current condition ${JSON.stringify($condition$$)}`)};
5
+ $condition$$.ma_vt&&$condition$$.id_app){var $vt$$=$condition$$.vt;if(!$vt$$||void 0===$vt$$.gia_ban_le||void 0===$vt$$.gia_ban_le0||void 0===$vt$$.ty_le_ck0||void 0===$vt$$.tien_ck0)if($vt$$=await dmvt.findOne({ma_vt:$condition$$.ma_vt,id_app:$condition$$.id_app},{ma_vt:1,ma_nvt:1,ma_danh_muc:1,gia_ban_le0:1,gia_ban_buon0:1,gia_ban_le:1,gia_ban_buon:1,ty_le_ck0:1,tien_ck0:1}).lean(),!$vt$$)return $fn$$("Not found product: "+$condition$$.ma_vt);if($condition$$.ma_tt1){var $hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$=
6
+ {id_app:$vt$$.id_app_vt||$condition$$.id_app,ma_vt:$vt$$.ma_vt,status:!0};$hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.ma_tt=$condition$$.ma_tt1;$hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.loai_tt="1";if($hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$=await global.getModel("dmtt").findOne($hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$).lean())$vt$$.gia_ban_le0=$hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.gia_ban_le||
7
+ $vt$$.gia_ban_le0||$vt$$.gia_ban_le||0,$vt$$.gia_ban_buon0=$hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.gia_ban_buon||$vt$$.gia_ban_buon0||$vt$$.gia_ban_buon||0}else if($condition$$.ma_tt2){if($hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$={id_app:$vt$$.id_app_vt||$condition$$.id_app,ma_vt:$vt$$.ma_vt,status:!0},$hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.ma_tt=$condition$$.ma_tt2,$hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.loai_tt=
8
+ "2",$hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$=await global.getModel("dmtt").findOne($hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$).lean())$vt$$.gia_ban_le0=$hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.gia_ban_le||$vt$$.gia_ban_le0||$vt$$.gia_ban_le||0,$vt$$.gia_ban_buon0=$hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.gia_ban_buon||$vt$$.gia_ban_buon0||$vt$$.gia_ban_buon||
9
+ 0}else $condition$$.ma_tt3&&($hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$={id_app:$vt$$.id_app_vt||$condition$$.id_app,ma_vt:$vt$$.ma_vt,status:!0},$hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.ma_tt=$condition$$.ma_tt3,$hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.loai_tt="3",$hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$=await global.getModel("dmtt").findOne($hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$).lean())&&
10
+ ($vt$$.gia_ban_le0=$hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.gia_ban_le||$vt$$.gia_ban_le0||$vt$$.gia_ban_le||0,$vt$$.gia_ban_buon0=$hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$.gia_ban_buon||$vt$$.gia_ban_buon0||$vt$$.gia_ban_buon||0);var $_cust_den_ngay_hieu_luc_tu$$;if($condition$$.user&&!$condition$$.ma_kh)try{if($_cust_den_ngay_hieu_luc_tu$$=await customer.findOne({id_app:$condition$$.id_app,of_user:$condition$$.user.email},
11
+ {ma_kh:1,nh_kh:1,nh_kh2:1,nh_kh3:1,nh_kh4:1,nh_kh5:1}).lean())$condition$$.ma_kh=$_cust_den_ngay_hieu_luc_tu$$.ma_kh,$condition$$.nh_kh=$_cust_den_ngay_hieu_luc_tu$$.nh_kh,$condition$$.nh_kh2=$_cust_den_ngay_hieu_luc_tu$$.nh_kh2,$condition$$.nh_kh3=$_cust_den_ngay_hieu_luc_tu$$.nh_kh3,$condition$$.nh_kh4=$_cust_den_ngay_hieu_luc_tu$$.nh_kh4,$condition$$.nh_kh5=$_cust_den_ngay_hieu_luc_tu$$.nh_kh5}catch($e$$){console.log("Error find customer code of user",$e$$)}if($condition$$.ma_kh){var $lan_mua_thu$$=
12
+ await so1.countDocuments({id_app:$condition$$.id_app,ma_kh:$condition$$.ma_kh,trang_thai:{$in:["4","5"]}});($lan_mua_thu$$+=await pbl.countDocuments({id_app:$condition$$.id_app,ma_kh:$condition$$.ma_kh,trang_thai:{$in:["5","6"]}}))||($lan_mua_thu$$=0);$lan_mua_thu$$+=1;!$_cust_den_ngay_hieu_luc_tu$$&&($_cust_den_ngay_hieu_luc_tu$$=await customer.findOne({id_app:$condition$$.id_app,ma_kh:$condition$$.ma_kh},{nh_kh:1,nh_kh2:1,nh_kh3:1,nh_kh4:1,nh_kh5:1}).lean())&&($condition$$.nh_kh=$_cust_den_ngay_hieu_luc_tu$$.nh_kh,
13
+ $condition$$.nh_kh2=$_cust_den_ngay_hieu_luc_tu$$.nh_kh2,$condition$$.nh_kh3=$_cust_den_ngay_hieu_luc_tu$$.nh_kh3,$condition$$.nh_kh4=$_cust_den_ngay_hieu_luc_tu$$.nh_kh4,$condition$$.nh_kh5=$_cust_den_ngay_hieu_luc_tu$$.nh_kh5)}else $lan_mua_thu$$=0;var $query$$={ma_vt:$condition$$.ma_vt,id_app:$condition$$.id_app,status:!0,$and:[]};$query$$.ma_kh={$in:[null,void 0,"",$condition$$.ma_kh]};$query$$.nh_kh={$in:[null,void 0,"",$condition$$.nh_kh]};$query$$.nh_kh2={$in:[null,void 0,"",...($condition$$.nh_kh2||
14
+ [])]};$query$$.nh_kh3={$in:[null,void 0,"",...($condition$$.nh_kh3||[])]};$query$$.nh_kh4={$in:[null,void 0,"",...($condition$$.nh_kh4||[])]};$query$$.nh_kh5={$in:[null,void 0,"",...($condition$$.nh_kh5||[])]};$query$$.ma_kho={$in:[null,void 0,"",$condition$$.ma_kho]};$query$$.ma_ban={$in:[null,void 0,"",$condition$$.ma_ban]};$query$$.ma_tt1={$in:[null,void 0,"",$condition$$.ma_tt1]};$query$$.ma_tt2={$in:[null,void 0,"",$condition$$.ma_tt2]};$query$$.ma_tt3={$in:[null,void 0,"",$condition$$.ma_tt3]};
15
+ $condition$$.ngay_ct=$condition$$.ngay_ct?new Date($condition$$.ngay_ct):new Date;$hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$=$_cust_den_ngay_hieu_luc_tu$$=$condition$$.ngay_ct;$_cust_den_ngay_hieu_luc_tu$$={$lte:$_cust_den_ngay_hieu_luc_tu$$};$hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$={$gte:$hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$};$query$$.hieu_luc_tu=$_cust_den_ngay_hieu_luc_tu$$;$query$$.hieu_luc_den=
16
+ $hieu_luc_den_query_tt_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$jscomp$1_tt$$;var $sort$$={stt_uu_tien:1,sl_tu:-1,sl_den:-1,id_cs:-1,tien_ck:-1,ty_le_ck:-1,ma_kho:-1,ma_ban:-1,ma_kh:-1,nh_kh:-1,hieu_luc_tu:-1,ma_tt1:-1,ma_tt2:-1,ma_tt3:-1};async.series({giabans:$callback$$=>{setImmediate(()=>{let $_query$$=Object.assign({},$query$$);$_query$$.$and.push({$or:[{ap_dung_lan_mua_tu_thu:{$in:[0,void 0,null]}},{ap_dung_lan_mua_tu_thu:{$lte:$lan_mua_thu$$}}]});$_query$$.$and.push({$or:[{ap_dung_lan_mua_den_thu:{$in:[0,
17
+ void 0,null]}},{ap_dung_lan_mua_den_thu:{$gte:$lan_mua_thu$$}}]});void 0!=$condition$$.online&&($_query$$.online=$condition$$.online);void 0!=$condition$$.offline&&($_query$$.offline=$condition$$.offline);$_query$$.sl_tu={$lte:$condition$$.so_luong};$_query$$.$and.push({$or:[{sl_den:null},{sl_den:0},{sl_den:{$gte:$condition$$.so_luong}}]});dmgiaban.find($_query$$).sort($sort$$).lean().exec(($_q_e$$,$giabans$$)=>{if($_q_e$$)return $callback$$($_q_e$$);0<$giabans$$.length?$callback$$(null,$giabans$$):
18
+ ($_q_e$$=Object.assign({},$_query$$),$_q_e$$.ma_vt={$in:["",null,void 0]},$_q_e$$.ma_nvt={$in:["",null,void 0,$vt$$.ma_nvt]},$_q_e$$.ma_danh_muc={$in:["",null,void 0,$vt$$.ma_danh_muc]},dmgiaban.find($_q_e$$).sort($sort$$).lean().exec(($e$$,$giabans$$)=>{if($e$$)return $callback$$($e$$);0===$giabans$$.length&&($giabans$$=[{gia_ban_le:$vt$$.gia_ban_le0||$vt$$.gia_ban_le||0,gia_ban_buon:$vt$$.gia_ban_buon0||$vt$$.gia_ban_buon||0}]);$callback$$(null,$giabans$$)}))})})},discount_vt:$callback$$=>{setImmediate(()=>
19
+ {let $query_ck$$=Object.assign({},$query$$);$query_ck$$.$and.push({$or:[{ap_dung_lan_mua_tu_thu:{$in:[0,void 0,null]}},{ap_dung_lan_mua_tu_thu:{$lte:$lan_mua_thu$$}}]});$query_ck$$.$and.push({$or:[{ap_dung_lan_mua_den_thu:{$in:[0,void 0,null]}},{ap_dung_lan_mua_den_thu:{$gte:$lan_mua_thu$$}}]});$condition$$.sl_xuat&&($query_ck$$.$and.push({$or:[{sl_tu:{$in:[0,void 0,null]}},{sl_tu:{$lte:$condition$$.sl_xuat}}]}),$query_ck$$.$and.push({$or:[{sl_den:{$in:[0,void 0,null]}},{sl_den:{$gte:$condition$$.sl_xuat}}]}));
20
+ $condition$$.t_gt_hd&&($query_ck$$.$and.push({$or:[{gt_hd_tu:{$in:[0,void 0,null]}},{gt_hd_tu:{$lte:$condition$$.t_gt_hd}}]}),$query_ck$$.$and.push({$or:[{gt_hd_den:{$in:[0,void 0,null]}},{gt_hd_den:{$gte:$condition$$.t_gt_hd}}]}));void 0!=$condition$$.online&&($query_ck$$.online=$condition$$.online);void 0!=$condition$$.offline&&($query_ck$$.offline=$condition$$.offline);dmchietkhau.find($query_ck$$).sort($sort$$).lean().exec(async($_q$jscomp$1_e$$,$chietkhaus$$)=>{if($_q$jscomp$1_e$$)return $callback$$($_q$jscomp$1_e$$);
21
+ await getSLDaBanCKs($chietkhaus$$);($chietkhaus$$=$chietkhaus$$.filter($ck$$=>!$ck$$.tong_sl_ap_dung||!$ck$$.sl_da_ban||0<$ck$$.sl_con_lai))&&0<$chietkhaus$$.length?$callback$$(null,$chietkhaus$$):($_q$jscomp$1_e$$=Object.assign({},$query_ck$$),$_q$jscomp$1_e$$.ma_vt={$in:["",null,void 0]},$_q$jscomp$1_e$$.ma_nvt={$in:["",null,void 0,$vt$$.ma_nvt]},$_q$jscomp$1_e$$.ma_danh_muc={$in:["",null,void 0,$vt$$.ma_danh_muc]},dmchietkhau.find($_q$jscomp$1_e$$).sort($sort$$).lean().exec(async($e$$,$chietkhaus$$)=>
22
+ {if($e$$)return $callback$$($e$$);await getSLDaBanCKs($chietkhaus$$);$chietkhaus$$=$chietkhaus$$.filter($ck$$=>!$ck$$.tong_sl_ap_dung||!$ck$$.sl_da_ban||0<$ck$$.sl_con_lai);$callback$$(null,$chietkhaus$$)}))})})},promotion_vt:$callback$$=>{setImmediate(()=>{let $query_ck$$=Object.assign({},$query$$);void 0!=$condition$$.online&&($query_ck$$.online=$condition$$.online);void 0!=$condition$$.offline&&($query_ck$$.offline=$condition$$.offline);let $sort_km$$={stt_uu_tien:1,sl_tu:-1,ma_vt:-1,ma_nvt:-1};
23
+ dmkhuyenmai.find($query_ck$$).sort($sort_km$$).lean().exec(($_q$jscomp$2_e$$,$khuyenmai$$)=>{if($_q$jscomp$2_e$$)return $callback$$($_q$jscomp$2_e$$);$khuyenmai$$&&0<$khuyenmai$$.length?$callback$$(null,$khuyenmai$$):($_q$jscomp$2_e$$=Object.assign({},$query_ck$$),$_q$jscomp$2_e$$.ma_vt={$in:["",null,void 0]},$_q$jscomp$2_e$$.ma_nvt={$in:["",null,void 0,$vt$$.ma_nvt]},$_q$jscomp$2_e$$.ma_danh_muc={$in:["",null,void 0,$vt$$.ma_danh_muc]},dmkhuyenmai.find($_q$jscomp$2_e$$).sort($sort_km$$).lean().exec(($e$$,
24
+ $khuyenmai$$)=>{if($e$$)return $callback$$($e$$);$callback$$(null,$khuyenmai$$)}))})})}},async($default_ck_e$$,$rs$$)=>{if($default_ck_e$$)return $fn$$($default_ck_e$$);$rs$$.discount=$rs$$.discount_vt;$rs$$.promotion=$rs$$.promotion_vt;$rs$$.promotion&&$rs$$.promotion.forEach($p$$=>{delete $p$$.status;delete $p$$.user_created;delete $p$$.user_updated;delete $p$$.date_created;delete $p$$.date_updated;delete $p$$.exfields;delete $p$$.id_app;delete $p$$.dmkh;delete $p$$.dmkho;delete $p$$.dmnvt;delete $p$$.dmvt;
25
+ delete $p$$.__v});$rs$$.price={gia_ban_le:$rs$$.giabans[0].gia_ban_le,gia_ban_buon:$rs$$.giabans[0].gia_ban_buon,prices:$rs$$.giabans};$rs$$.price.discount=$rs$$.discount.sort(function($a$$,$b$$){return($b$$.ap_dung_lan_mua_tu_thu||0)>($a$$.ap_dung_lan_mua_tu_thu||0)?1:$b$$.ty_le_ck-$a$$.ty_le_ck});let $gt_hd$$=$condition$$.t_gt_hd||0;($default_ck_e$$=$rs$$.price.discount.find($d$$=>(!$d$$.gt_hd_tu||$d$$.gt_hd_tu<$gt_hd$$)&&(!$d$$.gt_hd_den||$d$$.gt_hd_den>=$gt_hd$$)&&!$d$$.mua_them))&&underscore.extend($rs$$.price,
26
+ {sl_tu:$default_ck_e$$.sl_tu,ty_le_ck:$default_ck_e$$.ty_le_ck,tien_ck:$default_ck_e$$.tien_ck,gt_hd_tu:$default_ck_e$$.gt_hd_tu,gt_hd_den:$default_ck_e$$.gt_hd_den,sl_ap_dung:$default_ck_e$$.sl_ap_dung,so_tien_max:$default_ck_e$$.so_tien_max,id_cs:$default_ck_e$$._id});$default_ck_e$$=underscore.filter($rs$$.discount,$d$$=>1<$d$$.sl_tu).sort(function($a$$,$b$$){return $b$$.ty_le_ck-$a$$.ty_le_ck});0<$default_ck_e$$.length&&($rs$$.price.ck_sl_tu2=$default_ck_e$$);$rs$$.price.promotion=$rs$$.promotion||
27
+ [];async.mapSeries($rs$$.price.promotion,($p$$,$callback$$)=>{setImmediate(()=>{($p$$.details_km||[]).joinModel2($condition$$.id_app,dmvt,{where:"ma_vt",fields:["ten_vt","picture"]},()=>{$callback$$()})})},()=>{$fn$$(null,$rs$$.price)})})}else $fn$$(`Condition required ma_vt,id_app. Current condition ${JSON.stringify($condition$$)}`)};
@@ -8,11 +8,12 @@ post.prototype.run=async function($callback$$=()=>{}){if(!this.details)return co
8
8
  {_id:1,tat_toan:1}).lean(),0<$rs$jscomp$2_tdtts_tdtts$$.length)){if(0<$rs$jscomp$2_tdtts_tdtts$$.filter($t$$=>$t$$.tat_toan).length)return $callback$$(null);$rs$jscomp$2_tdtts_tdtts$$=$rs$jscomp$2_tdtts_tdtts$$.map($t$$=>$t$$._id.toString());if(await global.getModel("tdttno_tt").findOne({id_tdtt:{$in:$rs$jscomp$2_tdtts_tdtts$$}}))return $callback$$(null)}"tdttco_tt"===$model_book$$.modelName.toLowerCase()&&await Promise.all($details$$.filter($d$$=>$d$$.id_hd&&$d$$.id_tdtt).map($detail$$=>(async()=>
9
9
  {let $tdtt$$=await global.getModel("tdttco").findOne({_id:$detail$$.id_tdtt},{_id:1}).lean();!$tdtt$$&&($tdtt$$=await global.getModel("tdttco").findOne({id_ct:$detail$$.id_hd},{_id:1}).lean())&&($detail$$.id_tdtt=$tdtt$$._id.toString())})()));"tdttno_tt"===$model_book$$.modelName.toLowerCase()&&await Promise.all($details$$.filter($d$$=>$d$$.id_hd&&$d$$.id_tdtt).map($detail$$=>(async()=>{let $tdtt$$=await global.getModel("tdttno").findOne({_id:$detail$$.id_tdtt},{_id:1}).lean();!$tdtt$$&&($tdtt$$=
10
10
  await global.getModel("tdttno").findOne({id_ct:$detail$$.id_hd},{_id:1}).lean())&&($detail$$.id_tdtt=$tdtt$$._id.toString())})()));if("sokho"===$model_book$$.modelName.toLowerCase()||"sokhott"===$model_book$$.modelName.toLowerCase())await $details$$.asyncJoinModel2($master$$.id_app,Dmvt,{where:"ma_vt",fields:"tg_tk"}),$details$$=$details$$.filter($d$$=>$d$$.tg_tk),await $details$$.asyncJoinModel2($master$$.id_app,global.getModel("dmqddvt"),{where:{ma_vt:"ma_vt",ma_dvt:"ma_dvt"},fields:["tu","mau",
11
- {he_so_qd:"ty_le_qd"}]}),$details$$.forEach($detail$$=>{$detail$$.he_so_qd=$detail$$.he_so_qd||1;$detail$$.mau&&$detail$$.tu?($detail$$.he_so_qd=$detail$$.tu/$detail$$.mau,$detail$$.sl_xuat_qd=utils.round(($detail$$.sl_xuat||0)*$detail$$.tu/$detail$$.mau,round),$detail$$.sl_nhap_qd=utils.round(($detail$$.sl_nhap||0)*$detail$$.tu/$detail$$.mau,round)):($detail$$.sl_xuat_qd=($detail$$.sl_xuat||0)*$detail$$.he_so_qd,$detail$$.sl_nhap_qd=($detail$$.sl_nhap||0)*$detail$$.he_so_qd)});"sokhokhongton"===
12
- $model_book$$.modelName.toLowerCase()&&(await $details$$.asyncJoinModel2($master$$.id_app,Dmvt,{where:"ma_vt",fields:"tg_tk"}),$details$$=$details$$.filter($d$$=>0==$d$$.tg_tk),await $details$$.asyncJoinModel2($master$$.id_app,global.getModel("dmqddvt"),{where:{ma_vt:"ma_vt",ma_dvt:"ma_dvt"},fields:["tu","mau",{he_so_qd:"ty_le_qd"}]}),$details$$.forEach($detail$$=>{$detail$$.he_so_qd=$detail$$.he_so_qd||1;$detail$$.mau&&$detail$$.tu?($detail$$.he_so_qd=$detail$$.tu/$detail$$.mau,$detail$$.sl_xuat_qd=
13
- utils.round(($detail$$.sl_xuat||0)*$detail$$.tu/$detail$$.mau,round),$detail$$.sl_nhap_qd=utils.round(($detail$$.sl_nhap||0)*$detail$$.tu/$detail$$.mau,round)):($detail$$.sl_xuat_qd=utils.round(($detail$$.sl_xuat||0)*$detail$$.he_so_qd,round),$detail$$.sl_nhap_qd=utils.round(($detail$$.sl_nhap||0)*$detail$$.he_so_qd,round))}));if("vatra"===$model_book$$.modelName.toLowerCase()||"vatvao"===$model_book$$.modelName.toLowerCase())if($rs$jscomp$2_tdtts_tdtts$$=await Promise.all($details$$.filter($r$$=>
14
- $r$$.so_hd&&$r$$.so_hd.toUpperCase()!==($master$$.ma_ct||"").toUpperCase()).map($detail$$=>(async()=>{let $v$$=await $model_book$$.findOne({id_app:$master$$.id_app,so_hd:$detail$$.so_hd,ma_kh:$detail$$.ma_kh||$master$$.ma_kh,so_seri:$detail$$.so_seri,ky_hieu_hoa_don:$detail$$.ky_hieu_hoa_don,id_ct:{$ne:$master$$._id.toString()}});return $v$$?$v$$.so_hd:""})())),$rs$jscomp$2_tdtts_tdtts$$=$rs$jscomp$2_tdtts_tdtts$$.filter($r$$=>$r$$),0<$rs$jscomp$2_tdtts_tdtts$$.length)return $callback$$(`S\u1ed1 ho\u00e1 \u0111\u01a1n ${$rs$jscomp$2_tdtts_tdtts$$.join(",")} \u0111\u00e3 t\u1ed3n t\u1ea1i`);
15
- $details$$=$details$$.map(($detail$$,$line$$)=>{$detail$$.id_ct=$master$$._id.toString();for(let $attr$$ in $model_book$$.schema.paths)if("id_ct"!=$attr$$&&"_id"!=$attr$$&&"__v"!=$attr$$){let $v$$=$detail$$[$attr$$];void 0!==$v$$&&null!==$v$$&&""!==$v$$||0===$v$$||void 0===$master$$[$attr$$]||($detail$$[$attr$$]=$master$$[$attr$$])}$detail$$.line=$line$$;delete $detail$$.toObject;delete $detail$$._id;delete $detail$$.__v;return $detail$$});const $self$$=this;$self$$.remove($error$$=>{if($error$$)return console.error("error delete data post",
16
- $error$$),$callback$$($error$$);if(0==$details$$.length)return $callback$$(null,[]);$model_book$$.create($details$$,async($e$jscomp$0$$,$rs$$)=>{if($e$jscomp$0$$){var $contr_msg_error$$=$e$jscomp$0$$.message||$e$jscomp$0$$.error||$e$jscomp$0$$.toString();0<=$contr_msg_error$$.indexOf("E11000 duplicate")&&0<=$contr_msg_error$$.indexOf("id_ct_1_line_1")?($rs$$=await $model_book$$.find({id_ct:$master$$._id.toString()}),0<$rs$$.length?$callback$$(null,$rs$$):(console.error("error save data post",$e$jscomp$0$$,
17
- $details$$),$self$$.remove(()=>{$callback$$($e$jscomp$0$$)}))):(console.error("error save data post",$e$jscomp$0$$,$details$$),$self$$.remove(()=>{$callback$$($e$jscomp$0$$)}))}else{if($master$$.ma_ct)if($contr_msg_error$$=global.controllers[$master$$.ma_ct.toUpperCase()]){if(!await $contr_msg_error$$.model.findById($master$$._id)){console.error("Ch\u1ee9ng t\u1eeb kh\u00f4ng t\u1ed3n t\u1ea1i. X\u00f3a s\u1ed5 s\u00e1ch",$master$$._id);$self$$.remove(()=>{$callback$$("Ch\u1ee9ng t\u1eeb kh\u00f4ng t\u1ed3n t\u1ea1i")});
18
- return}}else console.log("not found controller",$master$$.ma_ct.toUpperCase());$callback$$(null,$rs$$);$rs$$&&"sokho"===$model_book$$.modelName.toLowerCase()&&setImmediate(()=>{tontucthoi.tinhTonTucThoi($rs$$,$e$$=>{$e$$&&console.error("L\u1ed7i t\u00ednh t\u1ed3n t\u1ee9c th\u1eddi v\u1eadt t\u01b0",$rs$$,$e$$)})})}})})};module.exports=post;
11
+ {he_so_qd:"ty_le_qd"}]}),$details$$.forEach($detail$$=>{$detail$$.ma_kho=$detail$$.ma_kho||$master$$.ma_kho;$detail$$.he_so_qd=$detail$$.he_so_qd||1;$detail$$.mau&&$detail$$.tu?($detail$$.he_so_qd=$detail$$.tu/$detail$$.mau,$detail$$.sl_xuat_qd=utils.round(($detail$$.sl_xuat||0)*$detail$$.tu/$detail$$.mau,round),$detail$$.sl_nhap_qd=utils.round(($detail$$.sl_nhap||0)*$detail$$.tu/$detail$$.mau,round)):($detail$$.sl_xuat_qd=($detail$$.sl_xuat||0)*$detail$$.he_so_qd,$detail$$.sl_nhap_qd=($detail$$.sl_nhap||
12
+ 0)*$detail$$.he_so_qd)});"sokhokhongton"===$model_book$$.modelName.toLowerCase()&&(await $details$$.asyncJoinModel2($master$$.id_app,Dmvt,{where:"ma_vt",fields:"tg_tk"}),$details$$=$details$$.filter($d$$=>0==$d$$.tg_tk),await $details$$.asyncJoinModel2($master$$.id_app,global.getModel("dmqddvt"),{where:{ma_vt:"ma_vt",ma_dvt:"ma_dvt"},fields:["tu","mau",{he_so_qd:"ty_le_qd"}]}),$details$$.forEach($detail$$=>{$detail$$.ma_kho=$detail$$.ma_kho||$master$$.ma_kho;$detail$$.he_so_qd=$detail$$.he_so_qd||
13
+ 1;$detail$$.mau&&$detail$$.tu?($detail$$.he_so_qd=$detail$$.tu/$detail$$.mau,$detail$$.sl_xuat_qd=utils.round(($detail$$.sl_xuat||0)*$detail$$.tu/$detail$$.mau,round),$detail$$.sl_nhap_qd=utils.round(($detail$$.sl_nhap||0)*$detail$$.tu/$detail$$.mau,round)):($detail$$.sl_xuat_qd=utils.round(($detail$$.sl_xuat||0)*$detail$$.he_so_qd,round),$detail$$.sl_nhap_qd=utils.round(($detail$$.sl_nhap||0)*$detail$$.he_so_qd,round))}));if("vatra"===$model_book$$.modelName.toLowerCase()||"vatvao"===$model_book$$.modelName.toLowerCase())if($rs$jscomp$2_tdtts_tdtts$$=
14
+ await Promise.all($details$$.filter($r$$=>$r$$.so_hd&&$r$$.so_hd.toUpperCase()!==($master$$.ma_ct||"").toUpperCase()).map($detail$$=>(async()=>{let $v$$=await $model_book$$.findOne({id_app:$master$$.id_app,so_hd:$detail$$.so_hd,ma_kh:$detail$$.ma_kh||$master$$.ma_kh,so_seri:$detail$$.so_seri,ky_hieu_hoa_don:$detail$$.ky_hieu_hoa_don,id_ct:{$ne:$master$$._id.toString()}});return $v$$?$v$$.so_hd:""})())),$rs$jscomp$2_tdtts_tdtts$$=$rs$jscomp$2_tdtts_tdtts$$.filter($r$$=>$r$$),0<$rs$jscomp$2_tdtts_tdtts$$.length)return $callback$$(`S\u1ed1 ho\u00e1 \u0111\u01a1n ${$rs$jscomp$2_tdtts_tdtts$$.join(",")} \u0111\u00e3 t\u1ed3n t\u1ea1i`);
15
+ $details$$=$details$$.map(($detail$$,$line$$)=>{$detail$$.id_ct=$master$$._id.toString();$detail$$.ma_ct=$master$$.ma_ct;$detail$$.so_ct=$master$$.so_ct;$detail$$.ngay_ct=$master$$.ngay_ct;for(let $attr$$ in $model_book$$.schema.paths)if("id_ct"!=$attr$$&&"_id"!=$attr$$&&"__v"!=$attr$$){let $v$$=$detail$$[$attr$$];void 0!==$v$$&&null!==$v$$&&""!==$v$$||0===$v$$||void 0===$master$$[$attr$$]||($detail$$[$attr$$]=$master$$[$attr$$])}$detail$$.line=$line$$;delete $detail$$.toObject;delete $detail$$._id;
16
+ delete $detail$$.__v;return $detail$$});const $self$$=this;$self$$.remove($error$$=>{if($error$$)return console.error("error delete data post",$error$$),$callback$$($error$$);if(0==$details$$.length)return $callback$$(null,[]);$model_book$$.create($details$$,async($e$jscomp$0$$,$rs$$)=>{if($e$jscomp$0$$){console.error("\u0110\u00e3 c\u00f3 l\u1ed7i khi postdata",$e$jscomp$0$$);var $contr_msg_error$$=$e$jscomp$0$$.message||$e$jscomp$0$$.error||$e$jscomp$0$$.toString();0<=$contr_msg_error$$.indexOf("E11000 duplicate")&&
17
+ 0<=$contr_msg_error$$.indexOf("id_ct_1_line_1")?($rs$$=await $model_book$$.find({id_ct:$master$$._id.toString()}),0<$rs$$.length?$callback$$(null,$rs$$):(console.error("error save data post",$e$jscomp$0$$,$details$$),$self$$.remove(()=>{$callback$$($e$jscomp$0$$)}))):(console.error("error save data post",$e$jscomp$0$$,$details$$),$self$$.remove(()=>{$callback$$($e$jscomp$0$$)}))}else $master$$.ma_ct?($contr_msg_error$$=global.controllers[$master$$.ma_ct.toUpperCase()])?await $contr_msg_error$$.model.findById($master$$._id)?
18
+ $callback$$(null,$rs$$):(console.error("Ch\u1ee9ng t\u1eeb kh\u00f4ng t\u1ed3n t\u1ea1i. X\u00f3a s\u1ed5 s\u00e1ch",$master$$._id),$self$$.remove(()=>{$callback$$("Ch\u1ee9ng t\u1eeb kh\u00f4ng t\u1ed3n t\u1ea1i")})):(console.log("not found controller",$master$$.ma_ct.toUpperCase()),$callback$$(null,$rs$$)):$callback$$(null,$rs$$),$rs$$&&"sokho"===$model_book$$.modelName.toLowerCase()&&setImmediate(()=>{tontucthoi.tinhTonTucThoi($rs$$,$e$$=>{$e$$&&console.error("L\u1ed7i t\u00ednh t\u1ed3n t\u1ee9c th\u1eddi v\u1eadt t\u01b0",
19
+ $rs$$,$e$$)})})})})};module.exports=post;
@@ -10,12 +10,12 @@ $callback$$()}):$callback$$()})},tk_co:$callback$$=>{checkAcc($id_app$$,$_data$$
10
10
  0<$du_co$jscomp$1_e$$?$callback$$(`T\u00e0i kho\u1ea3n ${$_data$$.tk_co} kh\u00f4ng \u0111\u01b0\u1ee3c ph\u00e9p c\u00f3 s\u1ed1 d\u01b0 b\u00ean c\u00f3: ${$du_co$jscomp$1_e$$}`):$callback$$()}):$callback$$()})}},$e$$=>{$callback$jscomp$0$$($e$$,$_data$$)})},post=function($master$$,$details$$,$prepare$$,$model$$=SocaiModel){$details$$&&(this.master={...$master$$},this.details=$details$$.map($detail$$=>({...$detail$$})),this.model=$model$$,this.prepare=$prepare$$)};
11
11
  post.prototype.runPrepare=async($prepare$$,$details$jscomp$0$$)=>{$details$jscomp$0$$=$details$jscomp$0$$.map($d$$=>{$d$$.toObject&&($d$$=$d$$.toObject());return{...$d$$}});return new Promise($resolve$$=>{$prepare$$?async.mapSeries($details$jscomp$0$$,($detail$jscomp$0$$,$callback$$)=>{setImmediate(()=>{$detail$jscomp$0$$.toObject=function(){return Object.assign({},$detail$jscomp$0$$)};$prepare$$($detail$jscomp$0$$,$detail$$=>{$detail$$.toObject=function(){return Object.assign({},$detail$$)};$callback$$(null,
12
12
  $detail$$)})})},($e$$,$details$$)=>{$resolve$$($details$$)}):$resolve$$($details$jscomp$0$$)})};
13
- post.prototype.run=async function($callback$jscomp$0$$=()=>{}){if(!this.details)return $callback$jscomp$0$$(null,null);const $Socai$$=this.model||SocaiModel;let $master$$=this.master,$details$jscomp$0$$=await this.runPrepare(this.prepare,this.details);$details$jscomp$0$$.forEach($d$$=>{$d$$.tk_no=$d$$.tk_no||$master$$.tk_no;$d$$.tk_co=$d$$.tk_co||$master$$.tk_co});$details$jscomp$0$$=$details$jscomp$0$$.filter($d$$=>$d$$.tk_no&&$d$$.tk_co);if(!$master$$.ngay_ct)return $callback$jscomp$0$$("ngay_ct is not null");
14
- let $check_hmcn$$=$details$jscomp$0$$.map($d$$=>[{tk:$d$$.tk_no,tien:$d$$.tien,ma_kh:$d$$.ma_kh_no||$d$$.ma_kh||$master$$.ma_kh},{tk:$d$$.tk_co,tien:0-$d$$.tien,ma_kh:$d$$.ma_kh_co||$d$$.ma_kh||$master$$.ma_kh}]).reduce(($a$$,$b$$)=>$a$$.concat($b$$),[]).filter($a$$=>$a$$.ma_kh&&$a$$.tien);$check_hmcn$$=await $check_hmcn$$.asyncGroupBy(["tk","ma_kh"],["tien"]);if(0<$check_hmcn$$.length)try{await Promise.all($check_hmcn$$.map($d$$=>asyncCheckHMCN($master$$.id_app,$master$$,$d$$.tk,$d$$.ma_kh,$d$$.tien)))}catch($e$$){return $callback$jscomp$0$$($e$$.message||
15
- $e$$.error||$e$$)}async.mapSeries($details$jscomp$0$$,($detail$jscomp$0$$,$callback$$)=>{setImmediate(()=>{$detail$jscomp$0$$.ma_kh_no||($detail$jscomp$0$$.ma_kh_no=$detail$jscomp$0$$.ma_kh||$master$$.ma_kh);$detail$jscomp$0$$.ma_kh_co||($detail$jscomp$0$$.ma_kh_co=$detail$jscomp$0$$.ma_kh||$master$$.ma_kh);checkData($master$$.id_app,$master$$.ngay_ct,$detail$jscomp$0$$,($e$$,$detail$$)=>{$callback$$($e$$,$detail$$)})})},($but_toan_loi_e$$,$details$$)=>{if($but_toan_loi_e$$)return $callback$jscomp$0$$($but_toan_loi_e$$);
16
- $but_toan_loi_e$$=$details$$.filter($detail$$=>isNaN($detail$$.tien_nt)||isNaN($detail$$.tien));0<$but_toan_loi_e$$.length&&console.error("Cac but toan khong hop ly",$but_toan_loi_e$$,"cua chung tu",$master$$._id);let $dks$$=$details$$.filter($detail$$=>!(0===$detail$$.tien_nt&&0===$detail$$.tien)&&!isNaN($detail$$.tien_nt)&&!isNaN($detail$$.tien)).map(($detail$$,$nh_dk$$)=>{for(let $attr$$ in $Socai$$.schema.paths)"id_ct"!=$attr$$&&"_id"!=$attr$$&&"__v"!=$attr$$&&(void 0!==$detail$$[$attr$$]&&null!==
17
- $detail$$[$attr$$]&&""!==$detail$$[$attr$$]||0===$detail$$[$attr$$]||void 0===$master$$[$attr$$]||($detail$$[$attr$$]=$master$$[$attr$$]));$detail$$.nh_dk=$nh_dk$$;$detail$$.id_ct=$master$$._id.toString();delete $detail$$.toObject;delete $detail$$._id;delete $detail$$.__v;return $detail$$});$Socai$$.deleteMany({id_ct:$master$$._id.toString()},$error$$=>{if($error$$)return $callback$jscomp$0$$("Don't remove socai \n"+$error$$);if(0==$dks$$.length)return $callback$jscomp$0$$(null,[]);$Socai$$.create($dks$$,
18
- async($e$$,$msg_error_rs$$)=>{if($e$$)if($msg_error_rs$$=$e$$.message||$e$$.error||$e$$.toString(),0<=$msg_error_rs$$.indexOf("E11000 duplicate")&&0<=$msg_error_rs$$.indexOf("id_ct_1_nh_dk_1"))if($msg_error_rs$$=await $Socai$$.find({id_ct:$master$$._id.toString()}),0<$msg_error_rs$$.length)$callback$jscomp$0$$(null,$msg_error_rs$$);else{console.error("Error save socai",$e$$,$master$$);let $q_remove$$={id_app:$master$$.id_app,id_ct:$master$$._id.toString()};$Socai$$.deleteMany($q_remove$$,($_e$$,$rs$$)=>
19
- {console.error("delete socai because error when posting",$master$$._id.toString(),JSON.stringify($rs$$),$q_remove$$);$callback$jscomp$0$$($e$$)})}else{console.error("Error save socai",$e$$,$master$$);let $q_remove$$={id_app:$master$$.id_app,id_ct:$master$$._id.toString()};$Socai$$.deleteMany($q_remove$$,($_e$$,$rs$$)=>{console.error("delete socai because error when posting",$master$$._id.toString(),JSON.stringify($rs$$),$q_remove$$);$callback$jscomp$0$$($e$$)})}else if($master$$.ma_ct){let $contr$$=
20
- global.controllers[$master$$.ma_ct.toUpperCase()];$contr$$?await $contr$$.model.findById($master$$._id)?$callback$jscomp$0$$(null,$msg_error_rs$$):$Socai$$.deleteMany({id_ct:$master$$._id.toString()},($_e$$,$rs$$)=>{console.error("Ch\u1ee9ng t\u1eeb kh\u00f4ng t\u1ed3n t\u1ea1i. X\u00f3a socai",$master$$._id,$rs$$);$callback$jscomp$0$$($e$$)}):(console.log("not found controller",$master$$.ma_ct.toUpperCase()),$callback$jscomp$0$$(null,$msg_error_rs$$))}else $callback$jscomp$0$$(null,$msg_error_rs$$)})})})};
21
- module.exports=post;
13
+ post.prototype.run=async function($callback$jscomp$0$$=()=>{}){if(!this.details)return $callback$jscomp$0$$(null,null);const $Socai$$=this.model||SocaiModel;let $master$$=this.master,$details$jscomp$0$$=await this.runPrepare(this.prepare,this.details);$details$jscomp$0$$.forEach($d$$=>{$d$$.tk_no=$d$$.tk_no||$master$$.tk_no;$d$$.tk_co=$d$$.tk_co||$master$$.tk_co;$d$$.ma_ct=$master$$.ma_ct;$d$$.so_ct=$master$$.so_ct;$d$$.ngay_ct=$master$$.ngay_ct});$details$jscomp$0$$=$details$jscomp$0$$.filter($d$$=>
14
+ $d$$.tk_no&&$d$$.tk_co);if(!$master$$.ngay_ct)return $callback$jscomp$0$$("ngay_ct is not null");let $check_hmcn$$=$details$jscomp$0$$.map($d$$=>[{tk:$d$$.tk_no,tien:$d$$.tien,ma_kh:$d$$.ma_kh_no||$d$$.ma_kh||$master$$.ma_kh},{tk:$d$$.tk_co,tien:0-$d$$.tien,ma_kh:$d$$.ma_kh_co||$d$$.ma_kh||$master$$.ma_kh}]).reduce(($a$$,$b$$)=>$a$$.concat($b$$),[]).filter($a$$=>$a$$.ma_kh&&$a$$.tien);$check_hmcn$$=await $check_hmcn$$.asyncGroupBy(["tk","ma_kh"],["tien"]);if(0<$check_hmcn$$.length)try{await Promise.all($check_hmcn$$.map($d$$=>
15
+ asyncCheckHMCN($master$$.id_app,$master$$,$d$$.tk,$d$$.ma_kh,$d$$.tien)))}catch($e$$){return $callback$jscomp$0$$($e$$.message||$e$$.error||$e$$)}async.mapSeries($details$jscomp$0$$,($detail$jscomp$0$$,$callback$$)=>{setImmediate(()=>{$detail$jscomp$0$$.ma_kh_no||($detail$jscomp$0$$.ma_kh_no=$detail$jscomp$0$$.ma_kh||$master$$.ma_kh);$detail$jscomp$0$$.ma_kh_co||($detail$jscomp$0$$.ma_kh_co=$detail$jscomp$0$$.ma_kh||$master$$.ma_kh);checkData($master$$.id_app,$master$$.ngay_ct,$detail$jscomp$0$$,
16
+ ($e$$,$detail$$)=>{$callback$$($e$$,$detail$$)})})},($but_toan_loi_e$$,$details$$)=>{if($but_toan_loi_e$$)return $callback$jscomp$0$$($but_toan_loi_e$$);$but_toan_loi_e$$=$details$$.filter($detail$$=>isNaN($detail$$.tien_nt)||isNaN($detail$$.tien));0<$but_toan_loi_e$$.length&&console.error("Cac but toan khong hop ly",$but_toan_loi_e$$,"cua chung tu",$master$$._id);let $dks$$=$details$$.filter($detail$$=>!(0===$detail$$.tien_nt&&0===$detail$$.tien)&&!isNaN($detail$$.tien_nt)&&!isNaN($detail$$.tien)).map(($detail$$,
17
+ $nh_dk$$)=>{for(let $attr$$ in $Socai$$.schema.paths)"id_ct"!=$attr$$&&"_id"!=$attr$$&&"__v"!=$attr$$&&(void 0!==$detail$$[$attr$$]&&null!==$detail$$[$attr$$]&&""!==$detail$$[$attr$$]||0===$detail$$[$attr$$]||void 0===$master$$[$attr$$]||($detail$$[$attr$$]=$master$$[$attr$$]));$detail$$.nh_dk=$nh_dk$$;$detail$$.id_ct=$master$$._id.toString();delete $detail$$.toObject;delete $detail$$._id;delete $detail$$.__v;return $detail$$});$Socai$$.deleteMany({id_ct:$master$$._id.toString()},$error$$=>{if($error$$)return $callback$jscomp$0$$("Don't remove socai \n"+
18
+ $error$$);if(0==$dks$$.length)return $callback$jscomp$0$$(null,[]);$Socai$$.create($dks$$,async($e$$,$msg_error_rs$$)=>{if($e$$)if($msg_error_rs$$=$e$$.message||$e$$.error||$e$$.toString(),0<=$msg_error_rs$$.indexOf("E11000 duplicate")&&0<=$msg_error_rs$$.indexOf("id_ct_1_nh_dk_1"))if($msg_error_rs$$=await $Socai$$.find({id_ct:$master$$._id.toString()}),0<$msg_error_rs$$.length)$callback$jscomp$0$$(null,$msg_error_rs$$);else{console.error("Error save socai",$e$$,$master$$);let $q_remove$$={id_app:$master$$.id_app,
19
+ id_ct:$master$$._id.toString()};$Socai$$.deleteMany($q_remove$$,($_e$$,$rs$$)=>{console.error("delete socai because error when posting",$master$$._id.toString(),JSON.stringify($rs$$),$q_remove$$);$callback$jscomp$0$$($e$$)})}else{console.error("Error save socai",$e$$,$master$$);let $q_remove$$={id_app:$master$$.id_app,id_ct:$master$$._id.toString()};$Socai$$.deleteMany($q_remove$$,($_e$$,$rs$$)=>{console.error("delete socai because error when posting",$master$$._id.toString(),JSON.stringify($rs$$),
20
+ $q_remove$$);$callback$jscomp$0$$($e$$)})}else if($master$$.ma_ct){let $contr$$=global.controllers[$master$$.ma_ct.toUpperCase()];$contr$$?await $contr$$.model.findById($master$$._id)?$callback$jscomp$0$$(null,$msg_error_rs$$):$Socai$$.deleteMany({id_ct:$master$$._id.toString()},($_e$$,$rs$$)=>{console.error("Ch\u1ee9ng t\u1eeb kh\u00f4ng t\u1ed3n t\u1ea1i. X\u00f3a socai",$master$$._id,$rs$$);$callback$jscomp$0$$($e$$)}):(console.log("not found controller",$master$$.ma_ct.toUpperCase()),$callback$jscomp$0$$(null,
21
+ $msg_error_rs$$))}else $callback$jscomp$0$$(null,$msg_error_rs$$)})})})};module.exports=post;
@@ -8,16 +8,16 @@ $r$$[$f$$.name]=$value$$.map($v$$=>$v$$[$f$$.value]||0).reduce(($a$$,$b$$)=>$a$$
8
8
  Array.prototype.asyncGroupBy=function($fieldkey$$,$fieldsums$$,$options$$){let $_this$$=this;return new Promise(($resolve$$,$reject$$)=>{$_this$$.groupBy($fieldkey$$,$fieldsums$$,($error$$,$rs$$)=>{if($error$$)return $reject$$($error$$);$resolve$$($rs$$)},$options$$)})};
9
9
  Array.prototype.joinModel=function($id_app$$,$model$$,$joinFields$$,$fn$$){_.isArray($joinFields$$)&&$joinFields$$.forEach($join$$=>{if($join$$.where){let $_where$$={};for(let $key$$ in $join$$.where)$_where$$[$join$$.where[$key$$]]=$key$$;$join$$.where=$_where$$}});_.isArray($id_app$$)&&_.isArray($model$$)&&$model$$.forEach($join$$=>{if($join$$.where){let $_where$$={};for(let $key$$ in $join$$.where)$_where$$[$join$$.where[$key$$]]=$key$$;$join$$.where=$_where$$}});this.joinModel2($id_app$$,$model$$,
10
10
  $joinFields$$,$fn$$)};const getFields=$fields$$=>{_.isArray($fields$$)||($fields$$=[$fields$$]);return $fields$$=$fields$$.map(function($map$$){if(_.isObject($map$$)){var $rs$jscomp$1_value$$=$map$$.value;if($map$$.name&&$rs$jscomp$1_value$$)return{[$rs$jscomp$1_value$$]:1};$rs$jscomp$1_value$$={};for(let $key$$ in $map$$)$rs$jscomp$1_value$$[$map$$[$key$$]]=1;return $rs$jscomp$1_value$$}return{[$map$$]:1}}).reduce(($a$$,$b$$)=>({...$a$$,...$b$$}),{})};
11
- Array.prototype.joinModel2=function($id_app$$,$model$jscomp$0$$,$joinFields$$,$fn$$,$options$$={cache:!0}){let $self$$=this;setImmediate(()=>{if(_.isArray($id_app$$)){let $model_1$$=$id_app$$,$joinFields_1$$=$model$jscomp$0$$,$fn_1$$=$joinFields$$;$id_app$$=void 0;$model$jscomp$0$$=$model_1$$;$joinFields$$=$joinFields_1$$;$fn$$=$fn_1$$}let $model_origin$$;_.isArray($model$jscomp$0$$)||($model_origin$$=$model$jscomp$0$$);(new Promise($resolve$$=>{setImmediate(()=>{_.isArray($joinFields$$)||($joinFields$$=
12
- [$joinFields$$]);$joinFields$$.forEach($join$$=>{$join$$.fields_need_get_data||_.isArray($model$jscomp$0$$)||$join$$.setFields||$join$$.asyncSetFields||!$join$$.fields||_.isFunction($join$$.fields)||($join$$.fields_need_get_data=getFields($join$$.fields))});_.isArray($model$jscomp$0$$)?$resolve$$($model$jscomp$0$$):$resolve$$([])})})).then($model$$=>{async.mapSeries($self$$,function($item$$,$callback$jscomp$0$$){setImmediate(()=>{async.mapSeries($joinFields$$,function($join$$,$callback$$){setImmediate(()=>
11
+ Array.prototype.joinModel2=function($id_app$$,$model$jscomp$0$$,$joinFields$$,$fn$$,$options$$={cache:!0}){let $self$$=this;setImmediate(()=>{if(_.isArray($id_app$$)){let $model_1$$=$id_app$$,$joinFields_1$$=$model$jscomp$0$$,$fn_1$$=$joinFields$$;$id_app$$=void 0;$model$jscomp$0$$=$model_1$$;$joinFields$$=$joinFields_1$$;$fn$$=$fn_1$$}$fn$$||($fn$$=()=>{});let $model_origin$$;_.isArray($model$jscomp$0$$)||($model_origin$$=$model$jscomp$0$$);(new Promise($resolve$$=>{setImmediate(()=>{_.isArray($joinFields$$)||
12
+ ($joinFields$$=[$joinFields$$]);$joinFields$$.forEach($join$$=>{$join$$.fields_need_get_data||_.isArray($model$jscomp$0$$)||$join$$.setFields||$join$$.asyncSetFields||!$join$$.fields||_.isFunction($join$$.fields)||($join$$.fields_need_get_data=getFields($join$$.fields))});_.isArray($model$jscomp$0$$)?$resolve$$($model$jscomp$0$$):$resolve$$([])})})).then($model$$=>{async.mapSeries($self$$,function($item$$,$callback$jscomp$0$$){setImmediate(()=>{async.mapSeries($joinFields$$,function($join$$,$callback$$){setImmediate(()=>
13
13
  {let $query$$={};if($join$$.where)if(_.isFunction($join$$.where))$query$$=$join$$.where($item$$)||{};else{if(_.isString($join$$.where)){var $bkey_k$$=$join$$.where;$join$$.where={};$join$$.where[$bkey_k$$]=$bkey_k$$}for(let $akey$$ in $join$$.where)if($bkey_k$$=$join$$.where[$akey$$],_.isObject($bkey_k$$)?$query$$[$akey$$]=$bkey_k$$:$query$$[$bkey_k$$]=$item$$[$akey$$],!("_id"!=$bkey_k$$||$item$$[$akey$$]&&global.mongoose.Types.ObjectId.isValid($item$$[$akey$$])))return $callback$$(null)}if($join$$.akey&&
14
14
  $join$$.bkey){if(!("_id"!=$join$$.bkey||$item$$[$join$$.akey]&&global.mongoose.Types.ObjectId.isValid($item$$[$join$$.akey])))return $callback$$(null);$query$$[$join$$.bkey]=$item$$[$join$$.akey]}let $_model$$;($_model$$="function"!==typeof $model_origin$$||$model_origin$$.findOne?$model_origin$$:$model_origin$$($item$$))&&$_model$$.schema&&($_model$$.schema.paths.id_app?$query$$.id_app=$item$$.id_app||$query$$.id_app:delete $query$$.id_app);let $b$$=_.findWhere($model$$,$query$$),$d_session$$="";
15
15
  if($query$$._id)$d_session$$="stp:"+$query$$._id;else{for(let $key$$ in $query$$)"id_app"!==$key$$&&$query$$[$key$$]&&($d_session$$=$d_session$$?$d_session$$+":"+$key$$+":"+$query$$[$key$$]:$key$$+":"+$query$$[$key$$]);$d_session$$=$query$$.id_app?"id_app:"+$query$$.id_app+":"+$d_session$$:($id_app$$||"")+":"+$d_session$$}(new Promise(($resolve$jscomp$0$$,$reject$$)=>{$_model$$&&!$b$$?(new Promise($resolve$$=>{setImmediate(()=>{$options$$.cache&&$d_session$$&&$_model$$.collection&&$_model$$.collection.name&&
16
16
  cachedKeys[$_model$$.collection.name.substring(0,$_model$$.collection.name.length-1)]?global.clientRedis.get($d_session$$,function($err$$,$reply$$){$resolve$$($reply$$)}):$resolve$$()})})).then($rep$$=>{setImmediate(async()=>{if($rep$$)$b$$=JSON.parse($rep$$),$resolve$jscomp$0$$($b$$);else{let $q$$={};for($fields$jscomp$1_key$$ in $query$$)void 0!==$query$$[$fields$jscomp$1_key$$]&&($q$$[$fields$jscomp$1_key$$]=$query$$[$fields$jscomp$1_key$$]);if(0===Object.keys($q$$).length)return $resolve$jscomp$0$$(null);
17
17
  $id_app$$&&($q$$.id_app=$id_app$$);if(""==$q$$._id||$q$$._id&&!global.mongoose.Types.ObjectId.isValid($q$$._id))return $resolve$jscomp$0$$(null);var $fields$jscomp$1_key$$=$join$$.fields_need_get_data;if(_.isString($_model$$)){if(!mongoose.models[$_model$$])return $reject$$("Collection "+$_model$$+" is not exists");$_model$$=mongoose.models[$_model$$]}try{const $rs$$=await $_model$$.findOne($q$$,$fields$jscomp$1_key$$).lean().exec();$rs$$&&($rs$$._id=$rs$$._id.toString(),$b$$=$rs$$);$resolve$jscomp$0$$($b$$)}catch($e$$){console.error($e$$),
18
18
  $resolve$jscomp$0$$($b$$)}}})}):$resolve$jscomp$0$$($b$$)})).then(()=>{setImmediate(()=>{$b$$&&($join$$.fields||$join$$.setFields||$join$$.asyncSetFields)?($join$$.fields&&(_.isFunction($join$$.fields)?$join$$.fields($item$$,$b$$):(_.isArray($join$$.fields)||($join$$.fields=[$join$$.fields]),$join$$.fields.forEach(function($map$$){if(_.isObject($map$$)){let $name$$=$map$$.name,$value$$=$map$$.value;if($name$$&&$value$$)$item$$[$name$$]=$b$$[$value$$];else for(let $key$$ in $map$$)$item$$[$key$$]=
19
- $b$$[$map$$[$key$$]]}else $item$$[$map$$]=$b$$[$map$$]}))),$join$$.setFields&&$join$$.setFields($item$$,$b$$),$join$$.asyncSetFields?setImmediate(()=>{$join$$.asyncSetFields($item$$,$b$$,()=>{$callback$$(null)})}):$callback$$(null)):$callback$$(null)})})})},function($error$$){setImmediate(()=>{if($error$$)return $callback$jscomp$0$$($error$$);$callback$jscomp$0$$()})})})},function($error$$){setImmediate(()=>{$error$$&&console.error($error$$);$fn$$($self$$)})})}).catch($error$$=>{console.error($error$$);
20
- $fn$$($self$$)})})};Array.prototype.asyncJoinModel2=function($id_app$$,$model$$,$joinFields$$,$options$$={cache:!0}){let $_this$$=this;return new Promise($resolve$$=>{$_this$$.joinModel2($id_app$$,$model$$,$joinFields$$,$rs$$=>{$resolve$$($rs$$)},$options$$)})};
19
+ $b$$[$map$$[$key$$]]}else $item$$[$map$$]=$b$$[$map$$]}))),$join$$.setFields&&$join$$.setFields($item$$,$b$$),$join$$.asyncSetFields?setImmediate(()=>{$join$$.asyncSetFields($item$$,$b$$,()=>{$callback$$(null)})}):$callback$$(null)):$callback$$(null)})})})},function($error$$){setImmediate(()=>{if($error$$)return $callback$jscomp$0$$($error$$);$callback$jscomp$0$$()})})})},function($error$$){setImmediate(()=>{$error$$&&console.error($error$$);try{$fn$$($self$$)}catch($e$$){console.error($e$$,$fn$$)}})})}).catch($error$$=>
20
+ {console.error($error$$);try{$fn$$($self$$)}catch($e$$){console.error($e$$,$fn$$)}})})};Array.prototype.asyncJoinModel2=function($id_app$$,$model$$,$joinFields$$,$options$$={cache:!0}){let $_this$$=this;return new Promise($resolve$$=>{$_this$$.joinModel2($id_app$$,$model$$,$joinFields$$,$rs$$=>{$resolve$$($rs$$)},$options$$)})};
21
21
  Array.prototype.crossJoin=function($otherArray$$,$where$$,$fn$$){setImmediate(()=>{let $newArray$$=[];for(let $e1$$ of this){var $_otherArray__where$$={};if($where$$)for(let $key$$ in $where$$)$_otherArray__where$$[$where$$[$key$$]]=$e1$$[$key$$];$_otherArray__where$$=_.where($otherArray$$,$_otherArray__where$$);if(0===$_otherArray__where$$.length)$newArray$$.push($e1$$);else for(let $item$$ of $_otherArray__where$$)$_otherArray__where$$={},_.extend($_otherArray__where$$,$e1$$),_.extend($_otherArray__where$$,
22
22
  $item$$),$newArray$$.push($_otherArray__where$$)}$fn$$($newArray$$)})};Array.prototype.asyncCrossJoin=function($otherArray$$,$where$$){let $_this$$=this;return new Promise($resolve$$=>{$_this$$.crossJoin($otherArray$$,$where$$,$rs$$=>{$resolve$$($rs$$)})})};
23
23
  Array.prototype.pivot=function($rowFields$$,$colPivot$$,$colSum$$,$fn$$,$options$$={},$log$$=()=>{}){setImmediate(()=>{$log$$("pivot:start");this.groupBy($colPivot$$,[],($e$jscomp$0$$,$colFields$$)=>{$log$$("pivot:group by col");$colFields$$=_.pluck($colFields$$,$colPivot$$);this.groupBy($rowFields$$,[],($e$$,$report$$)=>{setImmediate(()=>{$log$$("pivot:group by row");for(let $r$$ of $report$$)for(let $c$$ of $colFields$$){let $w$$={};$w$$[$colPivot$$]=$c$$;$rowFields$$.forEach(function($rf$$){$w$$[$rf$$]=
@@ -1,8 +1,8 @@
1
- 'use strict';var dmyt=global.getModel("dmyt"),gt_thcppstk=global.getModel("gt_thcppstk"),gt_ctgt=global.getModel("gt_ctgt"),gt_sltk=global.getModel("gt_sltk");const async=require("async");
2
- module.exports=function($condition$$,$fn$$){if(!($condition$$&&$condition$$.thang&&$condition$$.nam&&$condition$$.id_app))return $fn$$("T\u00ednh n\u0103ng n\u00e0y y\u00eau c\u1ea7u c\u00e1c tham s\u1ed1: thang,nam,id_app");let $thang$$=Number($condition$$.thang),$nam$$=Number($condition$$.nam);dmyt.find({id_app:$condition$$.id_app,pt_phan_bo:"1",th_sp:!1}).lean().exec(($e$$,$yts$$)=>{if($e$$)return $fn$$($e$$);async.mapSeries($yts$$,($yt$$,$callback$jscomp$0$$)=>{async.series({gt:$callback$$=>{setImmediate(()=>
3
- {let $cond$$={id_app:$condition$$.id_app,ma_yt:$yt$$.ma_yt,nam:$condition$$.nam,thang:$condition$$.thang};$condition$$.ma_bp&&($cond$$.ma_bp=$condition$$.ma_bp.toUpperCase());$condition$$.id_lenhsx&&mongoose.Types.ObjectId.isValid($condition$$.id_lenhsx)&&($cond$$.id_lenhsx=$condition$$.id_lenhsx);gt_thcppstk.find($cond$$).lean().exec(($e$jscomp$0$$,$pstk$$)=>{if($e$jscomp$0$$)return $callback$$($e$jscomp$0$$);$pstk$$.groupBy(["ma_bp","ma_yt","id_lenhsx"],["dd_dk","dd_dk_nt","ps_tk","ps_tk_nt"],($e$$,
4
- $rs$$)=>{if($e$$)return $callback$$($e$$);$rs$$.forEach($p$$=>{$p$$.co_do_dang=$yt$$.co_do_dang;$p$$.nam=$nam$$;$p$$.thang=$thang$$;$p$$.id_app=$condition$$.id_app;$p$$.yt_trung_gian=$yt$$.yt_trung_gian;$p$$.cong_tru=$yt$$.cong_tru});$callback$$(null,$rs$$)})})})}},function($e$$,$rs$$){if($e$$)return $callback$jscomp$0$$($e$$);$callback$jscomp$0$$(null,$rs$$.gt)})},($cond$jscomp$1_e$$,$cppstk$$)=>{if($cond$jscomp$1_e$$)return $fn$$($cond$jscomp$1_e$$);let $data_pstk$$=$cppstk$$.reduce(($a$$,$b$$)=>
5
- $a$$.concat($b$$),[]);$cond$jscomp$1_e$$={id_app:$condition$$.id_app,nam:$condition$$.nam,thang:$condition$$.thang};$condition$$.ma_bp&&($cond$jscomp$1_e$$.ma_bp=$condition$$.ma_bp.toUpperCase());$condition$$.id_lenhsx&&mongoose.Types.ObjectId.isValid($condition$$.id_lenhsx)&&($cond$jscomp$1_e$$.id_lenhsx=$condition$$.id_lenhsx);gt_sltk.find($cond$jscomp$1_e$$).lean().exec(($e$jscomp$0$$,$sltk$$)=>{if($e$jscomp$0$$)return $fn$$($e$jscomp$0$$);$e$jscomp$0$$=$sltk$$.csum("sl_nk_tk")+$sltk$$.csum("sl_dd_ck");
1
+ 'use strict';const dmyt=global.getModel("dmyt"),gt_thcppstk=global.getModel("gt_thcppstk"),gt_ctgt=global.getModel("gt_ctgt"),gt_sltk=global.getModel("gt_sltk"),async=require("async");
2
+ module.exports=function($condition$$,$fn$$){if(!($condition$$&&$condition$$.thang&&$condition$$.nam&&$condition$$.id_app))return $fn$$("T\u00ednh n\u0103ng n\u00e0y y\u00eau c\u1ea7u c\u00e1c tham s\u1ed1: thang,nam,id_app");let $thang$$=Number($condition$$.thang),$nam$$=Number($condition$$.nam);dmyt.find({id_app:$condition$$.id_app,pt_phan_bo:"1",th_sp:!1,status:!0}).lean().exec(($e$$,$yts$$)=>{if($e$$)return $fn$$($e$$);async.mapSeries($yts$$,($yt$$,$callback$jscomp$0$$)=>{async.series({gt:$callback$$=>
3
+ {setImmediate(()=>{let $cond$$={id_app:$condition$$.id_app,ma_yt:$yt$$.ma_yt,nam:$condition$$.nam,thang:$condition$$.thang};$condition$$.ma_bp&&($cond$$.ma_bp=$condition$$.ma_bp.toUpperCase());$condition$$.id_lenhsx&&mongoose.Types.ObjectId.isValid($condition$$.id_lenhsx)&&($cond$$.id_lenhsx=$condition$$.id_lenhsx);gt_thcppstk.find($cond$$).lean().exec(($e$jscomp$0$$,$pstk$$)=>{if($e$jscomp$0$$)return $callback$$($e$jscomp$0$$);$pstk$$.groupBy(["ma_bp","ma_yt","id_lenhsx"],["dd_dk","dd_dk_nt","ps_tk",
4
+ "ps_tk_nt"],($e$$,$rs$$)=>{if($e$$)return $callback$$($e$$);$rs$$.forEach($p$$=>{$p$$.co_do_dang=$yt$$.co_do_dang;$p$$.nam=$nam$$;$p$$.thang=$thang$$;$p$$.id_app=$condition$$.id_app;$p$$.yt_trung_gian=$yt$$.yt_trung_gian;$p$$.cong_tru=$yt$$.cong_tru});$callback$$(null,$rs$$)})})})}},function($e$$,$rs$$){if($e$$)return $callback$jscomp$0$$($e$$);$callback$jscomp$0$$(null,$rs$$.gt)})},($cond$jscomp$1_e$$,$cppstk$$)=>{if($cond$jscomp$1_e$$)return $fn$$($cond$jscomp$1_e$$);let $data_pstk$$=$cppstk$$.reduce(($a$$,
5
+ $b$$)=>$a$$.concat($b$$),[]);$cond$jscomp$1_e$$={id_app:$condition$$.id_app,nam:$condition$$.nam,thang:$condition$$.thang};$condition$$.ma_bp&&($cond$jscomp$1_e$$.ma_bp=$condition$$.ma_bp.toUpperCase());$condition$$.id_lenhsx&&mongoose.Types.ObjectId.isValid($condition$$.id_lenhsx)&&($cond$jscomp$1_e$$.id_lenhsx=$condition$$.id_lenhsx);gt_sltk.find($cond$jscomp$1_e$$).lean().exec(($e$jscomp$0$$,$sltk$$)=>{if($e$jscomp$0$$)return $fn$$($e$jscomp$0$$);$e$jscomp$0$$=$sltk$$.csum("sl_nk_tk")+$sltk$$.csum("sl_dd_ck");
6
6
  for(let $sp$$ of $sltk$$)$sp$$.he_so=0!==$e$jscomp$0$$?($sp$$.sl_nk_tk+$sp$$.sl_dd_ck)/$e$jscomp$0$$:0;$data_pstk$$.crossJoin($sltk$$,{ma_bp:"ma_bp"},$data_pstk$$=>{for(let $s$$ of $data_pstk$$){delete $s$$._id;$s$$.co_do_dang||($s$$.ty_le_ht_dk=0,$s$$.ty_le_ht_ck=0);$s$$.he_so||($s$$.he_so=0);$s$$.sl_dd_dk||($s$$.sl_dd_dk=0);$s$$.sl_nk_tk||($s$$.sl_nk_tk=0);$s$$.sl_sx_tk||($s$$.sl_sx_tk=0);$s$$.sl_dd_ck||($s$$.sl_dd_ck=0);$s$$.ty_le_ht_ck||($s$$.ty_le_ht_ck=0);$s$$.ty_le_ht_dk||($s$$.ty_le_ht_dk=
7
7
  0);if(!$s$$.dd_dk||isNaN($s$$.dd_dk))$s$$.dd_dk=0;if(!$s$$.dd_dk_nt||isNaN($s$$.dd_dk_nt))$s$$.dd_dk_nt=0;if(!$s$$.ps_tk||isNaN($s$$.ps_tk))$s$$.ps_tk=0;if(!$s$$.ps_tk_nt||isNaN($s$$.ps_tk_nt))$s$$.ps_tk_nt=0;$s$$.dd_dk*=$s$$.he_so;$s$$.dd_dk_nt*=$s$$.he_so;$s$$.ps_tk*=$s$$.he_so;$s$$.ps_tk_nt*=$s$$.he_so;$s$$.sl_dd_dk_qd=$s$$.sl_dd_dk*$s$$.ty_le_ht_dk/100;$s$$.sl_dd_ck_qd=$s$$.sl_dd_ck*$s$$.ty_le_ht_ck/100;$s$$.sl_sx_tk=$s$$.sl_dd_ck+$s$$.sl_nk_tk-$s$$.sl_dd_dk;$s$$.sl_sp_ht_qd=$s$$.sl_dd_ck_qd+
8
8
  $s$$.sl_nk_tk;$s$$.t_cp_sx=$s$$.dd_dk+$s$$.ps_tk;$s$$.t_cp_sx_nt=$s$$.dd_dk_nt+$s$$.ps_tk_nt;$s$$.gt=0===$s$$.sl_nk_tk?0:$s$$.t_cp_sx/$s$$.sl_sp_ht_qd;$s$$.gt_nt=0===$s$$.sl_nk_tk?0:$s$$.t_cp_sx_nt/$s$$.sl_sp_ht_qd;$s$$.t_gt=$s$$.gt*$s$$.sl_nk_tk;$s$$.t_gt_nt=$s$$.gt_nt*$s$$.sl_nk_tk;$s$$.dd_ck=$s$$.t_cp_sx-$s$$.t_gt;$s$$.dd_ck_nt=$s$$.t_cp_sx_nt-$s$$.t_gt_nt}gt_ctgt.create($data_pstk$$.filter($d$$=>$d$$.ma_sp),($e$$,$rs$$)=>{$e$$&&console.error($e$$.message);$fn$$($e$$,$rs$$)})})})})})};
@@ -1,6 +1,6 @@
1
- 'use strict';var dmyt=global.getModel("dmyt"),gt_thcppstk=global.getModel("gt_thcppstk"),gt_ctgt=global.getModel("gt_ctgt"),gt_sltk=global.getModel("gt_sltk");const async=require("async"),underscore=require("underscore");
1
+ 'use strict';const dmyt=global.getModel("dmyt"),gt_thcppstk=global.getModel("gt_thcppstk"),gt_ctgt=global.getModel("gt_ctgt"),gt_sltk=global.getModel("gt_sltk"),async=require("async"),underscore=require("underscore");
2
2
  module.exports=function($condition$$,$fn$$){if(!($condition$$&&$condition$$.thang&&$condition$$.nam&&$condition$$.id_app))return $fn$$("L\u1ed7i: T\u00ednh n\u0103ng n\u00e0y y\u00eau c\u1ea7u c\u00e1c tham s\u1ed1: thang,nam,id_app,ma_yt");(new Promise(($resole$$,$reject$$)=>{setImmediate(()=>{let $cond$$={id_app:$condition$$.id_app,nam:$condition$$.nam,thang:$condition$$.thang};$condition$$.ma_bp&&($cond$$.ma_bp=$condition$$.ma_bp.toUpperCase());$condition$$.id_lenhsx&&mongoose.Types.ObjectId.isValid($condition$$.id_lenhsx)&&
3
- ($cond$$.id_lenhsx=$condition$$.id_lenhsx);gt_ctgt.find($cond$$).lean().exec(($e$$,$ctgt$$)=>{if($e$$)return $reject$$($e$$);$resole$$($ctgt$$)})})})).then($ctgt$$=>new Promise(($resolve$$,$reject$$)=>{setImmediate(()=>{let $dsyt_datinh$$=underscore.pluck($ctgt$$,"ma_yt");dmyt.find({id_app:$condition$$.id_app,pt_phan_bo:"2",th_sp:!1,ma_yt:{$nin:$dsyt_datinh$$},yt_tinh_hs_pb:{$in:$dsyt_datinh$$}}).lean().exec(($e$$,$yts$$)=>{if($e$$)return $reject$$($e$$);$resolve$$({yts:$yts$$,ctgt_tinhheso:$ctgt$$})})})})).then($data$$=>
3
+ ($cond$$.id_lenhsx=$condition$$.id_lenhsx);gt_ctgt.find($cond$$).lean().exec(($e$$,$ctgt$$)=>{if($e$$)return $reject$$($e$$);$resole$$($ctgt$$)})})})).then($ctgt$$=>new Promise(($resolve$$,$reject$$)=>{setImmediate(()=>{let $dsyt_datinh$$=underscore.pluck($ctgt$$,"ma_yt");dmyt.find({id_app:$condition$$.id_app,status:!0,pt_phan_bo:"2",th_sp:!1,ma_yt:{$nin:$dsyt_datinh$$},yt_tinh_hs_pb:{$in:$dsyt_datinh$$}}).lean().exec(($e$$,$yts$$)=>{if($e$$)return $reject$$($e$$);$resolve$$({yts:$yts$$,ctgt_tinhheso:$ctgt$$})})})})).then($data$$=>
4
4
  new Promise(($resolve$$,$reject$$)=>{setImmediate(()=>{var $cond$jscomp$1_yts$$=underscore.pluck($data$$.yts,"ma_yt");$cond$jscomp$1_yts$$={id_app:$condition$$.id_app,nam:$condition$$.nam,thang:$condition$$.thang,ma_yt:{$in:$cond$jscomp$1_yts$$}};$condition$$.ma_bp&&($cond$jscomp$1_yts$$.ma_bp=$condition$$.ma_bp.toUpperCase());$condition$$.id_lenhsx&&mongoose.Types.ObjectId.isValid($condition$$.id_lenhsx)&&($cond$jscomp$1_yts$$.id_lenhsx=$condition$$.id_lenhsx);gt_thcppstk.find($cond$jscomp$1_yts$$).lean().exec(($e$jscomp$0$$,
5
5
  $cppstk$$)=>{if($e$jscomp$0$$)return $reject$$($e$jscomp$0$$);$cppstk$$.groupBy(["ma_bp","ma_yt","id_lenhsx"],["dd_dk","dd_dk_nt","ps_tk","ps_tk_nt"],($e$$,$rs$$)=>{if($e$$)return $reject$$($e$$);$data$$.cppstk=$rs$$;$resolve$$($data$$)})})})})).then($data$$=>new Promise(($resolve$$,$reject$$)=>{setImmediate(()=>{let $cond$$={id_app:$condition$$.id_app,nam:$condition$$.nam,thang:$condition$$.thang};$condition$$.ma_bp&&($cond$$.ma_bp=$condition$$.ma_bp.toUpperCase());$condition$$.id_lenhsx&&mongoose.Types.ObjectId.isValid($condition$$.id_lenhsx)&&
6
6
  ($cond$$.id_lenhsx=$condition$$.id_lenhsx);gt_sltk.find($cond$$).lean().exec(($e$$,$sltk$$)=>{if($e$$)return $reject$$($e$$);$data$$.sltk=$sltk$$;$resolve$$($data$$)})})})).then($data$$=>{async.mapSeries($data$$.yts,($yt$$,$callback$$)=>{setImmediate(()=>{var $cppstk$$=underscore.filter($data$$.ctgt_tinhheso,$c$$=>$c$$.ma_yt==$yt$$.yt_tinh_hs_pb);let $t_gt$$=$cppstk$$.csum("t_gt"),$gts$$=[];$cppstk$$.forEach($yths$$=>{let $gt$$={ma_sp:$yths$$.ma_sp,ma_bp:$yths$$.ma_bp,id_lenhsx:$yths$$.id_lenhsx,
@@ -1,5 +1,5 @@
1
1
  'use strict';const sokho=global.getModel("sokho"),socai=global.getModel("socai"),dmyt=global.getModel("dmyt"),gt_thcppstk=global.getModel("gt_thcppstk"),ytdd_dk=global.getModel("ytdd_dk"),ytdd_ck=global.getModel("ytdd_ck"),async=require("async"),underscore=require("underscore"),moment=require("moment");
2
- module.exports=function($condition$$,$fn$$){if(!($condition$$&&$condition$$.thang&&$condition$$.nam&&$condition$$.id_app))return $fn$$("L\u1ed7i: T\u00ednh n\u0103ng n\u00e0y y\u00eau c\u1ea7u c\u00e1c tham s\u1ed1: thang,nam,id_app");let $thang$$=Number($condition$$.thang),$nam$$=Number($condition$$.nam),$tu_ngay$$=moment(new Date($nam$$,$thang$$-1,1)).startOf("date").toDate(),$den_ngay$$=moment(new Date($nam$$,$thang$$,0)).endOf("date").toDate();dmyt.find({id_app:$condition$$.id_app}).lean().exec(($e$$,
2
+ module.exports=function($condition$$,$fn$$){if(!($condition$$&&$condition$$.thang&&$condition$$.nam&&$condition$$.id_app))return $fn$$("L\u1ed7i: T\u00ednh n\u0103ng n\u00e0y y\u00eau c\u1ea7u c\u00e1c tham s\u1ed1: thang,nam,id_app");let $thang$$=Number($condition$$.thang),$nam$$=Number($condition$$.nam),$tu_ngay$$=moment(new Date($nam$$,$thang$$-1,1)).startOf("date").toDate(),$den_ngay$$=moment(new Date($nam$$,$thang$$,0)).endOf("date").toDate();dmyt.find({id_app:$condition$$.id_app,status:!0}).lean().exec(($e$$,
3
3
  $yts$$)=>{if($e$$)return $fn$$($e$$);let $data$$=[];async.mapSeries($yts$$,($yt$$,$callback$jscomp$0$$)=>{async.series({dk:$callback$$=>{(new Promise(($resolve$$,$reject$$)=>{setImmediate(()=>{let $cond$$={id_app:$condition$$.id_app,nam:$condition$$.nam,thang:$condition$$.thang,ma_yt:$yt$$.ma_yt};$condition$$.ma_bp&&($cond$$.ma_bp=$condition$$.ma_bp.toUpperCase());$condition$$.id_lenhsx&&mongoose.Types.ObjectId.isValid($condition$$.id_lenhsx)&&($cond$$.id_lenhsx=$condition$$.id_lenhsx);ytdd_dk.find($cond$$).lean().exec(($e$$,
4
4
  $rs$$)=>{if($e$$)return $reject$$($e$$);for(let $dd$$ of $rs$$)$dd$$.dd_dk_nt=$dd$$.tien_nt,$dd$$.dd_dk=$dd$$.tien,$data$$.push($dd$$);$resolve$$($rs$$)})})})).then($dddk$$=>{setImmediate(()=>{let $cond$$={id_app:$condition$$.id_app,nam:$condition$$.nam,thang:$condition$$.thang-1,ma_yt:$yt$$.ma_yt};$condition$$.ma_bp&&($cond$$.ma_bp=$condition$$.ma_bp.toUpperCase());$condition$$.id_lenhsx&&mongoose.Types.ObjectId.isValid($condition$$.id_lenhsx)&&($cond$$.id_lenhsx=$condition$$.id_lenhsx);0===$cond$$.thang&&
5
5
  ($cond$$.thang=12,--$cond$$.nam);ytdd_ck.find($cond$$).lean().exec(($e$$,$rs$$)=>{if($e$$)return $callback$$($e$$);for(let $ck$$ of $rs$$)underscore.find($dddk$$,$d$$=>$d$$.ma_yt==$ck$$.ma_yt&&$d$$.ma_sp==$ck$$.ma_sp&&$d$$.ma_bp==$ck$$.ma_bp&&$d$$.id_lenhsx==$ck$$.id_lenhsx)||($ck$$.dd_dk_nt=$ck$$.tien_nt,$ck$$.dd_dk=$ck$$.tien,$data$$.push($ck$$));$callback$$(null)})})}).catch($e$$=>{$callback$$($e$$)})},ps:$callback$$=>{setImmediate(()=>{let $cond$$={id_app:$condition$$.id_app,ngay_ct:{$gte:$tu_ngay$$,
@@ -1,7 +1,8 @@
1
- 'use strict';var dmyt=global.getModel("dmyt"),gt_thcppstk=global.getModel("gt_thcppstk"),gt_ctgt=global.getModel("gt_ctgt"),gt_sltk=global.getModel("gt_sltk");const async=require("async");
2
- module.exports=function($condition$$,$fn$$){if(!($condition$$&&$condition$$.thang&&$condition$$.nam&&$condition$$.id_app))return $fn$$("L\u1ed7i: T\u00ednh n\u0103ng n\u00e0y y\u00eau c\u1ea7u c\u00e1c tham s\u1ed1: thang,nam,id_app");let $thang$$=Number($condition$$.thang),$nam$$=Number($condition$$.nam);dmyt.find({id_app:$condition$$.id_app,th_sp:!0}).lean().exec(($e$$,$yts$$)=>{if($e$$)return $fn$$($e$$);async.mapSeries($yts$$,($yt$$,$callback$jscomp$0$$)=>{async.series({gt:$callback$$=>{setImmediate(()=>
3
- {let $cond$$={id_app:$condition$$.id_app,ma_yt:$yt$$.ma_yt,nam:$condition$$.nam,thang:$condition$$.thang};$condition$$.ma_bp&&($cond$$.ma_bp=$condition$$.ma_bp.toUpperCase());$condition$$.id_lenhsx&&mongoose.Types.ObjectId.isValid($condition$$.id_lenhsx)&&($cond$$.id_lenhsx=$condition$$.id_lenhsx);gt_thcppstk.find($cond$$).lean().exec(($e$jscomp$0$$,$pstk$$)=>{if($e$jscomp$0$$)return $callback$$($e$jscomp$0$$);$pstk$$=$pstk$$.filter($p$$=>$p$$.ma_sp);$pstk$$.groupBy(["ma_sp","ma_bp","ma_yt","id_lenhsx"],
4
- ["dd_dk","dd_dk_nt","ps_tk","ps_tk_nt"],($e$$,$rs$$)=>{if($e$$)return $callback$$($e$$);$rs$$.forEach($p$$=>{$p$$.co_do_dang=$yt$$.co_do_dang;$p$$.nam=$nam$$;$p$$.thang=$thang$$;$p$$.id_app=$condition$$.id_app;$p$$.yt_trung_gian=$yt$$.yt_trung_gian;$p$$.cong_tru=$yt$$.cong_tru});$callback$$(null,$rs$$)})})})}},function($e$$,$rs$$){$callback$jscomp$0$$($e$$,$rs$$.gt)})},($e$jscomp$1$$,$ps$$)=>{if($e$jscomp$1$$)return $fn$$($e$jscomp$1$$);setImmediate(()=>{let $data_pstk$$=$ps$$.reduce(($a$$,$b$$)=>
5
- $a$$.concat($b$$),[]),$cond$$={id_app:$condition$$.id_app,nam:$condition$$.nam,thang:$condition$$.thang};$condition$$.ma_bp&&($cond$$.ma_bp=$condition$$.ma_bp.toUpperCase());$condition$$.id_lenhsx&&mongoose.Types.ObjectId.isValid($condition$$.id_lenhsx)&&($cond$$.id_lenhsx=$condition$$.id_lenhsx);gt_sltk.find($cond$$).lean().exec(($e$jscomp$0$$,$sltk$$)=>{if($e$jscomp$0$$)return $fn$$($e$jscomp$0$$);$data_pstk$$.joinModel2($sltk$$,[{where:{ma_sp:"ma_sp",ma_bp:"ma_bp",id_lenhsx:"id_lenhsx"},fields:"sl_dd_dk sl_nk_tk sl_sx_tk sl_dd_ck ty_le_ht_dk ty_le_ht_ck".split(" ")}],
6
- ()=>{for(let $s$$ of $data_pstk$$)$s$$.co_do_dang||($s$$.sl_dd_ck=0,$s$$.sl_dd_dk=0,$s$$.ty_le_ht_dk=0,$s$$.ty_le_ht_ck=0),$s$$.sl_dd_dk||($s$$.sl_dd_dk=0),$s$$.sl_nk_tk||($s$$.sl_nk_tk=0),$s$$.sl_sx_tk||($s$$.sl_sx_tk=0),$s$$.sl_dd_ck||($s$$.sl_dd_ck=0),$s$$.ty_le_ht_ck||($s$$.ty_le_ht_ck=0),$s$$.ty_le_ht_dk||($s$$.ty_le_ht_dk=0),$s$$.sl_dd_dk_qd=$s$$.sl_dd_dk*$s$$.ty_le_ht_dk/100,$s$$.sl_dd_ck_qd=$s$$.sl_dd_ck*$s$$.ty_le_ht_ck/100,$s$$.sl_sx_tk=$s$$.sl_dd_ck+$s$$.sl_nk_tk-$s$$.sl_dd_dk,$s$$.sl_sp_ht_qd=
7
- $s$$.sl_dd_ck_qd+$s$$.sl_nk_tk,$s$$.t_cp_sx=$s$$.dd_dk+$s$$.ps_tk,$s$$.t_cp_sx_nt=$s$$.dd_dk_nt+$s$$.ps_tk_nt,$s$$.gt=0===$s$$.sl_nk_tk?0:$s$$.t_cp_sx/$s$$.sl_sp_ht_qd,$s$$.gt_nt=0===$s$$.sl_nk_tk?0:$s$$.t_cp_sx_nt/$s$$.sl_sp_ht_qd,$s$$.t_gt=$s$$.gt*$s$$.sl_nk_tk,$s$$.t_gt_nt=$s$$.gt_nt*$s$$.sl_nk_tk,$s$$.dd_ck=$s$$.t_cp_sx-$s$$.t_gt,$s$$.dd_ck_nt=$s$$.t_cp_sx_nt-$s$$.t_gt_nt;gt_ctgt.create($data_pstk$$,($e$$,$rs$$)=>{$e$$&&(console.error($e$$),console.error($data_pstk$$));$fn$$($e$$,$rs$$)})})})})})})};
1
+ 'use strict';const dmyt=global.getModel("dmyt"),gt_thcppstk=global.getModel("gt_thcppstk"),gt_ctgt=global.getModel("gt_ctgt"),gt_sltk=global.getModel("gt_sltk"),async=require("async");
2
+ module.exports=function($condition$$,$fn$$){if(!($condition$$&&$condition$$.thang&&$condition$$.nam&&$condition$$.id_app))return $fn$$("L\u1ed7i: T\u00ednh n\u0103ng n\u00e0y y\u00eau c\u1ea7u c\u00e1c tham s\u1ed1: thang,nam,id_app");let $thang$$=Number($condition$$.thang),$nam$$=Number($condition$$.nam);dmyt.find({id_app:$condition$$.id_app,th_sp:!0,status:!0}).lean().exec(($e$$,$yts$$)=>{if($e$$)return $fn$$($e$$);async.mapSeries($yts$$,($yt$$,$callback$jscomp$0$$)=>{async.series({gt:$callback$$=>
3
+ {setImmediate(()=>{let $cond$$={id_app:$condition$$.id_app,ma_yt:$yt$$.ma_yt,nam:$condition$$.nam,thang:$condition$$.thang};$condition$$.ma_bp&&($cond$$.ma_bp=$condition$$.ma_bp.toUpperCase());$condition$$.id_lenhsx&&mongoose.Types.ObjectId.isValid($condition$$.id_lenhsx)&&($cond$$.id_lenhsx=$condition$$.id_lenhsx);gt_thcppstk.find($cond$$).lean().exec(($e$jscomp$0$$,$pstk$$)=>{if($e$jscomp$0$$)return $callback$$($e$jscomp$0$$);$pstk$$=$pstk$$.filter($p$$=>$p$$.ma_sp);$pstk$$.groupBy(["ma_sp","ma_bp",
4
+ "ma_yt","id_lenhsx"],["dd_dk","dd_dk_nt","ps_tk","ps_tk_nt"],($e$$,$rs$$)=>{if($e$$)return $callback$$($e$$);$rs$$.forEach($p$$=>{$p$$.co_do_dang=$yt$$.co_do_dang;$p$$.nam=$nam$$;$p$$.thang=$thang$$;$p$$.id_app=$condition$$.id_app;$p$$.yt_trung_gian=$yt$$.yt_trung_gian;$p$$.cong_tru=$yt$$.cong_tru});$callback$$(null,$rs$$)})})})}},function($e$$,$rs$$){$callback$jscomp$0$$($e$$,$rs$$.gt)})},($e$jscomp$1$$,$ps$$)=>{if($e$jscomp$1$$)return $fn$$($e$jscomp$1$$);setImmediate(()=>{let $data_pstk$$=$ps$$.reduce(($a$$,
5
+ $b$$)=>$a$$.concat($b$$),[]),$cond$$={id_app:$condition$$.id_app,nam:$condition$$.nam,thang:$condition$$.thang};$condition$$.ma_bp&&($cond$$.ma_bp=$condition$$.ma_bp.toUpperCase());$condition$$.id_lenhsx&&mongoose.Types.ObjectId.isValid($condition$$.id_lenhsx)&&($cond$$.id_lenhsx=$condition$$.id_lenhsx);gt_sltk.find($cond$$).lean().exec(($e$jscomp$0$$,$sltk$$)=>{if($e$jscomp$0$$)return $fn$$($e$jscomp$0$$);$data_pstk$$.joinModel2($sltk$$,[{where:{ma_sp:"ma_sp",ma_bp:"ma_bp",id_lenhsx:"id_lenhsx"},
6
+ fields:"sl_dd_dk sl_nk_tk sl_sx_tk sl_dd_ck ty_le_ht_dk ty_le_ht_ck".split(" ")}],()=>{for(let $s$$ of $data_pstk$$)$s$$.co_do_dang||($s$$.sl_dd_ck=0,$s$$.sl_dd_dk=0,$s$$.ty_le_ht_dk=0,$s$$.ty_le_ht_ck=0),$s$$.sl_dd_dk||($s$$.sl_dd_dk=0),$s$$.sl_nk_tk||($s$$.sl_nk_tk=0),$s$$.sl_sx_tk||($s$$.sl_sx_tk=0),$s$$.sl_dd_ck||($s$$.sl_dd_ck=0),$s$$.ty_le_ht_ck||($s$$.ty_le_ht_ck=0),$s$$.ty_le_ht_dk||($s$$.ty_le_ht_dk=0),$s$$.sl_dd_dk_qd=$s$$.sl_dd_dk*$s$$.ty_le_ht_dk/100,$s$$.sl_dd_ck_qd=$s$$.sl_dd_ck*$s$$.ty_le_ht_ck/
7
+ 100,$s$$.sl_sx_tk=$s$$.sl_dd_ck+$s$$.sl_nk_tk-$s$$.sl_dd_dk,$s$$.sl_sp_ht_qd=$s$$.sl_dd_ck_qd+$s$$.sl_nk_tk,$s$$.t_cp_sx=$s$$.dd_dk+$s$$.ps_tk,$s$$.t_cp_sx_nt=$s$$.dd_dk_nt+$s$$.ps_tk_nt,$s$$.gt=0===$s$$.sl_nk_tk?0:$s$$.t_cp_sx/$s$$.sl_sp_ht_qd,$s$$.gt_nt=0===$s$$.sl_nk_tk?0:$s$$.t_cp_sx_nt/$s$$.sl_sp_ht_qd,$s$$.t_gt=$s$$.gt*$s$$.sl_nk_tk,$s$$.t_gt_nt=$s$$.gt_nt*$s$$.sl_nk_tk,$s$$.dd_ck=$s$$.t_cp_sx-$s$$.t_gt,$s$$.dd_ck_nt=$s$$.t_cp_sx_nt-$s$$.t_gt_nt;gt_ctgt.create($data_pstk$$,($e$$,$rs$$)=>{$e$$&&
8
+ (console.error($e$$),console.error($data_pstk$$));$fn$$($e$$,$rs$$)})})})})})})};
@@ -26,7 +26,7 @@ $d$$.gia_von,$f_tien$$),$d$$.tien_nhap=$d$$.tien_nhap_nt)})()));$voucher_n$$.det
26
26
  $qd$$=await dmqddvt.findOne({id_app:$vouchers_n$$.id_app,ma_vt:$d$$.ma_vt,ma_dvt:$d$$.ma_dvt}).lean();$qd$$&&($he_so_qd$$=$qd$$.mau?$qd$$.tu/$qd$$.mau:$qd$$.ty_le_qd);$d$$.gia_von_nt=$gia$jscomp$8_gia_chuan$$*$he_so_qd$$;$d$$.gia_von=$d$$.gia_von_nt;$d$$.tien_xuat_nt=Math.roundBy($d$$.sl_xuat*$d$$.gia_von,$f_tien$$);$d$$.tien_xuat=$d$$.tien_xuat_nt})())));await $voucher_n$$.save();let $voucher_n_data$$=$voucher_n$$.toObject(),$ctrl$$=global.controllers[$voucher_n_data$$.ma_ct.toUpperCase()];$ctrl$$&&
27
27
  $ctrl$$.post&&await (async()=>new Promise(($resolve$$,$reject$$)=>{Controller.postData($voucher_n_data$$,$ctrl$$,function($e$$,$rs$$){if($e$$)return console.error("error repost khi tinh gia trung binh",$e$$,$voucher_n_data$$),$reject$$($e$$);$resolve$$($rs$$)})}))()})().then($rs$$=>{$callback$$(null,$rs$$)}).catch($e$$=>{$callback$$($e$$)})})},function($error$$){$callback$jscomp$0$$($error$$)})}],function($e$jscomp$1$$){if($e$jscomp$1$$)return $fn$$($e$jscomp$1$$);$e$jscomp$1$$={id_app:$condition$$.id_app,
28
28
  ngay:$den_ngay$$,chenh_lech:1};$condition$$.ma_vt&&($e$jscomp$1$$.ma_vt=$condition$$.ma_vt);$condition$$.ma_kho&&($e$jscomp$1$$.ma_kho=$condition$$.ma_kho);ckvt($e$jscomp$1$$,($e$jscomp$0$$,$rs$jscomp$0$$)=>{if($e$jscomp$0$$)return $fn$$($e$jscomp$0$$);$rs$jscomp$0$$=underscore.filter($rs$jscomp$0$$,$r$$=>0!==$r$$.du00&&(0==$r$$.ton00||.001>Math.abs($r$$.ton00)));$vouchers_x$$=underscore.sortBy(underscore.values($vouchers_x$$),$v$$=>-(new Date($v$$.ngay_ct)).getTime());$vouchers_n$$=underscore.sortBy(underscore.values($vouchers_n$$),
29
- $v$$=>-(new Date($v$$.ngay_ct)).getTime());let $chung_tu_cap_nhat_chenh_lech$$={};async.mapSeries($rs$jscomp$0$$,($vt$$,$callback$$)=>{setImmediate(()=>{let $d_voucher$$=null;($d_voucher$$=underscore.find($vouchers_x$$,$x$$=>underscore.find($x$$.details,$vc$$=>{if($vc$$.ma_vt!=$vt$$.ma_vt||$vc$$.px_gia_dd||$ma_kho$$&&$ma_kho$$!==$vc$$.ma_kho&&$ma_kho$$!==$x$$.ma_kho)return!1;$vc$$.tien_xuat_nt+=$vt$$.du00;$vc$$.tien_xuat=Math.roundBy($vc$$.tien_xuat_nt,$f_tien$$);return!0})))||($d_voucher$$=underscore.find($vouchers_n$$,
30
- $n$$=>underscore.find($n$$.details,$vc$$=>{if($vc$$.ma_vt!=$vt$$.ma_vt||$vc$$.pn_gia_tb||$ma_kho$$&&$ma_kho$$!==$vc$$.ma_kho&&$ma_kho$$!==$n$$.ma_kho)return!1;$vc$$.tien_nhap_nt-=$vt$$.du00;$vc$$.tien_nhap=Math.roundBy($vc$$.tien_nhap_nt,$f_tien$$);return!0})));$d_voucher$$&&($chung_tu_cap_nhat_chenh_lech$$[$d_voucher$$._id.toString()]=$d_voucher$$);$callback$$(null,$d_voucher$$)})},$_vouchers_chenh_lech_e$$=>{if($_vouchers_chenh_lech_e$$)return $fn$$($_vouchers_chenh_lech_e$$);$_vouchers_chenh_lech_e$$=
31
- underscore.values($chung_tu_cap_nhat_chenh_lech$$);async.mapSeries($_vouchers_chenh_lech_e$$,($voucher$$,$callback$$)=>{setImmediate(()=>{$voucher$$.save($ctrl$jscomp$2_error$$=>{if($ctrl$jscomp$2_error$$)return $callback$$($ctrl$jscomp$2_error$$);let $voucher_data$$=$voucher$$.toObject();($ctrl$jscomp$2_error$$=global.controllers[$voucher_data$$.ma_ct.toUpperCase()])&&$ctrl$jscomp$2_error$$.post?Controller.postData($voucher_data$$,$ctrl$jscomp$2_error$$,($e$$,$rs$$)=>{$e$$&&console.error("error repost khi tinh gia trung binh",
32
- $e$$,$voucher_data$$);$callback$$($e$$,$rs$$)}):$callback$$(null)})})},$e$$=>{if($e$$)return $fn$$($e$$);$bang_gia$$.joinModel2($id_app$$,dmvt,[{where:"ma_vt",fields:"ten_vt"}],()=>{$fn$$(null,$bang_gia$$)})})})})})})})})})}else $fn$$("L\u1ed7i: T\u00ednh n\u0103ng n\u00e0y y\u00eau c\u1ea7u c\u00e1c tham s\u1ed1: tu_thang,den_thang,nam,id_app")};
29
+ $v$$=>-(new Date($v$$.ngay_ct)).getTime());let $chung_tu_cap_nhat_chenh_lech$$={};async.mapSeries($rs$jscomp$0$$,($vt$$,$callback$$)=>{setImmediate(()=>{let $d_voucher$$=null;($d_voucher$$=underscore.find($vouchers_x$$,$x$$=>underscore.find($x$$.details,$vc$$=>{if($vc$$.ma_vt!=$vt$$.ma_vt||$vc$$.px_gia_dd||$ma_kho$$&&$ma_kho$$!==$vc$$.ma_kho&&$ma_kho$$!==$x$$.ma_kho)return!1;$vc$$.tien_xuat_nt+=$vt$$.du00;$vc$$.tien_xuat=Math.roundBy($vc$$.tien_xuat_nt,$f_tien$$);$vc$$.sl_xuat&&($vc$$.gia_von_nt=
30
+ $vc$$.gia_von=Math.roundBy($vc$$.tien_xuat_nt/$vc$$.sl_xuat,0));return!0})))||($d_voucher$$=underscore.find($vouchers_n$$,$n$$=>underscore.find($n$$.details,$vc$$=>{if($vc$$.ma_vt!=$vt$$.ma_vt||$vc$$.pn_gia_tb||$ma_kho$$&&$ma_kho$$!==$vc$$.ma_kho&&$ma_kho$$!==$n$$.ma_kho)return!1;$vc$$.tien_nhap_nt-=$vt$$.du00;$vc$$.tien_nhap=Math.roundBy($vc$$.tien_nhap_nt,$f_tien$$);$vc$$.sl_nhap&&($vc$$.gia_von_nt=$vc$$.gia_von=Math.roundBy($vc$$.tien_nhap_nt/$vc$$.sl_nhap,0));return!0})));$d_voucher$$&&($chung_tu_cap_nhat_chenh_lech$$[$d_voucher$$._id.toString()]=
31
+ $d_voucher$$);$callback$$(null,$d_voucher$$)})},$_vouchers_chenh_lech_e$$=>{if($_vouchers_chenh_lech_e$$)return $fn$$($_vouchers_chenh_lech_e$$);$_vouchers_chenh_lech_e$$=underscore.values($chung_tu_cap_nhat_chenh_lech$$);async.mapSeries($_vouchers_chenh_lech_e$$,($voucher$$,$callback$$)=>{setImmediate(()=>{$voucher$$.save($ctrl$jscomp$2_error$$=>{if($ctrl$jscomp$2_error$$)return $callback$$($ctrl$jscomp$2_error$$);let $voucher_data$$=$voucher$$.toObject();($ctrl$jscomp$2_error$$=global.controllers[$voucher_data$$.ma_ct.toUpperCase()])&&
32
+ $ctrl$jscomp$2_error$$.post?Controller.postData($voucher_data$$,$ctrl$jscomp$2_error$$,($e$$,$rs$$)=>{$e$$&&console.error("error repost khi tinh gia trung binh",$e$$,$voucher_data$$);$callback$$($e$$,$rs$$)}):$callback$$(null)})})},$e$$=>{if($e$$)return $fn$$($e$$);$bang_gia$$.joinModel2($id_app$$,dmvt,[{where:"ma_vt",fields:"ten_vt"}],()=>{$fn$$(null,$bang_gia$$)})})})})})})})})})}else $fn$$("L\u1ed7i: T\u00ednh n\u0103ng n\u00e0y y\u00eau c\u1ea7u c\u00e1c tham s\u1ed1: tu_thang,den_thang,nam,id_app")};
@@ -1,5 +1,5 @@
1
1
  'use strict';const dkvt=require("./dkvt"),sokho=global.getModel("sokho"),async=require("async");
2
2
  module.exports=function($condition$$,$fn$$){if($condition$$&&$condition$$.ma_vt&&$condition$$.tu_ngay&&$condition$$.den_ngay&&$condition$$.id_app){var $ma_vt$$=$condition$$.ma_vt,$tu_ngay$$=$condition$$.tu_ngay,$den_ngay$$=$condition$$.den_ngay,$id_app$$=$condition$$.id_app;async.series({dn:function($callback$$){let $query$$={ngay:$tu_ngay$$,id_app:$id_app$$};$condition$$.ma_kho&&($query$$.ma_kho=$condition$$.ma_kho);$query$$.ma_vt=$condition$$.ma_vt;dkvt($query$$,function($error$$,$du_dau_result$$){if($error$$)return $callback$$($error$$);
3
- $error$$=$du_dau_result$$.csum("ton00");$du_dau_result$$=$du_dau_result$$.csum("du00");$callback$$(null,{ton_dau:$error$$,du_dau:$du_dau_result$$})})},ps:function($callback$$){let $query$$={id_app:$id_app$$,pn_gia_tb:!1,ngay_ct:{$gte:$tu_ngay$$,$lt:$den_ngay$$},ma_vt:$ma_vt$$,nxt:1};$condition$$.ma_kho&&($query$$.ma_kho=$condition$$.ma_kho);sokho.find($query$$).lean().exec(function($error$$,$pss_tien_nhap$$){$error$$?$callback$$($error$$):($pss_tien_nhap$$=$pss_tien_nhap$$.map($ps$$=>{$ps$$.sl_nhap=
4
- $ps$$.sl_nhap_qd;$ps$$.sl_xuat=$ps$$.sl_xuat_qd;return $ps$$}),$error$$=$pss_tien_nhap$$.csum("sl_nhap"),$pss_tien_nhap$$=$pss_tien_nhap$$.csum("tien_nhap"),$callback$$(null,{sl_nhap:$error$$,tien_nhap:$pss_tien_nhap$$}))})}},function($error$$,$results$$){if($error$$)$fn$$($error$$);else{$error$$=$results$$.ps.sl_nhap+$results$$.dn.ton_dau;var $tong_tien$$=$results$$.ps.tien_nhap+$results$$.dn.du_dau,$gia$$=$error$$?Math.roundBy($tong_tien$$/$error$$,0):0;return $fn$$(null,{ma_vt:$ma_vt$$,ton_dau:$results$$.dn.ton_dau,
5
- du_dau:$results$$.dn.du_dau,sl_nhap:$results$$.ps.sl_nhap,tien_nhap:$results$$.ps.tien_nhap,tong_sl:$error$$,tong_tien:$tong_tien$$,gia:$gia$$})}})}else $fn$$("L\u1ed7i: B\u00e1o c\u00e1o n\u00e0y y\u00eau c\u1ea7u c\u00e1c tham s\u1ed1: tu_ngay,den_ngay,id_app,ma_vt")};
3
+ $error$$=$du_dau_result$$.csum("ton00");$du_dau_result$$=$du_dau_result$$.csum("du00");$callback$$(null,{ton_dau:$error$$,du_dau:$du_dau_result$$})})},ps:function($callback$$){let $query$$={id_app:$id_app$$,pn_gia_tb:!1,ngay_ct:{$gte:$tu_ngay$$,$lt:$den_ngay$$},ma_vt:$ma_vt$$,$or:[{nxt:1},{nxt:2,px_gia_dd:!0}]};$condition$$.ma_kho&&($query$$.ma_kho=$condition$$.ma_kho);sokho.find($query$$).lean().exec(function($error$$,$pss_tien_nhap$$){$error$$?$callback$$($error$$):($pss_tien_nhap$$=$pss_tien_nhap$$.map($ps$$=>
4
+ {$ps$$.sl_nhap=($ps$$.sl_nhap_qd||0)-($ps$$.sl_xuat_qd||0);return $ps$$}),$error$$=$pss_tien_nhap$$.csum("sl_nhap"),$pss_tien_nhap$$=$pss_tien_nhap$$.csum("tien_nhap")-$pss_tien_nhap$$.csum("tien_xuat"),$callback$$(null,{sl_nhap:$error$$,tien_nhap:$pss_tien_nhap$$}))})}},function($error$$,$results$$){if($error$$)$fn$$($error$$);else{$error$$=$results$$.ps.sl_nhap+$results$$.dn.ton_dau;var $tong_tien$$=$results$$.ps.tien_nhap+$results$$.dn.du_dau,$gia$$=$error$$?Math.roundBy($tong_tien$$/$error$$,
5
+ 0):0;return $fn$$(null,{ma_vt:$ma_vt$$,ton_dau:$results$$.dn.ton_dau,du_dau:$results$$.dn.du_dau,sl_nhap:$results$$.ps.sl_nhap,tien_nhap:$results$$.ps.tien_nhap,tong_sl:$error$$,tong_tien:$tong_tien$$,gia:$gia$$})}})}else $fn$$("L\u1ed7i: B\u00e1o c\u00e1o n\u00e0y y\u00eau c\u1ea7u c\u00e1c tham s\u1ed1: tu_ngay,den_ngay,id_app,ma_vt")};
@@ -0,0 +1,32 @@
1
+ 'use strict';const moment=require("moment"),_=require("lodash"),hoahonghdgt=async($obj$$,$hieu_luc_den_tu_ngay_user_created_user_gt$$,$customer_customer_gt_hieu_luc_tu$$)=>{if(!$obj$$.da_chuyen_hoa_hong_gt&&($obj$$.tien_hoa_hong_gt=0,$obj$$.ty_le_hoa_hong_gt=0,$obj$$.ma_kh_hoa_hong_gt="",$obj$$.details.forEach($detail$$=>{$detail$$.tien_hoa_hong_gt=0;$detail$$.ty_le_hoa_hong_gt=0}),$customer_customer_gt_hieu_luc_tu$$&&$hieu_luc_den_tu_ngay_user_created_user_gt$$&&$hieu_luc_den_tu_ngay_user_created_user_gt$$.group_id)){if($obj$$.introduce_code){$obj$$.user_gt=
2
+ "";var $intro$$=await global.getModel("introducer").findOne({id_app:$obj$$.id_app,introduce_code:$obj$$.introduce_code})}!$intro$$&&$obj$$.user_gt&&($intro$$=await global.getModel("introducer").findOne({id_app:$obj$$.id_app,be_introduced_by:$obj$$.user_gt}));if(!$intro$$){$obj$$.introduce_code="";$obj$$.user_gt="";let $intro_kh$$=await global.getModel("introducer").findOne({id_app:$obj$$.id_app,be_introduced:$customer_customer_gt_hieu_luc_tu$$.of_user||$obj$$.user_created});if($intro_kh$$){let $user_gt_kh$$=
3
+ await global.getModel("participant").findOne({id_app:$obj$$.id_app,email:$intro_kh$$.be_introduced_by}).populate("group_id").lean();$user_gt_kh$$&&($user_gt_kh$$.group_id=$user_gt_kh$$.group_id||{},$intro$$=$hieu_luc_den_tu_ngay_user_created_user_gt$$.email===$user_gt_kh$$.email&&($hieu_luc_den_tu_ngay_user_created_user_gt$$.group_id.is_agent_group||$hieu_luc_den_tu_ngay_user_created_user_gt$$.group_id.is_partner_group)?await global.getModel("introducer").findOne({id_app:$obj$$.id_app,be_introduced:$user_gt_kh$$.email}):
4
+ $intro_kh$$)}}if($intro$$&&($obj$$.introduce_code=$intro$$.introduce_code,$obj$$.user_gt=$intro$$.be_introduced_by,$hieu_luc_den_tu_ngay_user_created_user_gt$$=await global.getModel("participant").findOne({id_app:$obj$$.id_app,email:$obj$$.user_gt}).lean())){var $query$$={id_app:$obj$$.id_app,ma_kho:{$in:[void 0,null,"",$obj$$.ma_kho]},loai:"0",doi_tuong:"1",nh_kh:{$in:[void 0,null,"",$customer_customer_gt_hieu_luc_tu$$.nh_kh]},nh_kh2:{$in:[void 0,null,"",..._($customer_customer_gt_hieu_luc_tu$$.nh_kh2||
5
+ [])]},nh_kh3:{$in:[void 0,null,"",..._($customer_customer_gt_hieu_luc_tu$$.nh_kh3||[])]},nh_kh4:{$in:[void 0,null,"",..._($customer_customer_gt_hieu_luc_tu$$.nh_kh4||[])]},nh_kh5:{$in:[void 0,null,"",..._($customer_customer_gt_hieu_luc_tu$$.nh_kh5||[])]}};$query$$.user_group={$in:[($hieu_luc_den_tu_ngay_user_created_user_gt$$.group_id||"").toString(),null,void 0,""]};if($customer_customer_gt_hieu_luc_tu$$=await global.getModel("customer").findOne({id_app:$obj$$.id_app,of_user:$obj$$.user_gt}))$obj$$.ma_kh_hoa_hong_gt=
6
+ $customer_customer_gt_hieu_luc_tu$$.ma_kh;$hieu_luc_den_tu_ngay_user_created_user_gt$$=moment($obj$$.ngay_ct).startOf("date").toDate();$customer_customer_gt_hieu_luc_tu$$={$lte:moment($obj$$.ngay_ct).endOf("date").toDate()};$hieu_luc_den_tu_ngay_user_created_user_gt$$={$gte:$hieu_luc_den_tu_ngay_user_created_user_gt$$};$query$$.hieu_luc_tu=$customer_customer_gt_hieu_luc_tu$$;$query$$.hieu_luc_den=$hieu_luc_den_tu_ngay_user_created_user_gt$$;var $sort$$={do_uu_tien:1,gt_tu:-1,tien_hh:-1,ty_le_hh:-1,
7
+ ma_nv:-1,user_group:-1,nh_kh:-1,hieu_luc_tu:-1,kieu:1};await Promise.all($obj$$.details.map($detail$$=>{let $t_tt_nt$$=Math.roundBy($detail$$.tt_nt*$obj$$.ty_gia,0),$loi_nhuan$$=$t_tt_nt$$-$detail$$.tien_xuat_tmp;const $_query$$=_.cloneDeep($query$$);$_query$$.gt_tu={$lte:$t_tt_nt$$};$_query$$.$and=[{$or:[{gt_den:{$in:[0,void 0,null]}},{gt_den:{$gte:$t_tt_nt$$}}]},{$or:[{"vts.0":{$exists:!1}},{vts:$detail$$.ma_vt}]}];return(async()=>{var $ckhd_ckhds$$=await global.getModel("dmhoahonghd").find($_query$$).sort($sort$$).limit(1).lean();
8
+ if(0<$ckhd_ckhds$$.length){$ckhd_ckhds$$=$ckhd_ckhds$$[0];let $ty_le_hh$$,$tien_hh$$;$detail$$.gia_ban_niem_yet_nt&&$detail$$.gia_ban_niem_yet_nt>$detail$$.gia_ban_nt?($ty_le_hh$$=$ckhd_ckhds$$.ty_le_hh2||0,$tien_hh$$=$ckhd_ckhds$$.tien_hh2||0,"99"==$ckhd_ckhds$$.kieu&&($ckhd_ckhds$$.kieu="9")):($ty_le_hh$$=$ckhd_ckhds$$.ty_le_hh||0,$tien_hh$$=$ckhd_ckhds$$.tien_hh||0);$tien_hh$$?($detail$$.tien_hoa_hong_gt=$tien_hh$$,$detail$$.ty_le_hoa_hong_gt=0):($detail$$.ty_le_hoa_hong_gt=$ty_le_hh$$||0,$detail$$.tien_hoa_hong_gt=
9
+ "9"==$ckhd_ckhds$$.kieu?Math.roundBy($loi_nhuan$$*$ty_le_hh$$/100,0):Math.roundBy($t_tt_nt$$*$ty_le_hh$$/100,0));$detail$$.chuyen_ngay_gt="1"==$ckhd_ckhds$$.hinh_thuc_tt;$detail$$.tk_no_hoa_hong_gt=$ckhd_ckhds$$.tk_no;$detail$$.tk_co_hoa_hong_gt=$ckhd_ckhds$$.tk_co}})()}));$obj$$.tien_hoa_hong_gt=$obj$$.details.csum("tien_hoa_hong_gt");$obj$$.chuyen_ngay_gt=!!$obj$$.details.find($d$$=>$d$$.chuyen_ngay_gt)}}},hoahonghdctv=async($obj$$,$hieu_luc_tu$jscomp$1_user_created$$,$customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$)=>
10
+ {if(!$obj$$.da_chuyen_hoa_hong_ctv&&($obj$$.thu_nhap_ctv=0,$obj$$.ty_le_hoa_hong_ctv=0,$obj$$.ma_ctv="",$obj$$.details.forEach($detail$$=>{$detail$$.thu_nhap_ctv=0;$detail$$.ty_le_hoa_hong_ctv=0}),$customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$)){if($customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$.of_user){let $customer_user$$=await global.getModel("participant").findOne({id_app:$obj$$.id_app,email:$customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$.of_user}).populate("group_id").exec();if($customer_user$$&&
11
+ $customer_user$$.group_id&&$customer_user$$.group_id.is_agent_group)return}var $customer_ctv$$;if($obj$$.user_ctv){if($customer_ctv$$=await global.getModel("customer").findOne({id_app:$obj$$.id_app,of_user:$obj$$.user_ctv})){$obj$$.ma_ctv=$customer_ctv$$.ma_kh;var $user_ctv$$=await global.getModel("participant").findOne({id_app:$obj$$.id_app,email:$obj$$.user_ctv}).populate("group_id").exec()}}else!$user_ctv$$&&$hieu_luc_tu$jscomp$1_user_created$$.email!==$customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$.of_user&&
12
+ ($user_ctv$$=$hieu_luc_tu$jscomp$1_user_created$$,$obj$$.user_ctv=$user_ctv$$.email,$customer_ctv$$=await global.getModel("customer").findOne({id_app:$obj$$.id_app,of_user:$hieu_luc_tu$jscomp$1_user_created$$.email}))&&($obj$$.ma_ctv=$customer_ctv$$.ma_kh,$customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$.phu_trach||await global.getModel("customer").updateOne({_id:$customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$._id},{phu_trach:$obj$$.user_ctv})),!$user_ctv$$&&$hieu_luc_tu$jscomp$1_user_created$$.email==
13
+ $customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$.of_user&&$customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$.phu_trach&&($user_ctv$$=await global.getModel("participant").findOne({id_app:$obj$$.id_app,email:$customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$.phu_trach}).populate("group_id").exec(),$user_ctv$$.group_id=$user_ctv$$.group_id||{},$user_ctv$$&&$user_ctv$$.group_id.is_partner_group?($obj$$.user_ctv=$user_ctv$$.email,$customer_ctv$$=await global.getModel("customer").findOne({id_app:$obj$$.id_app,
14
+ of_user:$obj$$.user_ctv})):$user_ctv$$=null);if($customer_ctv$$&&$user_ctv$$&&$user_ctv$$.email!==$customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$.of_user&&($user_ctv$$.group_id.is_agent_group||$user_ctv$$.group_id.is_partner_group)){var $query$$={id_app:$obj$$.id_app,ma_kho:{$in:[void 0,null,"",$obj$$.ma_kho]},loai:"9",doi_tuong:"2",nh_kh:{$in:[void 0,null,"",$customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$.nh_kh]},nh_kh2:{$in:[void 0,null,"",..._($customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$.nh_kh2||
15
+ [])]},nh_kh3:{$in:[void 0,null,"",..._($customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$.nh_kh3||[])]},nh_kh4:{$in:[void 0,null,"",..._($customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$.nh_kh4||[])]},nh_kh5:{$in:[void 0,null,"",..._($customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$.nh_kh5||[])]}};$customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$=moment($obj$$.ngay_ct).startOf("date").toDate();$hieu_luc_tu$jscomp$1_user_created$$={$lte:moment($obj$$.ngay_ct).endOf("date").toDate()};$customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$=
16
+ {$gte:$customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$};$query$$.hieu_luc_tu=$hieu_luc_tu$jscomp$1_user_created$$;$query$$.hieu_luc_den=$customer$jscomp$1_hieu_luc_den$jscomp$1_tu_ngay$$;var $sort$$={do_uu_tien:1,gt_tu:-1,tien_hh:-1,ty_le_hh:-1,ma_nv:-1,user_group:-1,nh_kh:-1,hieu_luc_tu:-1,kieu:1};$query$$.user_group={$in:[($user_ctv$$.group_id._id.toString()||"").toString(),null,void 0,""]};await Promise.all($obj$$.details.map($detail$$=>{let $t_tt_nt$$=Math.roundBy($detail$$.tt_nt*$obj$$.ty_gia,
17
+ 0),$loi_nhuan$$=$t_tt_nt$$-$detail$$.tien_xuat_tmp;const $_query$$=_.cloneDeep($query$$);$_query$$.gt_tu={$lte:$t_tt_nt$$};$_query$$.$and=[{$or:[{gt_den:{$in:[0,void 0,null]}},{gt_den:{$gte:$t_tt_nt$$}}]},{$or:[{"vts.0":{$exists:!1}},{vts:$detail$$.ma_vt}]}];return(async()=>{var $ckhd$jscomp$1_ckhds$$=await global.getModel("dmhoahonghd").find($_query$$).sort($sort$$).limit(1).lean();if(0<$ckhd$jscomp$1_ckhds$$.length){$ckhd$jscomp$1_ckhds$$=$ckhd$jscomp$1_ckhds$$[0];if($detail$$.gia_ban_niem_yet_nt&&
18
+ $detail$$.gia_ban_niem_yet_nt>$detail$$.gia_ban_nt){var $tien_hoa_hong_ctv_ty_le_hh$$=$ckhd$jscomp$1_ckhds$$.ty_le_hh2||0;var $t_tt_niem_yet_nt_tien_hh$$=$ckhd$jscomp$1_ckhds$$.tien_hh2||0;"99"==$ckhd$jscomp$1_ckhds$$.kieu&&($ckhd$jscomp$1_ckhds$$.kieu="9")}else $tien_hoa_hong_ctv_ty_le_hh$$=$ckhd$jscomp$1_ckhds$$.ty_le_hh||0,$t_tt_niem_yet_nt_tien_hh$$=$ckhd$jscomp$1_ckhds$$.tien_hh||0;$t_tt_niem_yet_nt_tien_hh$$?($detail$$.tien_hoa_hong_ctv=$t_tt_niem_yet_nt_tien_hh$$,$detail$$.ty_le_hoa_hong_ctv=
19
+ 0):($detail$$.ty_le_hoa_hong_ctv=$tien_hoa_hong_ctv_ty_le_hh$$,"9"==$ckhd$jscomp$1_ckhds$$.kieu?$detail$$.tien_hoa_hong_ctv=Math.roundBy($loi_nhuan$$*$tien_hoa_hong_ctv_ty_le_hh$$/100,0):($t_tt_niem_yet_nt_tien_hh$$=$detail$$.sl_xuat*($detail$$.gia_ban_niem_yet_nt||$detail$$.gia_ban_nt)-($detail$$.tien_ck_nt||0),$t_tt_niem_yet_nt_tien_hh$$=Math.roundBy($t_tt_niem_yet_nt_tien_hh$$*($obj$$.ty_gia||1),0),$tien_hoa_hong_ctv_ty_le_hh$$=Math.roundBy($t_tt_niem_yet_nt_tien_hh$$*$tien_hoa_hong_ctv_ty_le_hh$$/
20
+ 100,0),$detail$$.tien_hoa_hong_ctv=$tien_hoa_hong_ctv_ty_le_hh$$-($t_tt_niem_yet_nt_tien_hh$$-$t_tt_nt$$)));$detail$$.chuyen_ngay_ctv="1"==$ckhd$jscomp$1_ckhds$$.hinh_thuc_tt;$detail$$.tk_cp_ctv=$ckhd$jscomp$1_ckhds$$.tk_no;$detail$$.tk_cn_ctv=$ckhd$jscomp$1_ckhds$$.tk_co}})()}));$obj$$.thu_nhap_ctv=$obj$$.details.csum("tien_hoa_hong_ctv");$obj$$.chuyen_ngay_ctv=!!$obj$$.details.find($d$$=>$d$$.chuyen_ngay_ctv)}else $obj$$.ma_ctv="",$obj$$.user_ctv=""}},hoahonghdnv=async($obj$$,$g_nv_user_created$$,
21
+ $customer$$)=>{if($obj$$.tu_tinh_hoa_hong&&!$obj$$.da_chuyen_hoa_hong){$obj$$.tien_hoa_hong=0;$obj$$.ty_le_hoa_hong=0;$obj$$.ma_kh_hoa_hong="";$obj$$.user_nv="";$obj$$.details.forEach($detail$$=>{$detail$$.tien_hoa_hong=0;$detail$$.ty_le_hoa_hong=0});var $customer_user$$={id_app:$obj$$.id_app,status:!0};$obj$$.ma_nv?$customer_user$$.ma_nv=$obj$$.ma_nv:$customer_user$$.user=$g_nv_user_created$$.email;if($g_nv_user_created$$=await global.getModel("dmnv").findOne($customer_user$$).lean())if($obj$$.ma_nv=
22
+ $g_nv_user_created$$.ma_nv,$obj$$.ma_bp=$g_nv_user_created$$.ma_bp,$obj$$.ten_nv=$g_nv_user_created$$.ten_nv,!$obj$$.user_ctv&&$g_nv_user_created$$.user){if($customer$$&&$customer$$.of_user&&($customer_user$$=await global.getModel("participant").findOne({id_app:$obj$$.id_app,email:$customer$$.of_user}).populate("group_id").exec())&&$customer_user$$.group_id&&$customer_user$$.group_id.is_agent_group)return;if($customer_user$$=$g_nv_user_created$$.ma_kh?await global.getModel("customer").findOne({id_app:$obj$$.id_app,
23
+ status:!0,ma_kh:$g_nv_user_created$$.ma_kh}):await global.getModel("customer").findOne({id_app:$obj$$.id_app,status:!0,of_user:$g_nv_user_created$$.user})){$obj$$.ma_kh_hoa_hong=$customer_user$$.ma_kh;$obj$$.user_nv=$g_nv_user_created$$.user;var $user_group$$;($g_nv_user_created$$=await global.getModel("participant").findOne({id_app:$obj$$.id_app,email:$obj$$.user_nv}).lean())&&($user_group$$={$in:[($g_nv_user_created$$.group_id||"").toString(),null,void 0,""]});await Promise.all($obj$$.details.map($detail$$=>
24
+ (async()=>{let $t_tt_nt$$=Math.roundBy($detail$$.tt_nt*$obj$$.ty_gia,0),$loi_nhuan$$=$t_tt_nt$$-$detail$$.tien_xuat_tmp;var $ckhd$jscomp$2_ckhds$jscomp$2_query$$={id_app:$obj$$.id_app,gt_tu:{$lte:$t_tt_nt$$},ma_kho:{$in:[void 0,null,"",$obj$$.ma_kho]},doi_tuong:"0",loai:"9",ma_nv:{$in:[void 0,null,"",$obj$$.ma_nv]},nh_kh:{$in:[void 0,null,"",$customer$$.nh_kh]},nh_kh2:{$in:[void 0,null,"",..._($customer$$.nh_kh2||[])]},nh_kh3:{$in:[void 0,null,"",..._($customer$$.nh_kh3||[])]},nh_kh4:{$in:[void 0,
25
+ null,"",..._($customer$$.nh_kh4||[])]},nh_kh5:{$in:[void 0,null,"",..._($customer$$.nh_kh5||[])]}};$ckhd$jscomp$2_ckhds$jscomp$2_query$$.$and=[{$or:[{gt_den:{$in:[0,void 0,null]}},{gt_den:{$gte:$t_tt_nt$$}}]},{$or:[{"vts.0":{$exists:!1}},{vts:$detail$$.ma_vt}]}];var $hieu_luc_den$jscomp$2_tien_hh$jscomp$2_tu_ngay$$=moment($obj$$.ngay_ct).startOf("date").toDate();var $hieu_luc_tu$jscomp$2_ty_le_hh$$={$lte:moment($obj$$.ngay_ct).endOf("date").toDate()};$hieu_luc_den$jscomp$2_tien_hh$jscomp$2_tu_ngay$$=
26
+ {$gte:$hieu_luc_den$jscomp$2_tien_hh$jscomp$2_tu_ngay$$};$ckhd$jscomp$2_ckhds$jscomp$2_query$$.hieu_luc_tu=$hieu_luc_tu$jscomp$2_ty_le_hh$$;$ckhd$jscomp$2_ckhds$jscomp$2_query$$.hieu_luc_den=$hieu_luc_den$jscomp$2_tien_hh$jscomp$2_tu_ngay$$;$user_group$$&&($ckhd$jscomp$2_ckhds$jscomp$2_query$$.user_group=$user_group$$);$ckhd$jscomp$2_ckhds$jscomp$2_query$$=await global.getModel("dmhoahonghd").find($ckhd$jscomp$2_ckhds$jscomp$2_query$$).sort({do_uu_tien:1,gt_tu:-1,tien_hh:-1,ty_le_hh:-1,ma_nv:-1,user_group:-1,
27
+ nh_kh:-1,hieu_luc_tu:-1,kieu:1}).limit(1).lean();0<$ckhd$jscomp$2_ckhds$jscomp$2_query$$.length&&($ckhd$jscomp$2_ckhds$jscomp$2_query$$=$ckhd$jscomp$2_ckhds$jscomp$2_query$$[0],$detail$$.gia_ban_niem_yet_nt&&$detail$$.gia_ban_niem_yet_nt>$detail$$.gia_ban_nt?($hieu_luc_tu$jscomp$2_ty_le_hh$$=$ckhd$jscomp$2_ckhds$jscomp$2_query$$.ty_le_hh2||0,$hieu_luc_den$jscomp$2_tien_hh$jscomp$2_tu_ngay$$=$ckhd$jscomp$2_ckhds$jscomp$2_query$$.tien_hh2||0,"99"==$ckhd$jscomp$2_ckhds$jscomp$2_query$$.kieu&&($ckhd$jscomp$2_ckhds$jscomp$2_query$$.kieu=
28
+ "9")):($hieu_luc_tu$jscomp$2_ty_le_hh$$=$ckhd$jscomp$2_ckhds$jscomp$2_query$$.ty_le_hh||0,$hieu_luc_den$jscomp$2_tien_hh$jscomp$2_tu_ngay$$=$ckhd$jscomp$2_ckhds$jscomp$2_query$$.tien_hh||0),$ckhd$jscomp$2_ckhds$jscomp$2_query$$.tien_hh?($detail$$.tien_hoa_hong=$hieu_luc_den$jscomp$2_tien_hh$jscomp$2_tu_ngay$$,$detail$$.ty_le_hoa_hong=0):($detail$$.ty_le_hoa_hong=$hieu_luc_tu$jscomp$2_ty_le_hh$$||0,$detail$$.tien_hoa_hong="9"==$ckhd$jscomp$2_ckhds$jscomp$2_query$$.kieu?Math.roundBy($loi_nhuan$$*$hieu_luc_tu$jscomp$2_ty_le_hh$$/
29
+ 100,0):Math.roundBy($t_tt_nt$$*$hieu_luc_tu$jscomp$2_ty_le_hh$$/100,0)),$detail$$.chuyen_ngay="1"==$ckhd$jscomp$2_ckhds$jscomp$2_query$$.hinh_thuc_tt,$detail$$.tk_no_hoa_hong=$ckhd$jscomp$2_ckhds$jscomp$2_query$$.tk_no,$detail$$.tk_co_hoa_hong=$ckhd$jscomp$2_ckhds$jscomp$2_query$$.tk_co)})()));$obj$$.tien_hoa_hong=$obj$$.details.csum("tien_hoa_hong");$obj$$.chuyen_ngay=!!$obj$$.details.find($d$$=>$d$$.chuyen_ngay)}}}};
30
+ module.exports=async function($giam_qua_obj$$){var $customer$$=$giam_qua_obj$$.ma_kh?await global.getModel("customer").findOne({id_app:$giam_qua_obj$$.id_app,ma_kh:$giam_qua_obj$$.ma_kh},{nh_kh:1,nh_kh2:1,nh_kh3:1,nh_kh4:1,nh_kh5:1,phu_trach:1,of_user:1}):void 0;const $user_created$$=await global.getModel("participant").findOne({id_app:$giam_qua_obj$$.id_app,email:$giam_qua_obj$$.user_created}).populate("group_id").exec();await hoahonghdgt($giam_qua_obj$$,$user_created$$,$customer$$);await hoahonghdctv($giam_qua_obj$$,
31
+ $user_created$$,$customer$$);await hoahonghdnv($giam_qua_obj$$,$user_created$$,$customer$$);if($user_created$$.group_id&&$giam_qua_obj$$.details.find($d$$=>$d$$.gia_ban_niem_yet_nt>$d$$.gia_ban_nt)){if(!$user_created$$.group_id.is_partner_group&&!$user_created$$.group_id.is_employee_group)throw"B\u1ea1n kh\u00f4ng \u0111\u01b0\u1ee3c ph\u00e9p gi\u1ea3m gi\u00e1 b\u00e1n s\u1ea3n ph\u1ea9m";if($user_created$$.group_id.is_partner_group&&($customer$$=$giam_qua_obj$$.details.find($d$$=>$d$$.gia_ban_niem_yet_nt>
32
+ $d$$.gia_ban_nt&&!$d$$.ty_le_hoa_hong_ctv)))throw`B\u1ea1n kh\u00f4ng \u0111\u01b0\u1ee3c ph\u00e9p gi\u1ea3m gi\u00e1 cho s\u1ea3n ph\u1ea9m ${$customer$$.ten_vt||$customer$$.ma_vt}`;if($giam_qua_obj$$=$giam_qua_obj$$.details.find($d$$=>$d$$.gia_ban_niem_yet_nt>$d$$.gia_ban_nt&&0>$d$$.tien_hoa_hong_ctv))throw`B\u1ea1n ch\u1ec9 \u0111\u01b0\u1ee3c ph\u00e9p gi\u1ea3m t\u1ed1i \u0111a ${$giam_qua_obj$$.ty_le_hoa_hong_ctv}% cho s\u1ea3n ph\u1ea9m ${$giam_qua_obj$$.ten_vt||$giam_qua_obj$$.ma_vt}`;}};
@@ -28,6 +28,7 @@ $callback$$){setImmediate(()=>{(async()=>{if("W"===$p$$.type||"EN"===$p$$.type)t
28
28
  $e$$}else if("E"===$p$$.type&&$p$$.value){$condition$$=$p$$.value;0>$condition$$.indexOf("return ")&&($condition$$=`return ${$condition$$}`);if(0<=$condition$$.indexOf("async "))return $app$$[$p$$.name]="async function is not allow";$condition$$=`return (async ()=>{
29
29
  ${$condition$$}
30
30
  })`;$query$jscomp$2_sandbox$$={m:$obj$$,master:$obj$$,data:$obj$$,Moment:moment,Numeral:numeral,numberToWord,getData:getParameterData};try{$app$$[$p$$.name]=await evalute($condition$$,$query$jscomp$2_sandbox$$)()}catch($e$$){console.error($e$$,$condition$$),$app$$[$p$$.name]=$e$$.message}}else $app$$[$p$$.name]=$p$$.value})().then(()=>{$callback$$()}).catch(()=>{$callback$$()})})},function($e$$){if($e$$)return $reject$$($e$$);$resole$$()})})},groupBy=($arr$$,$fieldkey$$,$fieldsums$$,$options$$)=>
31
- [...$arr$$].asyncGroupBy($fieldkey$$,$fieldsums$$,$options$$),joinModel2=($arr$$,$id_app$$,$modelName$$,$where$$,$fields$$)=>[...$arr$$].asyncJoinModel2($id_app$$,$modelName$$,{where:$where$$,fields:$fields$$}),query=async($model_name_q$$,$condition$$,$options$jscomp$5_rs$$={})=>{if($options$jscomp$5_rs$$.action&&"find"!=$options$jscomp$5_rs$$.action){if(global.getModel($model_name_q$$)[$options$jscomp$5_rs$$.action]&&0<=["getCoinBalance","getInvestBalance","getOwners"].indexOf($options$jscomp$5_rs$$.action))return global.getModel($model_name_q$$)[$options$jscomp$5_rs$$.action]($condition$$,
32
- $options$jscomp$5_rs$$);throw`${$options$jscomp$5_rs$$.action} is not valid`;}if(!$condition$$.id_app)throw"condition missed id_app param";let $fields$$=$options$jscomp$5_rs$$.fields;$fields$$&&($fields$$.mnemonic=-1,$fields$$.private_key=-1);$model_name_q$$=global.getModel($model_name_q$$).find($condition$$,$fields$$);$options$jscomp$5_rs$$.sort&&($model_name_q$$=$model_name_q$$.sort($options$jscomp$5_rs$$.sort));$options$jscomp$5_rs$$.limit&&($model_name_q$$=$model_name_q$$.limit($options$jscomp$5_rs$$.limit));
33
- $options$jscomp$5_rs$$=await $model_name_q$$.lean();$options$jscomp$5_rs$$.forEach($r$$=>{delete $r$$.mnemonic;delete $r$$.private_key;delete $r$$.password;delete $r$$.token});return $options$jscomp$5_rs$$},getLib=$lib_name$$=>global.getLib($lib_name$$);module.exports={evalute,JSONParser,getParameterData,prepareParameters,advMapSeries,numberToWord,round,getInfoFromQuery,stripHtmlTags:strip_html_tags,unescapeHtml,compileHtml,isSupperAdmin,calcGrid,query,groupBy,joinModel2,getLib};
31
+ [...$arr$$].asyncGroupBy($fieldkey$$,$fieldsums$$,$options$$),joinModel2=($arr$$,$id_app$$,$modelName$$,$where$$,$fields$$)=>[...$arr$$].asyncJoinModel2($id_app$$,$modelName$$,{where:$where$$,fields:$fields$$}),count=async($model_name$$,$condition$$)=>{if(!$condition$$)throw"condition missed";if(!$condition$$.id_app)throw"condition missed id_app param";return await global.getModel($model_name$$).countDocuments($condition$$)},query=async($model_name$$,$condition$$,$options$jscomp$5_rs$$={})=>{if(!$condition$$)throw"condition missed";
32
+ if($options$jscomp$5_rs$$.action&&"find"!=$options$jscomp$5_rs$$.action){if(global.getModel($model_name$$)[$options$jscomp$5_rs$$.action]&&0<=["getCoinBalance","getInvestBalance","getOwners"].indexOf($options$jscomp$5_rs$$.action))return global.getModel($model_name$$)[$options$jscomp$5_rs$$.action]($condition$$,$options$jscomp$5_rs$$);throw`${$options$jscomp$5_rs$$.action} is not valid`;}if(!$condition$$.id_app)throw"condition missed id_app param";let $fields$$=$options$jscomp$5_rs$$.fields;$fields$$&&
33
+ ($fields$$.mnemonic=-1,$fields$$.private_key=-1);$model_name$$=global.getModel($model_name$$).find($condition$$,$fields$$);$options$jscomp$5_rs$$.sort&&($model_name$$=$model_name$$.sort($options$jscomp$5_rs$$.sort));$options$jscomp$5_rs$$.limit&&($model_name$$=$model_name$$.limit($options$jscomp$5_rs$$.limit));$options$jscomp$5_rs$$=await $model_name$$.lean();$options$jscomp$5_rs$$.forEach($r$$=>{delete $r$$.mnemonic;delete $r$$.private_key;delete $r$$.password;delete $r$$.token;$r$$.local&&(delete $r$$.local.password,
34
+ delete $r$$.local.repassword,delete $r$$.local.pin)});return $options$jscomp$5_rs$$},getLib=$lib_name$$=>global.getLib($lib_name$$);module.exports={evalute,JSONParser,getParameterData,prepareParameters,advMapSeries,numberToWord,round,getInfoFromQuery,stripHtmlTags:strip_html_tags,unescapeHtml,compileHtml,isSupperAdmin,calcGrid,query,count,groupBy,joinModel2,getLib};
@@ -1,11 +1,12 @@
1
- 'use strict';const User=require("./user"),Participant=require("./participant"),_=require("lodash"),appScheam=new global.Schema({name:{type:String,required:!0,maxlength:1024},name_en:{type:String,maxlength:1024},short_name:{type:String,maxlength:1024},address:{type:String,maxlength:1024},address_en:{type:String,maxlength:1024},city:{type:String,maxlength:1024},province:{type:String,maxlength:1024},country:{type:String,maxlength:1024},phone:{type:String,maxlength:1024},fax:{type:String,maxlength:1024},
2
- email:{type:String,maxlength:1024},website:{type:String,maxlength:1024},sale_online:{type:Boolean,default:!1},facebook:{type:String,maxlength:2024},zalo:{type:String,maxlength:2024},messager:{type:String,maxlength:2024},bao_hanh:{type:String},van_chuyen:{type:String},dieu_khoan_su_dung:{type:String},dieu_khoan_su_dung_en:{type:String},dieu_khoan_kygui:{type:String},dieu_khoan_kygui_en:{type:String},dieu_khoan_congtacvien:{type:String},dieu_khoan_congtacvien_en:{type:String},chinh_sach_dau_tu:{type:String},
3
- chinh_sach_dau_tu_en:{type:String},gioi_thieu:{type:String},nganh_nghe:{type:String},keywords:{type:String},site_name:{type:String},ngay_dn:{type:Date,required:!0},ngay_ks:{type:Date,required:!0},nam_bd:{type:Number,required:!0},ngay_ky1:{type:Date,required:!0},ma_so_thue:{type:String,maxlength:1024},nguoi_nop_thue:{type:String,maxlength:1024},giam_doc:{type:String,maxlength:1024},ke_toan_truong:{type:String,maxlength:1024},viettel_version:{type:String,maxlength:1024},viettel_user:{type:String,maxlength:1024},
4
- viettel_password:{type:String,maxlength:1024},viettel_token:{type:String},viettel_url_service:{type:String,maxlength:1024},viettel_direct_issue:Boolean,ma_hoa_don:String,ky_hieu_hoa_don:String,sip_uri:String,sip_password:String,sip_websocket:String,voiip_access_token:String,voiip_webhook:String,wallet_address:{type:String,maxlength:2024},wallet_token:{type:String,maxlength:2024},exchange_fee:Number,wallet_network:{type:String,maxlength:2024},tang_duoc_gioi_thieu:Number,tang_gioi_thieu:Number,ty_le_hoa_hong:Number,
5
- tang_gioi_thieu_denom:String,tai_khoan_ngan_hang:String,ten_ngan_hang:String,chi_nhanh_ngan_hang:String,so_ngay_lam_mot_thang:{type:Number,default:24},logo:{type:String,maxlength:1024},logo_watermark:{type:String,maxlength:1024},gio_mo_cua:{type:Number,default:8},gio_dong_cua:{type:Number,default:22},partner:String,server:String,owner:String,default_password:String,email_host:String,email_port:Number,email_secure:{type:Boolean,default:!0},email_authMethod:{type:String,default:"LOGIN"},email_user:String,
6
- email_pass:String,email_name:String,exfields:global.Schema.Types.Mixed,domain:String,ssl_key:String,ssl_cert:String,ssl_ca:String,account_types_accept:[],options:{},allow_modules:[String],expire_date:Date,trang_thai:{type:String,default:"0"},status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}});appScheam.index({name:1,province:1});appScheam.index({trang_thai:1});
7
- appScheam.index({sale_online:1});appScheam.index({user_created:"text"},{name:"app_index_created"});appScheam.index({name:"text",province:"text",name_en:"text",address:"text",phone:"text",email:"text",ma_so_thue:"text"},{name:"app_index"});const App=global.mongoose.models.app||global.mongoose.model("app",appScheam);
1
+ 'use strict';const User=require("./user"),Participant=require("./participant"),_=require("lodash"),appScheam=new global.Schema({name:{type:String,required:!0,maxlength:1024},name_en:{type:String,maxlength:1024},short_name:{type:String,maxlength:1024},address:{type:String,maxlength:1024},address_en:{type:String,maxlength:1024},factory_address:{type:String,maxlength:1024},factory_address_en:{type:String,maxlength:1024},city:{type:String,maxlength:1024},province:{type:String,maxlength:1024},country:{type:String,
2
+ maxlength:1024},phone:{type:String,maxlength:1024},fax:{type:String,maxlength:1024},email:{type:String,maxlength:1024},website:{type:String,maxlength:1024},sale_online:{type:Boolean,default:!1},facebook:{type:String,maxlength:2024},zalo:{type:String,maxlength:2024},messager:{type:String,maxlength:2024},bao_hanh:{type:String},van_chuyen:{type:String},dieu_khoan_su_dung:{type:String},dieu_khoan_su_dung_en:{type:String},dieu_khoan_kygui:{type:String},dieu_khoan_kygui_en:{type:String},dieu_khoan_congtacvien:{type:String},
3
+ dieu_khoan_congtacvien_en:{type:String},chinh_sach_dau_tu:{type:String},chinh_sach_dau_tu_en:{type:String},gioi_thieu:{type:String},nganh_nghe:{type:String},keywords:{type:String},site_name:{type:String},ngay_dn:{type:Date,required:!0},ngay_ks:{type:Date,required:!0},nam_bd:{type:Number,required:!0},ngay_ky1:{type:Date,required:!0},ma_so_thue:{type:String,maxlength:1024},nguoi_nop_thue:{type:String,maxlength:1024},giam_doc:{type:String,maxlength:1024},ke_toan_truong:{type:String,maxlength:1024},viettel_version:{type:String,
4
+ maxlength:1024},viettel_user:{type:String,maxlength:1024},viettel_password:{type:String,maxlength:1024},viettel_token:{type:String},viettel_url_service:{type:String,maxlength:1024},viettel_direct_issue:Boolean,ma_hoa_don:String,ky_hieu_hoa_don:String,sip_uri:String,sip_password:String,sip_websocket:String,voiip_access_token:String,voiip_webhook:String,wallet_address:{type:String,maxlength:2024},wallet_token:{type:String,maxlength:2024},exchange_fee:Number,wallet_network:{type:String,maxlength:2024},
5
+ tang_duoc_gioi_thieu:Number,tang_gioi_thieu:Number,ty_le_hoa_hong:Number,tang_gioi_thieu_denom:String,tai_khoan_ngan_hang:String,ten_ngan_hang:String,chi_nhanh_ngan_hang:String,so_ngay_lam_mot_thang:{type:Number,default:24},logo:{type:String,maxlength:1024},logo_watermark:{type:String,maxlength:1024},gio_mo_cua:{type:Number,default:8},gio_dong_cua:{type:Number,default:22},partner:String,server:String,owner:String,default_password:String,email_host:String,email_port:Number,email_secure:{type:Boolean,
6
+ default:!0},email_authMethod:{type:String,default:"LOGIN"},email_user:String,email_pass:String,email_name:String,exfields:global.Schema.Types.Mixed,domain:String,ssl_key:String,ssl_cert:String,ssl_ca:String,account_types_accept:[],options:{},allow_modules:[String],expire_date:Date,trang_thai:{type:String,default:"0"},status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}});
7
+ appScheam.index({name:1,province:1});appScheam.index({trang_thai:1});appScheam.index({sale_online:1});appScheam.index({user_created:"text"},{name:"app_index_created"});appScheam.index({name:"text",province:"text",name_en:"text",address:"text",phone:"text",email:"text",ma_so_thue:"text"},{name:"app_index"});const App=global.mongoose.models.app||global.mongoose.model("app",appScheam);
8
8
  App.participants=async $app$$=>{_.isString($app$$)&&($app$$=await App.getInfo($app$$));let $participants$$=await Participant.ofApp($app$$._id);$app$$.participants&&($app$$.participants.forEach($p$$=>{$p$$.id_app=$app$$.id_app}),$participants$$=$participants$$.concat($app$$.participants));if($app$$.user_created&&!$participants$$.find($p$$=>$p$$.email===$app$$.user_created)){let $_p$$={email:$app$$.user_created,name:$app$$.user_created.split("@")[0],admin:!0,active:!0,cancel:!1,id_app:$app$$._id};$participants$$.push($_p$$);
9
9
  Participant.createParticipant($_p$$,$e$$=>{$e$$&&console.log("create participant for user owner",$e$$.message)})}return $participants$$};App.getInfo=async function($id_app$$,$field$$){return new Promise(($resolve$$,$reject$$)=>{App.findOne({_id:$id_app$$}).lean().exec(($e$$,$rs$$)=>{if($e$$||!$rs$$)return $reject$$(Error($e$$?$e$$.message:"App is not exists"));$resolve$$($field$$?$rs$$[$field$$]:$rs$$)})})};
10
10
  App.emitEvent=function($id_app$$,$event$$,$_data$$,$c_token$$=null,$users$$=null,$_createNotify$$=!1,$_push$$=!0){App.findOne({_id:$id_app$$}).lean().exec(async($e$jscomp$0$$,$app$$)=>{$app$$&&($_data$$.company=$app$$.name,$_data$$.app_info=$app$$,$_data$$.id_app=$id_app$$,$users$$?$users$$=$users$$.map($u$$=>({email:$u$$,name:$u$$})):($users$$=await App.participants($app$$),$users$$.find($u$$=>$app$$.user_created===$u$$.email)||$users$$.push({email:$app$$.user_created,name:$app$$.user_created})),
11
- $users$$.forEach(function($user$$){let $data$$=_.cloneDeep($_data$$);!$data$$.title||!$_createNotify$$&&$event$$?$event$$&&User.emitEvent($user$$.email,$event$$,$data$$,$_push$$,$c_token$$):global.createNotification($data$$.user_updated||"SYSTEM",$user$$.email,$data$$.title,$data$$.body,$e$$=>{$e$$?console.error($e$$):$event$$&&User.emitEvent($user$$.email,$event$$,$data$$,$_push$$,$c_token$$)},$data$$,!$event$$,$c_token$$)}))})};module.exports=App;
11
+ $users$$.forEach(function($user$$){let $data$$=_.cloneDeep($_data$$);!$data$$.title||!$_createNotify$$&&$event$$?$event$$&&User.emitEvent($user$$.email,$event$$,$data$$,$_push$$,$c_token$$):global.createNotification($data$$.user_updated||"SYSTEM",$user$$.email,$data$$.title,$data$$.body,($e$$,$notify$$)=>{$e$$?console.error($e$$):$event$$&&($notify$$&&($data$$.notify_id=$notify$$._id.toString()),User.emitEvent($user$$.email,$event$$,$data$$,$_push$$,$c_token$$))},$data$$,!$event$$,$c_token$$)}))})};
12
+ module.exports=App;