flexbiz-server 12.7.7 → 12.7.11

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 (1158) hide show
  1. package/package.json +6 -6
  2. package/server/agents/agents.js +1 -1
  3. package/server/agents/ai_memory_manager.js +1 -6
  4. package/server/agents/ceoAgent.js +1 -43
  5. package/server/agents/chatController.js +1 -6
  6. package/server/agents/cskhAgent.js +1 -43
  7. package/server/agents/flowAgent.js +1 -43
  8. package/server/agents/prompts/ceo.js +1 -2
  9. package/server/agents/prompts/flow.js +1 -2
  10. package/server/agents/staffAgent.js +1 -44
  11. package/server/agents/tools/financeTools.js +1 -57
  12. package/server/agents/tools/flowTools.js +1 -36
  13. package/server/agents/tools/kpiTools.js +1 -104
  14. package/server/agents/tools/masterDataTools.js +1 -74
  15. package/server/agents/tools/okrTools.js +1 -21
  16. package/server/agents/tools/ragTools.js +1 -21
  17. package/server/agents/tools/reportTools.js +1 -43
  18. package/server/agents/tools/staffTools.js +1 -13
  19. package/server/agents/tools/stockTools.js +1 -41
  20. package/server/agents/tools/systemTools.js +1 -52
  21. package/server/agents/tools/taskTools.js +1 -23
  22. package/server/agents/tools/utils.js +1 -57
  23. package/server/app.js +1 -27
  24. package/server/auths/authMiddleware.js +1 -3
  25. package/server/auths/bearer.js +1 -3
  26. package/server/auths/facebook.js +1 -12
  27. package/server/auths/google.js +1 -13
  28. package/server/auths/joinApp.js +1 -0
  29. package/server/auths/local.js +1 -67
  30. package/server/auths/oauthCommon.js +1 -0
  31. package/server/auths/rateLimiterMiddleware.js +1 -11
  32. package/server/cluster.js +1 -1
  33. package/server/controllers/controller.js +1 -129
  34. package/server/controllers/controllerRPT.js +1 -38
  35. package/server/controllers/controllerUtils.js +1 -72
  36. package/server/controllers/createHandler.js +1 -35
  37. package/server/controllers/createRouteHandler.js +1 -4
  38. package/server/controllers/deleteHandler.js +1 -11
  39. package/server/controllers/deleteManyHandler.js +1 -2
  40. package/server/controllers/exportHandler.js +1 -19
  41. package/server/controllers/findHandler.js +1 -80
  42. package/server/controllers/handlers.js +1 -3
  43. package/server/controllers/historyHandler.js +1 -8
  44. package/server/controllers/importFromExcelHandler.js +1 -17
  45. package/server/controllers/importFromGsHandler.js +1 -10
  46. package/server/controllers/importFromJsonHandler.js +1 -6
  47. package/server/controllers/importHandler.js +1 -26
  48. package/server/controllers/logHandler.js +1 -5
  49. package/server/controllers/rptCreateRouteHandler.js +1 -4
  50. package/server/controllers/rptExcelHandler.js +1 -45
  51. package/server/controllers/rptHandler.js +1 -16
  52. package/server/controllers/updateBookHandler.js +1 -11
  53. package/server/controllers/updateFieldHandler.js +1 -12
  54. package/server/controllers/updateHandler.js +1 -38
  55. package/server/controllers/updateKeyHandler.js +1 -14
  56. package/server/controllers/viewHandler.js +1 -13
  57. package/server/data/sys/listinfo.js +93 -93
  58. package/server/data/sys/menuinfo.js +1 -24
  59. package/server/data/sys/moduleinfo.js +520 -9000
  60. package/server/data/sys/reportinfo.js +10 -10
  61. package/server/flow/FlowCluster.js +1 -0
  62. package/server/flow/FlowEngine.js +1 -68
  63. package/server/flow/WebhookManager.js +1 -26
  64. package/server/flow/handlers.js +1 -3
  65. package/server/flow/nodes/aiAnalysis.js +1 -9
  66. package/server/flow/nodes/checkAction.js +1 -7
  67. package/server/flow/nodes/customer.js +1 -15
  68. package/server/flow/nodes/data.js +1 -17
  69. package/server/flow/nodes/debug.js +1 -2
  70. package/server/flow/nodes/delay.js +1 -3
  71. package/server/flow/nodes/email.js +1 -8
  72. package/server/flow/nodes/event.js +1 -12
  73. package/server/flow/nodes/facebook.js +1 -3
  74. package/server/flow/nodes/facebookConversations.js +1 -5
  75. package/server/flow/nodes/facebookCreatePost.js +1 -10
  76. package/server/flow/nodes/facebookSendMessage.js +1 -12
  77. package/server/flow/nodes/forEachItem.js +1 -8
  78. package/server/flow/nodes/function.js +1 -4
  79. package/server/flow/nodes/httprequest.js +1 -7
  80. package/server/flow/nodes/inject.js +1 -14
  81. package/server/flow/nodes/pushNotification.js +1 -5
  82. package/server/flow/nodes/report.js +1 -6
  83. package/server/flow/nodes/saveData.js +1 -2
  84. package/server/flow/nodes/switch.js +1 -20
  85. package/server/flow/nodes/userform.js +1 -28
  86. package/server/flow/nodes/webhook.js +1 -1
  87. package/server/flow/nodes/zaloSendMessage.js +1 -4
  88. package/server/flow/utils.js +1 -67
  89. package/server/global.js +1 -19
  90. package/server/libs/WorkerPool.js +1 -4
  91. package/server/libs/WorkerStaticPool.js +1 -20
  92. package/server/libs/WorkerStaticPool_v1.js +1 -5
  93. package/server/libs/WorkerStaticPool_v2.js +1 -16
  94. package/server/libs/WorkerStaticPool_v3.js +1 -19
  95. package/server/libs/WorkerStaticPool_v5.js +1 -0
  96. package/server/libs/assbonus.js +1 -7
  97. package/server/libs/asyncCompat.js +1 -10
  98. package/server/libs/backup.js +1 -2
  99. package/server/libs/blockchainconnect.js +1 -12
  100. package/server/libs/cdpsdiem.js +1 -5
  101. package/server/libs/cdpsdt.js +1 -7
  102. package/server/libs/cdpskh.js +1 -15
  103. package/server/libs/cdpskh_old.js +1 -9
  104. package/server/libs/cdpsnphep.js +1 -6
  105. package/server/libs/cdpstk.js +1 -11
  106. package/server/libs/ckcn.js +1 -14
  107. package/server/libs/ckcn_old.js +1 -11
  108. package/server/libs/ckdiem.js +1 -5
  109. package/server/libs/ckdt.js +1 -6
  110. package/server/libs/cknphep.js +1 -6
  111. package/server/libs/cktk.js +1 -4
  112. package/server/libs/cktt.js +1 -10
  113. package/server/libs/cktt_old.js +1 -9
  114. package/server/libs/ckvt.js +1 -14
  115. package/server/libs/ckvt_old.js +1 -12
  116. package/server/libs/ckvtcapphat.js +1 -6
  117. package/server/libs/ckvtnpp.js +1 -9
  118. package/server/libs/ckvttt.js +1 -12
  119. package/server/libs/createSocaitheongay.js +1 -9
  120. package/server/libs/ctdiem.js +1 -5
  121. package/server/libs/ctvt.js +1 -8
  122. package/server/libs/ctvtnpp.js +1 -8
  123. package/server/libs/ctvttt.js +1 -7
  124. package/server/libs/databanle.js +1 -17
  125. package/server/libs/databanle_old.js +1 -18
  126. package/server/libs/databanlenpp.js +1 -8
  127. package/server/libs/databanletheongay.js +1 -25
  128. package/server/libs/dkcn.js +1 -14
  129. package/server/libs/dkcn_old.js +1 -10
  130. package/server/libs/dkdiem.js +1 -5
  131. package/server/libs/dkdt.js +1 -6
  132. package/server/libs/dknphep.js +1 -7
  133. package/server/libs/dktk.js +1 -5
  134. package/server/libs/dktt.js +1 -10
  135. package/server/libs/dktt_old.js +1 -8
  136. package/server/libs/dkvt.js +1 -12
  137. package/server/libs/dkvt_old.js +1 -9
  138. package/server/libs/dkvtnpp.js +1 -8
  139. package/server/libs/dkvttt.js +1 -8
  140. package/server/libs/dncn.js +1 -6
  141. package/server/libs/dntk.js +1 -4
  142. package/server/libs/dntt.js +1 -6
  143. package/server/libs/docs.js +1 -672
  144. package/server/libs/dstkcn.js +1 -1
  145. package/server/libs/dstktt.js +1 -1
  146. package/server/libs/dtbanletheonpp.js +1 -17
  147. package/server/libs/dtbanletheosp.js +1 -16
  148. package/server/libs/dtbanletheospnpp.js +1 -15
  149. package/server/libs/email.js +1 -3
  150. package/server/libs/excel.js +1 -3
  151. package/server/libs/excelHelper.js +1 -10
  152. package/server/libs/executiveDashboard.js +1 -8
  153. package/server/libs/fifo_dk.js +1 -8
  154. package/server/libs/fifo_group.js +1 -4
  155. package/server/libs/fifo_trace_query.js +1 -12
  156. package/server/libs/getGiaban.js +1 -59
  157. package/server/libs/getGiabanAsync.js +1 -1
  158. package/server/libs/getGiaban_old.js +1 -70
  159. package/server/libs/getNotifies.js +1 -1
  160. package/server/libs/htmlReport.js +1 -9
  161. package/server/libs/initDatabase.js +1 -9
  162. package/server/libs/invoiceEasy.js +1 -108
  163. package/server/libs/invoiceViettel.js +1 -25
  164. package/server/libs/invoiceVnpt.js +1 -22
  165. package/server/libs/joinData.js +1 -44
  166. package/server/libs/joinData_bk.js +1 -44
  167. package/server/libs/kpistatus.js +1 -47
  168. package/server/libs/kqchamcong.js +1 -12
  169. package/server/libs/kqhdkd.js +1 -8
  170. package/server/libs/load-template.js +1 -3
  171. package/server/libs/logger.js +1 -3
  172. package/server/libs/mailmanagement.js +1 -13
  173. package/server/libs/mongooseDeletePost.js +1 -6
  174. package/server/libs/mongooseLeanId.js +1 -1
  175. package/server/libs/mongoosePatch.js +1 -14
  176. package/server/libs/mongooseSecurityPlugin.js +1 -16
  177. package/server/libs/onepay-payment.js +1 -4
  178. package/server/libs/optimizeBookkeeping.js +1 -22
  179. package/server/libs/optimizeBookkeeping_bk.js +1 -14
  180. package/server/libs/parse-template.js +1 -5
  181. package/server/libs/permission.js +1 -58
  182. package/server/libs/permission_old.js +1 -58
  183. package/server/libs/phanbokh.js +1 -3
  184. package/server/libs/post-book.js +1 -22
  185. package/server/libs/post-socai.js +1 -25
  186. package/server/libs/post-sokho.js +1 -26
  187. package/server/libs/prototypes.js +1 -24
  188. package/server/libs/psdt.js +1 -1
  189. package/server/libs/pskh.js +1 -1
  190. package/server/libs/pstk.js +1 -1
  191. package/server/libs/queryBuilding.js +1 -15
  192. package/server/libs/redis-cache.js +1 -34
  193. package/server/libs/restore.js +1 -1
  194. package/server/libs/sctcnkh.js +1 -20
  195. package/server/libs/sessionContext.js +2 -14
  196. package/server/libs/socaitk.js +1 -9
  197. package/server/libs/textReport.js +1 -5
  198. package/server/libs/thnxt.js +1 -17
  199. package/server/libs/thnxt_old.js +1 -9
  200. package/server/libs/thnxtnpp.js +1 -9
  201. package/server/libs/thnxttt.js +1 -9
  202. package/server/libs/tinhGt.js +1 -10
  203. package/server/libs/tinhGtCapnhatPNK.js +1 -7
  204. package/server/libs/tinhGtPhanboHeSo.js +1 -12
  205. package/server/libs/tinhGtPhanboSltp.js +1 -10
  206. package/server/libs/tinhGtPhanboYtcp.js +1 -11
  207. package/server/libs/tinhGtSltk.js +1 -9
  208. package/server/libs/tinhGtThcppstk.js +1 -10
  209. package/server/libs/tinhGtTrucTiep.js +1 -7
  210. package/server/libs/tinhGtXoa.js +1 -3
  211. package/server/libs/tinhgia1vt_fifo.js +1 -22
  212. package/server/libs/tinhgiafifo.js +1 -28
  213. package/server/libs/tinhgiatb.js +1 -30
  214. package/server/libs/tinhgiatb1vt.js +1 -7
  215. package/server/libs/tinhgiatb1vt_old.js +1 -5
  216. package/server/libs/tinhgiatb_old.js +1 -39
  217. package/server/libs/tinhhoahong.js +1 -64
  218. package/server/libs/tinhhoahongnpp.js +1 -46
  219. package/server/libs/tinhkhauhao1ts.js +1 -12
  220. package/server/libs/tinhkhauhaots.js +1 -8
  221. package/server/libs/tinhkhauhaots_old.js +1 -0
  222. package/server/libs/tuoinophaithu.js +1 -11
  223. package/server/libs/tuoinophaithu_old.js +1 -0
  224. package/server/libs/tuoinophaitra.js +1 -12
  225. package/server/libs/tuoinophaitra_old.js +1 -0
  226. package/server/libs/utils.js +1 -121
  227. package/server/libs/utils_old.js +1 -0
  228. package/server/libs/validate.js +1 -4
  229. package/server/libs/validator-acc-cust.js +1 -1
  230. package/server/libs/validator-account.js +1 -4
  231. package/server/libs/validator-vt.js +1 -2
  232. package/server/libs/validator.js +1 -11
  233. package/server/libs/vectorService.js +1 -16
  234. package/server/libs/viCollation.js +1 -4
  235. package/server/libs/vsocai.js +1 -11
  236. package/server/libs/vsocai_old.js +1 -7
  237. package/server/libs/vsocai_old2.js +1 -0
  238. package/server/maps-demo/participant.js +18 -0
  239. package/server/models/account.js +1 -7
  240. package/server/models/actionLog.js +1 -2
  241. package/server/models/afflink.js +1 -2
  242. package/server/models/aimemory.js +1 -1
  243. package/server/models/app.js +1 -16
  244. package/server/models/approve.js +1 -95
  245. package/server/models/assabcihandler.js +1 -35
  246. package/server/models/assbank.js +1 -19
  247. package/server/models/assbooking.js +1 -4
  248. package/server/models/assbuy.js +1 -3
  249. package/server/models/asscashwithdraw.js +1 -4
  250. package/server/models/assfindhash.js +1 -2
  251. package/server/models/assinvestment.js +1 -13
  252. package/server/models/assissue.js +1 -2
  253. package/server/models/asskey.js +1 -15
  254. package/server/models/assneedtobuy.js +1 -6
  255. package/server/models/assperiod.js +1 -7
  256. package/server/models/assproduct.js +1 -13
  257. package/server/models/assprofitsharing.js +1 -4
  258. package/server/models/assreceiver.js +1 -2
  259. package/server/models/assrequest.js +1 -10
  260. package/server/models/asssell.js +1 -7
  261. package/server/models/asstransaction.js +1 -3
  262. package/server/models/asstransfer.js +1 -4
  263. package/server/models/assuser_identity.js +1 -4
  264. package/server/models/asswithdraw.js +1 -4
  265. package/server/models/attend.js +1 -2
  266. package/server/models/banggiaban.js +1 -8
  267. package/server/models/bangtinhluong.js +1 -5
  268. package/server/models/base.js +1 -1
  269. package/server/models/bg1.js +1 -9
  270. package/server/models/bg2.js +1 -10
  271. package/server/models/cache.js +1 -3
  272. package/server/models/cacheDataReport.js +1 -2
  273. package/server/models/cacheSessionReport.js +1 -5
  274. package/server/models/calllog.js +1 -4
  275. package/server/models/cart.js +1 -5
  276. package/server/models/cddiem.js +1 -2
  277. package/server/models/cddt.js +1 -3
  278. package/server/models/cdkh.js +1 -5
  279. package/server/models/cdkhtheongay.js +1 -5
  280. package/server/models/cdnphep.js +1 -2
  281. package/server/models/cdtk.js +1 -3
  282. package/server/models/cdtktheongay.js +1 -3
  283. package/server/models/cdvt.js +1 -5
  284. package/server/models/cdvtnpp.js +1 -6
  285. package/server/models/cdvttheongay.js +1 -5
  286. package/server/models/chamcong.js +1 -7
  287. package/server/models/chat_message.js +1 -2
  288. package/server/models/chat_session.js +1 -2
  289. package/server/models/checkin.js +1 -4
  290. package/server/models/checkinactivity.js +1 -3
  291. package/server/models/checkinkpi.js +1 -4
  292. package/server/models/checkinlocation.js +1 -2
  293. package/server/models/chitietluongds.js +1 -12
  294. package/server/models/chitieukpi.js +1 -3
  295. package/server/models/chudethaoluan.js +1 -3
  296. package/server/models/ckgtluong.js +1 -2
  297. package/server/models/colleague.js +1 -2
  298. package/server/models/comment.js +1 -4
  299. package/server/models/congdoansx.js +1 -4
  300. package/server/models/congtacvien.js +1 -4
  301. package/server/models/congthuctinhgiaban.js +1 -8
  302. package/server/models/consultant.js +1 -4
  303. package/server/models/contract.js +1 -6
  304. package/server/models/counter.js +1 -2
  305. package/server/models/csluongtheods.js +1 -3
  306. package/server/models/csphucap.js +1 -2
  307. package/server/models/ctds.js +1 -5
  308. package/server/models/ctds2.js +1 -7
  309. package/server/models/currency.js +1 -3
  310. package/server/models/custom_report.js +1 -1
  311. package/server/models/customer.js +1 -31
  312. package/server/models/customer_care.js +1 -2
  313. package/server/models/data_list_config.js +1 -7
  314. package/server/models/databanle.js +1 -8
  315. package/server/models/datlich.js +1 -4
  316. package/server/models/deal.js +1 -2
  317. package/server/models/dh2.js +1 -20
  318. package/server/models/diagram.js +1 -2
  319. package/server/models/dinhmucsx.js +1 -8
  320. package/server/models/dkhoc.js +1 -6
  321. package/server/models/dknphep.js +1 -2
  322. package/server/models/dmban.js +1 -3
  323. package/server/models/dmbp.js +1 -12
  324. package/server/models/dmca.js +1 -2
  325. package/server/models/dmchietkhau.js +1 -8
  326. package/server/models/dmchietkhauhd.js +1 -19
  327. package/server/models/dmchinhanh.js +1 -2
  328. package/server/models/dmcpmh.js +1 -2
  329. package/server/models/dmdiemthuong.js +1 -3
  330. package/server/models/dmdoi.js +1 -4
  331. package/server/models/dmdoituongdanhgia.js +1 -2
  332. package/server/models/dmdt.js +1 -8
  333. package/server/models/dmdvt.js +1 -3
  334. package/server/models/dmgiaban.js +1 -9
  335. package/server/models/dmgiamua.js +1 -5
  336. package/server/models/dmgiathitruong.js +1 -5
  337. package/server/models/dmgiathitruong_ngay.js +1 -2
  338. package/server/models/dmgiathitruong_theodoi.js +1 -2
  339. package/server/models/dmhoahonghd.js +1 -8
  340. package/server/models/dmhoahongnpp.js +1 -8
  341. package/server/models/dmkc.js +1 -3
  342. package/server/models/dmkho.js +1 -7
  343. package/server/models/dmkhuyenmai.js +1 -9
  344. package/server/models/dmkhuyenmaihd.js +1 -11
  345. package/server/models/dmletet.js +1 -2
  346. package/server/models/dmlo.js +1 -4
  347. package/server/models/dmloaicong.js +1 -4
  348. package/server/models/dmloaitask.js +1 -2
  349. package/server/models/dmloaits.js +1 -2
  350. package/server/models/dmnckkm.js +1 -4
  351. package/server/models/dmnghiepvu.js +1 -4
  352. package/server/models/dmnguonvon.js +1 -2
  353. package/server/models/dmnhnv.js +1 -4
  354. package/server/models/dmnv.js +1 -17
  355. package/server/models/dmnvt.js +1 -10
  356. package/server/models/dmphi.js +1 -3
  357. package/server/models/dmqct.js +1 -3
  358. package/server/models/dmqddvt.js +1 -3
  359. package/server/models/dmtanggiamts.js +1 -3
  360. package/server/models/dmto.js +1 -4
  361. package/server/models/dmtt.js +1 -6
  362. package/server/models/dmvt.js +1 -17
  363. package/server/models/dmyt.js +1 -4
  364. package/server/models/dn0.js +1 -13
  365. package/server/models/dnm.js +1 -11
  366. package/server/models/dokho.js +1 -2
  367. package/server/models/domain.js +1 -2
  368. package/server/models/dvcs.js +1 -3
  369. package/server/models/ecomcategories.js +1 -3
  370. package/server/models/ecomcategories_cty.js +1 -3
  371. package/server/models/ecomproductlines.js +1 -2
  372. package/server/models/ecompromotion_flashsales.js +1 -2
  373. package/server/models/ecompromotion_freeships.js +1 -2
  374. package/server/models/email.js +1 -2
  375. package/server/models/endpoint.js +1 -1
  376. package/server/models/events.js +1 -3
  377. package/server/models/evoucher.js +1 -5
  378. package/server/models/experiencejourney.js +1 -2
  379. package/server/models/experiencejourneydata.js +1 -4
  380. package/server/models/experiencejourneypersona.js +1 -3
  381. package/server/models/experiencejourneystage.js +1 -2
  382. package/server/models/exportexceltemplate.js +1 -2
  383. package/server/models/fbconversation.js +1 -15
  384. package/server/models/fbmessage.js +1 -2
  385. package/server/models/fbpage.js +1 -2
  386. package/server/models/fbpost.js +1 -2
  387. package/server/models/fieldright.js +1 -2
  388. package/server/models/fifo_dk.js +1 -2
  389. package/server/models/fifo_lot.js +1 -3
  390. package/server/models/fifo_trace.js +1 -4
  391. package/server/models/file.js +1 -4
  392. package/server/models/filechunk.js +1 -2
  393. package/server/models/financialroadmap.js +1 -3
  394. package/server/models/flow.js +1 -2
  395. package/server/models/flowdata.js +1 -3
  396. package/server/models/flowpending.js +1 -2
  397. package/server/models/folder.js +1 -4
  398. package/server/models/follow.js +1 -2
  399. package/server/models/forminfo.js +1 -5
  400. package/server/models/giaoca.js +1 -3
  401. package/server/models/giatb.js +1 -3
  402. package/server/models/group.js +1 -9
  403. package/server/models/gt_ctgt.js +1 -4
  404. package/server/models/gt_hspb.js +1 -3
  405. package/server/models/gt_sltk.js +1 -3
  406. package/server/models/gt_thcppstk.js +1 -3
  407. package/server/models/hanmucton.js +1 -4
  408. package/server/models/hd1.js +1 -11
  409. package/server/models/hd2.js +1 -26
  410. package/server/models/hd3.js +1 -17
  411. package/server/models/hd4.js +1 -13
  412. package/server/models/hd7.js +1 -17
  413. package/server/models/hd8.js +1 -12
  414. package/server/models/hde.js +1 -11
  415. package/server/models/hmcn.js +1 -3
  416. package/server/models/hmcnct.js +1 -2
  417. package/server/models/hspbts.js +1 -4
  418. package/server/models/htl.js +1 -13
  419. package/server/models/importexceltemplate.js +1 -2
  420. package/server/models/introducebonus.js +1 -4
  421. package/server/models/introducecode.js +1 -3
  422. package/server/models/introducer.js +1 -4
  423. package/server/models/kbbtpb.js +1 -7
  424. package/server/models/kbmPttct.js +1 -4
  425. package/server/models/kbmTkgtgt.js +1 -5
  426. package/server/models/kbm_bcdkt_old.js +1 -4
  427. package/server/models/kbm_kqhdkd_old.js +1 -3
  428. package/server/models/kbm_lcttgt_old.js +1 -5
  429. package/server/models/kbm_lctttt_old.js +1 -4
  430. package/server/models/kbm_pttct_old.js +1 -4
  431. package/server/models/kbm_tkgtgt_old.js +1 -5
  432. package/server/models/kbmbcdkt.js +1 -4
  433. package/server/models/kbmbcqt.js +1 -4
  434. package/server/models/kbmkqhdkd.js +1 -3
  435. package/server/models/kbmlcttgt.js +1 -6
  436. package/server/models/kbmlctttt.js +1 -4
  437. package/server/models/kbmtmbctc.js +1 -4
  438. package/server/models/kehoachdtcp.js +1 -3
  439. package/server/models/kehoachmh.js +1 -8
  440. package/server/models/keyresult.js +1 -7
  441. package/server/models/khunghangthanhvien.js +1 -3
  442. package/server/models/label.js +1 -2
  443. package/server/models/labelinfo.js +1 -2
  444. package/server/models/lenhcapphat.js +1 -8
  445. package/server/models/lenhsx.js +1 -8
  446. package/server/models/lienhe.js +1 -4
  447. package/server/models/like_module.js +1 -2
  448. package/server/models/link.js +1 -2
  449. package/server/models/listinfo_old.js +1 -124
  450. package/server/models/loaidiem.js +1 -2
  451. package/server/models/lock.js +1 -2
  452. package/server/models/log.js +1 -8
  453. package/server/models/mailaccount.js +1 -3
  454. package/server/models/mailgroup.js +1 -3
  455. package/server/models/mailreceived.js +1 -2
  456. package/server/models/mailsent.js +1 -2
  457. package/server/models/mailtemplate.js +1 -2
  458. package/server/models/maudanhgia.js +1 -2
  459. package/server/models/menuinfo.js +1 -2
  460. package/server/models/message.js +1 -8
  461. package/server/models/message2.js +1 -4
  462. package/server/models/message2setting.js +1 -3
  463. package/server/models/moduleinfo.js +1 -4
  464. package/server/models/momo.js +1 -18
  465. package/server/models/news.js +1 -3
  466. package/server/models/newsfeed.js +1 -4
  467. package/server/models/note.js +1 -2
  468. package/server/models/notification.js +1 -8
  469. package/server/models/okr.js +1 -4
  470. package/server/models/okrdiagram.js +1 -3
  471. package/server/models/onepay.js +1 -24
  472. package/server/models/opportunity.js +1 -4
  473. package/server/models/options.js +1 -2
  474. package/server/models/originimportid.js +1 -1
  475. package/server/models/otp.js +1 -1
  476. package/server/models/parameter.js +1 -2
  477. package/server/models/participant.js +1 -21
  478. package/server/models/partner.js +1 -1
  479. package/server/models/payload.js +1 -1
  480. package/server/models/pbl.js +1 -16
  481. package/server/models/pc0.js +1 -13
  482. package/server/models/pc1.js +1 -14
  483. package/server/models/pc2.js +1 -13
  484. package/server/models/pc3.js +1 -13
  485. package/server/models/pc5.js +1 -8
  486. package/server/models/pc6.js +1 -14
  487. package/server/models/pcl.js +1 -6
  488. package/server/models/pdn.js +1 -9
  489. package/server/models/pdx.js +1 -9
  490. package/server/models/pgh.js +1 -5
  491. package/server/models/phieudanhgia.js +1 -3
  492. package/server/models/pht.js +1 -8
  493. package/server/models/phucap.js +1 -4
  494. package/server/models/pkc.js +1 -6
  495. package/server/models/pkh.js +1 -6
  496. package/server/models/pkk.js +1 -10
  497. package/server/models/pkt.js +1 -12
  498. package/server/models/pn1.js +1 -18
  499. package/server/models/pn2.js +1 -12
  500. package/server/models/pn3.js +1 -13
  501. package/server/models/pn5.js +1 -14
  502. package/server/models/pn6.js +1 -14
  503. package/server/models/pn9.js +1 -17
  504. package/server/models/pnc.js +1 -9
  505. package/server/models/pnh.js +1 -11
  506. package/server/models/pnk.js +1 -10
  507. package/server/models/po1.js +1 -19
  508. package/server/models/ppb.js +1 -6
  509. package/server/models/productcode.js +1 -2
  510. package/server/models/profile.js +1 -4
  511. package/server/models/pt1.js +1 -12
  512. package/server/models/pt5.js +1 -8
  513. package/server/models/ptl.js +1 -5
  514. package/server/models/ptthanhtoan.js +1 -6
  515. package/server/models/purchase_contract.js +1 -17
  516. package/server/models/pxc.js +1 -9
  517. package/server/models/pxh.js +1 -11
  518. package/server/models/pxk.js +1 -9
  519. package/server/models/qts.js +1 -14
  520. package/server/models/qts_dieuchinh.js +1 -3
  521. package/server/models/qts_dieuchuyen.js +1 -4
  522. package/server/models/quanhuyen.js +1 -2
  523. package/server/models/reason.js +1 -2
  524. package/server/models/receivedinvoice.js +1 -2
  525. package/server/models/reportinfo.js +1 -5
  526. package/server/models/right.js +1 -4
  527. package/server/models/rpt.js +1 -2
  528. package/server/models/rptform.js +1 -3
  529. package/server/models/rptobject.js +1 -2
  530. package/server/models/sale_contract.js +1 -9
  531. package/server/models/schedule.js +1 -18
  532. package/server/models/schedule_log.js +1 -2
  533. package/server/models/shipbook.js +1 -12
  534. package/server/models/shortcut.js +1 -2
  535. package/server/models/smsaccount.js +1 -10
  536. package/server/models/smssend.js +1 -2
  537. package/server/models/so1.js +1 -22
  538. package/server/models/so5.js +1 -15
  539. package/server/models/so9.js +1 -19
  540. package/server/models/socai.js +1 -28
  541. package/server/models/socainpp.js +1 -18
  542. package/server/models/socaitc.js +1 -6
  543. package/server/models/socaitmp.js +1 -16
  544. package/server/models/socaitt.js +1 -4
  545. package/server/models/sodiemthuong.js +1 -4
  546. package/server/models/sokho.js +1 -27
  547. package/server/models/sokhocapphat.js +1 -18
  548. package/server/models/sokhokhongton.js +1 -19
  549. package/server/models/sokhonpp.js +1 -19
  550. package/server/models/sokhotc.js +1 -8
  551. package/server/models/sokhott.js +1 -18
  552. package/server/models/sophanbokh.js +1 -3
  553. package/server/models/sosanxuat.js +1 -5
  554. package/server/models/sotinhkh.js +1 -2
  555. package/server/models/spdd_ck.js +1 -3
  556. package/server/models/spdd_dk.js +1 -3
  557. package/server/models/step.js +1 -2
  558. package/server/models/strategicdiagram.js +1 -3
  559. package/server/models/strategicgoal.js +1 -4
  560. package/server/models/strategickpi.js +1 -6
  561. package/server/models/strategicobjective.js +1 -5
  562. package/server/models/strategicplan.js +1 -5
  563. package/server/models/subscribe.js +1 -2
  564. package/server/models/support.js +1 -2
  565. package/server/models/synctime.js +1 -2
  566. package/server/models/sys_job_queue_book_keeping.js +1 -2
  567. package/server/models/sysconfig.js +1 -2
  568. package/server/models/sysgroup.js +1 -2
  569. package/server/models/tableinfo.js +1 -3
  570. package/server/models/task.js +1 -9
  571. package/server/models/tc.js +1 -2
  572. package/server/models/tdttco.js +1 -9
  573. package/server/models/tdttco_tt.js +1 -5
  574. package/server/models/tdttno.js +1 -9
  575. package/server/models/tdttno_tt.js +1 -5
  576. package/server/models/templaterpt.js +1 -2
  577. package/server/models/templatestore.js +1 -3
  578. package/server/models/templatevoucher.js +1 -3
  579. package/server/models/tinhthanh.js +1 -2
  580. package/server/models/tokens.js +1 -3
  581. package/server/models/tontucthoi.js +1 -9
  582. package/server/models/trangthai.js +1 -4
  583. package/server/models/trangthaiapp.js +1 -4
  584. package/server/models/transaction.js +1 -16
  585. package/server/models/trialinfo.js +1 -2
  586. package/server/models/user.js +1 -40
  587. package/server/models/usergroup.js +1 -7
  588. package/server/models/vanchuyen.js +1 -12
  589. package/server/models/vat.js +1 -3
  590. package/server/models/vatra.js +1 -6
  591. package/server/models/vatvao.js +1 -6
  592. package/server/models/versioninfo.js +1 -2
  593. package/server/models/vietqrbanks.js +1 -2
  594. package/server/models/vsocai.js +1 -6
  595. package/server/models/wallet.js +1 -8
  596. package/server/models/warranty.js +1 -3
  597. package/server/models/warrantyclaim.js +1 -2
  598. package/server/models/warrantypolicy.js +1 -1
  599. package/server/models/workflow.js +1 -4
  600. package/server/models/xaphuong.js +1 -2
  601. package/server/models/xhd.js +1 -10
  602. package/server/models/ytdd_ck.js +1 -4
  603. package/server/models/ytdd_dk.js +1 -4
  604. package/server/models/zalo.js +1 -17
  605. package/server/modules/bot/webhook.js +1 -0
  606. package/server/modules/lists/bg-cddiem.js +1 -6
  607. package/server/modules/lists/bg-cddt.js +1 -7
  608. package/server/modules/lists/bg-cdkh.js +1 -11
  609. package/server/modules/lists/bg-cdnphep.js +1 -6
  610. package/server/modules/lists/bg-cdtk.js +1 -9
  611. package/server/modules/lists/bg-cdvt.js +1 -8
  612. package/server/modules/lists/bg-cdvtnpp.js +1 -8
  613. package/server/modules/lists/bg-fifo_dk.js +1 -8
  614. package/server/modules/lists/ls-account.js +1 -4
  615. package/server/modules/lists/ls-afflink.js +1 -3
  616. package/server/modules/lists/ls-approve.js +1 -5
  617. package/server/modules/lists/ls-assbank.js +1 -3
  618. package/server/modules/lists/ls-asscashwithdraw.js +1 -8
  619. package/server/modules/lists/ls-assissue.js +1 -3
  620. package/server/modules/lists/ls-asskey.js +1 -41
  621. package/server/modules/lists/ls-assreceiver.js +1 -3
  622. package/server/modules/lists/ls-assrequest.js +1 -4
  623. package/server/modules/lists/ls-asstransaction.js +1 -3
  624. package/server/modules/lists/ls-asstransfer.js +1 -3
  625. package/server/modules/lists/ls-assuser_identity.js +1 -1
  626. package/server/modules/lists/ls-bangtinhluong.js +1 -2
  627. package/server/modules/lists/ls-calllog.js +1 -4
  628. package/server/modules/lists/ls-cart.js +1 -14
  629. package/server/modules/lists/ls-chamcong.js +1 -3
  630. package/server/modules/lists/ls-chat_session.js +1 -5
  631. package/server/modules/lists/ls-checkin.js +1 -24
  632. package/server/modules/lists/ls-checkinactivity.js +1 -8
  633. package/server/modules/lists/ls-checkinkpi.js +1 -3
  634. package/server/modules/lists/ls-checkinlocation.js +1 -1
  635. package/server/modules/lists/ls-chitietluongds.js +1 -4
  636. package/server/modules/lists/ls-chitieukpi.js +1 -1
  637. package/server/modules/lists/ls-chudethaoluan.js +1 -1
  638. package/server/modules/lists/ls-ckgtluong.js +1 -1
  639. package/server/modules/lists/ls-comment.js +1 -9
  640. package/server/modules/lists/ls-congdoansx.js +1 -3
  641. package/server/modules/lists/ls-congtacvien.js +1 -5
  642. package/server/modules/lists/ls-consultant.js +1 -2
  643. package/server/modules/lists/ls-contract.js +1 -7
  644. package/server/modules/lists/ls-csluongtheods.js +1 -1
  645. package/server/modules/lists/ls-csphucap.js +1 -1
  646. package/server/modules/lists/ls-ctds.js +1 -4
  647. package/server/modules/lists/ls-ctds2.js +1 -4
  648. package/server/modules/lists/ls-currency.js +1 -1
  649. package/server/modules/lists/ls-customer.js +1 -22
  650. package/server/modules/lists/ls-customer_care.js +1 -1
  651. package/server/modules/lists/ls-datlich.js +1 -9
  652. package/server/modules/lists/ls-dckhauhaots.js +1 -3
  653. package/server/modules/lists/ls-deal.js +1 -3
  654. package/server/modules/lists/ls-diagram.js +1 -1
  655. package/server/modules/lists/ls-dkhoc.js +1 -6
  656. package/server/modules/lists/ls-dknphep.js +1 -1
  657. package/server/modules/lists/ls-dmban.js +1 -4
  658. package/server/modules/lists/ls-dmbp.js +1 -7
  659. package/server/modules/lists/ls-dmca.js +1 -1
  660. package/server/modules/lists/ls-dmchietkhau.js +1 -19
  661. package/server/modules/lists/ls-dmchietkhauhd.js +1 -4
  662. package/server/modules/lists/ls-dmchinhanh.js +1 -1
  663. package/server/modules/lists/ls-dmchucvu.js +1 -2
  664. package/server/modules/lists/ls-dmcpmh.js +1 -1
  665. package/server/modules/lists/ls-dmdiemthuong.js +1 -4
  666. package/server/modules/lists/ls-dmdoi.js +1 -4
  667. package/server/modules/lists/ls-dmdoituongdanhgia.js +1 -1
  668. package/server/modules/lists/ls-dmdt.js +1 -11
  669. package/server/modules/lists/ls-dmdvt.js +1 -2
  670. package/server/modules/lists/ls-dmgiaban.js +1 -4
  671. package/server/modules/lists/ls-dmgiamua.js +1 -4
  672. package/server/modules/lists/ls-dmgiathitruong.js +1 -15
  673. package/server/modules/lists/ls-dmgiathitruong_ngay.js +1 -2
  674. package/server/modules/lists/ls-dmgiathitruong_theodoi.js +1 -1
  675. package/server/modules/lists/ls-dmhoahonghd.js +1 -1
  676. package/server/modules/lists/ls-dmhoahongnpp.js +1 -1
  677. package/server/modules/lists/ls-dmkc.js +1 -3
  678. package/server/modules/lists/ls-dmkho.js +1 -7
  679. package/server/modules/lists/ls-dmkhuyenmai.js +1 -5
  680. package/server/modules/lists/ls-dmkhuyenmaihd.js +1 -3
  681. package/server/modules/lists/ls-dmletet.js +1 -1
  682. package/server/modules/lists/ls-dmlo.js +1 -1
  683. package/server/modules/lists/ls-dmloaicong.js +1 -1
  684. package/server/modules/lists/ls-dmloaits.js +1 -1
  685. package/server/modules/lists/ls-dmnckkm.js +1 -7
  686. package/server/modules/lists/ls-dmnghiepvu.js +1 -1
  687. package/server/modules/lists/ls-dmnguonvon.js +1 -1
  688. package/server/modules/lists/ls-dmnhnv.js +1 -6
  689. package/server/modules/lists/ls-dmnhtask.js +1 -5
  690. package/server/modules/lists/ls-dmnkh.js +1 -6
  691. package/server/modules/lists/ls-dmntt.js +1 -6
  692. package/server/modules/lists/ls-dmnv.js +1 -14
  693. package/server/modules/lists/ls-dmnvt.js +1 -7
  694. package/server/modules/lists/ls-dmphi.js +1 -6
  695. package/server/modules/lists/ls-dmqct.js +1 -2
  696. package/server/modules/lists/ls-dmqddvt.js +1 -3
  697. package/server/modules/lists/ls-dmtanggiamts.js +1 -1
  698. package/server/modules/lists/ls-dmto.js +1 -5
  699. package/server/modules/lists/ls-dmtt.js +1 -7
  700. package/server/modules/lists/ls-dmvt.js +1 -52
  701. package/server/modules/lists/ls-dmyt.js +1 -1
  702. package/server/modules/lists/ls-dokho.js +1 -1
  703. package/server/modules/lists/ls-dvcs.js +1 -1
  704. package/server/modules/lists/ls-ecomcategories.js +1 -5
  705. package/server/modules/lists/ls-ecomcategories_cty.js +1 -5
  706. package/server/modules/lists/ls-email.js +1 -4
  707. package/server/modules/lists/ls-events.js +1 -3
  708. package/server/modules/lists/ls-evoucher.js +1 -3
  709. package/server/modules/lists/ls-experiencejourney.js +1 -1
  710. package/server/modules/lists/ls-experiencejourneydata.js +1 -3
  711. package/server/modules/lists/ls-experiencejourneypersona.js +1 -4
  712. package/server/modules/lists/ls-experiencejourneystage.js +1 -1
  713. package/server/modules/lists/ls-fbconversation.js +1 -2
  714. package/server/modules/lists/ls-fbmessage.js +1 -2
  715. package/server/modules/lists/ls-fbpage.js +1 -11
  716. package/server/modules/lists/ls-fbpost.js +1 -2
  717. package/server/modules/lists/ls-file.js +1 -38
  718. package/server/modules/lists/ls-financialroadmap.js +1 -3
  719. package/server/modules/lists/ls-flow.js +1 -6
  720. package/server/modules/lists/ls-flowdata.js +1 -1
  721. package/server/modules/lists/ls-flowpending.js +1 -3
  722. package/server/modules/lists/ls-folder.js +1 -1
  723. package/server/modules/lists/ls-forminfo.js +1 -1
  724. package/server/modules/lists/ls-giaoca.js +1 -5
  725. package/server/modules/lists/ls-group.js +1 -5
  726. package/server/modules/lists/ls-hmcn.js +1 -2
  727. package/server/modules/lists/ls-hspbts.js +1 -3
  728. package/server/modules/lists/ls-introducebonus.js +1 -4
  729. package/server/modules/lists/ls-introducecode.js +1 -10
  730. package/server/modules/lists/ls-introducer.js +1 -21
  731. package/server/modules/lists/ls-kbm-bcdkt.js +1 -1
  732. package/server/modules/lists/ls-kbm-bcqt.js +1 -5
  733. package/server/modules/lists/ls-kbm-kqhdkd.js +1 -1
  734. package/server/modules/lists/ls-kbm-lcttgt.js +1 -1
  735. package/server/modules/lists/ls-kbm-lctttt.js +1 -1
  736. package/server/modules/lists/ls-kbm-pttct.js +1 -3
  737. package/server/modules/lists/ls-kbm-tkgtgt.js +1 -3
  738. package/server/modules/lists/ls-kbm-tmbctc.js +1 -3
  739. package/server/modules/lists/ls-kehoachdtcp.js +1 -4
  740. package/server/modules/lists/ls-keyresult.js +1 -7
  741. package/server/modules/lists/ls-khunghangthanhvien.js +1 -1
  742. package/server/modules/lists/ls-label.js +1 -1
  743. package/server/modules/lists/ls-lienhe.js +1 -4
  744. package/server/modules/lists/ls-like-module.js +1 -1
  745. package/server/modules/lists/ls-link.js +1 -1
  746. package/server/modules/lists/ls-loaidiem.js +1 -1
  747. package/server/modules/lists/ls-lock.js +1 -1
  748. package/server/modules/lists/ls-log.js +1 -3
  749. package/server/modules/lists/ls-mailaccount.js +1 -5
  750. package/server/modules/lists/ls-mailreceived.js +1 -5
  751. package/server/modules/lists/ls-mailsent.js +1 -4
  752. package/server/modules/lists/ls-mailtemplate.js +1 -4
  753. package/server/modules/lists/ls-maudanhgia.js +1 -3
  754. package/server/modules/lists/ls-message2.js +1 -8
  755. package/server/modules/lists/ls-message2setting.js +1 -5
  756. package/server/modules/lists/ls-news.js +1 -7
  757. package/server/modules/lists/ls-newsfeed.js +1 -4
  758. package/server/modules/lists/ls-note.js +1 -6
  759. package/server/modules/lists/ls-okr.js +1 -5
  760. package/server/modules/lists/ls-okrdiagram.js +1 -1
  761. package/server/modules/lists/ls-opportunity.js +1 -5
  762. package/server/modules/lists/ls-options.js +1 -4
  763. package/server/modules/lists/ls-parameter.js +1 -3
  764. package/server/modules/lists/ls-participant.js +1 -12
  765. package/server/modules/lists/ls-phieudanhgia.js +1 -7
  766. package/server/modules/lists/ls-phucap.js +1 -2
  767. package/server/modules/lists/ls-productcode.js +1 -9
  768. package/server/modules/lists/ls-profile.js +1 -1
  769. package/server/modules/lists/ls-ptthanhtoan.js +1 -3
  770. package/server/modules/lists/ls-qts-dieuchinh.js +1 -2
  771. package/server/modules/lists/ls-qts-dieuchuyen.js +1 -8
  772. package/server/modules/lists/ls-reason.js +1 -1
  773. package/server/modules/lists/ls-rpt.js +1 -5
  774. package/server/modules/lists/ls-rptform.js +1 -3
  775. package/server/modules/lists/ls-shortcut.js +1 -1
  776. package/server/modules/lists/ls-smsaccount.js +1 -1
  777. package/server/modules/lists/ls-smssend.js +1 -3
  778. package/server/modules/lists/ls-sosanxuat.js +1 -4
  779. package/server/modules/lists/ls-step.js +1 -1
  780. package/server/modules/lists/ls-strategicdiagram.js +1 -1
  781. package/server/modules/lists/ls-strategicgoal.js +1 -3
  782. package/server/modules/lists/ls-strategickpi.js +1 -7
  783. package/server/modules/lists/ls-strategicobjective.js +1 -3
  784. package/server/modules/lists/ls-strategicplan.js +1 -6
  785. package/server/modules/lists/ls-support.js +1 -3
  786. package/server/modules/lists/ls-task.js +1 -28
  787. package/server/modules/lists/ls-tc.js +1 -1
  788. package/server/modules/lists/ls-templaterpt.js +1 -5
  789. package/server/modules/lists/ls-templatevoucher.js +1 -1
  790. package/server/modules/lists/ls-tontucthoi.js +1 -3
  791. package/server/modules/lists/ls-trangthaiapp.js +1 -3
  792. package/server/modules/lists/ls-transaction.js +1 -4
  793. package/server/modules/lists/ls-usergroup.js +1 -7
  794. package/server/modules/lists/ls-vat.js +1 -1
  795. package/server/modules/lists/ls-vatra.js +1 -5
  796. package/server/modules/lists/ls-vatvao.js +1 -6
  797. package/server/modules/lists/ls-warranty.js +1 -3
  798. package/server/modules/lists/ls-workflow.js +1 -1
  799. package/server/modules/lists/ls_hanmucton.js +1 -3
  800. package/server/modules/lists/ls_hspb.js +1 -4
  801. package/server/modules/lists/ls_spdd_ck.js +1 -3
  802. package/server/modules/lists/ls_spdd_dk.js +1 -3
  803. package/server/modules/lists/ls_ytdd_ck.js +1 -4
  804. package/server/modules/lists/ls_ytdd_dk.js +1 -4
  805. package/server/modules/lists/sys-attend.js +1 -4
  806. package/server/modules/lists/sys-follow.js +1 -4
  807. package/server/modules/lists/sys-right.js +1 -2
  808. package/server/modules/public/app.js +1 -4
  809. package/server/modules/public/approve.js +1 -37
  810. package/server/modules/public/callin.js +1 -7
  811. package/server/modules/public/comment.js +1 -5
  812. package/server/modules/public/dmnvt.js +1 -4
  813. package/server/modules/public/dmvt.js +1 -9
  814. package/server/modules/public/file.js +1 -11
  815. package/server/modules/public/forminfo.js +1 -1
  816. package/server/modules/public/group.js +1 -4
  817. package/server/modules/public/introducecode.js +1 -1
  818. package/server/modules/public/listinfo.js +1 -1
  819. package/server/modules/public/media-webhook.js +1 -1
  820. package/server/modules/public/partner.js +1 -1
  821. package/server/modules/public/paymentCallback.js +1 -32
  822. package/server/modules/public/province.js +1 -1
  823. package/server/modules/public/ptthanhtoan.js +1 -4
  824. package/server/modules/public/subscribe.js +1 -30
  825. package/server/modules/public/support.js +1 -3
  826. package/server/modules/public/tableinfo.js +1 -1
  827. package/server/modules/public/trialinfo.js +1 -4
  828. package/server/modules/public/versioninfo.js +1 -1
  829. package/server/modules/reports/calc-tinhgiafifo.js +1 -8
  830. package/server/modules/reports/calc-tinhgiatb.js +1 -7
  831. package/server/modules/reports/calc-tinhgiathanh.js +1 -7
  832. package/server/modules/reports/calc-tinhkhauhaots.js +1 -3
  833. package/server/modules/reports/calc-tinhluong.js +1 -68
  834. package/server/modules/reports/rp-assbonus.js +1 -4
  835. package/server/modules/reports/rp-asssupply.js +1 -1
  836. package/server/modules/reports/rp-asstransferlog.js +1 -10
  837. package/server/modules/reports/rp-backup.js +1 -4
  838. package/server/modules/reports/rp-banggiatb.js +1 -3
  839. package/server/modules/reports/rp-bangtinhkhauhao.js +1 -6
  840. package/server/modules/reports/rp-baoCaoFifoKy.js +1 -1
  841. package/server/modules/reports/rp-baocaokhachhang.js +1 -6
  842. package/server/modules/reports/rp-bcdkt.js +1 -11
  843. package/server/modules/reports/rp-bcintroducebonus.js +1 -4
  844. package/server/modules/reports/rp-bckhtiemnang.js +1 -3
  845. package/server/modules/reports/rp-bcqt.js +1 -85
  846. package/server/modules/reports/rp-bkchamcong.js +1 -5
  847. package/server/modules/reports/rp-bkct.js +1 -13
  848. package/server/modules/reports/rp-bkshipbook.js +1 -8
  849. package/server/modules/reports/rp-bkvanchuyen.js +1 -8
  850. package/server/modules/reports/rp-bkvatra.js +1 -7
  851. package/server/modules/reports/rp-bkvatvao.js +1 -7
  852. package/server/modules/reports/rp-capnhatsocaitc.js +1 -4
  853. package/server/modules/reports/rp-cdpsdiem.js +1 -4
  854. package/server/modules/reports/rp-cdpsdt.js +1 -5
  855. package/server/modules/reports/rp-cdpskh.js +1 -8
  856. package/server/modules/reports/rp-cdpsnphep.js +1 -3
  857. package/server/modules/reports/rp-cdpstk.js +1 -4
  858. package/server/modules/reports/rp-chitietchitientheohoadon.js +1 -12
  859. package/server/modules/reports/rp-chitiettaisan.js +1 -13
  860. package/server/modules/reports/rp-chitietthutientheohoadon.js +1 -13
  861. package/server/modules/reports/rp-ckcn.js +1 -3
  862. package/server/modules/reports/rp-ckdiem.js +1 -2
  863. package/server/modules/reports/rp-cktk.js +1 -3
  864. package/server/modules/reports/rp-ckvt.js +1 -10
  865. package/server/modules/reports/rp-ckvttheokho.js +1 -4
  866. package/server/modules/reports/rp-ckvttheotg.js +1 -4
  867. package/server/modules/reports/rp-ckvttt.js +1 -3
  868. package/server/modules/reports/rp-congnophaithutheotuoino.js +1 -3
  869. package/server/modules/reports/rp-congnophaitratheotuoino.js +1 -3
  870. package/server/modules/reports/rp-congnosapthu.js +1 -4
  871. package/server/modules/reports/rp-congnosaptra.js +1 -4
  872. package/server/modules/reports/rp-congviectheobp.js +1 -9
  873. package/server/modules/reports/rp-congviectheodt.js +1 -8
  874. package/server/modules/reports/rp-congviectheokh.js +1 -8
  875. package/server/modules/reports/rp-congviectheonv.js +1 -9
  876. package/server/modules/reports/rp-congviectheotimeline.js +1 -6
  877. package/server/modules/reports/rp-ctbanle.js +1 -15
  878. package/server/modules/reports/rp-ctbanle2.js +1 -20
  879. package/server/modules/reports/rp-ctbanlectv.js +1 -20
  880. package/server/modules/reports/rp-ctbanlenpp.js +1 -24
  881. package/server/modules/reports/rp-ctdanhgianhanvien.js +1 -8
  882. package/server/modules/reports/rp-cthangbanbitralai.js +1 -4
  883. package/server/modules/reports/rp-ctmuahang.js +1 -7
  884. package/server/modules/reports/rp-cttralaihang.js +1 -4
  885. package/server/modules/reports/rp-databanle.js +1 -10
  886. package/server/modules/reports/rp-diemthuong.js +1 -2
  887. package/server/modules/reports/rp-dkcn.js +1 -3
  888. package/server/modules/reports/rp-dktk.js +1 -2
  889. package/server/modules/reports/rp-dsnhanviencm.js +1 -9
  890. package/server/modules/reports/rp-dsnhanvientb.js +1 -9
  891. package/server/modules/reports/rp-dtbanlekempk.js +1 -12
  892. package/server/modules/reports/rp-dtbanletheoct.js +1 -22
  893. package/server/modules/reports/rp-dtbanletheoctkempk.js +1 -25
  894. package/server/modules/reports/rp-dtbanletheokh.js +1 -17
  895. package/server/modules/reports/rp-dtbanletheokhnpp.js +1 -19
  896. package/server/modules/reports/rp-dtbanletheokho.js +1 -15
  897. package/server/modules/reports/rp-dtbanletheonam.js +1 -3
  898. package/server/modules/reports/rp-dtbanletheongay.js +1 -1
  899. package/server/modules/reports/rp-dtbanletheonpp.js +1 -23
  900. package/server/modules/reports/rp-dtbanletheonv.js +1 -19
  901. package/server/modules/reports/rp-dtbanletheoquy.js +1 -3
  902. package/server/modules/reports/rp-dtbanletheosp.js +1 -9
  903. package/server/modules/reports/rp-dtbanletheospnpp.js +1 -6
  904. package/server/modules/reports/rp-dtbanletheothang.js +1 -3
  905. package/server/modules/reports/rp-dtbanletheothungan.js +1 -12
  906. package/server/modules/reports/rp-dtbanletheovt.js +1 -2
  907. package/server/modules/reports/rp-dtbanletheovtnpp.js +1 -2
  908. package/server/modules/reports/rp-dutoanthuchitheodt.js +1 -4
  909. package/server/modules/reports/rp-getPXC2PNC.js +1 -8
  910. package/server/modules/reports/rp-getariseofaccountsbymonth.js +1 -4
  911. package/server/modules/reports/rp-getbtpb.js +1 -6
  912. package/server/modules/reports/rp-getcashbycashier.js +1 -7
  913. package/server/modules/reports/rp-getcschietkhau.js +1 -5
  914. package/server/modules/reports/rp-getdinhmuc4lenhcp.js +1 -7
  915. package/server/modules/reports/rp-getdinhmuc4pxk.js +1 -9
  916. package/server/modules/reports/rp-getdk4pht.js +1 -8
  917. package/server/modules/reports/rp-getdk4pkc.js +1 -10
  918. package/server/modules/reports/rp-getdttheoca.js +1 -5
  919. package/server/modules/reports/rp-getinvoice2pay.js +1 -4
  920. package/server/modules/reports/rp-getinvoice2receive.js +1 -4
  921. package/server/modules/reports/rp-getinvoice2return.js +1 -5
  922. package/server/modules/reports/rp-getinvoice2return_bl.js +1 -6
  923. package/server/modules/reports/rp-getkehoachmh4lenhcp.js +1 -4
  924. package/server/modules/reports/rp-getkhauhao.js +1 -7
  925. package/server/modules/reports/rp-getluong.js +1 -8
  926. package/server/modules/reports/rp-getluongchuyen.js +1 -5
  927. package/server/modules/reports/rp-getpn2fee.js +1 -5
  928. package/server/modules/reports/rp-getpn2return.js +1 -5
  929. package/server/modules/reports/rp-getthanhpham4pnk.js +1 -7
  930. package/server/modules/reports/rp-getvc2xhd.js +1 -11
  931. package/server/modules/reports/rp-gt_cpnvltt.js +1 -6
  932. package/server/modules/reports/rp-hangbanbitralai.js +1 -5
  933. package/server/modules/reports/rp-hangthanhvien.js +1 -3
  934. package/server/modules/reports/rp-hoadonbanhangtheohantt.js +1 -5
  935. package/server/modules/reports/rp-hoadonmuahangtheohantt.js +1 -5
  936. package/server/modules/reports/rp-hoahong.js +1 -15
  937. package/server/modules/reports/rp-kcsns.js +1 -19
  938. package/server/modules/reports/rp-kgchamcong.js +1 -1
  939. package/server/modules/reports/rp-khoaso.js +1 -11
  940. package/server/modules/reports/rp-kiemtrasocaitcvssocai.js +1 -6
  941. package/server/modules/reports/rp-kqdanhgianhanvien.js +1 -5
  942. package/server/modules/reports/rp-kqhdkd.js +1 -1
  943. package/server/modules/reports/rp-lcttgt.js +1 -16
  944. package/server/modules/reports/rp-lctttt.js +1 -11
  945. package/server/modules/reports/rp-linkslist.js +1 -4
  946. package/server/modules/reports/rp-phanbochitienchohoadon.js +1 -11
  947. package/server/modules/reports/rp-phanbothutienchohoadon.js +1 -11
  948. package/server/modules/reports/rp-ptbitralai.js +1 -7
  949. package/server/modules/reports/rp-ptcttct.js +1 -24
  950. package/server/modules/reports/rp-ptdonhang.js +1 -8
  951. package/server/modules/reports/rp-pttct.js +1 -52
  952. package/server/modules/reports/rp-pttctkho.js +1 -32
  953. package/server/modules/reports/rp-pttctkho2.js +1 -29
  954. package/server/modules/reports/rp-referredusers.js +1 -5
  955. package/server/modules/reports/rp-sctbhxh.js +1 -4
  956. package/server/modules/reports/rp-sctcnkh.js +1 -11
  957. package/server/modules/reports/rp-sctdiem.js +1 -3
  958. package/server/modules/reports/rp-sctdt.js +1 -7
  959. package/server/modules/reports/rp-sctdtcp.js +1 -11
  960. package/server/modules/reports/rp-sctluong.js +1 -6
  961. package/server/modules/reports/rp-sctthuetncn.js +1 -4
  962. package/server/modules/reports/rp-scttk.js +1 -9
  963. package/server/modules/reports/rp-sctvt.js +1 -5
  964. package/server/modules/reports/rp-sctvt_sl.js +1 -5
  965. package/server/modules/reports/rp-sctvtnpp.js +1 -6
  966. package/server/modules/reports/rp-sctvttt.js +1 -5
  967. package/server/modules/reports/rp-search.js +1 -4
  968. package/server/modules/reports/rp-socai.js +1 -6
  969. package/server/modules/reports/rp-socaitk.js +1 -1
  970. package/server/modules/reports/rp-sochut.js +1 -7
  971. package/server/modules/reports/rp-sokho.js +1 -7
  972. package/server/modules/reports/rp-sokhott.js +1 -5
  973. package/server/modules/reports/rp-sonkbh.js +1 -5
  974. package/server/modules/reports/rp-sonkc.js +1 -6
  975. package/server/modules/reports/rp-sonkct.js +1 -5
  976. package/server/modules/reports/rp-sonkmh.js +1 -5
  977. package/server/modules/reports/rp-sonktt.js +1 -5
  978. package/server/modules/reports/rp-soquy.js +1 -11
  979. package/server/modules/reports/rp-sosanhkhvatt.js +1 -13
  980. package/server/modules/reports/rp-sosanhkhvatt2.js +1 -5
  981. package/server/modules/reports/rp-sotaisan.js +1 -13
  982. package/server/modules/reports/rp-sotiengui.js +1 -7
  983. package/server/modules/reports/rp-taodinhmuctudkhoc.js +1 -5
  984. package/server/modules/reports/rp-thbanhangkempk.js +1 -28
  985. package/server/modules/reports/rp-thdanhgianhanvien.js +1 -9
  986. package/server/modules/reports/rp-thgt.js +1 -6
  987. package/server/modules/reports/rp-thnxt.js +1 -11
  988. package/server/modules/reports/rp-thnxt_sl.js +1 -9
  989. package/server/modules/reports/rp-thnxtnpp.js +1 -10
  990. package/server/modules/reports/rp-thnxttt.js +1 -9
  991. package/server/modules/reports/rp-tkbanhangtheogioithieu.js +1 -9
  992. package/server/modules/reports/rp-tkgioithieukh.js +1 -4
  993. package/server/modules/reports/rp-tkgtgt.js +1 -76
  994. package/server/modules/reports/rp-tkgtgt_old.js +1 -7
  995. package/server/modules/reports/rp-tmbctc.js +1 -20
  996. package/server/modules/reports/rp-tonghopbanhang.js +1 -6
  997. package/server/modules/reports/rp-tonghopmuahang.js +1 -5
  998. package/server/modules/reports/rp-tonghoptralaihang.js +1 -5
  999. package/server/modules/reports/rp-tongquanbanle.js +1 -20
  1000. package/server/modules/reports/rp-tongquanbds.js +1 -3
  1001. package/server/modules/reports/rp-tongquancongty.js +1 -6
  1002. package/server/modules/reports/rp-tongquanctvnpp.js +1 -12
  1003. package/server/modules/reports/rp-tongquannvbh.js +1 -14
  1004. package/server/modules/reports/rp-tongquannvnpp.js +1 -5
  1005. package/server/modules/reports/rp-uoctinhnvl.js +1 -11
  1006. package/server/modules/reports/rp-wallet.js +1 -3
  1007. package/server/modules/reports/rpt-tkdiemtichluy.js +1 -9
  1008. package/server/modules/systems/sys-app.js +1 -34
  1009. package/server/modules/systems/sys-colleague.js +1 -11
  1010. package/server/modules/systems/sys-data_list_config.js +1 -1
  1011. package/server/modules/systems/sys-domain.js +1 -1
  1012. package/server/modules/systems/sys-ecomproductlines.js +1 -1
  1013. package/server/modules/systems/sys-exportexceltemplate.js +1 -1
  1014. package/server/modules/systems/sys-fieldright.js +1 -1
  1015. package/server/modules/systems/sys-importexceltemplate.js +1 -1
  1016. package/server/modules/systems/sys-labelinfo.js +1 -3
  1017. package/server/modules/systems/sys-listinfo.js +1 -10
  1018. package/server/modules/systems/sys-menuinfo.js +1 -1
  1019. package/server/modules/systems/sys-message.js +1 -14
  1020. package/server/modules/systems/sys-moduleinfo.js +1 -2
  1021. package/server/modules/systems/sys-notification.js +1 -8
  1022. package/server/modules/systems/sys-quanhuyen.js +1 -1
  1023. package/server/modules/systems/sys-reportinfo.js +1 -5
  1024. package/server/modules/systems/sys-rptobject.js +1 -1
  1025. package/server/modules/systems/sys-schedule.js +1 -10
  1026. package/server/modules/systems/sys-sysconfig.js +1 -1
  1027. package/server/modules/systems/sys-sysgroup.js +1 -1
  1028. package/server/modules/systems/sys-tableinfo.js +1 -1
  1029. package/server/modules/systems/sys-templatestore.js +1 -5
  1030. package/server/modules/systems/sys-tinhthanh.js +1 -1
  1031. package/server/modules/systems/sys-token.js +1 -3
  1032. package/server/modules/systems/sys-trangthai.js +1 -3
  1033. package/server/modules/systems/sys-trialinfo.js +1 -1
  1034. package/server/modules/systems/sys-user.js +1 -45
  1035. package/server/modules/systems/sys-users.js +1 -10
  1036. package/server/modules/systems/sys-versioninfo.js +1 -1
  1037. package/server/modules/systems/sys-vietqrbanks.js +1 -1
  1038. package/server/modules/systems/sys-xaphuong.js +1 -1
  1039. package/server/modules/vouchers/vo-banggiaban.js +1 -8
  1040. package/server/modules/vouchers/vo-bc1.js +1 -34
  1041. package/server/modules/vouchers/vo-bc5.js +1 -15
  1042. package/server/modules/vouchers/vo-bg1.js +1 -10
  1043. package/server/modules/vouchers/vo-bg2.js +1 -12
  1044. package/server/modules/vouchers/vo-bn1.js +1 -36
  1045. package/server/modules/vouchers/vo-bn5.js +1 -15
  1046. package/server/modules/vouchers/vo-dh2.js +1 -35
  1047. package/server/modules/vouchers/vo-dinhmucsx.js +1 -6
  1048. package/server/modules/vouchers/vo-dkb.js +1 -21
  1049. package/server/modules/vouchers/vo-dn0.js +1 -9
  1050. package/server/modules/vouchers/vo-dnm.js +1 -20
  1051. package/server/modules/vouchers/vo-hd1.js +1 -37
  1052. package/server/modules/vouchers/vo-hd2.js +1 -108
  1053. package/server/modules/vouchers/vo-hd3.js +1 -38
  1054. package/server/modules/vouchers/vo-hd4.js +1 -13
  1055. package/server/modules/vouchers/vo-hd7.js +1 -29
  1056. package/server/modules/vouchers/vo-hd8.js +1 -29
  1057. package/server/modules/vouchers/vo-hde.js +1 -39
  1058. package/server/modules/vouchers/vo-htl.js +1 -11
  1059. package/server/modules/vouchers/vo-kbbtpb.js +1 -6
  1060. package/server/modules/vouchers/vo-kehoachmh.js +1 -11
  1061. package/server/modules/vouchers/vo-lenhcapphat.js +1 -9
  1062. package/server/modules/vouchers/vo-lenhsx.js +1 -12
  1063. package/server/modules/vouchers/vo-pbl.js +1 -94
  1064. package/server/modules/vouchers/vo-pc0.js +1 -14
  1065. package/server/modules/vouchers/vo-pc1.js +1 -31
  1066. package/server/modules/vouchers/vo-pc2.js +1 -25
  1067. package/server/modules/vouchers/vo-pc3.js +1 -14
  1068. package/server/modules/vouchers/vo-pc5.js +1 -15
  1069. package/server/modules/vouchers/vo-pc6.js +1 -19
  1070. package/server/modules/vouchers/vo-pcl.js +1 -7
  1071. package/server/modules/vouchers/vo-pdn.js +1 -11
  1072. package/server/modules/vouchers/vo-pdx.js +1 -9
  1073. package/server/modules/vouchers/vo-pgh.js +1 -16
  1074. package/server/modules/vouchers/vo-pht.js +1 -6
  1075. package/server/modules/vouchers/vo-pkc.js +1 -5
  1076. package/server/modules/vouchers/vo-pkh.js +1 -9
  1077. package/server/modules/vouchers/vo-pkk.js +1 -12
  1078. package/server/modules/vouchers/vo-pkt.js +1 -12
  1079. package/server/modules/vouchers/vo-pn1.js +1 -30
  1080. package/server/modules/vouchers/vo-pn2.js +1 -17
  1081. package/server/modules/vouchers/vo-pn3.js +1 -18
  1082. package/server/modules/vouchers/vo-pn5.js +1 -18
  1083. package/server/modules/vouchers/vo-pn6.js +1 -18
  1084. package/server/modules/vouchers/vo-pn9.js +1 -23
  1085. package/server/modules/vouchers/vo-pnc.js +1 -19
  1086. package/server/modules/vouchers/vo-pnh.js +1 -17
  1087. package/server/modules/vouchers/vo-pnk.js +1 -14
  1088. package/server/modules/vouchers/vo-pnknpp.js +1 -12
  1089. package/server/modules/vouchers/vo-po1.js +1 -14
  1090. package/server/modules/vouchers/vo-ppb.js +1 -8
  1091. package/server/modules/vouchers/vo-pt1.js +1 -20
  1092. package/server/modules/vouchers/vo-pt5.js +1 -15
  1093. package/server/modules/vouchers/vo-ptl.js +1 -8
  1094. package/server/modules/vouchers/vo-purchase_contract.js +1 -9
  1095. package/server/modules/vouchers/vo-pxc.js +1 -24
  1096. package/server/modules/vouchers/vo-pxh.js +1 -18
  1097. package/server/modules/vouchers/vo-pxk.js +1 -15
  1098. package/server/modules/vouchers/vo-pxknpp.js +1 -14
  1099. package/server/modules/vouchers/vo-qts.js +1 -12
  1100. package/server/modules/vouchers/vo-sale_contract.js +1 -11
  1101. package/server/modules/vouchers/vo-shipbook.js +1 -17
  1102. package/server/modules/vouchers/vo-so1.js +1 -125
  1103. package/server/modules/vouchers/vo-so5.js +1 -57
  1104. package/server/modules/vouchers/vo-so7.js +1 -97
  1105. package/server/modules/vouchers/vo-so9.js +1 -119
  1106. package/server/modules/vouchers/vo-vanchuyen.js +1 -14
  1107. package/server/modules/vouchers/vo-xhd.js +1 -33
  1108. package/server/route.js +1 -54
  1109. package/server/services/invoiceFetcher.js +1 -12
  1110. package/server/sslConfig.js +1 -2
  1111. package/server/test/array.js +59 -0
  1112. package/server/test/utils.js +191 -0
  1113. package/server/tools/convertVideo.js +19 -0
  1114. package/server/tools/create_province.js +11191 -0
  1115. package/server/tools/redis-smoke-test.js +195 -0
  1116. package/server/tools/resetPassword.js +45 -0
  1117. package/server/tools/set_px_gia_dd.js +120 -0
  1118. package/server/tools/test.js +6 -0
  1119. package/server/tools/update copy.js +116 -0
  1120. package/server/tools/update_system.js +47 -0
  1121. package/server/workers/backupApp.js +1 -10
  1122. package/server/workers/calcGrid.js +1 -9
  1123. package/server/workers/excelParser.js +1 -10
  1124. package/server/workers/inputWorker.js +1 -8
  1125. package/server/workers/pushNotify.js +1 -11
  1126. package/server/workers/reportWorker.js +1 -8
  1127. package/server/workers/restoreApp.js +1 -10
  1128. package/server/workers/runScript.js +1 -5
  1129. package/server/workers/sendEmail.js +1 -14
  1130. package/server/workers/webhook.js +1 -5
  1131. package/server/workers/worker-utils.js +1 -5
  1132. package/server/auths/local_old.js +0 -60
  1133. package/server/controllers/controllerUtils_v1.js +0 -72
  1134. package/server/controllers/controller_old.js +0 -129
  1135. package/server/controllers/createHandler_old.js +0 -35
  1136. package/server/controllers/deleteHandler_old.js +0 -12
  1137. package/server/controllers/exportHandler_old.js +0 -17
  1138. package/server/controllers/findHandler_old.js +0 -74
  1139. package/server/controllers/importFromJsonHandler_old.js +0 -6
  1140. package/server/controllers/importHandler_old.js +0 -41
  1141. package/server/controllers/updateFieldHandler_old.js +0 -13
  1142. package/server/controllers/updateHandler_old.js +0 -40
  1143. package/server/controllers/viewHandler_old.js +0 -14
  1144. package/server/libs/BlockchainTransactionPool.js +0 -3
  1145. package/server/modules/lists/ls-assabcihandler.js +0 -3
  1146. package/server/modules/lists/ls-assbooking.js +0 -20
  1147. package/server/modules/lists/ls-assbuy.js +0 -8
  1148. package/server/modules/lists/ls-assinvestment.js +0 -31
  1149. package/server/modules/lists/ls-assneedtobuy.js +0 -10
  1150. package/server/modules/lists/ls-assperiod.js +0 -19
  1151. package/server/modules/lists/ls-assproduct.js +0 -9
  1152. package/server/modules/lists/ls-assprofitsharing.js +0 -8
  1153. package/server/modules/lists/ls-asssell.js +0 -13
  1154. package/server/modules/lists/ls-asswithdraw.js +0 -12
  1155. package/server/modules/reports/rp-analyzedata.js +0 -6
  1156. package/server/modules/reports/rp-assinterest.js +0 -8
  1157. package/server/modules/reports/rp-assproductowners.js +0 -3
  1158. package/server/workers/restoreApp_bk.js +0 -23
@@ -1,58 +1 @@
1
- const right=global.getModel("right"),App=global.getModel("app"),Participant=global.getModel("participant"),UserGroup=global.getModel("usergroup"),underscore=require("underscore"),moment=require("moment"),trangthai=global.getModel("trangthai"),_=require("lodash"),{evalute2}=require("./utils"),not_need_right_models="parameter rpt label labelinfo templaterpt templatestore templatevoucher listinfo reportinfo shortcut rptobject rptform forminfo importexceltemplate options".split(" "),MAX_DEPTH=20,isAdminAsync=
2
- ($current_id_app$$,$email$$,$options$$={})=>new Promise(($resolve$$,$reject$$)=>{exports.isAdmin($current_id_app$$,$email$$,($e$$,$admin$$,$app$$,$participant$$)=>{if($e$$)return $reject$$($e$$);$resolve$$({admin:$admin$$,app:$app$$,participant:$participant$$})},$options$$)});
3
- exports.dsChildrenGroups=async($id_app$$,$group_id$$)=>{const $visited$$=new Set([$group_id$$?.toString()].filter(Boolean));var $frontier_next$$=[$group_id$$];let $depth$$=0;for(;$frontier_next$$.length>0&&$depth$$<MAX_DEPTH;){$depth$$++;var $children_id$$=await UserGroup.find({id_app:$id_app$$,group_mother:{$in:$frontier_next$$}},{_id:1}).lean();$frontier_next$$=[];for(const $c$$ of $children_id$$)$children_id$$=$c$$._id.toString(),$visited$$.has($children_id$$)||($visited$$.add($children_id$$),
4
- $frontier_next$$.push($c$$._id));$depth$$===MAX_DEPTH&&$frontier_next$$.length>0&&Logger.warn(`[dsChildrenGroups] \u0111\u1ea1t maxDepth ${MAX_DEPTH}, d\u1eebng.`)}$visited$$.delete($group_id$$?.toString());return[...$visited$$]};
5
- exports.dsDangPhuTrach=async($ds_phu_trach_id_app$$,$allGroups_email$$)=>{if(!$ds_phu_trach_id_app$$)return[];const $key_cache$$=`userdangphutrach::${$ds_phu_trach_id_app$$}::${$allGroups_email$$}`;var $depth$$=$allGroups_email$$==="public"?10080:1;if(global.cacheDatas[$key_cache$$]&&moment().diff(moment(global.cacheDatas[$key_cache$$].time),"minutes")<$depth$$)return global.cacheDatas[$key_cache$$].data;$depth$$=(await UserGroup.find({ds_phu_trach:$allGroups_email$$,id_app:$ds_phu_trach_id_app$$},
6
- {_id:1}).lean()).map($g$$=>$g$$._id.toString());if($depth$$.length===0)return global.cacheDatas[$key_cache$$]={time:new Date,data:[]},[];$allGroups_email$$=new Set($depth$$);var $frontier$jscomp$1_next$$=[...$depth$$];for($depth$$=0;$frontier$jscomp$1_next$$.length>0&&$depth$$<MAX_DEPTH;){$depth$$++;var $children$jscomp$1_id$$=await UserGroup.find({id_app:$ds_phu_trach_id_app$$,group_mother:{$in:$frontier$jscomp$1_next$$}},{_id:1,group_mother:1}).lean();$frontier$jscomp$1_next$$=[];for(const $c$$ of $children$jscomp$1_id$$)$children$jscomp$1_id$$=
7
- $c$$._id.toString(),$allGroups_email$$.has($children$jscomp$1_id$$)||($allGroups_email$$.add($children$jscomp$1_id$$),$frontier$jscomp$1_next$$.push($c$$._id))}$ds_phu_trach_id_app$$=(await Participant.find({id_app:$ds_phu_trach_id_app$$,group_id:{$in:[...$allGroups_email$$]}},{email:1}).lean()).map($p$$=>$p$$.email);global.cacheDatas[$key_cache$$]={time:new Date,data:_.cloneDeep($ds_phu_trach_id_app$$)};return $ds_phu_trach_id_app$$};
8
- exports.dsKhDangPhuTrach=async($data_id_app$$,$phu_trach$$)=>{if(!$data_id_app$$)return[];var $key_cache$$=typeof $phu_trach$$==="object"?JSON.stringify($phu_trach$$):$phu_trach$$;$key_cache$$=`khdangphutrach::${$data_id_app$$}::${$key_cache$$}`;if(global.cacheDatas[$key_cache$$]&&moment().diff(moment(global.cacheDatas[$key_cache$$].time),"minutes")<1)return Logger.info("lay danh sach khach hang dang phu trach tu cache",$key_cache$$),global.cacheDatas[$key_cache$$].data;$data_id_app$$=(await global.getModel("customer").find({id_app:$data_id_app$$,
9
- phu_trach:$phu_trach$$},{ma_kh:1}).lean()).map($p$$=>$p$$.ma_kh);global.cacheDatas[$key_cache$$]={time:new Date,data:_.cloneDeep($data_id_app$$)};return $data_id_app$$};
10
- exports.isAdmin=function($current_id_app$$,$email$$,$callback$$){if(!$current_id_app$$)return $callback$$(null,!0);App.findOne({_id:$current_id_app$$}).lean().then(async $app$$=>{if(!$app$$)return $callback$$({error:`ID app: ${$current_id_app$$} kh\u00f4ng t\u1ed3n t\u1ea1i`,code:-7},!1);if($app$$.trang_thai==="9")return $callback$$({error:`C\u00f4ng ty ${$app$$.name} \u0111\u00e3 ng\u1eebng s\u1eed d\u1ee5ng`,code:-9},!1);if(global.configs.check_expire_date&&$app$$.expire_date&&(new Date($app$$.expire_date)).getTime()<
11
- Date.now())return $callback$$({error:`C\u00f4ng ty ${$app$$.name} \u0111\u00e3 h\u1ebft h\u1ea1n s\u1eed d\u1ee5ng`,code:-8},!1);if(global.storageUsage&&($app$$.dung_luong_duoc_su_dung||$app$$.so_tai_lieu_duoc_su_dung)){var $da_su_dung_participant$$=await global.storageUsage.getTotalUsageByApp($app$$._id.toString());if($app$$.dung_luong_duoc_su_dung&&$app$$.dung_luong_duoc_su_dung<($da_su_dung_participant$$?.total_bytes||0)||$app$$.so_tai_lieu_duoc_su_dung&&$app$$.so_tai_lieu_duoc_su_dung<($da_su_dung_participant$$?.total_docs||
12
- 0))return $callback$$({error:`C\u00f4ng ty ${$app$$.name} \u0111\u00e3 s\u1eed d\u1ee5ng h\u1ebft dung l\u01b0\u1ee3ng`,code:-8},!1)}$da_su_dung_participant$$=await Participant.findOne({id_app:$current_id_app$$,email:$email$$}).lean();if(!$da_su_dung_participant$$)return $callback$$({error:`B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n truy c\u1eadp c\u00f4ng ty ${$app$$.name}`,code:-2},!1);if(!$da_su_dung_participant$$.admin&&!$da_su_dung_participant$$.active&&$email$$!=="public")return $callback$$({error:"T\u00e0i kho\u1ea3n c\u1ee7a b\u1ea1n \u0111ang ch\u1edd \u0111\u01b0\u1ee3c x\u00e1c nh\u1eadn",
13
- code:-1},!1);$callback$$(null,$da_su_dung_participant$$.admin,$app$$,$da_su_dung_participant$$)}).catch($e$$=>$callback$$($e$$,!1))};const findRight=async($id_app$$,$key_right$$,$permistion_code$$,$module$$)=>{let $_right$$=await right.findOne({id_app:$id_app$$,email:$key_right$$,module:$permistion_code$$}).lean();$_right$$||$permistion_code$$===$module$$.toLowerCase()||($_right$$=await right.findOne({id_app:$id_app$$,email:$key_right$$,module:$module$$.toLowerCase()}).lean());return $_right$$};
14
- exports.hasRight=async function($action_right_current_id_app$$,$email$$,$module$$,$action$$,$callbackMain$$,$options$$={}){if($options$$.notNeedRight)return $callbackMain$$(null,!0);if(!$action_right_current_id_app$$)return $action$$==="view"||$action$$==="view_all"||$options$$.user?.admin?$callbackMain$$(null,!0):$callbackMain$$("B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n th\u1ef1c hi\u1ec7n thao t\u00e1c n\u00e0y",!1);const $model$$=global.controllers[$module$$]?.model;if($model$$?.schema&&!underscore.has($model$$.schema.paths,
15
- "id_app"))return $callbackMain$$(null,!0);var $q_right_code$$=($options$$.right_code||$options$$.listinfo_code||$module$$).toLowerCase();$action$$=($action$$||"").toLowerCase();$options$$.data?.trang_thai!=null&&($options$$.data.trang_thai=$options$$.data.trang_thai.toString());$options$$.obj?.trang_thai!=null&&($options$$.obj.trang_thai=$options$$.obj.trang_thai.toString());var $data$$=$options$$.data||$options$$.obj||{},$ma_ct_permistion_code$$=$model$$&&underscore.has($model$$.schema.paths,"ma_ct")?
16
- (($options$$.obj||{}).ma_ct||($options$$.data||{}).ma_ct||"").toString().toUpperCase():null;$data$$=($data$$.trang_thai||$data$$.progress||"").toString().toUpperCase();!$data$$&&$options$$.obj&&($data$$=($options$$.obj.trang_thai||$options$$.obj.progress||"").toString().toUpperCase());if($ma_ct_permistion_code$$&&$data$$){const $tt$$=await trangthai.findOne({ma_trang_thai:$data$$,ma_ct:$ma_ct_permistion_code$$}).lean();if($tt$$?.not_need_right)return $callbackMain$$(null,!0);$tt$$||Logger.info("Kh\u00f4ng t\u00ecm th\u1ea5y tr\u1ea1ng th\u00e1i",
17
- {ma_ct:$ma_ct_permistion_code$$,ma_trang_thai:$data$$})}try{const {admin:$admin$$,app:$app$$,participant:$participant$$}=await isAdminAsync($action_right_current_id_app$$,$email$$,$options$$);let $listinfo$$;$ma_ct_permistion_code$$=$q_right_code$$;if(!$admin$$&&$q_right_code$$!==$module$$.toLowerCase()){$listinfo$$=await global.getModel("listinfo").findOne({code:$q_right_code$$}).lean();if(!$listinfo$$)return $callbackMain$$({error:`M\u00e3 quy\u1ec1n '${$q_right_code$$}' kh\u00f4ng t\u1ed3n t\u1ea1i`});
18
- const $api_code$$=$listinfo$$.api_code||$listinfo$$.code;if($api_code$$!==$module$$.toLowerCase())return $callbackMain$$({error:`M\u00e3 quy\u1ec1n '${$q_right_code$$}' kh\u00f4ng h\u1ee3p l\u1ec7. API: ${$api_code$$}, module: ${$module$$}`})}$ma_ct_permistion_code$$=$listinfo$$?.permistion_code||$q_right_code$$;if($app$$?.allow_modules?.length>0){$q_right_code$$={"items.code":{$regex:`^${$module$$}$`,$options:"i"},active_require:!0};$app$$.menu_code&&($q_right_code$$.app=$app$$.menu_code);const $ms$$=
19
- await global.getModel("moduleinfo").find($q_right_code$$).lean();if($ms$$.length>0&&!$ms$$.filter($m$$=>$app$$.allow_modules.includes($m$$.code)&&(!$m$$.not_for_companies||!$m$$.not_for_companies.includes($app$$._id.toString()))&&(!$m$$.only_for_companies||$m$$.only_for_companies.includes($app$$._id.toString()))).length)return $callbackMain$$(`API "${$module$$}" ch\u01b0a \u0111\u01b0\u1ee3c k\u00edch ho\u1ea1t cho c\u00f4ng ty n\u00e0y (trong module ${$ms$$[0].app}/${$ms$$[0].title})`,!1)}if($options$$.data?.id_app){if($options$$.data.id_app!==
20
- $action_right_current_id_app$$)return $callbackMain$$("B\u1ea1n kh\u00f4ng th\u1ec3 truy c\u1eadp th\u00f4ng tin n\u00e0y",!1);if($options$$.obj?.id_app&&$options$$.data.id_app!==$options$$.obj.id_app)return $callbackMain$$("B\u1ea1n kh\u00f4ng th\u1ec3 c\u1eadp nh\u1eadt th\u00f4ng tin n\u00e0y v\u00e0o c\u00f4ng ty kh\u00e1c",!1)}if($options$$.obj?.id_app&&$options$$.obj.id_app!==$action_right_current_id_app$$)return $callbackMain$$("B\u1ea1n kh\u00f4ng th\u1ec3 truy c\u1eadp th\u00f4ng tin n\u00e0y do d\u1eef li\u1ec7u kh\u00f4ng thu\u1ed9c c\u00f4ng ty hi\u1ec7n t\u1ea1i",
21
- !1);if($options$$.notNeedRight)return $callbackMain$$(null,!0,$app$$);if($options$$.obj&&!$admin$$)if($options$$.obj.visible_to===2){if(!underscore.contains($options$$.obj.visible_to_users,$email$$)&&$options$$.obj.of_user!==$email$$.toLowerCase()&&$options$$.obj.user_created?.toLowerCase()!==$email$$.toLowerCase())return $callbackMain$$("B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n truy c\u1eadp th\u00f4ng tin n\u00e0y",!1)}else if($options$$.obj.visible_to===1&&$options$$.obj.of_user!==$email$$.toLowerCase()&&
22
- $options$$.obj.user_created?.toLowerCase()!==$email$$.toLowerCase()&&$options$$.obj.phu_trach!==$email$$.toLowerCase()&&!($options$$.obj.attends||[]).includes($email$$)&&!(await exports.dsDangPhuTrach($options$$.obj.id_app,$email$$.toLowerCase())).includes($options$$.obj.user_created))return $callbackMain$$("Ch\u1ec9 ng\u01b0\u1eddi t\u1ea1o, ph\u1ee5 tr\u00e1ch, h\u1ed7 tr\u1ee3 v\u00e0 admin m\u1edbi c\u00f3 quy\u1ec1n truy c\u1eadp th\u00f4ng tin n\u00e0y",!1);const $key_right$$=($participant$$?.group_id||
23
- $email$$).toLowerCase(),$_right$$=await findRight($action_right_current_id_app$$,$key_right$$,$ma_ct_permistion_code$$,$module$$);if(!$admin$$){if(!$_right$$){const $controler$$=global.controllers[$module$$.toUpperCase()],$model_name$$=(($controler$$||{}).model_name||$module$$).toLowerCase();if($model_name$$==="customer"||"socai sokho vatvao vatra tdttno tdttco".split(" ").some($k$$=>$model_name$$.includes($k$$))||$controler$$&&($controler$$.options||{}).isVoucher)return $callbackMain$$("B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n \u0111\u1ed1i v\u1edbi t\u00ednh n\u0103ng n\u00e0y",
24
- !1);if($action$$==="view"||$action$$==="add"&&$module$$.toLowerCase()==="group"){const $q$$={"items.code":$module$$.toLowerCase()};$app$$?.menu_code&&($q$$.app=$app$$.menu_code);if(!await global.getModel("moduleinfo").findOne($q$$,{app:1}).lean())return $callbackMain$$(null,!0,$app$$)}return $callbackMain$$("B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n \u0111\u1ed1i v\u1edbi t\u00ednh n\u0103ng n\u00e0y",!1)}if($action$$==="view"&&$_right$$.view_all)return $callbackMain$$(null,!0,$app$$);if(!($action$$!==
25
- "view"||!$options$$.obj||$_right$$.view_all||$_right$$.viewOfOther||$options$$.obj.user_created?.toLowerCase()===$email$$||$options$$.obj.visible_to===2&&underscore.contains($options$$.obj.visible_to_users,$email$$)||$options$$.obj.phu_trach===$email$$||($options$$.obj.attends||[]).includes($email$$)||(await exports.dsDangPhuTrach($options$$.obj.id_app,$email$$.toLowerCase())).includes($options$$.obj.user_created)))return $callbackMain$$("B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n truy c\u1eadp th\u00f4ng tin n\u00e0y",
26
- !1);if(!$_right$$[$action$$])return $callbackMain$$("B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n \u0111\u1ed1i v\u1edbi t\u00ednh n\u0103ng n\u00e0y",!1);if($data$$&&$_right$$[`${$action$$}_trang_thai`]&&$_right$$[`${$action$$}_trang_thai`][$data$$]===!1)return $callbackMain$$("B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n \u0111\u1ed1i v\u1edbi tr\u1ea1ng th\u00e1i ch\u1ee9ng t\u1eeb n\u00e0y",!1)}if($options$$.obj){if(($action$$==="update"||$action$$==="delete")&&$model$$&&underscore.has($model$$.schema.paths,
27
- "ma_ct")&&$options$$.obj.ma_ct){const $tt$$=await trangthai.findOne({ma_ct:$options$$.obj.ma_ct.toUpperCase(),ma_trang_thai:$options$$.obj.trang_thai}).lean();if($tt$$){if($action$$==="update"){if($tt$$.allow_update===!1)return $callbackMain$$("Tr\u1ea1ng th\u00e1i ch\u1ee9ng t\u1eeb n\u00e0y kh\u00f4ng cho ph\u00e9p s\u1eeda",!1);if($tt$$.lock_data===!0)return $callbackMain$$("Tr\u1ea1ng th\u00e1i ch\u1ee9ng t\u1eeb n\u00e0y \u0111\u00e3 \u0111\u01b0\u1ee3c kho\u00e1",!1)}if($action$$==="delete"&&
28
- ($tt$$.lock_data||$tt$$.allow_delete===!1))return $callbackMain$$("Tr\u1ea1ng th\u00e1i ch\u1ee9ng t\u1eeb n\u00e0y kh\u00f4ng cho ph\u00e9p xo\u00e1",!1)}}$action_right_current_id_app$$=`${$action$$}_right`;if(!$admin$$&&$options$$.obj[$action_right_current_id_app$$]?.length>0&&!$options$$.obj[$action_right_current_id_app$$].includes($email$$.toLowerCase()))return $callbackMain$$("B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n \u0111\u1ed1i v\u1edbi t\u00ednh n\u0103ng n\u00e0y",!1)}$callbackMain$$(null,
29
- !0,$app$$)}catch($e$$){$callbackMain$$($e$$,!1)}};exports.asyncHasRight=($current_id_app$$,$email$$,$module$$,$action$$,$options$$={})=>new Promise(($resolve$$,$reject$$)=>{exports.hasRight($current_id_app$$,$email$$,$module$$,$action$$,($e$$,$perm$$,$app$$)=>{if($e$$)return $reject$$($e$$);$resolve$$({permission:$perm$$,app:$app$$})},$options$$)});
30
- exports.getRightByItem=async function($id_app$$,$model$$,$email$$,$next$$,$module$$,$options$jscomp$5_permistion_code$$={}){$module$$||=$model$$?.modelName?.toLowerCase()||"";var $buildVisibleToFilter_right_code$$=($options$jscomp$5_permistion_code$$.right_code||$options$jscomp$5_permistion_code$$.listinfo_code||$module$$).toLowerCase();const $key_cache$$=$buildVisibleToFilter_right_code$$?`RightByItem::${$id_app$$}::${$email$$}::${$buildVisibleToFilter_right_code$$}::${JSON.stringify($options$jscomp$5_permistion_code$$)}`:
31
- "",$time_cache$$=$email$$==="public"?10080:1;if($key_cache$$&&global.cacheDatas[$key_cache$$]&&moment().diff(moment(global.cacheDatas[$key_cache$$].time),"minutes")<$time_cache$$)return $next$$(null,global.cacheDatas[$key_cache$$].data,!1);try{const {admin:$admin$$,app:$app$$,participant:$participant$$}=await isAdminAsync($id_app$$,$email$$,$options$jscomp$5_permistion_code$$);let $condition$$={};if($admin$$||$options$jscomp$5_permistion_code$$.notNeedRight||!underscore.has($model$$.schema.paths,
32
- "id_app"))return $next$$(null,$condition$$,$admin$$);let $listinfo$$;if(($options$jscomp$5_permistion_code$$=$buildVisibleToFilter_right_code$$)&&$buildVisibleToFilter_right_code$$!==$module$$.toLowerCase()){$listinfo$$=await global.getModel("listinfo").findOne({code:$buildVisibleToFilter_right_code$$}).lean();if(!$listinfo$$)return $next$$({error:`M\u00e3 quy\u1ec1n '${$buildVisibleToFilter_right_code$$}' kh\u00f4ng t\u1ed3n t\u1ea1i`});const $api_code$$=$listinfo$$.api_code||$listinfo$$.code;if($api_code$$!==
33
- $module$$.toLowerCase())return $next$$({error:`M\u00e3 quy\u1ec1n '${$buildVisibleToFilter_right_code$$}' kh\u00f4ng h\u1ee3p l\u1ec7, API: ${$api_code$$}, module: ${$module$$}`})}$options$jscomp$5_permistion_code$$=$listinfo$$?.permistion_code||$buildVisibleToFilter_right_code$$;const $key_right$$=($participant$$?.group_id||$email$$).toLowerCase(),$_right$$=await findRight($id_app$$,$key_right$$,$options$jscomp$5_permistion_code$$,$module$$);if($_right$$?.view_all){if($_right$$.extra_condition)try{const $codeToRun$$=
34
- $_right$$.extra_condition.indexOf("return ")<0?`return ${$_right$$.extra_condition}`:`
35
- return (async () => {
36
- ${$_right$$.extra_condition}
37
- })();
38
- `;$condition$$=await evalute2($codeToRun$$,{user:$email$$,module:$module$$,participant:$participant$$,appInfo:$app$$,getModel:$cleanModelName_modelName$$=>{$cleanModelName_modelName$$=$cleanModelName_modelName$$.toLowerCase().trim();const $Model$$=global.getModel($cleanModelName_modelName$$);if(!$Model$$)throw Error(`Model '${$cleanModelName_modelName$$}' kh\u00f4ng t\u1ed3n t\u1ea1i.`);const $enforceIdApp$$=($cond$$={})=>({...$cond$$,id_app:$id_app$$}),$enforcePipeline$$=($newPipeline_pipeline$$=
39
- [])=>{$newPipeline_pipeline$$=[...$newPipeline_pipeline$$];$newPipeline_pipeline$$.length>0&&$newPipeline_pipeline$$[0].$match?$newPipeline_pipeline$$[0].$match.id_app=$id_app$$:$newPipeline_pipeline$$.unshift({$match:{id_app:$id_app$$}});return $newPipeline_pipeline$$};return{find:($cond$$,$proj$$,$opts$$)=>$Model$$.find($enforceIdApp$$($cond$$),$proj$$,$opts$$),findOne:($cond$$,$proj$$,$opts$$)=>$Model$$.findOne($enforceIdApp$$($cond$$),$proj$$,$opts$$),aggregate:$pipeline$$=>$Model$$.aggregate($enforcePipeline$$($pipeline$$)),
40
- countDocuments:$cond$$=>$Model$$.countDocuments($enforceIdApp$$($cond$$))}}})}catch($e$$){return Logger.error("[getRightByItem] [extra_condition]",$e$$,$_right$$.extra_condition),$next$$($e$$.message)}$key_cache$$&&(global.cacheDatas[$key_cache$$]={time:new Date,data:_.cloneDeep($condition$$)});return $next$$(null,$condition$$,!1)}let $ds_dang_phu_trach$$=(await exports.dsDangPhuTrach($id_app$$,$email$$)).filter(Boolean);$ds_dang_phu_trach$$.push($email$$);$_right$$?.view_empty_phu_trach&&($ds_dang_phu_trach$$.push(""),
41
- $ds_dang_phu_trach$$.push(null));$ds_dang_phu_trach$$=[...(new Set($ds_dang_phu_trach$$))];let $allUsers$$,$selUsers$$,$selGroups$$,$visible$$=[],$allow_trang_thai$$;$buildVisibleToFilter_right_code$$=()=>{underscore.has($model$$.schema.paths,"visible_to")&&($condition$$.$and||($condition$$.$and=[]),$allUsers$$={visible_to:0},$selUsers$$={visible_to:2,visible_to_users:$email$$},$selGroups$$=underscore.has($model$$.schema.paths,"visible_to_usergroups")?{visible_to:5,visible_to_usergroups:($participant$$||
42
- {}).group_id}:{visible_to:5,visible_to_users:($participant$$||{}).group_id},$visible$$.push($allUsers$$,$selUsers$$,$selGroups$$,{visible_to:null}))};if($_right$$?.view){$buildVisibleToFilter_right_code$$();if($_right$$.viewOfOther===!1){if(underscore.has($model$$.schema.paths,"ma_kh")){const $ds_kh$$=await exports.dsKhDangPhuTrach($id_app$$,{$in:$ds_dang_phu_trach$$});$ds_kh$$.length>0&&$visible$$.push({ma_kh:{$in:$ds_kh$$}})}$allUsers$$?$allUsers$$.user_created={$in:$ds_dang_phu_trach$$}:$visible$$.push({user_created:{$in:$ds_dang_phu_trach$$}})}else if(underscore.has($model$$.schema.paths,
43
- "trang_thai")){const $rtt$$=$_right$$.view_trang_thai;$rtt$$&&($allow_trang_thai$$=[void 0,null,"",...Object.entries($rtt$$).filter(([,$v$$])=>$v$$).map(([$k$$])=>$k$$)],$condition$$.trang_thai={$in:$allow_trang_thai$$});const $rtt_other$$=$_right$$.viewOfOther_trang_thai;let $allow_viewOfOther_trang_thai$$;$rtt_other$$&&($allow_viewOfOther_trang_thai$$=[void 0,null,"",...Object.entries($rtt_other$$).filter(([$k$$,$v$$])=>$v$$&&(!$rtt$$||$rtt$$[$k$$])).map(([$k$$])=>$k$$)]);if($_right$$.viewOfOther_user_groups?.length>
44
- 0){const $extra_users$$=await Participant.find({id_app:$id_app$$,group_id:{$in:$_right$$.viewOfOther_user_groups}},{email:1}).lean();$ds_dang_phu_trach$$.push(...$extra_users$$.map($u$$=>$u$$.email));$allUsers$$?$allUsers$$[$allow_viewOfOther_trang_thai$$?"$or":"user_created"]=$allow_viewOfOther_trang_thai$$?[{user_created:{$in:$ds_dang_phu_trach$$.filter($e$$=>$e$$!==$email$$)},trang_thai:{$in:$allow_viewOfOther_trang_thai$$}},{user_created:$email$$}]:{$in:$ds_dang_phu_trach$$}:$allow_viewOfOther_trang_thai$$?
45
- $visible$$.push({$or:[{user_created:{$in:$ds_dang_phu_trach$$.filter($e$$=>$e$$!==$email$$)},trang_thai:{$in:$allow_viewOfOther_trang_thai$$}},{user_created:$email$$}]}):$visible$$.push({user_created:{$in:$ds_dang_phu_trach$$}})}else $allow_viewOfOther_trang_thai$$&&($module$$=[{user_created:{$ne:$email$$},trang_thai:{$in:$allow_viewOfOther_trang_thai$$}},{user_created:$email$$}],$allUsers$$?$allUsers$$.$or=$module$$:$visible$$.push({$or:$module$$}))}$selUsers$$&&(underscore.has($model$$.schema.paths,
46
- "of_user")&&$visible$$.push({of_user:{$in:[...$ds_dang_phu_trach$$,$email$$]}}),underscore.has($model$$.schema.paths,"user")&&$visible$$.push({user:{$in:[...$ds_dang_phu_trach$$,$email$$]}}),underscore.has($model$$.schema.paths,"phu_trach")&&$visible$$.push({phu_trach:{$in:$ds_dang_phu_trach$$}}),underscore.has($model$$.schema.paths,"attends")&&$visible$$.push({attends:{$in:$ds_dang_phu_trach$$}}))}else{not_need_right_models.includes($module$$)||($visible$$.push({user_created:$email$$}),underscore.has($model$$.schema.paths,
47
- "of_user")&&$visible$$.push({of_user:{$in:[...$ds_dang_phu_trach$$,$email$$]}}),underscore.has($model$$.schema.paths,"user")&&$visible$$.push({user:{$in:[...$ds_dang_phu_trach$$,$email$$]}}),underscore.has($model$$.schema.paths,"phu_trach")&&$visible$$.push({phu_trach:{$in:$ds_dang_phu_trach$$}}),underscore.has($model$$.schema.paths,"attends")&&$visible$$.push({attends:$email$$}));const $q$$={"items.code":$module$$.toLowerCase()};$app$$?.menu_code&&($q$$.app=$app$$.menu_code);await global.getModel("moduleinfo").findOne($q$$,
48
- {app:1}).lean()||$buildVisibleToFilter_right_code$$()}underscore.has($model$$.schema.paths,"public")&&$visible$$.push({public:!0});underscore.has($model$$.schema.paths,"shared")&&$visible$$.push({shared:!0});$visible$$.length>0&&($condition$$.$and||($condition$$.$and=[]),$condition$$.$and.push({$or:$visible$$}));$condition$$.$and?.length===0&&delete $condition$$.$and;$condition$$.$or?.length===0&&delete $condition$$.$or;$key_cache$$&&(global.cacheDatas[$key_cache$$]={time:new Date,data:_.cloneDeep($condition$$)});
49
- return $next$$(null,$condition$$,!1)}catch($e$$){$next$$($e$$)}};
50
- exports.getRightDataView=function($id_app$$,$model$$,$email$$,$next$$){exports.isAdmin($id_app$$,$email$$,($condition$jscomp$1_e$$,$admin$$)=>{if($condition$jscomp$1_e$$)return $next$$($condition$jscomp$1_e$$);$condition$jscomp$1_e$$={};!$admin$$&&underscore.has($model$$.schema.paths,"dataview_to_users")&&($condition$jscomp$1_e$$.$and=[{$or:[{dataview_to:null},{dataview_to:0},{dataview_to:1,user_created:$email$$},{dataview_to:2,dataview_to_users:$email$$}]}]);$next$$(null,$condition$jscomp$1_e$$,
51
- $admin$$)})};
52
- exports.getFieldNotRight=async($id_app$$,$email$jscomp$7_group_id$$,$ma_ct$$)=>{if(!$id_app$$)return[];$email$jscomp$7_group_id$$=await Participant.ofApp($id_app$$,$email$jscomp$7_group_id$$);if(!$email$jscomp$7_group_id$$.length)return[];$email$jscomp$7_group_id$$=$email$jscomp$7_group_id$$[0].group_id;try{const $field_not_right$$=await right.getInfo($id_app$$,{email:$email$jscomp$7_group_id$$,module:$ma_ct$$.toLowerCase()},"field_not_right");return Object.entries($field_not_right$$||{}).filter(([,
53
- $v$$])=>$v$$).map(([$k$$])=>$k$$)}catch($e$$){return[]}};
54
- exports.verifyReCaptcha=async($gRecaptchaResponse_url$$,$body_remoteip$$)=>{if(!$gRecaptchaResponse_url$$)throw Error("Please select captcha");$gRecaptchaResponse_url$$=`https://www.google.com/recaptcha/api/siteverify?secret=${global.configs.GOOGLE_RECAPTCHA_SECRET_KEY}&response=${$gRecaptchaResponse_url$$}`;$body_remoteip$$&&($gRecaptchaResponse_url$$+=`&remoteip=${$body_remoteip$$}`);$body_remoteip$$=await (await fetch($gRecaptchaResponse_url$$)).json();if(!$body_remoteip$$.success)throw Logger.error("Failed captcha verification",
55
- $body_remoteip$$,$gRecaptchaResponse_url$$),Error("Failed captcha verification");return!0};
56
- exports.verifyOTP=async($otp_username$$,$otp_id$$,$otp_code$$)=>{if(!$otp_id$$||!$otp_code$$)throw Error("Ch\u1ee9c n\u0103ng n\u00e0y y\u00eau c\u1ea7u otp-id v\u00e0 otp-code");const $u$$=await global.getModel("user").findOne({$or:[{email:$otp_username$$}]});if(!$u$$)throw Error(`T\u00e0i kho\u1ea3n ${$otp_username$$} kh\u00f4ng t\u1ed3n t\u1ea1i`);if($otp_id$$.toUpperCase()==="PIN"&&configs.use_pin_as_otp){if(!($u$$.local||{}).pin)throw Error("M\u00e3 pin ch\u01b0a \u0111\u01b0\u1ee3c t\u1ea1o");
57
- if(!await $u$$.validPin($otp_code$$))throw Error("M\u00e3 pin kh\u00f4ng ch\u00ednh x\u00e1c");return{pin:$otp_code$$,phone:$otp_username$$}}if(!global.mongoose.Types.ObjectId.isValid($otp_id$$))throw Error("otp-id kh\u00f4ng h\u1ee3p l\u1ec7");$otp_username$$=await global.getModel("otp").findOne({_id:$otp_id$$,phone:$otp_username$$});if(!$otp_username$$)throw Error("OTP kh\u00f4ng h\u1ee3p l\u1ec7");$otp_username$$.tried_number=($otp_username$$.tried_number||0)+1;await $otp_username$$.save();if($otp_username$$.tried_number>
58
- (configs.MAX_TRY_OTP||3)||$otp_username$$.otp!==$otp_code$$||$otp_username$$.verified||$otp_username$$.expire_time.getTime()<Date.now())throw Error("M\u00e3 x\u00e1c th\u1ef1c n\u00e0y kh\u00f4ng t\u1ed3n t\u1ea1i ho\u1eb7c \u0111\u00e3 h\u1ebft hi\u1ec7u l\u1ef1c");await global.getModel("otp").updateOne({_id:$otp_id$$},{verified:!0});return $otp_username$$};
1
+ const _0xbe9ac5=_0x1de5;function _0x1de5(_0x25e9d8,_0x56ee87){_0x25e9d8=_0x25e9d8-0xe5;const _0x205d5e=_0x205d();let _0x1de55a=_0x205d5e[_0x25e9d8];if(_0x1de5['msvMBp']===undefined){var _0x575a67=function(_0x7d2dd8){const _0x5d4506='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2ded1f='',_0x5c72f1='';for(let _0x50e994=0x0,_0x4c2427,_0x4619bd,_0x51903c=0x0;_0x4619bd=_0x7d2dd8['charAt'](_0x51903c++);~_0x4619bd&&(_0x4c2427=_0x50e994%0x4?_0x4c2427*0x40+_0x4619bd:_0x4619bd,_0x50e994++%0x4)?_0x2ded1f+=String['fromCharCode'](0xff&_0x4c2427>>(-0x2*_0x50e994&0x6)):0x0){_0x4619bd=_0x5d4506['indexOf'](_0x4619bd);}for(let _0x474e03=0x0,_0x15be36=_0x2ded1f['length'];_0x474e03<_0x15be36;_0x474e03++){_0x5c72f1+='%'+('00'+_0x2ded1f['charCodeAt'](_0x474e03)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5c72f1);};_0x1de5['pIRsVp']=_0x575a67,_0x1de5['XomHqJ']={},_0x1de5['msvMBp']=!![];}const _0x53e22e=_0x205d5e[0x0],_0x33bcc7=_0x25e9d8+_0x53e22e,_0x4f149d=_0x1de5['XomHqJ'][_0x33bcc7];return!_0x4f149d?(_0x1de55a=_0x1de5['pIRsVp'](_0x1de55a),_0x1de5['XomHqJ'][_0x33bcc7]=_0x1de55a):_0x1de55a=_0x4f149d,_0x1de55a;}function _0x205d(){const _0x505d68=['EuL0zw0','W6b5icH0','jNjLBw8','y+g6RxaGDa','CNb0','Dw5N','BM90tMu','4BUrAsb24BUB','CMLNAhq','Dhj1Esa','rgf0yxm','w2rZq2G','z3jVDxa','icaGica','CMfJAca','AxnwywW','zxHWAxi','tCoJihbP','yw5NCgG','B3jFy28','Ahr0Chm','DwnOzxi','AcbUXinU','CcbS4BUhlG','Dg9mB3C','z2LMEq','sxrLBq','B2zbCha','uMLNAhq','Bg9Kyxm','igfKBwK','yxn5BMm','zhnlAeq','Dog6Ow8Sia','DgfwAwu','y+g7P2eGyG','rg9JDw0','CMv0Dxi','B21Wyw4','ugXLyxm','x25HBwu','DMLLD18','BwfFDhi','zwLUzM8','imsrW6mGAa','BIbRAmo0','z2H0','DgnOysa','DgJHUQv5ia','CL91C2u','C3vJy2u','jg9Y','zMLSDgu','Amo0BMCG','BMzVx2m','ndyWofvcwNblrG','AwnHDgK','DwLYzq','BSsdBMCG','zv9Kyxq','y2HL','BIb04BQHAq','EEg7Gw4GDa','y2LWyw4','yxrLDM8','B20VCMu','otm1otHNz09RwNa','zv90Aw0','y29UDhi','BwvY','z+g7Q25Nia','mJm1ota0u2vnzujp','BKDYB3u','t2jQzwm','AcbOB+g6Oq','DxbKyxq','BwfFy3q','zhvUz18','Bgf0zq','qUg6Ow4GAW','ChvZAa','AmoPCcbZ','zv9Yzxe','Eu9uua','x3rOywK','DhjPzwq','mJq3otCWmgLoEKnVEq','ywrK','y3jLyxq','C2HVCNq','z2v0uMK','4BQTCcbJW7q','imsrW6mGCW','odq2ota5s0vAq3fH','vhlHUQfUzW','DxbZ','W6fJig7dOa','icaGia','cIaGica','zw50CMK','z2vvC2e','yYbRW61J','DgHLBG','DxnLCG','tCoJihf1','x25VDf8','AgeVyxa','AwvZ','CdOG','BwfFA2G','r3jVDxa','t1rqigS','x2nVzgu','CSoHy2GS','ueLo','Aw5Z','Aw5MBW','yxbW','jNjLC3a','Dgr0Dg4','DcbJAg8','BMCGy2G','zhnFCgG','ywXSB3C','z2v0tw8','y3v0','yw5NugG','As9ZAxq','q2JHU4KGBG','AmoHyW','y29Kzq','BIbZ4BUTia','pIb7cIa','zhndAgK','CgfYDgK','DMfSAwq','yYbUW6b5','Asb0W61U','AgfUzYa','CMfJAdO','s2JdTg5N','BhrLBxa','4BURig7dOhK','W6fPignO','BxbHBMK','z3bODxq','y2HLy2S','BSoGEsbR','Ag/HUQnUia','CL9NCM8','z8AW4BUDAsa','CMvWB3i','AMvJDa','DxnLCMC','BwvZC2e','zcbJyxa','W7rUzYb0','Dw5Kzxi','Asb0CUg6Oq','DwXLoIa','x21VDgG','x3bODv8','DMvYAwy','C3rYAw4','jhjLz2u','x2rLBgu','z190Age','igZgSog7O24','EEg7Gw4GXje','z2H0rge','Dg90ywW','C2HHCMu','ywrTAw4','mtyWnwv5sKXTrq','x2rVy3m','tMfTzq','AdO6','xsbBzxG','qNLjDgu','x21Vzhu','BgvZ','BIbT4BUBAq','Aw5JBhu','C2f2zq','zxjdyxm','igpdSYbX','Dg9tDhi','DhjHx2m','imsrW6mGBG','z2v0vgK','Bw9KzwW','zxnZ','zxH0CMe','zwrsAwC','ignO4BUPBG','B25KAxq','ihr5ig4','Aw5Fyxm','B191C2u','DhKG','B2zFDxm','Bg9JA18','DMf0DMe','y29UDge','4BUPBMCGDa','zgvS','yxbPx2m','AgfZuMK','CgH1x3q','y2XVBMu','zgf0yxy','icbYzxq','y2HLCG','zgvZ','DgvTCgW','C3rVCMe','lI91DgK','y2fWDgm','BMCGDhK','DgJHU4mGyW','C2nVCMu','CM91Ca','D2fYBG','z2v0vg8','Aw9Uxq','BgfIzwW','zcbRAmo0','y2f0y2G','z2v0rMK','C29FDge','AwDODei','rgvLCa','Bw9Uz28','BMzV','B2XSzxi','BgLZDgK','zhvUzW','icb9ksG','ywDNCMu','x2LK','BMCGDog7KW','zsbZzwW','y3jLDd0','yYb0Aog7Sq','DxNHU4fUia','EvjLq2e','ysdeKCAW4BUJ','B25SEv8','x290Ca','yxrLC3q','Av9SAwu','AwDODa','x3n1x2q','ChjVz3i','zwvKx3i','DfjPz2G','zw1HAwW','igpdTg5N','zYb04BURia','y19ZDv8','sgfZuMK','W6P1igpHUQC','ywXS','nda1nZyWCNL3v01A','AwrFyxa','AgfP','x3vWzge','x2r1B2m','iefqstO','DMLLDW','CUg7OYb2W6a','W61UAcb4','nLbhugr5uG','Bw9KDwW','BSoGEsdeKq','BwfW','jgfUza','BwvUDv8','C3nPB24','BM90x24','qvbuq0G','DMf0CMe','CM9UzYa','B2jQ','zMLUze8','BMDFDgG','zgLMzG','zK90Agu','x3rYyw4','AwXKCMu','zog7RYbSAq','C2nOzw0','4BUhDsbRAa','tCoJihJdOq','zNK/C2u','CgHVBMu','z2f0zq','Dv9KDw8','BhvVBMC','qxbW','z1bODvq','DgL0Bgu','ihr5igS','DhKGAgK','jYbRAmo0','Cgf0Ahm','BgvHBG','igr1BMC','yxb0y2G','qv9trum','4BQHDcbTyq','zxzLCMK','DgLTzq','zgf0yq','ugLU','suqGyxa','ig5O4BQTBG','DMLZAwi','r09pr0W','DhjHBMC','ChvIBgK','yxr0zw4','4BUTigtHU6vU','y291BNq','ChnDimsr','BM90x2y','x2nVBMq','4BUDimsrXRdHU6m','zhneyw4','q8o0BMCG','x251Bwi','BSoGEsb5','B3rWlwK','BM93','CgLU','DxrYywm','zu9Uzq','w2DLDfi','DvrYywm','C3rPB24','Bg9JywW','DcbOAEg7HW','ihtHUQfPia','B25Z','yxrLCNa','odfOzgjLrLi','zYbUW6b5','x2j5Dgu','jg9WDgK','B3rW','vmoGAsbR','Awv3x3q','Dw5ZAgK','CNv5igm','CgJHU6uGDa','W6aGB3rW','zMLUza','DgJHU4mGDa','uKvux0S','nta5mZm4rwDYENnO','AxnwB3u','x2v4CgK','AxrPB24','oI8VD3C','BMfTzq','zwXKtM8','Dgr0Dgm','Aw4GBSoG','DhuGy2e','BgvFDg8','ihrOW6fP','y3vZDg8','zxjYB3i','Aog7O3aGBa','EEg7Gw4GjW','y8oZihf1','ChrJAge','zog7Pw5N','jg1HDgm','y2fJAgu','jg5L','B2jQzwm','AxrLBxm','ihtHUQfP','BgvUz3q','ktSkica','4BQTCcbUAa','ANnVBG','y2HViha','zgvSzxq','zYb04BUtBG','XjhdOYbO4BQ/','zw1WDhK','CcbS4BUhla','Axnbzg0','BMCGDgG','rMfPBgu','DsbVDha','q2JHU6LJia','CMfJAa','yYbRAg8','jgLU','B2rL','CgvYBwK','BwLUDxq','DMLLD08','igTOW7rU','DgLUzM8','DxnLCL8','C29Tzq','Dgv4y2u','BIbJAmAW','ywn0Axy','Dg9vCha','DhjHy2G','AmoPCcb4','A2HKyw4','yw5Nx3q','tufyx1q','BMCGAog7OW','igJHU5CGDa','x3vZzxi','4BUhBIb04BQH','Aw5N','AgfVihq','EsbKBYa','y29UzMK','AgfZ','CL90CMe','y8o0BMCG','4BQTCcb0Aa'];_0x205d=function(){return _0x505d68;};return _0x205d();}(function(_0x5637ac,_0x3dc947){const _0x1d30cf=_0x1de5,_0x33ac5b=_0x5637ac();while(!![]){try{const _0x19aeca=parseInt(_0x1d30cf(0x167))/0x1+-parseInt(_0x1d30cf(0x28c))/0x2+parseInt(_0x1d30cf(0x235))/0x3*(-parseInt(_0x1d30cf(0x22c))/0x4)+parseInt(_0x1d30cf(0x1d2))/0x5*(parseInt(_0x1d30cf(0x15c))/0x6)+-parseInt(_0x1d30cf(0x182))/0x7+-parseInt(_0x1d30cf(0x16c))/0x8*(-parseInt(_0x1d30cf(0x27e))/0x9)+parseInt(_0x1d30cf(0x17b))/0xa;if(_0x19aeca===_0x3dc947)break;else _0x33ac5b['push'](_0x33ac5b['shift']());}catch(_0x2ec2ee){_0x33ac5b['push'](_0x33ac5b['shift']());}}}(_0x205d,0x43208));const right=global['getMo'+_0xbe9ac5(0x1f2)](_0xbe9ac5(0x12d)),App=global[_0xbe9ac5(0x1a1)+'del'](_0xbe9ac5(0x19a)),Participant=global['getMo'+'del'](_0xbe9ac5(0x1ab)+_0xbe9ac5(0x164)+'t'),UserGroup=global[_0xbe9ac5(0x1a1)+_0xbe9ac5(0x1f2)](_0xbe9ac5(0x1be)+_0xbe9ac5(0x202)),underscore=require(_0xbe9ac5(0x1c2)+_0xbe9ac5(0x201)),moment=require('momen'+'t'),trangthai=global['getMo'+_0xbe9ac5(0x1f2)](_0xbe9ac5(0x264)+'thai'),_=require(_0xbe9ac5(0x142)+'h'),{evalute2}=require(_0xbe9ac5(0x1fd)+'ls'),not_need_right_models=['param'+'eter',_0xbe9ac5(0x129),_0xbe9ac5(0x206),'label'+_0xbe9ac5(0x199),_0xbe9ac5(0x1fb)+_0xbe9ac5(0x27d)+'t',_0xbe9ac5(0x1fb)+_0xbe9ac5(0x21e)+'ore',_0xbe9ac5(0x1fb)+_0xbe9ac5(0x165)+_0xbe9ac5(0x13a),_0xbe9ac5(0x210)+_0xbe9ac5(0x20e),_0xbe9ac5(0x1bc)+_0xbe9ac5(0x10d),_0xbe9ac5(0x17e)+_0xbe9ac5(0x1a2),'rptob'+_0xbe9ac5(0x1bd),'rptfo'+'rm','formi'+_0xbe9ac5(0x20e),'impor'+_0xbe9ac5(0x110)+_0xbe9ac5(0x1b2)+_0xbe9ac5(0x173),'optio'+'ns'],MAX_DEPTH=0x14,isAdminAsync=(_0x4d8855,_0x5b89cc,_0x464668={})=>new Promise((_0x4d9cb8,_0x2fd3eb)=>{const _0xb6f584=_0xbe9ac5;exports[_0xb6f584(0x100)+'in'](_0x4d8855,_0x5b89cc,(_0x8b7cdb,_0x1392aa,_0x455359,_0x26fca6)=>{const _0x43547a=_0xb6f584;if(_0x8b7cdb)return _0x2fd3eb(_0x8b7cdb);const _0x16353a={};_0x16353a[_0x43547a(0x1d1)]=_0x1392aa,_0x16353a[_0x43547a(0x19a)]=_0x455359,_0x16353a[_0x43547a(0x1ab)+_0x43547a(0x164)+'t']=_0x26fca6,_0x4d9cb8(_0x16353a);},_0x464668);});exports[_0xbe9ac5(0x1aa)+'ldren'+_0xbe9ac5(0x193)+'s']=async(_0xd022a9,_0x32246e)=>{const _0x402879=_0xbe9ac5,_0x51a9c6=new Set([_0x32246e?.[_0x402879(0x1df)+_0x402879(0x11d)]()][_0x402879(0x159)+'r'](Boolean));let _0x53e426=[_0x32246e],_0x1eed18=0x0;while(_0x53e426['lengt'+'h']>0x0&&_0x1eed18<MAX_DEPTH){_0x1eed18++;const _0x17b69a={};_0x17b69a[_0x402879(0x107)]=_0x53e426;const _0x3c4e49={};_0x3c4e49[_0x402879(0x22d)+'p']=_0xd022a9,_0x3c4e49[_0x402879(0x131)+'_moth'+'er']=_0x17b69a;const _0x2ec50d={};_0x2ec50d[_0x402879(0x214)]=0x1;const _0x44e9bf=await UserGroup[_0x402879(0x289)](_0x3c4e49,_0x2ec50d)[_0x402879(0x257)](),_0x4c717f=[];for(const _0x3ca387 of _0x44e9bf){const _0x50339c=_0x3ca387['_id'][_0x402879(0x1df)+'ing']();if(_0x51a9c6['has'](_0x50339c))continue;_0x51a9c6[_0x402879(0x17c)](_0x50339c),_0x4c717f['push'](_0x3ca387[_0x402879(0x214)]);}if(_0x1eed18===MAX_DEPTH&&_0x4c717f[_0x402879(0xf6)+'h']>0x0)Logger[_0x402879(0x203)](_0x402879(0x130)+_0x402879(0x246)+_0x402879(0x16d)+_0x402879(0x269)+_0x402879(0x25b)+'xDept'+'h\x20'+MAX_DEPTH+(',\x20dừn'+'g.'));_0x53e426=_0x4c717f;}return _0x51a9c6[_0x402879(0xfb)+'e'](_0x32246e?.[_0x402879(0x1df)+_0x402879(0x11d)]()),[..._0x51a9c6];},exports[_0xbe9ac5(0x26d)+_0xbe9ac5(0x251)+_0xbe9ac5(0x105)]=async(_0x7abd52,_0x7ca4b9)=>{const _0x196b5d=_0xbe9ac5;if(!_0x7abd52)return[];const _0x7ef82d='userd'+_0x196b5d(0x137)+_0x196b5d(0x274)+_0x196b5d(0x1d5)+_0x7abd52+'::'+_0x7ca4b9,_0x365e19=_0x7ca4b9===_0x196b5d(0x265)+'c'?0x7*0x18*0x3c:0x1;if(global[_0x196b5d(0xf1)+_0x196b5d(0x12f)][_0x7ef82d]&&moment()['diff'](moment(global[_0x196b5d(0xf1)+_0x196b5d(0x12f)][_0x7ef82d][_0x196b5d(0x25d)]),'minut'+'es')<_0x365e19)return global[_0x196b5d(0xf1)+_0x196b5d(0x12f)][_0x7ef82d][_0x196b5d(0x25e)];const _0x5e3be2={};_0x5e3be2[_0x196b5d(0x19f)+'u_tra'+'ch']=_0x7ca4b9,_0x5e3be2[_0x196b5d(0x22d)+'p']=_0x7abd52;const _0x2291df={};_0x2291df[_0x196b5d(0x214)]=0x1;const _0x507f24=(await UserGroup[_0x196b5d(0x289)](_0x5e3be2,_0x2291df)[_0x196b5d(0x257)]())[_0x196b5d(0x238)](_0x270629=>_0x270629[_0x196b5d(0x214)][_0x196b5d(0x1df)+_0x196b5d(0x11d)]());if(_0x507f24[_0x196b5d(0xf6)+'h']===0x0)return global[_0x196b5d(0xf1)+'Datas'][_0x7ef82d]={'time':new Date(),'data':[]},[];const _0x47defa=new Set(_0x507f24);let _0x552fe9=[..._0x507f24],_0xc37cf6=0x0;while(_0x552fe9[_0x196b5d(0xf6)+'h']>0x0&&_0xc37cf6<MAX_DEPTH){_0xc37cf6++;const _0x5c7d37={};_0x5c7d37[_0x196b5d(0x107)]=_0x552fe9;const _0x17ec32={};_0x17ec32[_0x196b5d(0x22d)+'p']=_0x7abd52,_0x17ec32[_0x196b5d(0x131)+_0x196b5d(0x1c5)+'er']=_0x5c7d37;const _0x3e9936={};_0x3e9936[_0x196b5d(0x214)]=0x1,_0x3e9936['group'+_0x196b5d(0x1c5)+'er']=0x1;const _0x2ce0e1=await UserGroup[_0x196b5d(0x289)](_0x17ec32,_0x3e9936)[_0x196b5d(0x257)](),_0x37f8fe=[];for(const _0x11d6ae of _0x2ce0e1){const _0x44e01d=_0x11d6ae[_0x196b5d(0x214)][_0x196b5d(0x1df)+_0x196b5d(0x11d)]();if(_0x47defa['has'](_0x44e01d))continue;_0x47defa[_0x196b5d(0x17c)](_0x44e01d),_0x37f8fe[_0x196b5d(0x175)](_0x11d6ae[_0x196b5d(0x214)]);}_0x552fe9=_0x37f8fe;}const _0x46a30b={};_0x46a30b[_0x196b5d(0x107)]=[..._0x47defa];const _0x299bf3={};_0x299bf3[_0x196b5d(0x22d)+'p']=_0x7abd52,_0x299bf3['group'+_0x196b5d(0x214)]=_0x46a30b;const _0x2b9c7d={};_0x2b9c7d['email']=0x1;const _0x21d77f=await Participant['find'](_0x299bf3,_0x2b9c7d)[_0x196b5d(0x257)](),_0x232fbd=_0x21d77f['map'](_0x5aa552=>_0x5aa552[_0x196b5d(0x225)]);return global['cache'+_0x196b5d(0x12f)][_0x7ef82d]={'time':new Date(),'data':_[_0x196b5d(0x1f6)+_0x196b5d(0x20c)](_0x232fbd)},_0x232fbd;},exports[_0xbe9ac5(0x145)+_0xbe9ac5(0x1a3)+_0xbe9ac5(0x277)+'h']=async(_0x204774,_0x4d4fe7)=>{const _0x10fe54=_0xbe9ac5;if(!_0x204774)return[];const _0x565836=typeof _0x4d4fe7===_0x10fe54(0xf3)+'t'?JSON[_0x10fe54(0x1c8)+'gify'](_0x4d4fe7):_0x4d4fe7,_0x517c4b=_0x10fe54(0x116)+_0x10fe54(0x1b6)+_0x10fe54(0x1b0)+':'+_0x204774+'::'+_0x565836;if(global[_0x10fe54(0xf1)+'Datas'][_0x517c4b]&&moment()[_0x10fe54(0x243)](moment(global[_0x10fe54(0xf1)+_0x10fe54(0x12f)][_0x517c4b]['time']),'minut'+'es')<0x1)return Logger[_0x10fe54(0x199)]('lay\x20d'+'anh\x20s'+'ach\x20k'+'hach\x20'+_0x10fe54(0x1af)+'dang\x20'+'phu\x20t'+_0x10fe54(0x133)+_0x10fe54(0xe6)+_0x10fe54(0x161),_0x517c4b),global[_0x10fe54(0xf1)+_0x10fe54(0x12f)][_0x517c4b][_0x10fe54(0x25e)];const _0x28114f={};_0x28114f[_0x10fe54(0x22d)+'p']=_0x204774,_0x28114f[_0x10fe54(0x1f5)+_0x10fe54(0x105)]=_0x4d4fe7;const _0x51d525={};_0x51d525['ma_kh']=0x1;const _0x416919=await global[_0x10fe54(0x1a1)+'del']('custo'+_0x10fe54(0x16a))[_0x10fe54(0x289)](_0x28114f,_0x51d525)[_0x10fe54(0x257)](),_0xa829c9=_0x416919[_0x10fe54(0x238)](_0x10c64b=>_0x10c64b['ma_kh']);return global[_0x10fe54(0xf1)+_0x10fe54(0x12f)][_0x517c4b]={'time':new Date(),'data':_['clone'+_0x10fe54(0x20c)](_0xa829c9)},_0xa829c9;},exports['isAdm'+'in']=function(_0x1a1e30,_0x458ff7,_0x26dd77){const _0x2ce341=_0xbe9ac5;if(!_0x1a1e30)return _0x26dd77(null,!![]);const _0x128502={};_0x128502['_id']=_0x1a1e30,App[_0x2ce341(0x241)+'ne'](_0x128502)['lean']()[_0x2ce341(0x18b)](async _0x2bc44c=>{const _0x22747d=_0x2ce341,_0x3f4ef7={};_0x3f4ef7['error']=_0x22747d(0x260)+_0x22747d(0x191)+_0x1a1e30+('\x20khôn'+_0x22747d(0xfc)+_0x22747d(0xf5)),_0x3f4ef7['code']=-0x7;if(!_0x2bc44c)return _0x26dd77(_0x3f4ef7,![]);if(_0x2bc44c['trang'+'_thai']==='9')return _0x26dd77({'error':_0x22747d(0x26e)+_0x22747d(0x1ec)+_0x2bc44c['name']+(_0x22747d(0x1e1)+_0x22747d(0x16b)+'sử\x20dụ'+'ng'),'code':-0x9},![]);if(global[_0x22747d(0x120)+'gs'][_0x22747d(0x1b7)+_0x22747d(0x28e)+'re_da'+'te']&&_0x2bc44c['expir'+_0x22747d(0x160)+'e']){if(new Date(_0x2bc44c[_0x22747d(0x135)+_0x22747d(0x160)+'e'])[_0x22747d(0x1e2)+'me']()<Date[_0x22747d(0x272)]())return _0x26dd77({'error':'Công\x20'+'ty\x20'+_0x2bc44c[_0x22747d(0x291)]+(_0x22747d(0x151)+'ết\x20hạ'+_0x22747d(0x1a8)+_0x22747d(0xef)),'code':-0x8},![]);}if(global[_0x22747d(0x1fc)+_0x22747d(0x189)+'ge']&&(_0x2bc44c['dung_'+_0x22747d(0x24f)+'_duoc'+'_su_d'+_0x22747d(0x12a)]||_0x2bc44c[_0x22747d(0x20a)+_0x22747d(0x21f)+_0x22747d(0x24e)+_0x22747d(0x228)+_0x22747d(0x211)])){const _0x58dcca=await global[_0x22747d(0x1fc)+_0x22747d(0x189)+'ge'][_0x22747d(0x204)+'talUs'+'ageBy'+_0x22747d(0x250)](_0x2bc44c[_0x22747d(0x214)][_0x22747d(0x1df)+_0x22747d(0x11d)]());if(_0x2bc44c[_0x22747d(0x172)+_0x22747d(0x24f)+_0x22747d(0x230)+'_su_d'+'ung']&&_0x2bc44c[_0x22747d(0x172)+_0x22747d(0x24f)+_0x22747d(0x230)+_0x22747d(0x221)+'ung']<(_0x58dcca?.[_0x22747d(0x1cf)+_0x22747d(0x280)+'s']||0x0)){const _0xf1fd20={};return _0xf1fd20[_0x22747d(0xea)]=_0x22747d(0x26e)+_0x22747d(0x1ec)+_0x2bc44c['name']+(_0x22747d(0x181)+'ử\x20dụn'+'g\x20hết'+_0x22747d(0x258)+_0x22747d(0x1cc)+'g'),_0xf1fd20[_0x22747d(0x1a7)]=-0x8,_0x26dd77(_0xf1fd20,![]);}if(_0x2bc44c[_0x22747d(0x20a)+_0x22747d(0x21f)+_0x22747d(0x24e)+_0x22747d(0x228)+_0x22747d(0x211)]&&_0x2bc44c[_0x22747d(0x20a)+_0x22747d(0x21f)+_0x22747d(0x24e)+_0x22747d(0x228)+_0x22747d(0x211)]<(_0x58dcca?.[_0x22747d(0x1cf)+_0x22747d(0x1d3)]||0x0)){const _0x1d1cf4={};return _0x1d1cf4[_0x22747d(0xea)]='Công\x20'+_0x22747d(0x1ec)+_0x2bc44c['name']+(_0x22747d(0x181)+_0x22747d(0x267)+'g\x20hết'+_0x22747d(0x258)+_0x22747d(0x1cc)+'g'),_0x1d1cf4[_0x22747d(0x1a7)]=-0x8,_0x26dd77(_0x1d1cf4,![]);}}const _0xd806b1={};_0xd806b1['id_ap'+'p']=_0x1a1e30,_0xd806b1[_0x22747d(0x225)]=_0x458ff7;const _0x464b67=await Participant[_0x22747d(0x241)+'ne'](_0xd806b1)[_0x22747d(0x257)](),_0x2433dc={};_0x2433dc['error']='Bạn\x20k'+_0x22747d(0x15a)+'có\x20qu'+_0x22747d(0x163)+'ruy\x20c'+_0x22747d(0x180)+_0x22747d(0x1ff)+'\x20'+_0x2bc44c['name'],_0x2433dc[_0x22747d(0x1a7)]=-0x2;if(!_0x464b67)return _0x26dd77(_0x2433dc,![]);const _0x249652={};_0x249652['error']=_0x22747d(0x283)+_0x22747d(0x1b9)+_0x22747d(0x148)+'ạn\x20đa'+_0x22747d(0x19e)+_0x22747d(0x26c)+'c\x20xác'+_0x22747d(0x261),_0x249652['code']=-0x1;if(!_0x464b67[_0x22747d(0x1d1)]&&!_0x464b67[_0x22747d(0x112)+'e']&&_0x458ff7!=='publi'+'c')return _0x26dd77(_0x249652,![]);_0x26dd77(null,_0x464b67[_0x22747d(0x1d1)],_0x2bc44c,_0x464b67);})[_0x2ce341(0x208)](_0x314b3a=>_0x26dd77(_0x314b3a,![]));};const findRight=async(_0x23453e,_0x439b83,_0x1cda03,_0x3428cb)=>{const _0x1ee291=_0xbe9ac5,_0x3a68fd={};_0x3a68fd[_0x1ee291(0x22d)+'p']=_0x23453e,_0x3a68fd[_0x1ee291(0x225)]=_0x439b83,_0x3a68fd[_0x1ee291(0x236)+'e']=_0x1cda03;let _0x299925=await right[_0x1ee291(0x241)+'ne'](_0x3a68fd)[_0x1ee291(0x257)]();return!_0x299925&&_0x1cda03!==_0x3428cb[_0x1ee291(0x13d)+_0x1ee291(0x1dd)+'e']()&&(_0x299925=await right[_0x1ee291(0x241)+'ne']({'id_app':_0x23453e,'email':_0x439b83,'module':_0x3428cb[_0x1ee291(0x13d)+_0x1ee291(0x1dd)+'e']()})['lean']()),_0x299925;};exports[_0xbe9ac5(0x1f4)+_0xbe9ac5(0x153)]=async function(_0x13cf13,_0x5f1769,_0x15aea3,_0x15a4a9,_0xe9cc7,_0xe5cfca={}){const _0x2d60c0=_0xbe9ac5;if(_0xe5cfca[_0x2d60c0(0x12b)+_0x2d60c0(0x1e6)+'ht'])return _0xe9cc7(null,!![]);if(!_0x13cf13){if(_0x15a4a9==='view'||_0x15a4a9===_0x2d60c0(0x14e)+'all'||_0xe5cfca[_0x2d60c0(0x18c)]?.[_0x2d60c0(0x1d1)])return _0xe9cc7(null,!![]);return _0xe9cc7(_0x2d60c0(0x174)+_0x2d60c0(0x15a)+_0x2d60c0(0xed)+_0x2d60c0(0x163)+'hực\x20h'+'iện\x20t'+_0x2d60c0(0x11e)+_0x2d60c0(0x185)+'y',![]);}const _0x1c1c49=global[_0x2d60c0(0x169)+_0x2d60c0(0x20f)+'s'][_0x15aea3]?.['model'];if(_0x1c1c49?.[_0x2d60c0(0x248)+'a']&&!underscore[_0x2d60c0(0x121)](_0x1c1c49[_0x2d60c0(0x248)+'a'][_0x2d60c0(0x256)],_0x2d60c0(0x22d)+'p'))return _0xe9cc7(null,!![]);let _0x36297d=(_0xe5cfca[_0x2d60c0(0x12d)+_0x2d60c0(0x195)]||_0xe5cfca[_0x2d60c0(0x210)+_0x2d60c0(0x15b)+'ode']||_0x15aea3)[_0x2d60c0(0x13d)+_0x2d60c0(0x1dd)+'e']();_0x15a4a9=(_0x15a4a9||'')[_0x2d60c0(0x13d)+_0x2d60c0(0x1dd)+'e']();if(_0xe5cfca['data']?.[_0x2d60c0(0x264)+_0x2d60c0(0x179)]!=null)_0xe5cfca[_0x2d60c0(0x25e)][_0x2d60c0(0x264)+_0x2d60c0(0x179)]=_0xe5cfca[_0x2d60c0(0x25e)]['trang'+_0x2d60c0(0x179)]['toStr'+_0x2d60c0(0x11d)]();if(_0xe5cfca[_0x2d60c0(0x240)]?.[_0x2d60c0(0x264)+'_thai']!=null)_0xe5cfca[_0x2d60c0(0x240)]['trang'+_0x2d60c0(0x179)]=_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x264)+_0x2d60c0(0x179)][_0x2d60c0(0x1df)+_0x2d60c0(0x11d)]();const _0x235ac7=_0xe5cfca[_0x2d60c0(0x25e)]||_0xe5cfca[_0x2d60c0(0x240)]||{},_0x50ceb5=_0x1c1c49&&underscore[_0x2d60c0(0x121)](_0x1c1c49['schem'+'a'][_0x2d60c0(0x256)],_0x2d60c0(0x171))?((_0xe5cfca[_0x2d60c0(0x240)]||{})['ma_ct']||(_0xe5cfca[_0x2d60c0(0x25e)]||{})[_0x2d60c0(0x171)]||'')[_0x2d60c0(0x1df)+_0x2d60c0(0x11d)]()[_0x2d60c0(0x113)+'erCas'+'e']():null;let _0x14ffe1=(_0x235ac7[_0x2d60c0(0x264)+_0x2d60c0(0x179)]||_0x235ac7[_0x2d60c0(0x222)+_0x2d60c0(0x1e4)]||'')[_0x2d60c0(0x1df)+_0x2d60c0(0x11d)]()[_0x2d60c0(0x113)+_0x2d60c0(0x1dd)+'e']();if(!_0x14ffe1&&_0xe5cfca[_0x2d60c0(0x240)])_0x14ffe1=(_0xe5cfca['obj']['trang'+_0x2d60c0(0x179)]||_0xe5cfca[_0x2d60c0(0x240)]['progr'+_0x2d60c0(0x1e4)]||'')[_0x2d60c0(0x1df)+_0x2d60c0(0x11d)]()[_0x2d60c0(0x113)+'erCas'+'e']();if(_0x50ceb5&&_0x14ffe1){const _0x2fab8c={};_0x2fab8c[_0x2d60c0(0x14f)+_0x2d60c0(0x117)+_0x2d60c0(0x22e)]=_0x14ffe1,_0x2fab8c[_0x2d60c0(0x171)]=_0x50ceb5;const _0xeb30b0=await trangthai[_0x2d60c0(0x241)+'ne'](_0x2fab8c)[_0x2d60c0(0x257)]();if(_0xeb30b0?.[_0x2d60c0(0x23c)+_0x2d60c0(0x223)+_0x2d60c0(0x220)])return _0xe9cc7(null,!![]);const _0x88d7e6={};_0x88d7e6['ma_ct']=_0x50ceb5,_0x88d7e6[_0x2d60c0(0x14f)+_0x2d60c0(0x117)+_0x2d60c0(0x22e)]=_0x14ffe1;if(!_0xeb30b0)Logger[_0x2d60c0(0x199)](_0x2d60c0(0x1b1)+'\x20tìm\x20'+_0x2d60c0(0x155)+'trạng'+_0x2d60c0(0xe8),_0x88d7e6);}try{const {admin:_0x9cefb6,app:_0x1e7754,participant:_0x4fa0bf}=await isAdminAsync(_0x13cf13,_0x5f1769,_0xe5cfca);let _0x293994,_0xc6976a=_0x36297d;if(!_0x9cefb6&&_0x36297d!==_0x15aea3[_0x2d60c0(0x13d)+_0x2d60c0(0x1dd)+'e']()){const _0x479967={};_0x479967[_0x2d60c0(0x1a7)]=_0x36297d,_0x293994=await global[_0x2d60c0(0x1a1)+_0x2d60c0(0x1f2)](_0x2d60c0(0x210)+'nfo')[_0x2d60c0(0x241)+'ne'](_0x479967)[_0x2d60c0(0x257)]();const _0x4f82c1={};_0x4f82c1[_0x2d60c0(0xea)]=_0x2d60c0(0x18d)+_0x2d60c0(0xec)+_0x36297d+('\x27\x20khô'+_0x2d60c0(0x215)+_0x2d60c0(0x162));if(!_0x293994)return _0xe9cc7(_0x4f82c1);const _0x26352d=_0x293994['api_c'+'ode']||_0x293994['code'];if(_0x26352d!==_0x15aea3['toLow'+_0x2d60c0(0x1dd)+'e']())return _0xe9cc7({'error':_0x2d60c0(0x18d)+'yền\x20\x27'+_0x36297d+(_0x2d60c0(0x255)+_0x2d60c0(0x119)+_0x2d60c0(0x13c)+_0x2d60c0(0x231)+'\x20')+_0x26352d+(',\x20mod'+_0x2d60c0(0x1c4))+_0x15aea3});}_0xc6976a=_0x293994?.['permi'+_0x2d60c0(0x278)+_0x2d60c0(0x195)]||_0x36297d;if(_0x1e7754?.['allow'+'_modu'+'les']?.['lengt'+'h']>0x0){const _0x814c93={};_0x814c93[_0x2d60c0(0x1c9)+'x']='^'+_0x15aea3+'$',_0x814c93[_0x2d60c0(0x281)+_0x2d60c0(0x27c)]='i';const _0x10a213={};_0x10a213[_0x2d60c0(0xf4)+'.code']=_0x814c93,_0x10a213[_0x2d60c0(0x112)+_0x2d60c0(0x177)+_0x2d60c0(0x15e)]=!![];const _0x53e070=_0x10a213;if(_0x1e7754['menu_'+'code'])_0x53e070['app']=_0x1e7754[_0x2d60c0(0x23a)+'code'];const _0x397360=await global['getMo'+_0x2d60c0(0x1f2)](_0x2d60c0(0x236)+'einfo')[_0x2d60c0(0x289)](_0x53e070)[_0x2d60c0(0x257)]();if(_0x397360[_0x2d60c0(0xf6)+'h']>0x0){const _0x412d01=_0x397360[_0x2d60c0(0x159)+'r'](_0x34264f=>_0x1e7754[_0x2d60c0(0x1a0)+_0x2d60c0(0x1d8)+_0x2d60c0(0x1d9)][_0x2d60c0(0x1db)+_0x2d60c0(0x1fa)](_0x34264f[_0x2d60c0(0x1a7)])&&(!_0x34264f[_0x2d60c0(0x26a)+_0x2d60c0(0x138)+_0x2d60c0(0x1b5)+'es']||!_0x34264f[_0x2d60c0(0x26a)+_0x2d60c0(0x138)+_0x2d60c0(0x1b5)+'es'][_0x2d60c0(0x1db)+_0x2d60c0(0x1fa)](_0x1e7754[_0x2d60c0(0x214)]['toStr'+_0x2d60c0(0x11d)]()))&&(!_0x34264f[_0x2d60c0(0x21c)+'for_c'+_0x2d60c0(0x14b)+_0x2d60c0(0x190)]||_0x34264f[_0x2d60c0(0x21c)+'for_c'+_0x2d60c0(0x14b)+'ies'][_0x2d60c0(0x1db)+'des'](_0x1e7754[_0x2d60c0(0x214)][_0x2d60c0(0x1df)+_0x2d60c0(0x11d)]())));if(!_0x412d01[_0x2d60c0(0xf6)+'h'])return _0xe9cc7('API\x20\x22'+_0x15aea3+('\x22\x20chư'+_0x2d60c0(0x21b)+_0x2d60c0(0x18a)+_0x2d60c0(0x16f)+_0x2d60c0(0x19d)+_0x2d60c0(0x226)+_0x2d60c0(0x1e9)+_0x2d60c0(0x126)+_0x2d60c0(0x23f)+'modul'+'e\x20')+_0x397360[0x0][_0x2d60c0(0x19a)]+'/'+_0x397360[0x0][_0x2d60c0(0x252)]+')',![]);}}if(_0xe5cfca['data']?.[_0x2d60c0(0x22d)+'p']){if(_0xe5cfca[_0x2d60c0(0x25e)][_0x2d60c0(0x22d)+'p']!==_0x13cf13)return _0xe9cc7(_0x2d60c0(0x174)+'hông\x20'+_0x2d60c0(0x28a)+_0x2d60c0(0x286)+_0x2d60c0(0x124)+_0x2d60c0(0x1c1)+_0x2d60c0(0xe5)+'y',![]);if(_0xe5cfca[_0x2d60c0(0x240)]?.[_0x2d60c0(0x22d)+'p']&&_0xe5cfca[_0x2d60c0(0x25e)][_0x2d60c0(0x22d)+'p']!==_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x22d)+'p'])return _0xe9cc7(_0x2d60c0(0x174)+'hông\x20'+_0x2d60c0(0x200)+_0x2d60c0(0xf8)+'ật\x20th'+'ông\x20t'+'in\x20nà'+'y\x20vào'+'\x20công'+_0x2d60c0(0x253)+_0x2d60c0(0x1a6),![]);}if(_0xe5cfca['obj']?.['id_ap'+'p']&&_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x22d)+'p']!==_0x13cf13)return _0xe9cc7('Bạn\x20k'+'hông\x20'+_0x2d60c0(0x28a)+'ruy\x20c'+_0x2d60c0(0x124)+'ông\x20t'+_0x2d60c0(0xe5)+_0x2d60c0(0x11f)+_0x2d60c0(0x247)+_0x2d60c0(0x249)+'ông\x20t'+'huộc\x20'+_0x2d60c0(0x123)+_0x2d60c0(0x254)+_0x2d60c0(0x11c)+'i',![]);if(_0xe5cfca[_0x2d60c0(0x12b)+_0x2d60c0(0x1e6)+'ht'])return _0xe9cc7(null,!![],_0x1e7754);if(_0xe5cfca[_0x2d60c0(0x240)]&&!_0x9cefb6){if(_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x262)+'le_to']===0x2){if(!underscore[_0x2d60c0(0x1f0)+_0x2d60c0(0x198)](_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x262)+'le_to'+_0x2d60c0(0x11b)+'s'],_0x5f1769)&&_0xe5cfca['obj'][_0x2d60c0(0x1ed)+'er']!==_0x5f1769['toLow'+_0x2d60c0(0x1dd)+'e']()&&_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x10e)+_0x2d60c0(0x17d)+'ed']?.[_0x2d60c0(0x13d)+'erCas'+'e']()!==_0x5f1769[_0x2d60c0(0x13d)+_0x2d60c0(0x1dd)+'e']())return _0xe9cc7(_0x2d60c0(0x174)+_0x2d60c0(0x15a)+_0x2d60c0(0xed)+_0x2d60c0(0x163)+_0x2d60c0(0x286)+_0x2d60c0(0x124)+_0x2d60c0(0x1c1)+'in\x20nà'+'y',![]);}else{if(_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x262)+'le_to']===0x1&&_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x1ed)+'er']!==_0x5f1769[_0x2d60c0(0x13d)+_0x2d60c0(0x1dd)+'e']()&&_0xe5cfca['obj'][_0x2d60c0(0x10e)+_0x2d60c0(0x17d)+'ed']?.[_0x2d60c0(0x13d)+'erCas'+'e']()!==_0x5f1769[_0x2d60c0(0x13d)+_0x2d60c0(0x1dd)+'e']()){if(_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x1f5)+'rach']!==_0x5f1769[_0x2d60c0(0x13d)+'erCas'+'e']()&&!(_0xe5cfca['obj'][_0x2d60c0(0x266)+'ds']||[])['inclu'+'des'](_0x5f1769)){const _0x443f5d=await exports[_0x2d60c0(0x26d)+_0x2d60c0(0x251)+_0x2d60c0(0x105)](_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x22d)+'p'],_0x5f1769[_0x2d60c0(0x13d)+_0x2d60c0(0x1dd)+'e']());if(!_0x443f5d[_0x2d60c0(0x1db)+_0x2d60c0(0x1fa)](_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x10e)+_0x2d60c0(0x17d)+'ed']))return _0xe9cc7(_0x2d60c0(0x1a5)+_0x2d60c0(0x1bb)+_0x2d60c0(0x146)+_0x2d60c0(0x287)+_0x2d60c0(0x196)+_0x2d60c0(0x11a)+_0x2d60c0(0x233)+_0x2d60c0(0x143)+_0x2d60c0(0x1da)+_0x2d60c0(0x1de)+_0x2d60c0(0x219)+_0x2d60c0(0x12e)+_0x2d60c0(0x128)+_0x2d60c0(0x15a)+'tin\x20n'+'ày',![]);}}}}const _0x2e5754=(_0x4fa0bf?.['group'+_0x2d60c0(0x214)]||_0x5f1769)['toLow'+'erCas'+'e'](),_0x281793=await findRight(_0x13cf13,_0x2e5754,_0xc6976a,_0x15aea3);if(!_0x9cefb6){if(!_0x281793){const _0x14d344=global[_0x2d60c0(0x169)+'oller'+'s'][_0x15aea3[_0x2d60c0(0x113)+_0x2d60c0(0x1dd)+'e']()],_0x5ed27b=((_0x14d344||{})[_0x2d60c0(0x1e3)+_0x2d60c0(0x14d)]||_0x15aea3)[_0x2d60c0(0x13d)+'erCas'+'e'](),_0x5b9615=_0x5ed27b===_0x2d60c0(0xe9)+'mer'||['socai','sokho',_0x2d60c0(0x1ef)+'o',_0x2d60c0(0x23e),_0x2d60c0(0x19c)+'o',_0x2d60c0(0x293)+'o'][_0x2d60c0(0x10f)](_0x20391e=>_0x5ed27b[_0x2d60c0(0x1db)+_0x2d60c0(0x1fa)](_0x20391e))||_0x14d344&&(_0x14d344['optio'+'ns']||{})[_0x2d60c0(0x28d)+_0x2d60c0(0x1f9)];if(_0x5b9615)return _0xe9cc7(_0x2d60c0(0x174)+_0x2d60c0(0x15a)+_0x2d60c0(0xed)+_0x2d60c0(0x1cd)+'ối\x20vớ'+'i\x20tín'+_0x2d60c0(0x13b)+_0x2d60c0(0x27f),![]);if(_0x15a4a9===_0x2d60c0(0x232)||_0x15a4a9===_0x2d60c0(0x17c)&&_0x15aea3[_0x2d60c0(0x13d)+_0x2d60c0(0x1dd)+'e']()===_0x2d60c0(0x131)){const _0x27d4b6={'items.code':_0x15aea3['toLow'+_0x2d60c0(0x1dd)+'e']()};if(_0x1e7754?.[_0x2d60c0(0x23a)+_0x2d60c0(0x1a7)])_0x27d4b6[_0x2d60c0(0x19a)]=_0x1e7754[_0x2d60c0(0x23a)+_0x2d60c0(0x1a7)];const _0x2e20aa={};_0x2e20aa['app']=0x1;const _0x2fdcf8=await global[_0x2d60c0(0x1a1)+_0x2d60c0(0x1f2)]('modul'+_0x2d60c0(0x150))['findO'+'ne'](_0x27d4b6,_0x2e20aa)[_0x2d60c0(0x257)]();if(!_0x2fdcf8)return _0xe9cc7(null,!![],_0x1e7754);return _0xe9cc7(_0x2d60c0(0x174)+_0x2d60c0(0x15a)+_0x2d60c0(0xed)+'yền\x20đ'+_0x2d60c0(0x12c)+_0x2d60c0(0x1ae)+'h\x20năn'+_0x2d60c0(0x27f),![]);}return _0xe9cc7(_0x2d60c0(0x174)+_0x2d60c0(0x15a)+_0x2d60c0(0xed)+'yền\x20đ'+_0x2d60c0(0x12c)+_0x2d60c0(0x1ae)+_0x2d60c0(0x13b)+'g\x20này',![]);}if(_0x15a4a9===_0x2d60c0(0x232)&&_0x281793[_0x2d60c0(0x14e)+_0x2d60c0(0x22b)])return _0xe9cc7(null,!![],_0x1e7754);if(_0x15a4a9===_0x2d60c0(0x232)&&_0xe5cfca[_0x2d60c0(0x240)]&&!_0x281793[_0x2d60c0(0x14e)+_0x2d60c0(0x22b)]&&!_0x281793['viewO'+_0x2d60c0(0x244)+'r']&&_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x10e)+_0x2d60c0(0x17d)+'ed']?.[_0x2d60c0(0x13d)+_0x2d60c0(0x1dd)+'e']()!==_0x5f1769){if(_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x262)+_0x2d60c0(0xe7)]!==0x2||!underscore[_0x2d60c0(0x1f0)+_0x2d60c0(0x198)](_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x262)+_0x2d60c0(0xe7)+_0x2d60c0(0x11b)+'s'],_0x5f1769)){if(_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x1f5)+_0x2d60c0(0x105)]!==_0x5f1769&&!(_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x266)+'ds']||[])[_0x2d60c0(0x1db)+'des'](_0x5f1769)){const _0x1b75b7=await exports[_0x2d60c0(0x26d)+_0x2d60c0(0x251)+_0x2d60c0(0x105)](_0xe5cfca[_0x2d60c0(0x240)]['id_ap'+'p'],_0x5f1769[_0x2d60c0(0x13d)+_0x2d60c0(0x1dd)+'e']());if(!_0x1b75b7[_0x2d60c0(0x1db)+_0x2d60c0(0x1fa)](_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x10e)+_0x2d60c0(0x17d)+'ed']))return _0xe9cc7(_0x2d60c0(0x174)+_0x2d60c0(0x15a)+_0x2d60c0(0xed)+_0x2d60c0(0x163)+'ruy\x20c'+_0x2d60c0(0x124)+_0x2d60c0(0x1c1)+_0x2d60c0(0xe5)+'y',![]);}}}if(!_0x281793[_0x15a4a9])return _0xe9cc7(_0x2d60c0(0x174)+'hông\x20'+_0x2d60c0(0xed)+_0x2d60c0(0x1cd)+'ối\x20vớ'+_0x2d60c0(0x1ae)+'h\x20năn'+_0x2d60c0(0x27f),![]);if(_0x14ffe1){const _0x4e7c3c=_0x281793[_0x15a4a9+(_0x2d60c0(0x245)+_0x2d60c0(0x1cb)+'i')];if(_0x4e7c3c&&_0x281793[_0x15a4a9+(_0x2d60c0(0x245)+_0x2d60c0(0x1cb)+'i')][_0x14ffe1]===![])return _0xe9cc7(_0x2d60c0(0x174)+'hông\x20'+'có\x20qu'+'yền\x20đ'+_0x2d60c0(0x12c)+_0x2d60c0(0x1c3)+_0x2d60c0(0x101)+_0x2d60c0(0x1b4)+_0x2d60c0(0x1f1)+_0x2d60c0(0x1b3),![]);}}if(_0xe5cfca[_0x2d60c0(0x240)]){if((_0x15a4a9==='updat'+'e'||_0x15a4a9===_0x2d60c0(0xfb)+'e')&&_0x1c1c49&&underscore[_0x2d60c0(0x121)](_0x1c1c49[_0x2d60c0(0x248)+'a']['paths'],'ma_ct')&&_0xe5cfca[_0x2d60c0(0x240)]['ma_ct']){const _0x286517=await trangthai[_0x2d60c0(0x241)+'ne']({'ma_ct':_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x171)][_0x2d60c0(0x113)+'erCas'+'e'](),'ma_trang_thai':_0xe5cfca[_0x2d60c0(0x240)][_0x2d60c0(0x264)+_0x2d60c0(0x179)]})[_0x2d60c0(0x257)]();if(_0x286517){if(_0x15a4a9===_0x2d60c0(0x170)+'e'){if(_0x286517['allow'+_0x2d60c0(0x22f)+'te']===![])return _0xe9cc7(_0x2d60c0(0x183)+_0x2d60c0(0xe8)+'\x20chứn'+_0x2d60c0(0x227)+_0x2d60c0(0x1b8)+'hông\x20'+'cho\x20p'+_0x2d60c0(0x176)+'ửa',![]);if(_0x286517[_0x2d60c0(0x1ee)+_0x2d60c0(0x25e)]===!![])return _0xe9cc7(_0x2d60c0(0x183)+_0x2d60c0(0xe8)+_0x2d60c0(0x1e7)+_0x2d60c0(0x227)+_0x2d60c0(0x237)+'ã\x20đượ'+_0x2d60c0(0x106)+'á',![]);}if(_0x15a4a9===_0x2d60c0(0xfb)+'e'&&(_0x286517[_0x2d60c0(0x1ee)+_0x2d60c0(0x25e)]||_0x286517[_0x2d60c0(0x1a0)+_0x2d60c0(0x1ca)+'te']===![]))return _0xe9cc7(_0x2d60c0(0x183)+'\x20thái'+_0x2d60c0(0x1e7)+'g\x20từ\x20'+_0x2d60c0(0x1b8)+_0x2d60c0(0x15a)+_0x2d60c0(0xfa)+_0x2d60c0(0x115)+'oá',![]);}}const _0x12451a=_0x15a4a9+('_righ'+'t');if(!_0x9cefb6&&_0xe5cfca[_0x2d60c0(0x240)][_0x12451a]?.[_0x2d60c0(0xf6)+'h']>0x0&&!_0xe5cfca['obj'][_0x12451a][_0x2d60c0(0x1db)+_0x2d60c0(0x1fa)](_0x5f1769['toLow'+_0x2d60c0(0x1dd)+'e']()))return _0xe9cc7(_0x2d60c0(0x174)+'hông\x20'+_0x2d60c0(0xed)+_0x2d60c0(0x1cd)+_0x2d60c0(0x12c)+_0x2d60c0(0x1ae)+_0x2d60c0(0x13b)+_0x2d60c0(0x27f),![]);}_0xe9cc7(null,!![],_0x1e7754);}catch(_0x2508c4){_0xe9cc7(_0x2508c4,![]);}},exports[_0xbe9ac5(0x144)+_0xbe9ac5(0x229)+'ght']=(_0x481c49,_0x14e1bf,_0x258d3f,_0x47e9e4,_0x3197f0={})=>new Promise((_0x21cb8a,_0x3acdee)=>{const _0x1818cb=_0xbe9ac5;exports[_0x1818cb(0x1f4)+_0x1818cb(0x153)](_0x481c49,_0x14e1bf,_0x258d3f,_0x47e9e4,(_0x437fe0,_0x18a21d,_0x14237a)=>{const _0x50e652=_0x1818cb;if(_0x437fe0)return _0x3acdee(_0x437fe0);const _0x5957c0={};_0x5957c0['permi'+_0x50e652(0x23b)]=_0x18a21d,_0x5957c0[_0x50e652(0x19a)]=_0x14237a,_0x21cb8a(_0x5957c0);},_0x3197f0);}),exports[_0xbe9ac5(0x17f)+'ghtBy'+_0xbe9ac5(0x13f)]=async function(_0x2e602f,_0x3b424,_0x2143e5,_0x37b93f,_0x89ce57,_0x532f6f={}){const _0x463baa=_0xbe9ac5;if(!_0x89ce57)_0x89ce57=_0x3b424?.[_0x463baa(0x1e3)+_0x463baa(0x1d4)]?.[_0x463baa(0x13d)+_0x463baa(0x1dd)+'e']()||'';const _0x13c979=(_0x532f6f[_0x463baa(0x12d)+_0x463baa(0x195)]||_0x532f6f[_0x463baa(0x210)+_0x463baa(0x15b)+_0x463baa(0x108)]||_0x89ce57)[_0x463baa(0x13d)+_0x463baa(0x1dd)+'e'](),_0x575e3f=_0x13c979?_0x463baa(0x141)+_0x463baa(0x1d7)+'m::'+_0x2e602f+'::'+_0x2143e5+'::'+_0x13c979+'::'+JSON[_0x463baa(0x1c8)+_0x463baa(0x13e)](_0x532f6f):'',_0x467c30=_0x2143e5===_0x463baa(0x265)+'c'?0x7*0x18*0x3c:0x1;if(_0x575e3f&&global[_0x463baa(0xf1)+_0x463baa(0x12f)][_0x575e3f]&&moment()['diff'](moment(global[_0x463baa(0xf1)+_0x463baa(0x12f)][_0x575e3f][_0x463baa(0x25d)]),_0x463baa(0x10a)+'es')<_0x467c30)return _0x37b93f(null,global['cache'+_0x463baa(0x12f)][_0x575e3f]['data'],![]);try{const {admin:_0x3e8133,app:_0x51f6af,participant:_0x2d59fe}=await isAdminAsync(_0x2e602f,_0x2143e5,_0x532f6f);let _0x5f3a41={};if(!_0x3e8133&&!_0x532f6f[_0x463baa(0x12b)+'edRig'+'ht']&&underscore[_0x463baa(0x121)](_0x3b424[_0x463baa(0x248)+'a'][_0x463baa(0x256)],_0x463baa(0x22d)+'p')){let _0x2e2799,_0x1dcc6a=_0x13c979;if(_0x13c979&&_0x13c979!==_0x89ce57[_0x463baa(0x13d)+_0x463baa(0x1dd)+'e']()){const _0xcf4a68={};_0xcf4a68[_0x463baa(0x1a7)]=_0x13c979,_0x2e2799=await global[_0x463baa(0x1a1)+_0x463baa(0x1f2)](_0x463baa(0x210)+_0x463baa(0x20e))[_0x463baa(0x241)+'ne'](_0xcf4a68)[_0x463baa(0x257)]();const _0x47665f={};_0x47665f['error']=_0x463baa(0x18d)+'yền\x20\x27'+_0x13c979+('\x27\x20khô'+'ng\x20tồ'+_0x463baa(0x162));if(!_0x2e2799)return _0x37b93f(_0x47665f);const _0x22b729=_0x2e2799[_0x463baa(0x1f3)+_0x463baa(0x108)]||_0x2e2799[_0x463baa(0x1a7)];if(_0x22b729!==_0x89ce57[_0x463baa(0x13d)+'erCas'+'e']())return _0x37b93f({'error':_0x463baa(0x18d)+_0x463baa(0xec)+_0x13c979+(_0x463baa(0x255)+_0x463baa(0x119)+_0x463baa(0xff)+'\x20API:'+'\x20')+_0x22b729+(',\x20mod'+_0x463baa(0x1c4))+_0x89ce57});}_0x1dcc6a=_0x2e2799?.[_0x463baa(0x109)+_0x463baa(0x278)+'_code']||_0x13c979;const _0x3ae911=(_0x2d59fe?.[_0x463baa(0x131)+'_id']||_0x2143e5)[_0x463baa(0x13d)+_0x463baa(0x1dd)+'e'](),_0x5ee1f9=await findRight(_0x2e602f,_0x3ae911,_0x1dcc6a,_0x89ce57);if(_0x5ee1f9?.[_0x463baa(0x14e)+_0x463baa(0x22b)]){if(_0x5ee1f9[_0x463baa(0x1e5)+_0x463baa(0x26b)+'ition'])try{const _0x1d498b=_0x5ee1f9['extra'+_0x463baa(0x26b)+'ition']['index'+'Of'](_0x463baa(0x14a)+'n\x20')<0x0?'retur'+'n\x20'+_0x5ee1f9[_0x463baa(0x1e5)+_0x463baa(0x26b)+_0x463baa(0x28f)]:_0x463baa(0x187)+'\x20\x20\x20\x20\x20'+_0x463baa(0x132)+_0x463baa(0x1f8)+'urn\x20('+_0x463baa(0x144)+'\x20()\x20='+_0x463baa(0x1a9)+_0x463baa(0x132)+_0x463baa(0x132)+_0x463baa(0x132)+_0x463baa(0x186)+_0x5ee1f9['extra'+_0x463baa(0x26b)+_0x463baa(0x28f)]+(_0x463baa(0x187)+'\x20\x20\x20\x20\x20'+_0x463baa(0x132)+_0x463baa(0x212)+_0x463baa(0xf7)+_0x463baa(0x132)+_0x463baa(0x132));_0x5f3a41=await evalute2(_0x1d498b,{'user':_0x2143e5,'module':_0x89ce57,'participant':_0x2d59fe,'appInfo':_0x51f6af,'getModel':_0x35b900=>{const _0x363fda=_0x463baa,_0x2e9ebf=_0x35b900['toLow'+_0x363fda(0x1dd)+'e']()['trim'](),_0x3f37f9=global[_0x363fda(0x1a1)+_0x363fda(0x1f2)](_0x2e9ebf);if(!_0x3f37f9)throw new Error('Model'+'\x20\x27'+_0x2e9ebf+(_0x363fda(0x255)+_0x363fda(0x215)+'n\x20tại'+'.'));const _0x3ee73d=(_0x1b059f={})=>({..._0x1b059f,'id_app':_0x2e602f}),_0x59cae4=(_0x2fc58c=[])=>{const _0x596aac=_0x363fda;let _0x4abe04=[..._0x2fc58c];if(_0x4abe04[_0x596aac(0xf6)+'h']>0x0&&_0x4abe04[0x0][_0x596aac(0xf0)+'h'])_0x4abe04[0x0][_0x596aac(0xf0)+'h']['id_ap'+'p']=_0x2e602f;else{const _0x1b123b={};_0x1b123b['id_ap'+'p']=_0x2e602f;const _0x9489a6={};_0x9489a6[_0x596aac(0xf0)+'h']=_0x1b123b,_0x4abe04[_0x596aac(0x285)+'ft'](_0x9489a6);}return _0x4abe04;};return{'find':(_0x247ad4,_0x59e977,_0x17de2e)=>_0x3f37f9['find'](_0x3ee73d(_0x247ad4),_0x59e977,_0x17de2e),'findOne':(_0x55cc84,_0x2adff5,_0xd68d85)=>_0x3f37f9[_0x363fda(0x241)+'ne'](_0x3ee73d(_0x55cc84),_0x2adff5,_0xd68d85),'aggregate':_0xfe3a33=>_0x3f37f9[_0x363fda(0x213)+_0x363fda(0x24d)](_0x59cae4(_0xfe3a33)),'countDocuments':_0x400e46=>_0x3f37f9[_0x363fda(0x268)+_0x363fda(0x149)+'ents'](_0x3ee73d(_0x400e46))};}});}catch(_0x50f838){return Logger['error'](_0x463baa(0x276)+_0x463baa(0x20b)+_0x463baa(0x125)+_0x463baa(0x1d6)+_0x463baa(0x1e0)+_0x463baa(0x1e8)+_0x463baa(0x205),_0x50f838,_0x5ee1f9[_0x463baa(0x1e5)+_0x463baa(0x26b)+'ition']),_0x37b93f(_0x50f838[_0x463baa(0x1bf)+'ge']);}if(_0x575e3f)global[_0x463baa(0xf1)+_0x463baa(0x12f)][_0x575e3f]={'time':new Date(),'data':_[_0x463baa(0x1f6)+'Deep'](_0x5f3a41)};return _0x37b93f(null,_0x5f3a41,![]);}let _0xfccff=(await exports[_0x463baa(0x26d)+'gPhuT'+_0x463baa(0x105)](_0x2e602f,_0x2143e5))[_0x463baa(0x159)+'r'](Boolean);_0xfccff[_0x463baa(0x175)](_0x2143e5);_0x5ee1f9?.[_0x463baa(0x14e)+_0x463baa(0xfe)+_0x463baa(0x1c6)+_0x463baa(0x114)]&&(_0xfccff[_0x463baa(0x175)](''),_0xfccff[_0x463baa(0x175)](null));_0xfccff=[...new Set(_0xfccff)];let _0x3fb7a2,_0x1467b4,_0x2ad6ca,_0x1ed8f9=[],_0x2f803a;const _0x16ebff=_0x46edea=>underscore[_0x463baa(0x121)](_0x3b424[_0x463baa(0x248)+'a'][_0x463baa(0x256)],_0x46edea),_0x5ec022=()=>{const _0x499561=_0x463baa;if(!_0x16ebff(_0x499561(0x262)+_0x499561(0xe7)))return;if(!_0x5f3a41[_0x499561(0x239)])_0x5f3a41[_0x499561(0x239)]=[];const _0x4727f0={};_0x4727f0[_0x499561(0x262)+'le_to']=0x0,_0x3fb7a2=_0x4727f0;const _0x398dab={};_0x398dab[_0x499561(0x262)+_0x499561(0xe7)]=0x2,_0x398dab[_0x499561(0x262)+_0x499561(0xe7)+_0x499561(0x11b)+'s']=_0x2143e5,_0x1467b4=_0x398dab;const _0x304f06={};_0x304f06['visib'+_0x499561(0xe7)]=0x5,_0x304f06['visib'+_0x499561(0xe7)+_0x499561(0x11b)+_0x499561(0x131)+'s']=(_0x2d59fe||{})[_0x499561(0x131)+_0x499561(0x214)];const _0x392cb0={};_0x392cb0[_0x499561(0x262)+'le_to']=0x5,_0x392cb0['visib'+_0x499561(0xe7)+_0x499561(0x11b)+'s']=(_0x2d59fe||{})[_0x499561(0x131)+_0x499561(0x214)],_0x2ad6ca=_0x16ebff('visib'+_0x499561(0xe7)+_0x499561(0x11b)+'group'+'s')?_0x304f06:_0x392cb0;const _0xe18b30={};_0xe18b30['visib'+_0x499561(0xe7)]=null,_0x1ed8f9[_0x499561(0x175)](_0x3fb7a2,_0x1467b4,_0x2ad6ca,_0xe18b30);};if(_0x5ee1f9?.['view']){_0x5ec022();if(_0x5ee1f9['viewO'+_0x463baa(0x244)+'r']===![]){if(_0x16ebff(_0x463baa(0x192))){const _0x569159={};_0x569159[_0x463baa(0x107)]=_0xfccff;const _0x2aa1d3=await exports['dsKhD'+'angPh'+'uTrac'+'h'](_0x2e602f,_0x569159);if(_0x2aa1d3[_0x463baa(0xf6)+'h']>0x0)_0x1ed8f9[_0x463baa(0x175)]({'ma_kh':{'$in':_0x2aa1d3}});}const _0x48d6ff={};_0x48d6ff[_0x463baa(0x107)]=_0xfccff;const _0x200801={};_0x200801[_0x463baa(0x107)]=_0xfccff;const _0x3e66a9={};_0x3e66a9[_0x463baa(0x10e)+_0x463baa(0x17d)+'ed']=_0x200801;if(_0x3fb7a2)_0x3fb7a2[_0x463baa(0x10e)+_0x463baa(0x17d)+'ed']=_0x48d6ff;else _0x1ed8f9[_0x463baa(0x175)](_0x3e66a9);}else{if(_0x16ebff('trang'+_0x463baa(0x179))){const _0x2764cf=_0x5ee1f9[_0x463baa(0x14e)+'trang'+_0x463baa(0x179)];if(_0x2764cf){_0x2f803a=[undefined,null,'',...Object[_0x463baa(0x188)+'es'](_0x2764cf)[_0x463baa(0x159)+'r'](([,_0x10eaf2])=>_0x10eaf2)[_0x463baa(0x238)](([_0xab581b])=>_0xab581b)];const _0x13fcf6={};_0x13fcf6[_0x463baa(0x107)]=_0x2f803a,_0x5f3a41['trang'+_0x463baa(0x179)]=_0x13fcf6;}const _0x28cfff=_0x5ee1f9['viewO'+_0x463baa(0x244)+_0x463baa(0x122)+_0x463baa(0x242)+'ai'];let _0x1fbaaa;_0x28cfff&&(_0x1fbaaa=[undefined,null,'',...Object[_0x463baa(0x188)+'es'](_0x28cfff)['filte'+'r'](([_0x30c274,_0x1ac163])=>_0x1ac163&&(!_0x2764cf||_0x2764cf[_0x30c274]))[_0x463baa(0x238)](([_0x369ffa])=>_0x369ffa)]);if(_0x5ee1f9['viewO'+_0x463baa(0x244)+_0x463baa(0x156)+_0x463baa(0x1ba)+'ups']?.[_0x463baa(0xf6)+'h']>0x0){const _0x17dd2e={};_0x17dd2e[_0x463baa(0x107)]=_0x5ee1f9[_0x463baa(0x10b)+'fOthe'+_0x463baa(0x156)+_0x463baa(0x1ba)+_0x463baa(0x184)];const _0x334ea9={};_0x334ea9[_0x463baa(0x22d)+'p']=_0x2e602f,_0x334ea9[_0x463baa(0x131)+_0x463baa(0x214)]=_0x17dd2e;const _0x264029={};_0x264029[_0x463baa(0x225)]=0x1;const _0x490a1b=await Participant[_0x463baa(0x289)](_0x334ea9,_0x264029)[_0x463baa(0x257)]();_0xfccff[_0x463baa(0x175)](..._0x490a1b[_0x463baa(0x238)](_0x4d155f=>_0x4d155f[_0x463baa(0x225)]));if(_0x3fb7a2)_0x3fb7a2[_0x1fbaaa?_0x463baa(0x158):_0x463baa(0x10e)+_0x463baa(0x17d)+'ed']=_0x1fbaaa?[{'user_created':{'$in':_0xfccff[_0x463baa(0x159)+'r'](_0x54e94c=>_0x54e94c!==_0x2143e5)},'trang_thai':{'$in':_0x1fbaaa}},{'user_created':_0x2143e5}]:{'$in':_0xfccff};else{if(_0x1fbaaa){const _0x31fdd7={};_0x31fdd7[_0x463baa(0x107)]=_0x1fbaaa,_0x1ed8f9[_0x463baa(0x175)]({'$or':[{'user_created':{'$in':_0xfccff[_0x463baa(0x159)+'r'](_0x2de6e1=>_0x2de6e1!==_0x2143e5)},'trang_thai':_0x31fdd7},{'user_created':_0x2143e5}]});}else{const _0x5de247={};_0x5de247[_0x463baa(0x107)]=_0xfccff;const _0x60032d={};_0x60032d[_0x463baa(0x10e)+_0x463baa(0x17d)+'ed']=_0x5de247,_0x1ed8f9['push'](_0x60032d);}}}else{if(_0x1fbaaa){const _0x1463e5={};_0x1463e5[_0x463baa(0xf2)]=_0x2143e5;const _0x256469={};_0x256469[_0x463baa(0x107)]=_0x1fbaaa;const _0x56f36d={};_0x56f36d[_0x463baa(0x10e)+_0x463baa(0x17d)+'ed']=_0x1463e5,_0x56f36d[_0x463baa(0x264)+'_thai']=_0x256469;const _0x3dfbc3={};_0x3dfbc3[_0x463baa(0x10e)+'creat'+'ed']=_0x2143e5;const _0x3ea971=[_0x56f36d,_0x3dfbc3];if(_0x3fb7a2)_0x3fb7a2[_0x463baa(0x158)]=_0x3ea971;else _0x1ed8f9[_0x463baa(0x175)]({'$or':_0x3ea971});}}}}if(_0x1467b4){const _0x23721e={};_0x23721e[_0x463baa(0x107)]=[..._0xfccff,_0x2143e5];const _0x2f9b55={};_0x2f9b55['of_us'+'er']=_0x23721e;if(_0x16ebff(_0x463baa(0x1ed)+'er'))_0x1ed8f9['push'](_0x2f9b55);const _0x436ac1={};_0x436ac1[_0x463baa(0x107)]=[..._0xfccff,_0x2143e5];const _0x35f7a7={};_0x35f7a7[_0x463baa(0x18c)]=_0x436ac1;if(_0x16ebff(_0x463baa(0x18c)))_0x1ed8f9[_0x463baa(0x175)](_0x35f7a7);const _0x439d05={};_0x439d05[_0x463baa(0x107)]=_0xfccff;const _0x53e932={};_0x53e932[_0x463baa(0x1f5)+'rach']=_0x439d05;if(_0x16ebff(_0x463baa(0x1f5)+_0x463baa(0x105)))_0x1ed8f9['push'](_0x53e932);const _0x2877f2={};_0x2877f2[_0x463baa(0x107)]=_0xfccff;const _0x4807e1={};_0x4807e1[_0x463baa(0x266)+'ds']=_0x2877f2;if(_0x16ebff(_0x463baa(0x266)+'ds'))_0x1ed8f9[_0x463baa(0x175)](_0x4807e1);}}else{if(!not_need_right_models[_0x463baa(0x1db)+_0x463baa(0x1fa)](_0x89ce57)){const _0x3d1dc8={};_0x3d1dc8[_0x463baa(0x10e)+_0x463baa(0x17d)+'ed']=_0x2143e5,_0x1ed8f9[_0x463baa(0x175)](_0x3d1dc8);const _0xf6d9f={};_0xf6d9f[_0x463baa(0x107)]=[..._0xfccff,_0x2143e5];const _0x55bcf4={};_0x55bcf4[_0x463baa(0x1ed)+'er']=_0xf6d9f;if(_0x16ebff(_0x463baa(0x1ed)+'er'))_0x1ed8f9[_0x463baa(0x175)](_0x55bcf4);const _0x459e42={};_0x459e42['$in']=[..._0xfccff,_0x2143e5];const _0x1173f3={};_0x1173f3['user']=_0x459e42;if(_0x16ebff('user'))_0x1ed8f9[_0x463baa(0x175)](_0x1173f3);const _0x1ac9fe={};_0x1ac9fe[_0x463baa(0x107)]=_0xfccff;const _0x7d1f63={};_0x7d1f63['phu_t'+'rach']=_0x1ac9fe;if(_0x16ebff(_0x463baa(0x1f5)+_0x463baa(0x105)))_0x1ed8f9['push'](_0x7d1f63);const _0x1914fb={};_0x1914fb[_0x463baa(0x266)+'ds']=_0x2143e5;if(_0x16ebff(_0x463baa(0x266)+'ds'))_0x1ed8f9[_0x463baa(0x175)](_0x1914fb);}const _0x4c6f24={'items.code':_0x89ce57['toLow'+_0x463baa(0x1dd)+'e']()};if(_0x51f6af?.[_0x463baa(0x23a)+_0x463baa(0x1a7)])_0x4c6f24['app']=_0x51f6af[_0x463baa(0x23a)+_0x463baa(0x1a7)];const _0x15a741={};_0x15a741['app']=0x1;const _0x4fbc1f=await global[_0x463baa(0x1a1)+'del']('modul'+_0x463baa(0x150))[_0x463baa(0x241)+'ne'](_0x4c6f24,_0x15a741)[_0x463baa(0x257)]();if(!_0x4fbc1f)_0x5ec022();}const _0x2bcb87={};_0x2bcb87['publi'+'c']=!![];if(_0x16ebff(_0x463baa(0x265)+'c'))_0x1ed8f9[_0x463baa(0x175)](_0x2bcb87);const _0x4c34db={};_0x4c34db['share'+'d']=!![];if(_0x16ebff(_0x463baa(0x1d0)+'d'))_0x1ed8f9['push'](_0x4c34db);if(_0x1ed8f9[_0x463baa(0xf6)+'h']>0x0){if(!_0x5f3a41[_0x463baa(0x239)])_0x5f3a41[_0x463baa(0x239)]=[];const _0x514fb0={};_0x514fb0[_0x463baa(0x158)]=_0x1ed8f9,_0x5f3a41[_0x463baa(0x239)]['push'](_0x514fb0);}if(_0x5f3a41['$and']?.[_0x463baa(0xf6)+'h']===0x0)delete _0x5f3a41[_0x463baa(0x239)];if(_0x5f3a41['$or']?.['lengt'+'h']===0x0)delete _0x5f3a41[_0x463baa(0x158)];if(_0x575e3f)global[_0x463baa(0xf1)+_0x463baa(0x12f)][_0x575e3f]={'time':new Date(),'data':_['clone'+_0x463baa(0x20c)](_0x5f3a41)};return _0x37b93f(null,_0x5f3a41,![]);}else return _0x37b93f(null,_0x5f3a41,_0x3e8133);}catch(_0x4b84e6){_0x37b93f(_0x4b84e6);}},exports[_0xbe9ac5(0x17f)+_0xbe9ac5(0x1ce)+_0xbe9ac5(0x147)+'w']=function(_0x31b5c6,_0x53057c,_0x5c8ce7,_0x330b40){const _0x4858ad=_0xbe9ac5;exports[_0x4858ad(0x100)+'in'](_0x31b5c6,_0x5c8ce7,(_0x31566d,_0x39bd77)=>{const _0x4814c9=_0x4858ad;if(_0x31566d)return _0x330b40(_0x31566d);const _0x408bf1={};if(!_0x39bd77&&underscore[_0x4814c9(0x121)](_0x53057c[_0x4814c9(0x248)+'a'][_0x4814c9(0x256)],_0x4814c9(0x1f7)+'iew_t'+_0x4814c9(0x1eb)+'rs')){const _0x160020={};_0x160020[_0x4814c9(0x1f7)+'iew_t'+'o']=null;const _0x583512={};_0x583512['datav'+_0x4814c9(0x284)+'o']=0x0;const _0x39917c={};_0x39917c[_0x4814c9(0x1f7)+_0x4814c9(0x284)+'o']=0x1,_0x39917c[_0x4814c9(0x10e)+_0x4814c9(0x17d)+'ed']=_0x5c8ce7;const _0xc724d5={};_0xc724d5[_0x4814c9(0x1f7)+'iew_t'+'o']=0x2,_0xc724d5[_0x4814c9(0x1f7)+_0x4814c9(0x284)+_0x4814c9(0x1eb)+'rs']=_0x5c8ce7;const _0x54c206={};_0x54c206['$or']=[_0x160020,_0x583512,_0x39917c,_0xc724d5],_0x408bf1[_0x4814c9(0x239)]=[_0x54c206];}_0x330b40(null,_0x408bf1,_0x39bd77);});},exports[_0xbe9ac5(0x209)+_0xbe9ac5(0x292)+_0xbe9ac5(0x224)+'t']=async(_0x55b7af,_0x2fbaa3,_0xed486f)=>{const _0xee703e=_0xbe9ac5;if(!_0x55b7af)return[];const _0x235bcc=await Participant[_0xee703e(0x140)](_0x55b7af,_0x2fbaa3);if(!_0x235bcc[_0xee703e(0xf6)+'h'])return[];const _0x5f1e75=_0x235bcc[0x0][_0xee703e(0x131)+_0xee703e(0x214)];try{const _0x52c7a0=await right['getIn'+'fo'](_0x55b7af,{'email':_0x5f1e75,'module':_0xed486f[_0xee703e(0x13d)+_0xee703e(0x1dd)+'e']()},'field'+_0xee703e(0x18e)+_0xee703e(0x12d));return Object[_0xee703e(0x188)+'es'](_0x52c7a0||{})[_0xee703e(0x159)+'r'](([,_0x6a7c9])=>_0x6a7c9)[_0xee703e(0x238)](([_0x5c8c57])=>_0x5c8c57);}catch(_0x3c5218){return[];}},exports[_0xbe9ac5(0x1c7)+_0xbe9ac5(0x21a)+_0xbe9ac5(0xee)]=async(_0x23586e,_0x5f6afa)=>{const _0x32fb81=_0xbe9ac5;if(!_0x23586e)throw new Error(_0x32fb81(0x14c)+_0x32fb81(0x216)+'ect\x20c'+_0x32fb81(0x259)+'a');let _0x2ce453=_0x32fb81(0x139)+_0x32fb81(0x290)+'w.goo'+'gle.c'+_0x32fb81(0x166)+_0x32fb81(0x1fe)+_0x32fb81(0x18f)+_0x32fb81(0x1a4)+_0x32fb81(0x25c)+_0x32fb81(0x24b)+_0x32fb81(0x217)+global[_0x32fb81(0x120)+'gs'][_0x32fb81(0x263)+'E_REC'+_0x32fb81(0x23d)+_0x32fb81(0x25a)+_0x32fb81(0x28b)+'EY']+(_0x32fb81(0x19b)+'onse=')+_0x23586e;if(_0x5f6afa)_0x2ce453+=_0x32fb81(0x127)+'teip='+_0x5f6afa;const _0x39ff54=await fetch(_0x2ce453),_0xe85705=await _0x39ff54[_0x32fb81(0xf9)]();if(!_0xe85705[_0x32fb81(0x157)+'ss']){Logger[_0x32fb81(0xea)](_0x32fb81(0x102)+_0x32fb81(0x1c0)+_0x32fb81(0x154)+'verif'+_0x32fb81(0x15d)+'on',_0xe85705,_0x2ce453);throw new Error(_0x32fb81(0x102)+_0x32fb81(0x1c0)+_0x32fb81(0x154)+_0x32fb81(0x1c7)+_0x32fb81(0x15d)+'on');}return!![];},exports['verif'+_0xbe9ac5(0x178)]=async(_0x1f32f4,_0x5c49eb,_0x11047d)=>{const _0x332c9d=_0xbe9ac5;if(!_0x5c49eb||!_0x11047d)throw new Error(_0x332c9d(0x104)+_0x332c9d(0x15f)+_0x332c9d(0x270)+_0x332c9d(0x22a)+_0x332c9d(0x103)+'-id\x20v'+_0x332c9d(0x288)+'-code');const _0x287108={};_0x287108[_0x332c9d(0x225)]=_0x1f32f4;const _0x940f16={};_0x940f16[_0x332c9d(0x158)]=[_0x287108];const _0x47275c=await global['getMo'+'del']('user')['findO'+'ne'](_0x940f16);if(!_0x47275c)throw new Error(_0x332c9d(0x283)+'hoản\x20'+_0x1f32f4+(_0x332c9d(0x10c)+'g\x20tồn'+_0x332c9d(0xf5)));if(_0x5c49eb[_0x332c9d(0x113)+_0x332c9d(0x1dd)+'e']()===_0x332c9d(0x197)&&configs['use_p'+_0x332c9d(0x1ea)+_0x332c9d(0x21d)]){if(!(_0x47275c[_0x332c9d(0x279)]||{})[_0x332c9d(0x273)])throw new Error('Mã\x20pi'+_0x332c9d(0x111)+'a\x20đượ'+'c\x20tạo');if(!await _0x47275c[_0x332c9d(0x1ac)+_0x332c9d(0x25f)](_0x11047d))throw new Error(_0x332c9d(0x136)+_0x332c9d(0x152)+'ng\x20ch'+_0x332c9d(0x234)+'ác');const _0x2db751={};return _0x2db751['pin']=_0x11047d,_0x2db751[_0x332c9d(0x24c)]=_0x1f32f4,_0x2db751;}if(!global[_0x332c9d(0x20d)+'ose']['Types'][_0x332c9d(0x16e)+'tId'][_0x332c9d(0x134)+'id'](_0x5c49eb))throw new Error(_0x332c9d(0x271)+_0x332c9d(0x207)+_0x332c9d(0x119)+'p\x20lệ');const _0x51dce5={};_0x51dce5[_0x332c9d(0x214)]=_0x5c49eb,_0x51dce5[_0x332c9d(0x24c)]=_0x1f32f4;const _0x424c35=await global['getMo'+'del']('otp')[_0x332c9d(0x241)+'ne'](_0x51dce5);if(!_0x424c35)throw new Error(_0x332c9d(0x194)+_0x332c9d(0x15a)+_0x332c9d(0xeb)+'ệ');_0x424c35[_0x332c9d(0x17a)+_0x332c9d(0x26f)+'er']=(_0x424c35[_0x332c9d(0x17a)+_0x332c9d(0x26f)+'er']||0x0)+0x1,await _0x424c35[_0x332c9d(0x1dc)]();if(_0x424c35[_0x332c9d(0x17a)+'_numb'+'er']>(configs[_0x332c9d(0x118)+'RY_OT'+'P']||0x3)||_0x424c35[_0x332c9d(0x282)]!==_0x11047d||_0x424c35['verif'+'ied']||_0x424c35[_0x332c9d(0x135)+_0x332c9d(0x168)+'e'][_0x332c9d(0x1e2)+'me']()<Date[_0x332c9d(0x272)]())throw new Error(_0x332c9d(0x24a)+_0x332c9d(0x218)+_0x332c9d(0x1ad)+_0x332c9d(0x10c)+'g\x20tồn'+_0x332c9d(0x27b)+'hoặc\x20'+_0x332c9d(0xfd)+_0x332c9d(0x27a)+'u\x20lực');const _0x8f9d0b={};_0x8f9d0b[_0x332c9d(0x214)]=_0x5c49eb;const _0x5277f1={};return _0x5277f1[_0x332c9d(0x1c7)+'ied']=!![],await global[_0x332c9d(0x1a1)+_0x332c9d(0x1f2)](_0x332c9d(0x282))[_0x332c9d(0x170)+_0x332c9d(0x275)](_0x8f9d0b,_0x5277f1),_0x424c35;};
@@ -1,58 +1 @@
1
- const right=global.getModel("right"),App=global.getModel("app"),Participant=global.getModel("participant"),UserGroup=global.getModel("usergroup"),underscore=require("underscore"),moment=require("moment"),trangthai=global.getModel("trangthai"),async=require("async"),_=require("lodash"),{evalute}=require("./utils"),not_need_right_models="parameter rpt label labelinfo templaterpt templatestore templatevoucher listinfo reportinfo shortcut rptobject rptform forminfo importexceltemplate options".split(" ");
2
- exports.dsChildrenGroups=async($id_app$$,$group_id$$)=>{let $childrenGroups$$=(await UserGroup.find({group_mother:$group_id$$,id_app:$id_app$$},{_id:1}).lean()).map($g$$=>$g$$._id.toString());$childrenGroups$$.length>0&&await Promise.all($childrenGroups$$.map($c$$=>(async()=>{let $gs$$=await exports.dsChildrenGroups($id_app$$,$c$$);$childrenGroups$$.push(...$gs$$)})()));return $childrenGroups$$};
3
- exports.dsDangPhuTrach=async($id_app$$,$ds_phu_trach_email$$)=>{if(!$id_app$$)return[];let $key_cache$$=`userdangphutrach::${$id_app$$}::${$ds_phu_trach_email$$}`,$time_cache$$=$ds_phu_trach_email$$==="public"?10080:1;if(global.cacheDatas[$key_cache$$]&&moment().diff(moment(global.cacheDatas[$key_cache$$].time),"minutes")<$time_cache$$)return global.cacheDatas[$key_cache$$].data;let $groups$$=(await UserGroup.find({ds_phu_trach:$ds_phu_trach_email$$,id_app:$id_app$$},{_id:1}).lean()).map($g$$=>$g$$._id.toString());
4
- await Promise.all([...$groups$$].map($group_id$$=>(async()=>{let $childrenGroups$$=await exports.dsChildrenGroups($id_app$$,$group_id$$);$groups$$.push(...$childrenGroups$$)})()));$groups$$=[...(new Set($groups$$))];$ds_phu_trach_email$$=(await Participant.find({id_app:$id_app$$,group_id:{$in:$groups$$}},{email:1}).lean()).map($p$$=>$p$$.email);global.cacheDatas[$key_cache$$]={time:new Date,data:_.cloneDeep($ds_phu_trach_email$$)};return $ds_phu_trach_email$$};
5
- exports.dsKhDangPhuTrach=async($data_id_app$$,$phu_trach$$)=>{if(!$data_id_app$$)return[];let $key_cache$$=`khdangphutrach::${$data_id_app$$}::${typeof $phu_trach$$=="object"?JSON.stringify($phu_trach$$):$phu_trach$$}`;if(global.cacheDatas[$key_cache$$]&&moment().diff(moment(global.cacheDatas[$key_cache$$].time),"minutes")<1)return Logger.info("lay danh sach khach hang dang phu trach tu cache",$key_cache$$),global.cacheDatas[$key_cache$$].data;$data_id_app$$=(await global.getModel("customer").find({id_app:$data_id_app$$,
6
- phu_trach:$phu_trach$$},{ma_kh:1}).lean()).map($p$$=>$p$$.ma_kh);global.cacheDatas[$key_cache$$]={time:new Date,data:_.cloneDeep($data_id_app$$)};return $data_id_app$$};
7
- exports.isAdmin=function($current_id_app$$,$email$$,$callback$$){if(!$current_id_app$$)return $callback$$(null,!0);App.findOne({_id:$current_id_app$$}).lean().then(async $app$$=>{if(!$app$$)return $callback$$({error:"ID app: "+$current_id_app$$+" kh\u00f4ng t\u1ed3n t\u1ea1i",code:-7},!1);if($app$$.trang_thai=="9")return $callback$$({error:`C\u00f4ng ty ${$app$$.name} \u0111\u00e3 ng\u1eebng s\u1eed d\u1ee5ng`,code:-9},!1);if(global.configs.check_expire_date&&$app$$.expire_date&&(new Date($app$$.expire_date)).getTime()<
8
- (new Date).getTime())return $callback$$({error:`C\u00f4ng ty ${$app$$.name} \u0111\u00e3 h\u1ebft h\u1ea1n s\u1eed d\u1ee5ng`,code:-8},!1);let $participant$$=await Participant.findOne({id_app:$current_id_app$$,email:$email$$}).lean();if(!$participant$$)return $callback$$({error:`B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n truy c\u1eadp c\u00f4ng ty ${$app$$.name}`,code:-2},!1);if(!$participant$$.admin&&!$participant$$.active&&$email$$!=="public")return $callback$$({error:"T\u00e0i kho\u1ea3n c\u1ee7a b\u1ea1n \u0111ang ch\u1edd \u0111\u01b0\u1ee3c x\u00e1c nh\u1eadn",
9
- code:-1},!1);$callback$$(null,$participant$$.admin,$app$$,$participant$$)}).catch($error$$=>{$callback$$($error$$,!1)})};
10
- exports.hasRight=async function($current_id_app$$,$email$$,$module$$,$action$$,$callbackMain$$,$options$$={}){if(!$current_id_app$$||$options$$.notNeedRight)return $callbackMain$$(null,!0);const $model$$=global.controllers[$module$$]?global.controllers[$module$$].model:void 0;if($model$$&&$model$$.schema&&!underscore.has($model$$.schema.paths,"id_app"))return $callbackMain$$(null,!0);let $right_code$$=($options$$.right_code||$options$$.listinfo_code||$module$$).toLowerCase();$options$$.data&&($options$$.data.trang_thai||
11
- $options$$.data.trang_thai==0)&&($options$$.data.trang_thai=$options$$.data.trang_thai.toString());$options$$.obj&&($options$$.obj.trang_thai||$options$$.obj.trang_thai==0)&&($options$$.obj.trang_thai=$options$$.obj.trang_thai.toString());$action$$=($action$$||"").toLowerCase();var $data$$=$options$$.data||$options$$.obj||{};const $ma_ct$$=$model$$&&underscore.has($model$$.schema.paths,"ma_ct")&&(($options$$.obj||{}).ma_ct||($options$$.data||{}).ma_ct||"").toString().toUpperCase();let $ma_trang_thai$$=
12
- ($data$$.trang_thai||$data$$.progress||"").toString().toUpperCase();!$ma_trang_thai$$&&$options$$.obj&&($ma_trang_thai$$=($options$$.obj.trang_thai||$options$$.obj.progress||"").toString().toUpperCase());if($ma_ct$$&&$ma_trang_thai$$)if($data$$=await trangthai.findOne({ma_trang_thai:$ma_trang_thai$$,ma_ct:$ma_ct$$}).lean()){if($data$$.not_need_right)return $callbackMain$$(null,!0)}else Logger.info("Khong tim thay trang thai cho chuc nang nay",{ma_ct:$ma_ct$$,ma_trang_thai:$ma_trang_thai$$,trang_thai:$data$$,
13
- action:$action$$});exports.isAdmin($current_id_app$$,$email$$,async($api_code_e_key_right_ms_q$$,$admin$$,$app$$,$_right__right_trang_thai_controler_participant$$)=>{if($api_code_e_key_right_ms_q$$)return $callbackMain$$($api_code_e_key_right_ms_q$$,!1);var $listinfo_model$$;if(!$admin$$&&$right_code$$!=$module$$.toLowerCase())if($listinfo_model$$=await global.getModel("listinfo").findOne({code:$right_code$$}).lean()){if($api_code_e_key_right_ms_q$$=$listinfo_model$$.api_code||$listinfo_model$$.code,
14
- $api_code_e_key_right_ms_q$$!=$module$$.toLowerCase())return $callbackMain$$({error:`M\u00e3 quy\u1ec1n '${$right_code$$}' kh\u00f4ng h\u1ee3p l\u1ec7. API: ${$api_code_e_key_right_ms_q$$}, module: ${$module$$}`})}else return $callbackMain$$({error:`M\u00e3 quy\u1ec1n '${$right_code$$}' kh\u00f4ng t\u1ed3n t\u1ea1i`});$listinfo_model$$=$listinfo_model$$?.permistion_code||$right_code$$;if($app$$&&$app$$.allow_modules&&$app$$.allow_modules.length>0&&($api_code_e_key_right_ms_q$$={"items.code":{$regex:"^"+
15
- $module$$+"$",$options:"i"},active_require:!0},$app$$.menu_code&&($api_code_e_key_right_ms_q$$.app=$app$$.menu_code),$api_code_e_key_right_ms_q$$=await global.getModel("moduleinfo").find($api_code_e_key_right_ms_q$$).lean(),$api_code_e_key_right_ms_q$$.length>0&&$api_code_e_key_right_ms_q$$.filter($m$$=>$app$$.allow_modules.indexOf($m$$.code)>=0&&(!$m$$.not_for_companies||$m$$.not_for_companies.indexOf($app$$._id.toString())<0)&&(!$m$$.only_for_companies||$m$$.only_for_companies.indexOf($app$$._id.toString())>=
16
- 0)).length==0))return $callbackMain$$('API "'+$module$$+'" ch\u01b0a \u0111\u01b0\u1ee3c k\u00edch ho\u1ea1t cho c\u00f4ng ty n\u00e0y (trong module '+$api_code_e_key_right_ms_q$$[0].app+"/"+$api_code_e_key_right_ms_q$$[0].title+")",!1);if($options$$.data&&$options$$.data.id_app){if($options$$.data.id_app!=$current_id_app$$)return $callbackMain$$("B\u1ea1n kh\u00f4ng th\u1ec3 truy c\u1eadp th\u00f4ng tin n\u00e0y",!1);if($options$$.obj&&$options$$.data.id_app!=$options$$.obj.id_app)return Logger.warn("[permission]",
17
- {obj_id_app:$options$$.obj.id_app,data_id_app:$options$$.data.id_app}),$callbackMain$$("B\u1ea1n kh\u00f4ng th\u1ec3 c\u1eadp nh\u1eadt th\u00f4ng tin n\u00e0y v\u00e0o c\u00f4ng ty kh\u00e1c",!1)}if($options$$.obj&&$options$$.obj.id_app&&$options$$.obj.id_app!=$current_id_app$$)return Logger.warn("[permission]",{obj_id_app:$options$$.obj.id_app,current_id_app:$current_id_app$$}),$callbackMain$$("B\u1ea1n kh\u00f4ng th\u1ec3 truy c\u1eadp th\u00f4ng tin n\u00e0y do d\u1eef li\u1ec7u kh\u00f4ng thu\u1ed9c c\u00f4ng ty hi\u1ec7n t\u1ea1i",
18
- !1);if($options$$.notNeedRight)return $callbackMain$$(null,!0,$app$$);if($options$$.obj&&!$admin$$)if($options$$.obj?.visible_to===2){if(!underscore.contains($options$$.obj.visible_to_users,$email$$)&&$options$$.obj?.of_user!==$email$$.toLowerCase()&&$options$$.obj.user_created&&$options$$.obj.user_created.toLowerCase()!==$email$$.toLowerCase())return $callbackMain$$("B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n truy c\u1eadp th\u00f4ng tin n\u00e0y",!1)}else if($options$$.obj.visible_to===1&&$options$$.obj?.of_user!==
19
- $email$$.toLowerCase()&&$options$$.obj.user_created&&$options$$.obj.user_created.toLowerCase()!==$email$$.toLowerCase()&&$options$$.obj.phu_trach!=$email$$.toLowerCase()&&($options$$.obj.attends||[]).indexOf($email$$)<0&&(await exports.dsDangPhuTrach($options$$.obj.id_app,$email$$.toLowerCase())).indexOf($options$$.obj.user_created)<0)return $callbackMain$$("Ch\u1ec9 ng\u01b0\u1eddi t\u1ea1o, ph\u1ee5 tr\u00e1ch, h\u1ed7 tr\u1ee3 v\u00e0 admin m\u1edbi c\u00f3 quy\u1ec1n truy c\u1eadp th\u00f4ng tin n\u00e0y",
20
- !1);$api_code_e_key_right_ms_q$$=$email$$;$_right__right_trang_thai_controler_participant$$&&$_right__right_trang_thai_controler_participant$$.group_id&&($api_code_e_key_right_ms_q$$=$_right__right_trang_thai_controler_participant$$.group_id.toLowerCase());($_right__right_trang_thai_controler_participant$$=await right.findOne({id_app:$current_id_app$$,email:$api_code_e_key_right_ms_q$$,module:$listinfo_model$$}).lean())||$listinfo_model$$!=$options$$.listinfo_code||$listinfo_model$$==$module$$.toLowerCase()||
21
- ($listinfo_model$$=$module$$.toLowerCase());$_right__right_trang_thai_controler_participant$$=await right.findOne({id_app:$current_id_app$$,email:$api_code_e_key_right_ms_q$$,module:$listinfo_model$$}).lean();if(!$admin$$){if(!$_right__right_trang_thai_controler_participant$$)return $_right__right_trang_thai_controler_participant$$=global.controllers[$module$$.toUpperCase()],$listinfo_model$$=(($_right__right_trang_thai_controler_participant$$||{}).model_name||$module$$).toLowerCase(),$listinfo_model$$==
22
- "customer"||$listinfo_model$$.indexOf("socai")>=0||$listinfo_model$$.indexOf("sokho")>=0||$listinfo_model$$.indexOf("vatvao")>=0||$listinfo_model$$.indexOf("vatra")>=0||$listinfo_model$$.indexOf("tdttno")>=0||$listinfo_model$$.indexOf("tdttco")>=0||$_right__right_trang_thai_controler_participant$$&&($_right__right_trang_thai_controler_participant$$.options||{}).isVoucher||$action$$!=="view"&&($action$$!=="add"||$module$$.toLowerCase()!=="group")?$callbackMain$$("B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n \u0111\u1ed1i v\u1edbi t\u00ednh n\u0103ng n\u00e0y",
23
- !1):($_right__right_trang_thai_controler_participant$$={"items.code":$module$$.toLowerCase()},$app$$&&$app$$.menu_code&&($_right__right_trang_thai_controler_participant$$.app=$app$$.menu_code),await global.getModel("moduleinfo").findOne($_right__right_trang_thai_controler_participant$$,{app:1}).lean()?$callbackMain$$("B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n \u0111\u1ed1i v\u1edbi t\u00ednh n\u0103ng n\u00e0y",!1):$callbackMain$$(null,!0,$app$$));if($action$$=="view"&&$_right__right_trang_thai_controler_participant$$?.view_all)return $callbackMain$$(null,
24
- !0,$app$$);if($action$$=="view"&&$options$$.obj&&$_right__right_trang_thai_controler_participant$$&&!$_right__right_trang_thai_controler_participant$$.view_all&&!$_right__right_trang_thai_controler_participant$$.viewOfOther&&$options$$.obj.user_created.toLowerCase()!==$email$$&&($options$$.obj.visible_to!==2||!underscore.contains($options$$.obj.visible_to_users,$email$$))&&$options$$.obj.phu_trach!==$email$$&&($options$$.obj.attends||[]).indexOf($email$$)<0&&(await exports.dsDangPhuTrach($options$$.obj.id_app,
25
- $email$$.toLowerCase())).indexOf($options$$.obj.user_created)<0)return $callbackMain$$("B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n truy c\u1eadp th\u00f4ng tin n\u00e0y",!1);if(!$_right__right_trang_thai_controler_participant$$[$action$$])return $callbackMain$$("B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n \u0111\u1ed1i v\u1edbi t\u00ednh n\u0103ng n\u00e0y",!1);if($ma_trang_thai$$&&($_right__right_trang_thai_controler_participant$$=$_right__right_trang_thai_controler_participant$$[`${$action$$}_trang_thai`])&&
26
- !$_right__right_trang_thai_controler_participant$$[$ma_trang_thai$$]&&$_right__right_trang_thai_controler_participant$$[$ma_trang_thai$$]!=void 0)return $callbackMain$$("B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n \u0111\u1ed1i v\u1edbi tr\u1ea1ng th\u00e1i ch\u1ee9ng t\u1eeb n\u00e0y",!1)}$options$$.obj?async.series({trangthai:$callback$$=>{$options$$.obj&&($action$$==="update"||$action$$==="delete")&&$model$$&&underscore.has($model$$.schema.paths,"ma_ct")&&$options$$.obj.ma_ct?trangthai.findOne({ma_ct:$options$$.obj.ma_ct.toUpperCase(),
27
- ma_trang_thai:$options$$.obj.trang_thai},function($e$$,$trang_thai$$){if($e$$)return $callback$$($e$$);if($trang_thai$$){if($action$$==="update"){if($trang_thai$$.allow_update==0)return $callback$$("Tr\u1ea1ng th\u00e1i ch\u1ee9ng t\u1eeb n\u00e0y kh\u00f4ng cho ph\u00e9p s\u1eeda");if($trang_thai$$.lock_data==1)return $callback$$("Tr\u1ea1ng th\u00e1i ch\u1ee9ng t\u1eeb n\u00e0y \u0111\u00e3 \u0111\u01b0\u1ee3c kho\u00e1")}if($action$$==="delete"&&($trang_thai$$.lock_data||$trang_thai$$.allow_delete==
28
- 0))return $callback$$("Tr\u1ea1ng th\u00e1i ch\u1ee9ng t\u1eeb n\u00e0y kh\u00f4ng cho ph\u00e9p xo\u00e1")}return $callback$$()}):$callback$$()}},$action_right_e$$=>{if($action_right_e$$)$callbackMain$$($action_right_e$$,!1);else{$action_right_e$$=`${$action$$}_right`;if(!$admin$$&&$options$$.obj&&$options$$.obj[$action_right_e$$]&&$options$$.obj[$action_right_e$$].length>0&&$options$$.obj[$action_right_e$$].indexOf($email$$.toLowerCase())<0)return $callbackMain$$("B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n \u0111\u1ed1i v\u1edbi t\u00ednh n\u0103ng n\u00e0y",
29
- !1);$callbackMain$$(null,!0,$app$$)}}):$callbackMain$$(null,!0,$app$$)},$options$$)};exports.asyncHasRight=function($current_id_app$$,$email$$,$module$$,$action$$,$options$$={}){return new Promise(($resolve$$,$reject$$)=>{exports.hasRight($current_id_app$$,$email$$,$module$$,$action$$,($e$$,$permission$$,$app$$)=>{if($e$$)return $reject$$($e$$);$resolve$$({permission:$permission$$,app:$app$$})},$options$$)})};
30
- exports.getRightByItem=async function($id_app$$,$model$$,$email$$,$next$$,$module$$,$options$$={}){$module$$||=$model$$&&$model$$.modelName?$model$$.modelName.toLowerCase():"";let $right_code$$=($options$$.right_code||$options$$.listinfo_code||$module$$).toLowerCase(),$key_cache$$=$right_code$$?`RightByItem::${$id_app$$}::${$email$$}::${$right_code$$}::${JSON.stringify($options$$)}`:"",$time_cache$$=$email$$==="public"?10080:1;if($key_cache$$&&global.cacheDatas[$key_cache$$]&&moment().diff(moment(global.cacheDatas[$key_cache$$].time),
31
- "minutes")<$time_cache$$)return $next$$(null,global.cacheDatas[$key_cache$$].data,!1);exports.isAdmin($id_app$$,$email$$,async function($condition_e$$,$_right$jscomp$1_admin$jscomp$1_api_code$$,$allow_trang_thai_app$$,$_right_trang_thai$jscomp$1_participant$$){if($condition_e$$)return $next$$($condition_e$$);$condition_e$$={};if($_right$jscomp$1_admin$jscomp$1_api_code$$||$options$$.notNeedRight||!underscore.has($model$$.schema.paths,"id_app"))$next$$(null,$condition_e$$,$_right$jscomp$1_admin$jscomp$1_api_code$$);
32
- else{var $listinfo$$;if($right_code$$&&$right_code$$!=$module$$.toLowerCase())if($listinfo$$=await global.getModel("listinfo").findOne({code:$right_code$$}).lean()){if($_right$jscomp$1_admin$jscomp$1_api_code$$=$listinfo$$.api_code||$listinfo$$.code,$_right$jscomp$1_admin$jscomp$1_api_code$$!=$module$$.toLowerCase())return $next$$({error:`M\u00e3 quy\u1ec1n '${$right_code$$}' kh\u00f4ng h\u1ee3p l\u1ec7, API: ${$_right$jscomp$1_admin$jscomp$1_api_code$$}, module: ${$module$$.toLowerCase()}`})}else return $next$$({error:`M\u00e3 quy\u1ec1n '${$right_code$$}' kh\u00f4ng t\u1ed3n t\u1ea1i`});
33
- var $ds_dang_phu_trach_permistion_code$$=$listinfo$$?.permistion_code||$right_code$$;let $selUsers$$;$listinfo$$=[];let $key_right$$=$email$$;$_right_trang_thai$jscomp$1_participant$$&&$_right_trang_thai$jscomp$1_participant$$.group_id&&($key_right$$=$_right_trang_thai$jscomp$1_participant$$.group_id.toLowerCase());($_right$jscomp$1_admin$jscomp$1_api_code$$=await right.findOne({id_app:$id_app$$,email:$key_right$$,module:$ds_dang_phu_trach_permistion_code$$}).lean())||$ds_dang_phu_trach_permistion_code$$!=
34
- $options$$.listinfo_code||$ds_dang_phu_trach_permistion_code$$==$module$$.toLowerCase()||($ds_dang_phu_trach_permistion_code$$=$module$$.toLowerCase());if(($_right$jscomp$1_admin$jscomp$1_api_code$$=await right.findOne({id_app:$id_app$$,email:$key_right$$,module:$ds_dang_phu_trach_permistion_code$$}).lean())&&$_right$jscomp$1_admin$jscomp$1_api_code$$.view_all){if($_right$jscomp$1_admin$jscomp$1_api_code$$&&$_right$jscomp$1_admin$jscomp$1_api_code$$.extra_condition)try{$condition_e$$=evalute(`return ${$_right$jscomp$1_admin$jscomp$1_api_code$$.extra_condition}`,
35
- {module:$module$$,participant:$_right_trang_thai$jscomp$1_participant$$,appInfo:$allow_trang_thai_app$$})}catch($e$$){return Logger.error("[getRightByItem] [extra_condition]",$e$$,$_right$jscomp$1_admin$jscomp$1_api_code$$.extra_condition),$next$$($e$$.message)}$key_cache$$&&(global.cacheDatas[$key_cache$$]={time:new Date,data:_.cloneDeep($condition_e$$)});return $next$$(null,$condition_e$$,!1)}$ds_dang_phu_trach_permistion_code$$=(await exports.dsDangPhuTrach($id_app$$,$email$$)).filter($d$$=>$d$$);
36
- $ds_dang_phu_trach_permistion_code$$.push($email$$);$_right$jscomp$1_admin$jscomp$1_api_code$$&&$_right$jscomp$1_admin$jscomp$1_api_code$$.view_empty_phu_trach&&($ds_dang_phu_trach_permistion_code$$.push(""),$ds_dang_phu_trach_permistion_code$$.push(null));$ds_dang_phu_trach_permistion_code$$=[...(new Set($ds_dang_phu_trach_permistion_code$$))];if($_right$jscomp$1_admin$jscomp$1_api_code$$&&$_right$jscomp$1_admin$jscomp$1_api_code$$.view){$allow_trang_thai_app$$={visible_to:null};if(underscore.has($model$$.schema.paths,
37
- "visible_to")){$condition_e$$.$and||($condition_e$$.$and=[]);var $allUsers_query$$={visible_to:0};$selUsers$$={visible_to:2,visible_to_users:$email$$};$_right_trang_thai$jscomp$1_participant$$=underscore.has($model$$.schema.paths,"visible_to_usergroups")?{visible_to:5,visible_to_usergroups:($_right_trang_thai$jscomp$1_participant$$||{}).group_id}:{visible_to:5,visible_to_users:($_right_trang_thai$jscomp$1_participant$$||{}).group_id};$listinfo$$.push($allUsers_query$$);$listinfo$$.push($selUsers$$);
38
- $listinfo$$.push($_right_trang_thai$jscomp$1_participant$$);$listinfo$$.push($allow_trang_thai_app$$)}if($_right$jscomp$1_admin$jscomp$1_api_code$$.viewOfOther===!1){if(underscore.has($model$$.schema.paths,"ma_kh")){var $allow_viewOfOther_trang_thai_ds_kh_dang_phu_trach_visible_to_null$$=await exports.dsKhDangPhuTrach($id_app$$,{$in:$ds_dang_phu_trach_permistion_code$$});$allow_viewOfOther_trang_thai_ds_kh_dang_phu_trach_visible_to_null$$.length>0&&$listinfo$$.push({ma_kh:{$in:$allow_viewOfOther_trang_thai_ds_kh_dang_phu_trach_visible_to_null$$}})}$allUsers_query$$?
39
- $allUsers_query$$.user_created={$in:$ds_dang_phu_trach_permistion_code$$}:$listinfo$$.push({user_created:{$in:$ds_dang_phu_trach_permistion_code$$}})}else{if(underscore.has($model$$.schema.paths,"trang_thai")===!0){if($_right_trang_thai$jscomp$1_participant$$=$_right$jscomp$1_admin$jscomp$1_api_code$$.view_trang_thai){$allow_trang_thai_app$$=[void 0,null,""];for(var $t_viewOfOther_right_trang_thai$$ in $_right_trang_thai$jscomp$1_participant$$)$_right_trang_thai$jscomp$1_participant$$[$t_viewOfOther_right_trang_thai$$]&&
40
- $allow_trang_thai_app$$.push($t_viewOfOther_right_trang_thai$$);$condition_e$$.trang_thai={$in:$allow_trang_thai_app$$}}if($t_viewOfOther_right_trang_thai$$=$_right$jscomp$1_admin$jscomp$1_api_code$$.viewOfOther_trang_thai){$allow_viewOfOther_trang_thai_ds_kh_dang_phu_trach_visible_to_null$$=[void 0,null,""];for(var $t$jscomp$1_users$$ in $t_viewOfOther_right_trang_thai$$)!$t_viewOfOther_right_trang_thai$$[$t$jscomp$1_users$$]||$_right_trang_thai$jscomp$1_participant$$&&!$_right_trang_thai$jscomp$1_participant$$[$t$jscomp$1_users$$]||
41
- $allow_viewOfOther_trang_thai_ds_kh_dang_phu_trach_visible_to_null$$.push($t$jscomp$1_users$$)}}$_right$jscomp$1_admin$jscomp$1_api_code$$.viewOfOther_user_groups&&$_right$jscomp$1_admin$jscomp$1_api_code$$.viewOfOther_user_groups.length>0?($t$jscomp$1_users$$=await Participant.find({id_app:$id_app$$,group_id:{$in:$_right$jscomp$1_admin$jscomp$1_api_code$$.viewOfOther_user_groups}},{email:1}).lean(),$ds_dang_phu_trach_permistion_code$$.push(...$t$jscomp$1_users$$.map($u$$=>$u$$.email)),$allUsers_query$$?
42
- $allow_viewOfOther_trang_thai_ds_kh_dang_phu_trach_visible_to_null$$?$allUsers_query$$.$or=[{user_created:{$in:$ds_dang_phu_trach_permistion_code$$.filter($e$$=>$e$$!=$email$$)},trang_thai:{$in:$allow_viewOfOther_trang_thai_ds_kh_dang_phu_trach_visible_to_null$$}},{user_created:$email$$}]:$allUsers_query$$.user_created={$in:$ds_dang_phu_trach_permistion_code$$}:$allow_viewOfOther_trang_thai_ds_kh_dang_phu_trach_visible_to_null$$?($listinfo$$.push({user_created:{$in:$ds_dang_phu_trach_permistion_code$$},
43
- trang_thai:{$in:$allow_viewOfOther_trang_thai_ds_kh_dang_phu_trach_visible_to_null$$}}),$listinfo$$.push({$or:[{user_created:{$in:$ds_dang_phu_trach_permistion_code$$.filter($e$$=>$e$$!=$email$$)},trang_thai:{$in:$allow_viewOfOther_trang_thai_ds_kh_dang_phu_trach_visible_to_null$$}},{user_created:$email$$}]})):$listinfo$$.push({user_created:{$in:$ds_dang_phu_trach_permistion_code$$}})):$allow_viewOfOther_trang_thai_ds_kh_dang_phu_trach_visible_to_null$$&&($allUsers_query$$?$allUsers_query$$.$or=[{user_created:{$ne:$email$$},
44
- trang_thai:{$in:$allow_viewOfOther_trang_thai_ds_kh_dang_phu_trach_visible_to_null$$}},{user_created:$email$$}]:$listinfo$$.push({$or:[{user_created:{$ne:$email$$},trang_thai:{$in:$allow_viewOfOther_trang_thai_ds_kh_dang_phu_trach_visible_to_null$$}},{user_created:$email$$}]}))}$selUsers$$&&(underscore.has($model$$.schema.paths,"of_user")&&$listinfo$$.push({of_user:{$in:[...$ds_dang_phu_trach_permistion_code$$,$email$$]}}),underscore.has($model$$.schema.paths,"user")&&$listinfo$$.push({user:{$in:[...$ds_dang_phu_trach_permistion_code$$,
45
- $email$$]}}),underscore.has($model$$.schema.paths,"phu_trach")&&$listinfo$$.push({phu_trach:{$in:$ds_dang_phu_trach_permistion_code$$}}),underscore.has($model$$.schema.paths,"attends")&&$listinfo$$.push({attends:{$in:$ds_dang_phu_trach_permistion_code$$}}))}else not_need_right_models.indexOf($module$$)<0&&($listinfo$$.push({user_created:$email$$}),underscore.has($model$$.schema.paths,"of_user")&&$listinfo$$.push({of_user:{$in:[...$ds_dang_phu_trach_permistion_code$$,$email$$]}}),underscore.has($model$$.schema.paths,
46
- "user")&&$listinfo$$.push({user:{$in:[...$ds_dang_phu_trach_permistion_code$$,$email$$]}}),underscore.has($model$$.schema.paths,"phu_trach")&&$listinfo$$.push({phu_trach:{$in:$ds_dang_phu_trach_permistion_code$$}}),underscore.has($model$$.schema.paths,"attends")&&$listinfo$$.push({attends:$email$$})),$allUsers_query$$={"items.code":$module$$.toLowerCase()},$allow_trang_thai_app$$&&$allow_trang_thai_app$$.menu_code&&($allUsers_query$$.app=$allow_trang_thai_app$$.menu_code),await global.getModel("moduleinfo").findOne($allUsers_query$$,
47
- {app:1}).lean()||($allow_viewOfOther_trang_thai_ds_kh_dang_phu_trach_visible_to_null$$={visible_to:null},underscore.has($model$$.schema.paths,"visible_to")&&($condition_e$$.$and||($condition_e$$.$and=[]),$allUsers_query$$={visible_to:0},$selUsers$$={visible_to:2,visible_to_users:$email$$},$_right_trang_thai$jscomp$1_participant$$=underscore.has($model$$.schema.paths,"visible_to_usergroups")?{visible_to:5,visible_to_usergroups:($_right_trang_thai$jscomp$1_participant$$||{}).group_id}:{visible_to:5,
48
- visible_to_users:($_right_trang_thai$jscomp$1_participant$$||{}).group_id},$listinfo$$.push($allUsers_query$$),$listinfo$$.push($selUsers$$),$listinfo$$.push($_right_trang_thai$jscomp$1_participant$$),$listinfo$$.push($allow_viewOfOther_trang_thai_ds_kh_dang_phu_trach_visible_to_null$$)));underscore.has($model$$.schema.paths,"public")&&$listinfo$$.push({public:!0});underscore.has($model$$.schema.paths,"shared")&&$listinfo$$.push({shared:!0});$listinfo$$.length>0&&($condition_e$$.$and||($condition_e$$.$and=
49
- []),$condition_e$$.$and.push({$or:$listinfo$$}));$condition_e$$.$and&&$condition_e$$.$and.length===0&&delete $condition_e$$.$and;$condition_e$$.$or&&$condition_e$$.$or.length===0&&delete $condition_e$$.$or;$key_cache$$&&(global.cacheDatas[$key_cache$$]={time:new Date,data:_.cloneDeep($condition_e$$)});$next$$(null,$condition_e$$,!1)}},$options$$)};
50
- exports.getRightDataView=function($id_app$$,$model$$,$email$$,$next$$){exports.isAdmin($id_app$$,$email$$,function($condition$jscomp$1_e$$,$admin$$){if($condition$jscomp$1_e$$)return $next$$($condition$jscomp$1_e$$);$condition$jscomp$1_e$$={};if(!$admin$$&&underscore.has($model$$.schema.paths,"dataview_to_users")===!0){$condition$jscomp$1_e$$.$and||($condition$jscomp$1_e$$.$and=[]);let $dataview$$=[{dataview_to:null}];$dataview$$.push({dataview_to:0});$dataview$$.push({dataview_to:1,user_created:$email$$});
51
- $dataview$$.push({dataview_to:2,dataview_to_users:$email$$});$condition$jscomp$1_e$$.$and.push({$or:$dataview$$})}$next$$(null,$condition$jscomp$1_e$$,$admin$$)})};
52
- exports.getFieldNotRight=async($_fields_id_app$$,$_p_email$jscomp$6_group_id$$,$ma_ct$$)=>{if(!$_fields_id_app$$)return[];$_p_email$jscomp$6_group_id$$=await Participant.ofApp($_fields_id_app$$,$_p_email$jscomp$6_group_id$$);if($_p_email$jscomp$6_group_id$$.length>0){$_p_email$jscomp$6_group_id$$=$_p_email$jscomp$6_group_id$$[0].group_id;let $field_not_right$$;try{$field_not_right$$=await right.getInfo($_fields_id_app$$,{email:$_p_email$jscomp$6_group_id$$,module:$ma_ct$$.toLowerCase()},"field_not_right")}catch($e$$){return[]}$_fields_id_app$$=
53
- [];for(let $_key$$ in $field_not_right$$)$field_not_right$$[$_key$$]&&$_fields_id_app$$.push($_key$$);return $_fields_id_app$$}return[]};const request=require("request");
54
- exports.verifyReCaptcha=async($gRecaptchaResponse$$,$remoteip$$)=>{if(!$gRecaptchaResponse$$)throw Error("Please select captcha");let $verificationUrl$$="https://www.google.com/recaptcha/api/siteverify?secret="+global.configs.GOOGLE_RECAPTCHA_SECRET_KEY+"&response="+$gRecaptchaResponse$$;$remoteip$$&&($verificationUrl$$+="&remoteip="+$remoteip$$);return new Promise(($resolve$$,$reject$$)=>{request($verificationUrl$$,function($error$$,$response$$,$body$$){$body$$=JSON.parse($body$$);if(!$body$$.success)return Logger.error("Failed captcha verification",
55
- $body$$,$verificationUrl$$),$reject$$(Error("Failed captcha verification"));$resolve$$(!0)})})};
56
- exports.verifyOTP=async($otp_username$$,$otp_id$$,$otp_code$$)=>{if(!$otp_id$$||!$otp_code$$)throw Error("Ch\u1ee9c n\u0103ng n\u00e0y y\u00eau c\u1ea7u otp-id v\u00e0 otp-code");const $u$$=await global.getModel("user").findOne({$or:[{email:$otp_username$$}]});if(!$u$$)throw Error(`T\u00e0i kho\u1ea3n ${$otp_username$$} kh\u00f4ng t\u1ed3n t\u1ea1i`);if($otp_id$$.toUpperCase()==="PIN"&&configs.use_pin_as_otp){if(!($u$$.local||{}).pin)throw Error("M\u00e3 pin ch\u01b0a \u0111\u01b0\u1ee3c t\u1ea1o");
57
- if(!await $u$$.validPin($otp_code$$))throw Error("M\u00e3 pin kh\u00f4ng ch\u00ednh x\u00e1c");return{pin:$otp_code$$,phone:$otp_username$$}}if(!global.mongoose.Types.ObjectId.isValid($otp_id$$))throw Error("otp-id kh\u00f4ng h\u1ee3p l\u1ec7");$otp_username$$=await global.getModel("otp").findOne({_id:$otp_id$$,phone:$otp_username$$});if(!$otp_username$$)throw Error("OTP kh\u00f4ng h\u1ee3p l\u1ec7");$otp_username$$.tried_number=($otp_username$$.tried_number||0)+1;await $otp_username$$.save();if(!$otp_username$$||
58
- $otp_username$$.tried_number>(configs.MAX_TRY_OTP||3)||$otp_username$$.otp!=$otp_code$$||$otp_username$$.verified||$otp_username$$.expire_time.getTime()<(new Date).getTime())throw Error("M\u00e3 x\u00e1c th\u1ef1c n\u00e0y kh\u00f4ng t\u1ed3n t\u1ea1i ho\u1eb7c \u0111\u00e3 h\u1ebft hi\u1ec7u l\u1ef1c");await global.getModel("otp").updateOne({_id:$otp_id$$},{verified:!0});return $otp_username$$};
1
+ const _0x50542b=_0x44de;(function(_0x5ecca6,_0x7b491d){const _0x2e9c49=_0x44de,_0x2305eb=_0x5ecca6();while(!![]){try{const _0x4ad274=parseInt(_0x2e9c49(0x260))/0x1*(parseInt(_0x2e9c49(0x312))/0x2)+-parseInt(_0x2e9c49(0x24c))/0x3+parseInt(_0x2e9c49(0x373))/0x4*(-parseInt(_0x2e9c49(0x310))/0x5)+parseInt(_0x2e9c49(0x313))/0x6+-parseInt(_0x2e9c49(0x24f))/0x7*(-parseInt(_0x2e9c49(0x2df))/0x8)+parseInt(_0x2e9c49(0x1ec))/0x9*(-parseInt(_0x2e9c49(0x23c))/0xa)+parseInt(_0x2e9c49(0x35a))/0xb*(parseInt(_0x2e9c49(0x297))/0xc);if(_0x4ad274===_0x7b491d)break;else _0x2305eb['push'](_0x2305eb['shift']());}catch(_0x141f2f){_0x2305eb['push'](_0x2305eb['shift']());}}}(_0x5db4,0xe3010));const right=global[_0x50542b(0x299)+_0x50542b(0x2fd)]('right'),App=global['getMo'+_0x50542b(0x2fd)](_0x50542b(0x209)),Participant=global['getMo'+_0x50542b(0x2fd)](_0x50542b(0x30b)+_0x50542b(0x216)+'t'),UserGroup=global['getMo'+'del'](_0x50542b(0x2d2)+_0x50542b(0x333)),underscore=require(_0x50542b(0x2c4)+'score'),moment=require(_0x50542b(0x214)+'t'),trangthai=global['getMo'+_0x50542b(0x2fd)](_0x50542b(0x292)+_0x50542b(0x231)),async=require(_0x50542b(0x1ef)),_=require('lodas'+'h'),{evalute}=require('./uti'+'ls'),not_need_right_models=[_0x50542b(0x32c)+_0x50542b(0x278),_0x50542b(0x259),_0x50542b(0x246),_0x50542b(0x246)+_0x50542b(0x330),_0x50542b(0x31b)+_0x50542b(0x376)+'t',_0x50542b(0x31b)+_0x50542b(0x2ab)+_0x50542b(0x1f2),'templ'+_0x50542b(0x227)+_0x50542b(0x282),_0x50542b(0x2b7)+_0x50542b(0x31e),_0x50542b(0x1f6)+_0x50542b(0x210),_0x50542b(0x308)+_0x50542b(0x228),_0x50542b(0x2bd)+_0x50542b(0x31a),_0x50542b(0x2fb)+'rm','formi'+_0x50542b(0x31e),'impor'+_0x50542b(0x301)+_0x50542b(0x2bf)+_0x50542b(0x2f0),_0x50542b(0x2d9)+'ns'];exports[_0x50542b(0x1fc)+'ldren'+'Group'+'s']=async(_0x2c5666,_0x743014)=>{const _0xe6cdff=_0x50542b,_0x3d9c00={};_0x3d9c00[_0xe6cdff(0x21d)+_0xe6cdff(0x24a)+'er']=_0x743014,_0x3d9c00[_0xe6cdff(0x2d8)+'p']=_0x2c5666;const _0x9db6d0={};_0x9db6d0[_0xe6cdff(0x2c3)]=0x1;let _0x48f080=(await UserGroup[_0xe6cdff(0x247)](_0x3d9c00,_0x9db6d0)[_0xe6cdff(0x375)]())[_0xe6cdff(0x34f)](_0x3bc900=>_0x3bc900[_0xe6cdff(0x2c3)][_0xe6cdff(0x276)+'ing']());return _0x48f080[_0xe6cdff(0x356)+'h']>0x0&&await Promise['all'](_0x48f080[_0xe6cdff(0x34f)](_0x458fc9=>{return((async()=>{const _0x2a3aaa=_0x44de;let _0x475c14=await exports[_0x2a3aaa(0x1fc)+_0x2a3aaa(0x21a)+'Group'+'s'](_0x2c5666,_0x458fc9);_0x48f080[_0x2a3aaa(0x32a)](..._0x475c14);})());})),_0x48f080;},exports[_0x50542b(0x1eb)+_0x50542b(0x36b)+_0x50542b(0x33f)]=async(_0x8ace05,_0x32b912)=>{const _0x4e4fd5=_0x50542b;if(!_0x8ace05)return[];let _0x585b02=_0x4e4fd5(0x359)+'angph'+'utrac'+_0x4e4fd5(0x311)+_0x8ace05+'::'+_0x32b912,_0x231da4=_0x32b912===_0x4e4fd5(0x2a2)+'c'?0x7*0x18*0x3c:0x1;if(global[_0x4e4fd5(0x28c)+'Datas'][_0x585b02]&&moment()[_0x4e4fd5(0x203)](moment(global[_0x4e4fd5(0x28c)+_0x4e4fd5(0x255)][_0x585b02][_0x4e4fd5(0x2a1)]),_0x4e4fd5(0x22b)+'es')<_0x231da4)return global[_0x4e4fd5(0x28c)+_0x4e4fd5(0x255)][_0x585b02]['data'];const _0x1fbf6a={};_0x1fbf6a[_0x4e4fd5(0x2d4)+_0x4e4fd5(0x2a8)+'ch']=_0x32b912,_0x1fbf6a[_0x4e4fd5(0x2d8)+'p']=_0x8ace05;const _0x2f45aa={};_0x2f45aa[_0x4e4fd5(0x2c3)]=0x1;let _0x479c48=(await UserGroup[_0x4e4fd5(0x247)](_0x1fbf6a,_0x2f45aa)[_0x4e4fd5(0x375)]())[_0x4e4fd5(0x34f)](_0x11ee42=>_0x11ee42['_id']['toStr'+_0x4e4fd5(0x243)]());await Promise[_0x4e4fd5(0x1ea)]([..._0x479c48][_0x4e4fd5(0x34f)](_0x4fb7da=>{return((async()=>{const _0x5e5e73=_0x44de;let _0x39cb27=await exports['dsChi'+'ldren'+_0x5e5e73(0x36e)+'s'](_0x8ace05,_0x4fb7da);_0x479c48[_0x5e5e73(0x32a)](..._0x39cb27);})());})),_0x479c48=[...new Set(_0x479c48)];const _0x4c3a50={};_0x4c3a50[_0x4e4fd5(0x323)]=_0x479c48;const _0xc75398={};_0xc75398[_0x4e4fd5(0x2d8)+'p']=_0x8ace05,_0xc75398[_0x4e4fd5(0x21d)+_0x4e4fd5(0x2c3)]=_0x4c3a50;const _0x33fcff={};_0x33fcff['email']=0x1;let _0x5af3de=await Participant['find'](_0xc75398,_0x33fcff)[_0x4e4fd5(0x375)](),_0x57d628=_0x5af3de[_0x4e4fd5(0x34f)](_0x3029c2=>_0x3029c2['email']);return global[_0x4e4fd5(0x28c)+_0x4e4fd5(0x255)][_0x585b02]={'time':new Date(),'data':_[_0x4e4fd5(0x25a)+_0x4e4fd5(0x35e)](_0x57d628)},_0x57d628;},exports[_0x50542b(0x348)+_0x50542b(0x32d)+_0x50542b(0x28e)+'h']=async(_0x2c235e,_0x587e11)=>{const _0x12a58c=_0x50542b;if(!_0x2c235e)return[];let _0x9bb7d9='khdan'+_0x12a58c(0x29b)+'rach:'+':'+_0x2c235e+'::'+(typeof _0x587e11==_0x12a58c(0x1fa)+'t'?JSON['strin'+_0x12a58c(0x33e)](_0x587e11):_0x587e11);if(global[_0x12a58c(0x28c)+_0x12a58c(0x255)][_0x9bb7d9]&&moment()[_0x12a58c(0x203)](moment(global[_0x12a58c(0x28c)+_0x12a58c(0x255)][_0x9bb7d9][_0x12a58c(0x2a1)]),'minut'+'es')<0x1)return Logger[_0x12a58c(0x330)](_0x12a58c(0x36c)+_0x12a58c(0x2b4)+_0x12a58c(0x324)+'hach\x20'+_0x12a58c(0x374)+_0x12a58c(0x1ee)+_0x12a58c(0x2f8)+_0x12a58c(0x2bc)+_0x12a58c(0x303)+_0x12a58c(0x315),_0x9bb7d9),global[_0x12a58c(0x28c)+_0x12a58c(0x255)][_0x9bb7d9][_0x12a58c(0x218)];const _0x424a4d={};_0x424a4d[_0x12a58c(0x2d8)+'p']=_0x2c235e,_0x424a4d['phu_t'+'rach']=_0x587e11;const _0x29a523={};_0x29a523[_0x12a58c(0x252)]=0x1;const _0x3a363e=await global[_0x12a58c(0x299)+_0x12a58c(0x2fd)]('custo'+_0x12a58c(0x28a))['find'](_0x424a4d,_0x29a523)[_0x12a58c(0x375)]();let _0x24f955=_0x3a363e[_0x12a58c(0x34f)](_0x66a38b=>_0x66a38b[_0x12a58c(0x252)]);return global[_0x12a58c(0x28c)+_0x12a58c(0x255)][_0x9bb7d9]={'time':new Date(),'data':_[_0x12a58c(0x25a)+'Deep'](_0x24f955)},_0x24f955;},exports[_0x50542b(0x2ae)+'in']=function(_0x457216,_0x42bcc4,_0x2e64ac){const _0x535f19=_0x50542b;if(!_0x457216)return _0x2e64ac(null,!![]);const _0x2e660b={};_0x2e660b[_0x535f19(0x2c3)]=_0x457216,App[_0x535f19(0x2d3)+'ne'](_0x2e660b)['lean']()['then'](async _0x2be297=>{const _0x58adc5=_0x535f19;if(!_0x2be297){const _0x52c9cf={};return _0x52c9cf[_0x58adc5(0x2db)]='ID\x20ap'+_0x58adc5(0x316)+_0x457216+('\x20khôn'+'g\x20tồn'+'\x20tại'),_0x52c9cf[_0x58adc5(0x241)]=-0x7,_0x2e64ac(_0x52c9cf,![]);}if(_0x2be297[_0x58adc5(0x292)+'_thai']=='9'){const _0x2a9656={};return _0x2a9656[_0x58adc5(0x2db)]='Công\x20'+_0x58adc5(0x2c0)+_0x2be297[_0x58adc5(0x226)]+('\x20đã\x20n'+_0x58adc5(0x249)+_0x58adc5(0x32f)+'ng'),_0x2a9656[_0x58adc5(0x241)]=-0x9,_0x2e64ac(_0x2a9656,![]);}if(global['confi'+'gs'][_0x58adc5(0x258)+'_expi'+_0x58adc5(0x2bb)+'te']&&_0x2be297['expir'+_0x58adc5(0x245)+'e']){let _0x4b5c67=new Date(_0x2be297[_0x58adc5(0x36a)+_0x58adc5(0x245)+'e']);if(_0x4b5c67[_0x58adc5(0x2aa)+'me']()<new Date()[_0x58adc5(0x2aa)+'me']()){const _0x57b012={};return _0x57b012['error']=_0x58adc5(0x26b)+_0x58adc5(0x2c0)+_0x2be297[_0x58adc5(0x226)]+(_0x58adc5(0x34c)+_0x58adc5(0x2ce)+'n\x20sử\x20'+_0x58adc5(0x20b)),_0x57b012[_0x58adc5(0x241)]=-0x8,_0x2e64ac(_0x57b012,![]);}}const _0x1c0fdc={};_0x1c0fdc['id_ap'+'p']=_0x457216,_0x1c0fdc[_0x58adc5(0x1e5)]=_0x42bcc4;let _0x107354=await Participant[_0x58adc5(0x2d3)+'ne'](_0x1c0fdc)[_0x58adc5(0x375)]();if(!_0x107354){const _0x5c715a={};return _0x5c715a[_0x58adc5(0x2db)]=_0x58adc5(0x2f5)+_0x58adc5(0x222)+_0x58adc5(0x34a)+_0x58adc5(0x272)+_0x58adc5(0x2f6)+_0x58adc5(0x33d)+_0x58adc5(0x2f1)+'\x20'+_0x2be297['name'],_0x5c715a[_0x58adc5(0x241)]=-0x2,_0x2e64ac(_0x5c715a,![]);}if(!_0x107354[_0x58adc5(0x2a0)]&&!_0x107354[_0x58adc5(0x372)+'e']&&_0x42bcc4!==_0x58adc5(0x2a2)+'c'){const _0x1676d8={};return _0x1676d8[_0x58adc5(0x2db)]=_0x58adc5(0x20c)+_0x58adc5(0x23a)+'của\x20b'+_0x58adc5(0x377)+_0x58adc5(0x346)+_0x58adc5(0x283)+_0x58adc5(0x2da)+_0x58adc5(0x20e),_0x1676d8[_0x58adc5(0x241)]=-0x1,_0x2e64ac(_0x1676d8,![]);}_0x2e64ac(null,_0x107354[_0x58adc5(0x2a0)],_0x2be297,_0x107354);})[_0x535f19(0x319)](_0x8f1c36=>{_0x2e64ac(_0x8f1c36,![]);});},exports[_0x50542b(0x229)+'ght']=async function(_0x551213,_0x2b6cca,_0x52e483,_0x213bb1,_0x5f2f2a,_0x55d19a={}){const _0x33de55=_0x50542b;if(!_0x551213||_0x55d19a['notNe'+_0x33de55(0x357)+'ht'])return _0x5f2f2a(null,!![]);const _0x2d56e7=global[_0x33de55(0x317)+_0x33de55(0x361)+'s'][_0x52e483]?global[_0x33de55(0x317)+_0x33de55(0x361)+'s'][_0x52e483][_0x33de55(0x200)]:undefined;if(_0x2d56e7&&_0x2d56e7[_0x33de55(0x31f)+'a']&&!underscore['has'](_0x2d56e7[_0x33de55(0x31f)+'a'][_0x33de55(0x30e)],_0x33de55(0x2d8)+'p'))return _0x5f2f2a(null,!![]);let _0x4915ed=(_0x55d19a['right'+_0x33de55(0x358)]||_0x55d19a[_0x33de55(0x2b7)+_0x33de55(0x2c6)+_0x33de55(0x1fe)]||_0x52e483)[_0x33de55(0x284)+'erCas'+'e']();_0x55d19a[_0x33de55(0x218)]&&(_0x55d19a[_0x33de55(0x218)][_0x33de55(0x292)+_0x33de55(0x352)]||_0x55d19a[_0x33de55(0x218)][_0x33de55(0x292)+_0x33de55(0x352)]==0x0)&&(_0x55d19a['data'][_0x33de55(0x292)+'_thai']=_0x55d19a['data'][_0x33de55(0x292)+_0x33de55(0x352)]['toStr'+_0x33de55(0x243)]());_0x55d19a[_0x33de55(0x25e)]&&(_0x55d19a[_0x33de55(0x25e)][_0x33de55(0x292)+_0x33de55(0x352)]||_0x55d19a['obj'][_0x33de55(0x292)+_0x33de55(0x352)]==0x0)&&(_0x55d19a[_0x33de55(0x25e)]['trang'+'_thai']=_0x55d19a[_0x33de55(0x25e)]['trang'+_0x33de55(0x352)][_0x33de55(0x276)+_0x33de55(0x243)]());_0x213bb1=(_0x213bb1||'')[_0x33de55(0x284)+_0x33de55(0x1f9)+'e']();const _0x433292=_0x55d19a[_0x33de55(0x218)]||_0x55d19a['obj']||{},_0x394c8f=_0x2d56e7&&underscore[_0x33de55(0x1e9)](_0x2d56e7[_0x33de55(0x31f)+'a']['paths'],_0x33de55(0x36f))&&((_0x55d19a[_0x33de55(0x25e)]||{})[_0x33de55(0x36f)]||(_0x55d19a[_0x33de55(0x218)]||{})[_0x33de55(0x36f)]||'')[_0x33de55(0x276)+_0x33de55(0x243)]()['toUpp'+_0x33de55(0x1f9)+'e']();let _0x3e0422=(_0x433292[_0x33de55(0x292)+_0x33de55(0x352)]||_0x433292[_0x33de55(0x344)+'ess']||'')[_0x33de55(0x276)+_0x33de55(0x243)]()[_0x33de55(0x286)+_0x33de55(0x1f9)+'e']();!_0x3e0422&&_0x55d19a['obj']&&(_0x3e0422=(_0x55d19a[_0x33de55(0x25e)][_0x33de55(0x292)+_0x33de55(0x352)]||_0x55d19a[_0x33de55(0x25e)]['progr'+_0x33de55(0x2ca)]||'')[_0x33de55(0x276)+_0x33de55(0x243)]()[_0x33de55(0x286)+_0x33de55(0x1f9)+'e']());if(_0x394c8f&&_0x3e0422){const _0x35ee8f={};_0x35ee8f['ma_tr'+'ang_t'+'hai']=_0x3e0422,_0x35ee8f[_0x33de55(0x36f)]=_0x394c8f;const _0x3b0c17=await trangthai[_0x33de55(0x2d3)+'ne'](_0x35ee8f)[_0x33de55(0x375)]();if(_0x3b0c17){if(_0x3b0c17[_0x33de55(0x2b5)+'eed_r'+_0x33de55(0x2a7)])return _0x5f2f2a(null,!![]);}else{const _0x316be5={};_0x316be5[_0x33de55(0x36f)]=_0x394c8f,_0x316be5['ma_tr'+_0x33de55(0x250)+_0x33de55(0x232)]=_0x3e0422,_0x316be5['trang'+'_thai']=_0x3b0c17,_0x316be5[_0x33de55(0x2e1)+'n']=_0x213bb1,Logger[_0x33de55(0x330)]('Khong'+_0x33de55(0x291)+_0x33de55(0x279)+_0x33de55(0x292)+_0x33de55(0x304)+_0x33de55(0x32b)+'chuc\x20'+'nang\x20'+_0x33de55(0x281),_0x316be5);}}exports[_0x33de55(0x2ae)+'in'](_0x551213,_0x2b6cca,async(_0x461952,_0x2c85d7,_0x177ecd,_0x1ac528)=>{const _0x23fefb=_0x33de55;if(_0x461952)return _0x5f2f2a(_0x461952,![]);let _0xe41434,_0x12cfdf;if(!_0x2c85d7){if(_0x4915ed!=_0x52e483[_0x23fefb(0x284)+_0x23fefb(0x1f9)+'e']()){const _0x23ba2d={};_0x23ba2d[_0x23fefb(0x241)]=_0x4915ed,_0xe41434=await global['getMo'+'del']('listi'+_0x23fefb(0x31e))['findO'+'ne'](_0x23ba2d)['lean']();if(!_0xe41434){const _0x2fe67f={};return _0x2fe67f['error']='Mã\x20qu'+_0x23fefb(0x2a4)+_0x4915ed+(_0x23fefb(0x201)+_0x23fefb(0x23d)+'n\x20tại'),_0x5f2f2a(_0x2fe67f);}else{const _0x3d46a7=_0xe41434['api_c'+_0x23fefb(0x1fe)]||_0xe41434['code'];if(_0x3d46a7!=_0x52e483[_0x23fefb(0x284)+_0x23fefb(0x1f9)+'e']())return _0x5f2f2a({'error':_0x23fefb(0x2be)+_0x23fefb(0x2a4)+_0x4915ed+(_0x23fefb(0x201)+_0x23fefb(0x269)+_0x23fefb(0x23b)+'\x20API:'+'\x20')+_0x3d46a7+(_0x23fefb(0x24d)+_0x23fefb(0x2b0))+_0x52e483});}}}_0x12cfdf=_0xe41434?.[_0x23fefb(0x26d)+_0x23fefb(0x338)+_0x23fefb(0x358)]||_0x4915ed;if(_0x177ecd&&_0x177ecd[_0x23fefb(0x2ee)+_0x23fefb(0x371)+_0x23fefb(0x2ac)]&&_0x177ecd[_0x23fefb(0x2ee)+_0x23fefb(0x371)+_0x23fefb(0x2ac)][_0x23fefb(0x356)+'h']>0x0){const _0x36d3ad={};_0x36d3ad[_0x23fefb(0x29d)+'x']='^'+_0x52e483+'$',_0x36d3ad[_0x23fefb(0x290)+'ons']='i';const _0x511283={};_0x511283[_0x23fefb(0x29a)+_0x23fefb(0x2b8)]=_0x36d3ad,_0x511283[_0x23fefb(0x372)+_0x23fefb(0x29e)+_0x23fefb(0x2b9)]=!![];let _0x226450=_0x511283;if(_0x177ecd[_0x23fefb(0x22d)+_0x23fefb(0x241)])_0x226450[_0x23fefb(0x209)]=_0x177ecd[_0x23fefb(0x22d)+_0x23fefb(0x241)];let _0x3672c7=await global['getMo'+_0x23fefb(0x2fd)](_0x23fefb(0x2fc)+'einfo')[_0x23fefb(0x247)](_0x226450)[_0x23fefb(0x375)]();if(_0x3672c7[_0x23fefb(0x356)+'h']>0x0){let _0x1fcec0=_0x3672c7['filte'+'r'](_0x1ccf9e=>_0x177ecd['allow'+_0x23fefb(0x371)+_0x23fefb(0x2ac)]['index'+'Of'](_0x1ccf9e[_0x23fefb(0x241)])>=0x0&&(!_0x1ccf9e[_0x23fefb(0x1fb)+_0x23fefb(0x1e4)+_0x23fefb(0x2fe)+'es']||_0x1ccf9e['not_f'+_0x23fefb(0x1e4)+_0x23fefb(0x2fe)+'es'][_0x23fefb(0x321)+'Of'](_0x177ecd[_0x23fefb(0x2c3)][_0x23fefb(0x276)+_0x23fefb(0x243)]())<0x0)&&(!_0x1ccf9e[_0x23fefb(0x307)+_0x23fefb(0x265)+_0x23fefb(0x2ff)+_0x23fefb(0x2de)]||_0x1ccf9e[_0x23fefb(0x307)+_0x23fefb(0x265)+_0x23fefb(0x2ff)+_0x23fefb(0x2de)]['index'+'Of'](_0x177ecd[_0x23fefb(0x2c3)][_0x23fefb(0x276)+_0x23fefb(0x243)]())>=0x0));if(_0x1fcec0[_0x23fefb(0x356)+'h']==0x0)return _0x5f2f2a(_0x23fefb(0x33b)+_0x52e483+(_0x23fefb(0x295)+_0x23fefb(0x32e)+'c\x20kíc'+_0x23fefb(0x365)+_0x23fefb(0x2fa)+'\x20công'+_0x23fefb(0x215)+_0x23fefb(0x271)+'rong\x20'+_0x23fefb(0x2fc)+'e\x20')+_0x3672c7[0x0][_0x23fefb(0x209)]+'/'+_0x3672c7[0x0][_0x23fefb(0x366)]+')',![]);}}if(_0x55d19a[_0x23fefb(0x218)]&&_0x55d19a['data'][_0x23fefb(0x2d8)+'p']){if(_0x55d19a[_0x23fefb(0x218)][_0x23fefb(0x2d8)+'p']!=_0x551213)return _0x5f2f2a('Bạn\x20k'+_0x23fefb(0x222)+_0x23fefb(0x239)+_0x23fefb(0x2f6)+_0x23fefb(0x1f0)+_0x23fefb(0x2cf)+_0x23fefb(0x350)+'y',![]);if(_0x55d19a[_0x23fefb(0x25e)]&&_0x55d19a[_0x23fefb(0x218)][_0x23fefb(0x2d8)+'p']!=_0x55d19a['obj']['id_ap'+'p']){const _0x41a642={};return _0x41a642['obj_i'+_0x23fefb(0x27c)]=_0x55d19a['obj'][_0x23fefb(0x2d8)+'p'],_0x41a642[_0x23fefb(0x21f)+_0x23fefb(0x2d8)+'p']=_0x55d19a['data'][_0x23fefb(0x2d8)+'p'],Logger[_0x23fefb(0x34e)]('[perm'+_0x23fefb(0x285)+'n]',_0x41a642),_0x5f2f2a(_0x23fefb(0x2f5)+_0x23fefb(0x222)+_0x23fefb(0x35d)+_0x23fefb(0x26f)+_0x23fefb(0x2c5)+'ông\x20t'+_0x23fefb(0x350)+_0x23fefb(0x262)+_0x23fefb(0x2f9)+'\x20ty\x20k'+_0x23fefb(0x336),![]);}}if(_0x55d19a[_0x23fefb(0x25e)]&&_0x55d19a[_0x23fefb(0x25e)]['id_ap'+'p']&&_0x55d19a[_0x23fefb(0x25e)][_0x23fefb(0x2d8)+'p']!=_0x551213){const _0x8e576f={};return _0x8e576f[_0x23fefb(0x35c)+_0x23fefb(0x27c)]=_0x55d19a[_0x23fefb(0x25e)]['id_ap'+'p'],_0x8e576f[_0x23fefb(0x266)+_0x23fefb(0x322)+_0x23fefb(0x298)]=_0x551213,Logger[_0x23fefb(0x34e)]('[perm'+'issio'+'n]',_0x8e576f),_0x5f2f2a(_0x23fefb(0x2f5)+_0x23fefb(0x222)+'thể\x20t'+_0x23fefb(0x2f6)+'ập\x20th'+_0x23fefb(0x2cf)+_0x23fefb(0x350)+'y\x20do\x20'+_0x23fefb(0x288)+_0x23fefb(0x1ff)+_0x23fefb(0x2cf)+_0x23fefb(0x1fd)+_0x23fefb(0x2e9)+_0x23fefb(0x35b)+'ện\x20tạ'+'i',![]);}if(_0x55d19a['notNe'+'edRig'+'ht'])return _0x5f2f2a(null,!![],_0x177ecd);if(_0x55d19a[_0x23fefb(0x25e)]&&!_0x2c85d7){if(_0x55d19a['obj']?.['visib'+_0x23fefb(0x30a)]===0x2){if(!underscore['conta'+_0x23fefb(0x261)](_0x55d19a['obj'][_0x23fefb(0x2eb)+_0x23fefb(0x30a)+_0x23fefb(0x329)+'s'],_0x2b6cca)&&_0x55d19a[_0x23fefb(0x25e)]?.[_0x23fefb(0x287)+'er']!==_0x2b6cca[_0x23fefb(0x284)+'erCas'+'e']()&&_0x55d19a['obj'][_0x23fefb(0x2ec)+_0x23fefb(0x1e6)+'ed']&&_0x55d19a[_0x23fefb(0x25e)]['user_'+_0x23fefb(0x1e6)+'ed'][_0x23fefb(0x284)+_0x23fefb(0x1f9)+'e']()!==_0x2b6cca[_0x23fefb(0x284)+_0x23fefb(0x1f9)+'e']())return _0x5f2f2a(_0x23fefb(0x2f5)+_0x23fefb(0x222)+_0x23fefb(0x34a)+'yền\x20t'+_0x23fefb(0x2f6)+_0x23fefb(0x1f0)+_0x23fefb(0x2cf)+_0x23fefb(0x350)+'y',![]);}else{if(_0x55d19a[_0x23fefb(0x25e)][_0x23fefb(0x2eb)+_0x23fefb(0x30a)]===0x1&&_0x55d19a['obj']?.[_0x23fefb(0x287)+'er']!==_0x2b6cca[_0x23fefb(0x284)+'erCas'+'e']()&&_0x55d19a[_0x23fefb(0x25e)][_0x23fefb(0x2ec)+_0x23fefb(0x1e6)+'ed']&&_0x55d19a['obj'][_0x23fefb(0x2ec)+_0x23fefb(0x1e6)+'ed'][_0x23fefb(0x284)+_0x23fefb(0x1f9)+'e']()!==_0x2b6cca[_0x23fefb(0x284)+_0x23fefb(0x1f9)+'e']()){if(_0x55d19a[_0x23fefb(0x25e)]['phu_t'+_0x23fefb(0x33f)]!=_0x2b6cca[_0x23fefb(0x284)+_0x23fefb(0x1f9)+'e']()&&(_0x55d19a[_0x23fefb(0x25e)]['atten'+'ds']||[])[_0x23fefb(0x321)+'Of'](_0x2b6cca)<0x0){let _0x3ae8be=await exports['dsDan'+_0x23fefb(0x36b)+_0x23fefb(0x33f)](_0x55d19a[_0x23fefb(0x25e)][_0x23fefb(0x2d8)+'p'],_0x2b6cca[_0x23fefb(0x284)+_0x23fefb(0x1f9)+'e']());if(_0x3ae8be[_0x23fefb(0x321)+'Of'](_0x55d19a['obj'][_0x23fefb(0x2ec)+'creat'+'ed'])<0x0)return _0x5f2f2a(_0x23fefb(0x21b)+_0x23fefb(0x25b)+_0x23fefb(0x289)+_0x23fefb(0x2b3)+_0x23fefb(0x2d0)+'\x20hỗ\x20t'+_0x23fefb(0x234)+_0x23fefb(0x223)+_0x23fefb(0x30d)+_0x23fefb(0x28d)+'uyền\x20'+_0x23fefb(0x2d6)+_0x23fefb(0x22f)+_0x23fefb(0x222)+_0x23fefb(0x340)+'ày',![]);}}}}let _0x434bf2=_0x2b6cca;_0x1ac528&&_0x1ac528[_0x23fefb(0x21d)+_0x23fefb(0x2c3)]&&(_0x434bf2=_0x1ac528['group'+_0x23fefb(0x2c3)][_0x23fefb(0x284)+'erCas'+'e']());const _0x5cbe29={};_0x5cbe29[_0x23fefb(0x2d8)+'p']=_0x551213,_0x5cbe29[_0x23fefb(0x1e5)]=_0x434bf2,_0x5cbe29['modul'+'e']=_0x12cfdf;let _0x6c8838=await right[_0x23fefb(0x2d3)+'ne'](_0x5cbe29)[_0x23fefb(0x375)]();!_0x6c8838&&_0x12cfdf==_0x55d19a[_0x23fefb(0x2b7)+_0x23fefb(0x2c6)+_0x23fefb(0x1fe)]&&_0x12cfdf!=_0x52e483['toLow'+'erCas'+'e']()&&(_0x12cfdf=_0x52e483['toLow'+_0x23fefb(0x1f9)+'e']());const _0x8b938f={};_0x8b938f[_0x23fefb(0x2d8)+'p']=_0x551213,_0x8b938f[_0x23fefb(0x1e5)]=_0x434bf2,_0x8b938f[_0x23fefb(0x2fc)+'e']=_0x12cfdf,_0x6c8838=await right[_0x23fefb(0x2d3)+'ne'](_0x8b938f)[_0x23fefb(0x375)]();if(!_0x2c85d7){if(!_0x6c8838){let _0xebbcd1=global[_0x23fefb(0x317)+_0x23fefb(0x361)+'s'][_0x52e483[_0x23fefb(0x286)+_0x23fefb(0x1f9)+'e']()],_0x458dd1=((_0xebbcd1||{})[_0x23fefb(0x200)+_0x23fefb(0x354)]||_0x52e483)[_0x23fefb(0x284)+_0x23fefb(0x1f9)+'e']();if(_0x458dd1==_0x23fefb(0x362)+_0x23fefb(0x28a)||_0x458dd1[_0x23fefb(0x321)+'Of'](_0x23fefb(0x25f))>=0x0||_0x458dd1[_0x23fefb(0x321)+'Of'](_0x23fefb(0x1ed))>=0x0||_0x458dd1['index'+'Of'](_0x23fefb(0x326)+'o')>=0x0||_0x458dd1[_0x23fefb(0x321)+'Of'](_0x23fefb(0x2ef))>=0x0||_0x458dd1[_0x23fefb(0x321)+'Of'](_0x23fefb(0x2b2)+'o')>=0x0||_0x458dd1[_0x23fefb(0x321)+'Of'](_0x23fefb(0x270)+'o')>=0x0||_0xebbcd1&&(_0xebbcd1[_0x23fefb(0x2d9)+'ns']||{})['isVou'+_0x23fefb(0x2cc)])return _0x5f2f2a('Bạn\x20k'+_0x23fefb(0x222)+_0x23fefb(0x34a)+_0x23fefb(0x2dc)+'ối\x20vớ'+'i\x20tín'+_0x23fefb(0x29c)+_0x23fefb(0x2e8),![]);if(_0x213bb1===_0x23fefb(0x33a)||_0x213bb1===_0x23fefb(0x28b)&&_0x52e483[_0x23fefb(0x284)+_0x23fefb(0x1f9)+'e']()===_0x23fefb(0x21d)){let _0x207451={'items.code':_0x52e483[_0x23fefb(0x284)+_0x23fefb(0x1f9)+'e']()};_0x177ecd&&_0x177ecd[_0x23fefb(0x22d)+_0x23fefb(0x241)]&&(_0x207451[_0x23fefb(0x209)]=_0x177ecd[_0x23fefb(0x22d)+_0x23fefb(0x241)]);const _0x3ea587={};_0x3ea587['app']=0x1;let _0x1c09fb=await global[_0x23fefb(0x299)+'del'](_0x23fefb(0x2fc)+_0x23fefb(0x2e0))[_0x23fefb(0x2d3)+'ne'](_0x207451,_0x3ea587)[_0x23fefb(0x375)]();if(!_0x1c09fb)return _0x5f2f2a(null,!![],_0x177ecd);return _0x5f2f2a(_0x23fefb(0x2f5)+_0x23fefb(0x222)+_0x23fefb(0x34a)+_0x23fefb(0x2dc)+'ối\x20vớ'+_0x23fefb(0x2ed)+_0x23fefb(0x29c)+'g\x20này',![]);}else return _0x5f2f2a(_0x23fefb(0x2f5)+_0x23fefb(0x222)+'có\x20qu'+_0x23fefb(0x2dc)+'ối\x20vớ'+_0x23fefb(0x2ed)+'h\x20năn'+'g\x20này',![]);}if(_0x213bb1==_0x23fefb(0x33a)&&_0x6c8838?.[_0x23fefb(0x2ad)+_0x23fefb(0x1ea)])return _0x5f2f2a(null,!![],_0x177ecd);if(_0x213bb1==_0x23fefb(0x33a)&&_0x55d19a['obj']&&_0x6c8838&&!_0x6c8838[_0x23fefb(0x2ad)+'all']&&!_0x6c8838[_0x23fefb(0x363)+_0x23fefb(0x217)+'r']&&_0x55d19a[_0x23fefb(0x25e)][_0x23fefb(0x2ec)+_0x23fefb(0x1e6)+'ed'][_0x23fefb(0x284)+_0x23fefb(0x1f9)+'e']()!==_0x2b6cca){if(_0x55d19a[_0x23fefb(0x25e)]['visib'+'le_to']!==0x2||!underscore[_0x23fefb(0x353)+_0x23fefb(0x261)](_0x55d19a[_0x23fefb(0x25e)]['visib'+_0x23fefb(0x30a)+'_user'+'s'],_0x2b6cca)){if(_0x55d19a[_0x23fefb(0x25e)][_0x23fefb(0x238)+_0x23fefb(0x33f)]!==_0x2b6cca&&(_0x55d19a['obj']['atten'+'ds']||[])[_0x23fefb(0x321)+'Of'](_0x2b6cca)<0x0){let _0x1e3a7a=await exports[_0x23fefb(0x1eb)+_0x23fefb(0x36b)+'rach'](_0x55d19a[_0x23fefb(0x25e)][_0x23fefb(0x2d8)+'p'],_0x2b6cca[_0x23fefb(0x284)+_0x23fefb(0x1f9)+'e']());if(_0x1e3a7a[_0x23fefb(0x321)+'Of'](_0x55d19a['obj']['user_'+_0x23fefb(0x1e6)+'ed'])<0x0)return _0x5f2f2a(_0x23fefb(0x2f5)+_0x23fefb(0x222)+_0x23fefb(0x34a)+'yền\x20t'+_0x23fefb(0x2f6)+_0x23fefb(0x1f0)+_0x23fefb(0x2cf)+_0x23fefb(0x350)+'y',![]);}}}if(!_0x6c8838[_0x213bb1])return _0x5f2f2a(_0x23fefb(0x2f5)+_0x23fefb(0x222)+_0x23fefb(0x34a)+_0x23fefb(0x2dc)+_0x23fefb(0x2f2)+'i\x20tín'+_0x23fefb(0x29c)+'g\x20này',![]);if(_0x3e0422){let _0xfd2100=_0x213bb1+('_tran'+_0x23fefb(0x207)+'i'),_0x2f9de5=_0x6c8838[_0xfd2100];if(_0x2f9de5){if(!_0x2f9de5[_0x3e0422]&&_0x2f9de5[_0x3e0422]!=undefined)return _0x5f2f2a(_0x23fefb(0x2f5)+_0x23fefb(0x222)+_0x23fefb(0x34a)+'yền\x20đ'+_0x23fefb(0x2f2)+_0x23fefb(0x23f)+_0x23fefb(0x2d1)+_0x23fefb(0x244)+'ứng\x20t'+_0x23fefb(0x2e4),![]);}else{}}}_0x55d19a['obj']?async[_0x23fefb(0x22c)+'s']({'trangthai':_0x572d20=>{const _0x57e39f=_0x23fefb;_0x55d19a['obj']&&(_0x213bb1===_0x57e39f(0x370)+'e'||_0x213bb1===_0x57e39f(0x355)+'e')&&_0x2d56e7&&underscore[_0x57e39f(0x1e9)](_0x2d56e7[_0x57e39f(0x31f)+'a'][_0x57e39f(0x30e)],_0x57e39f(0x36f))&&_0x55d19a[_0x57e39f(0x25e)][_0x57e39f(0x36f)]?trangthai[_0x57e39f(0x2d3)+'ne']({'ma_ct':_0x55d19a[_0x57e39f(0x25e)]['ma_ct'][_0x57e39f(0x286)+_0x57e39f(0x1f9)+'e'](),'ma_trang_thai':_0x55d19a[_0x57e39f(0x25e)]['trang'+_0x57e39f(0x352)]},function(_0x56d789,_0x3e3e21){const _0x9306bc=_0x57e39f;if(_0x56d789)return _0x572d20(_0x56d789);if(_0x3e3e21){if(_0x213bb1===_0x9306bc(0x370)+'e'){if(_0x3e3e21[_0x9306bc(0x2ee)+_0x9306bc(0x347)+'te']==![])return _0x572d20(_0x9306bc(0x219)+_0x9306bc(0x2c8)+'\x20chứn'+_0x9306bc(0x26a)+_0x9306bc(0x253)+_0x9306bc(0x222)+_0x9306bc(0x2a6)+'hép\x20s'+'ửa');if(_0x3e3e21[_0x9306bc(0x20f)+_0x9306bc(0x218)]==!![])return _0x572d20('Trạng'+'\x20thái'+_0x9306bc(0x24e)+'g\x20từ\x20'+'này\x20đ'+_0x9306bc(0x36d)+_0x9306bc(0x318)+'á');}if(_0x213bb1===_0x9306bc(0x355)+'e'&&(_0x3e3e21['lock_'+_0x9306bc(0x218)]||_0x3e3e21[_0x9306bc(0x2ee)+_0x9306bc(0x2c7)+'te']==![]))return _0x572d20('Trạng'+'\x20thái'+_0x9306bc(0x24e)+'g\x20từ\x20'+_0x9306bc(0x253)+_0x9306bc(0x222)+'cho\x20p'+_0x9306bc(0x320)+'oá');}return _0x572d20();}):_0x572d20();}},_0x94cc40=>{const _0x5db3ca=_0x23fefb;if(_0x94cc40)_0x5f2f2a(_0x94cc40,![]);else{let _0x41b2d1=_0x213bb1+('_righ'+'t');if(!_0x2c85d7&&_0x55d19a[_0x5db3ca(0x25e)]&&_0x55d19a[_0x5db3ca(0x25e)][_0x41b2d1]&&_0x55d19a[_0x5db3ca(0x25e)][_0x41b2d1][_0x5db3ca(0x356)+'h']>0x0&&_0x55d19a[_0x5db3ca(0x25e)][_0x41b2d1][_0x5db3ca(0x321)+'Of'](_0x2b6cca[_0x5db3ca(0x284)+_0x5db3ca(0x1f9)+'e']())<0x0)return _0x5f2f2a(_0x5db3ca(0x2f5)+_0x5db3ca(0x222)+_0x5db3ca(0x34a)+'yền\x20đ'+_0x5db3ca(0x2f2)+_0x5db3ca(0x2ed)+'h\x20năn'+'g\x20này',![]);_0x5f2f2a(null,!![],_0x177ecd);}}):_0x5f2f2a(null,!![],_0x177ecd);},_0x55d19a);},exports['async'+'HasRi'+'ght']=function(_0x17b6a9,_0x5d5820,_0x480eda,_0x5c1f57,_0x22e007={}){return new Promise((_0x3c2804,_0x3b6118)=>{const _0x1db25d=_0x44de;exports[_0x1db25d(0x229)+_0x1db25d(0x24b)](_0x17b6a9,_0x5d5820,_0x480eda,_0x5c1f57,(_0xca96c2,_0x3bd242,_0x4b216c)=>{const _0x5e9f5f=_0x1db25d;if(_0xca96c2)return _0x3b6118(_0xca96c2);const _0x3da2e8={};_0x3da2e8[_0x5e9f5f(0x26d)+'ssion']=_0x3bd242,_0x3da2e8['app']=_0x4b216c,_0x3c2804(_0x3da2e8);},_0x22e007);});},exports[_0x50542b(0x327)+'ghtBy'+_0x50542b(0x212)]=async function(_0x11ef2d,_0x7e04df,_0x5c7d86,_0x1ccd53,_0x715c01,_0x22e6f2={}){const _0x253f8f=_0x50542b;!_0x715c01&&(_0x715c01=_0x7e04df&&_0x7e04df[_0x253f8f(0x200)+_0x253f8f(0x27b)]?_0x7e04df[_0x253f8f(0x200)+_0x253f8f(0x27b)][_0x253f8f(0x284)+_0x253f8f(0x1f9)+'e']():'');let _0x445922=(_0x22e6f2[_0x253f8f(0x337)+_0x253f8f(0x358)]||_0x22e6f2[_0x253f8f(0x2b7)+_0x253f8f(0x2c6)+_0x253f8f(0x1fe)]||_0x715c01)['toLow'+_0x253f8f(0x1f9)+'e'](),_0x1bc092=_0x445922?_0x253f8f(0x268)+_0x253f8f(0x240)+_0x253f8f(0x309)+_0x11ef2d+'::'+_0x5c7d86+'::'+_0x445922+'::'+JSON[_0x253f8f(0x27e)+_0x253f8f(0x33e)](_0x22e6f2):'',_0x5ade3b=_0x5c7d86===_0x253f8f(0x2a2)+'c'?0x7*0x18*0x3c:0x1;if(_0x1bc092&&global['cache'+_0x253f8f(0x255)][_0x1bc092]&&moment()[_0x253f8f(0x203)](moment(global['cache'+_0x253f8f(0x255)][_0x1bc092][_0x253f8f(0x2a1)]),_0x253f8f(0x22b)+'es')<_0x5ade3b)return _0x1ccd53(null,global[_0x253f8f(0x28c)+_0x253f8f(0x255)][_0x1bc092][_0x253f8f(0x218)],![]);exports[_0x253f8f(0x2ae)+'in'](_0x11ef2d,_0x5c7d86,async function(_0x549173,_0x26a591,_0x3c0d09,_0x2c4402){const _0x10961f=_0x253f8f;if(_0x549173)return _0x1ccd53(_0x549173);let _0x3e323d={};if(!_0x26a591&&!_0x22e6f2[_0x10961f(0x369)+_0x10961f(0x357)+'ht']&&underscore['has'](_0x7e04df[_0x10961f(0x31f)+'a'][_0x10961f(0x30e)],_0x10961f(0x2d8)+'p')){let _0x543e54;if(_0x445922&&_0x445922!=_0x715c01[_0x10961f(0x284)+_0x10961f(0x1f9)+'e']()){const _0x48b94a={};_0x48b94a['code']=_0x445922,_0x543e54=await global[_0x10961f(0x299)+_0x10961f(0x2fd)](_0x10961f(0x2b7)+_0x10961f(0x31e))[_0x10961f(0x2d3)+'ne'](_0x48b94a)[_0x10961f(0x375)]();if(!_0x543e54){const _0x1dfe45={};return _0x1dfe45[_0x10961f(0x2db)]=_0x10961f(0x2be)+_0x10961f(0x2a4)+_0x445922+('\x27\x20khô'+_0x10961f(0x23d)+'n\x20tại'),_0x1ccd53(_0x1dfe45);}else{const _0x21f79a=_0x543e54[_0x10961f(0x21e)+_0x10961f(0x1fe)]||_0x543e54[_0x10961f(0x241)];if(_0x21f79a!=_0x715c01[_0x10961f(0x284)+'erCas'+'e']())return _0x1ccd53({'error':'Mã\x20qu'+'yền\x20\x27'+_0x445922+('\x27\x20khô'+_0x10961f(0x269)+_0x10961f(0x235)+'\x20API:'+'\x20')+_0x21f79a+(_0x10961f(0x24d)+_0x10961f(0x2b0))+_0x715c01[_0x10961f(0x284)+_0x10961f(0x1f9)+'e']()});}}let _0x307e10=_0x543e54?.['permi'+_0x10961f(0x338)+_0x10961f(0x358)]||_0x445922,_0x4db21c,_0x3515d4,_0x59a1cc,_0xc90877=[],_0x59c5db,_0x53e968=_0x5c7d86;_0x2c4402&&_0x2c4402['group'+_0x10961f(0x2c3)]&&(_0x53e968=_0x2c4402[_0x10961f(0x21d)+_0x10961f(0x2c3)][_0x10961f(0x284)+'erCas'+'e']());const _0x1cc070={};_0x1cc070[_0x10961f(0x2d8)+'p']=_0x11ef2d,_0x1cc070['email']=_0x53e968,_0x1cc070[_0x10961f(0x2fc)+'e']=_0x307e10;let _0x2bbfb7=await right[_0x10961f(0x2d3)+'ne'](_0x1cc070)['lean']();!_0x2bbfb7&&_0x307e10==_0x22e6f2[_0x10961f(0x2b7)+'nfo_c'+'ode']&&_0x307e10!=_0x715c01[_0x10961f(0x284)+'erCas'+'e']()&&(_0x307e10=_0x715c01[_0x10961f(0x284)+_0x10961f(0x1f9)+'e']());const _0x589c32={};_0x589c32[_0x10961f(0x2d8)+'p']=_0x11ef2d,_0x589c32[_0x10961f(0x1e5)]=_0x53e968,_0x589c32[_0x10961f(0x2fc)+'e']=_0x307e10,_0x2bbfb7=await right['findO'+'ne'](_0x589c32)[_0x10961f(0x375)]();if(_0x2bbfb7&&_0x2bbfb7['view_'+_0x10961f(0x1ea)]){if(_0x2bbfb7&&_0x2bbfb7['extra'+_0x10961f(0x1e8)+_0x10961f(0x314)])try{let _0x4100a0=_0x10961f(0x364)+'n\x20'+_0x2bbfb7[_0x10961f(0x2d5)+'_cond'+_0x10961f(0x314)];const _0x32bc96={};_0x32bc96[_0x10961f(0x2fc)+'e']=_0x715c01,_0x32bc96[_0x10961f(0x30b)+_0x10961f(0x216)+'t']=_0x2c4402,_0x32bc96[_0x10961f(0x224)+'fo']=_0x3c0d09,_0x3e323d=evalute(_0x4100a0,_0x32bc96);}catch(_0x5994b4){return Logger[_0x10961f(0x2db)](_0x10961f(0x2af)+'ightB'+_0x10961f(0x230)+_0x10961f(0x273)+_0x10961f(0x328)+'ondit'+_0x10961f(0x275),_0x5994b4,_0x2bbfb7[_0x10961f(0x2d5)+_0x10961f(0x1e8)+_0x10961f(0x314)]),_0x1ccd53(_0x5994b4[_0x10961f(0x334)+'ge']);}return _0x1bc092&&(global[_0x10961f(0x28c)+_0x10961f(0x255)][_0x1bc092]={'time':new Date(),'data':_['clone'+_0x10961f(0x35e)](_0x3e323d)}),_0x1ccd53(null,_0x3e323d,![]);}let _0x5c1fe6=(await exports[_0x10961f(0x1eb)+_0x10961f(0x36b)+_0x10961f(0x33f)](_0x11ef2d,_0x5c7d86))[_0x10961f(0x22a)+'r'](_0x1c977a=>_0x1c977a);_0x5c1fe6[_0x10961f(0x32a)](_0x5c7d86);_0x2bbfb7&&_0x2bbfb7[_0x10961f(0x2ad)+_0x10961f(0x22e)+_0x10961f(0x254)+_0x10961f(0x248)]&&(_0x5c1fe6[_0x10961f(0x32a)](''),_0x5c1fe6[_0x10961f(0x32a)](null));_0x5c1fe6=[...new Set(_0x5c1fe6)];if(_0x2bbfb7&&_0x2bbfb7['view']){const _0x75e9db={};_0x75e9db[_0x10961f(0x2eb)+'le_to']=null;let _0x136e39=_0x75e9db;if(underscore['has'](_0x7e04df[_0x10961f(0x31f)+'a']['paths'],_0x10961f(0x2eb)+_0x10961f(0x30a))){!_0x3e323d['$and']&&(_0x3e323d['$and']=[]);const _0x33b6a9={};_0x33b6a9[_0x10961f(0x2eb)+'le_to']=0x0,_0x4db21c=_0x33b6a9;const _0x2dac99={};_0x2dac99['visib'+_0x10961f(0x30a)]=0x2,_0x2dac99[_0x10961f(0x2eb)+_0x10961f(0x30a)+_0x10961f(0x329)+'s']=_0x5c7d86,_0x3515d4=_0x2dac99;if(underscore[_0x10961f(0x1e9)](_0x7e04df['schem'+'a'][_0x10961f(0x30e)],_0x10961f(0x2eb)+_0x10961f(0x30a)+_0x10961f(0x329)+_0x10961f(0x21d)+'s')){const _0x4de6f3={};_0x4de6f3[_0x10961f(0x2eb)+'le_to']=0x5,_0x4de6f3[_0x10961f(0x2eb)+_0x10961f(0x30a)+_0x10961f(0x329)+_0x10961f(0x21d)+'s']=(_0x2c4402||{})['group'+'_id'],_0x59a1cc=_0x4de6f3;}else{const _0x5a1536={};_0x5a1536[_0x10961f(0x2eb)+_0x10961f(0x30a)]=0x5,_0x5a1536[_0x10961f(0x2eb)+_0x10961f(0x30a)+_0x10961f(0x329)+'s']=(_0x2c4402||{})[_0x10961f(0x21d)+'_id'],_0x59a1cc=_0x5a1536;}_0xc90877[_0x10961f(0x32a)](_0x4db21c),_0xc90877['push'](_0x3515d4),_0xc90877[_0x10961f(0x32a)](_0x59a1cc),_0xc90877[_0x10961f(0x32a)](_0x136e39);}if(_0x2bbfb7[_0x10961f(0x363)+'fOthe'+'r']===![]){if(underscore[_0x10961f(0x1e9)](_0x7e04df['schem'+'a'][_0x10961f(0x30e)],_0x10961f(0x252))){const _0x1cbc32={};_0x1cbc32[_0x10961f(0x323)]=_0x5c1fe6;const _0x3c2875=await exports['dsKhD'+_0x10961f(0x32d)+_0x10961f(0x28e)+'h'](_0x11ef2d,_0x1cbc32);if(_0x3c2875['lengt'+'h']>0x0)_0xc90877['push']({'ma_kh':{'$in':_0x3c2875}});}if(_0x4db21c){const _0x48921f={};_0x48921f[_0x10961f(0x323)]=_0x5c1fe6,_0x4db21c[_0x10961f(0x2ec)+_0x10961f(0x1e6)+'ed']=_0x48921f;}else{const _0x456d5a={};_0x456d5a['$in']=_0x5c1fe6;const _0x477b53={};_0x477b53[_0x10961f(0x2ec)+'creat'+'ed']=_0x456d5a,_0xc90877[_0x10961f(0x32a)](_0x477b53);}}else{let _0x1d6898;if(underscore[_0x10961f(0x1e9)](_0x7e04df[_0x10961f(0x31f)+'a']['paths'],_0x10961f(0x292)+_0x10961f(0x352))===!![]){let _0x4436b9=_0x2bbfb7[_0x10961f(0x2ad)+'trang'+_0x10961f(0x352)];if(_0x4436b9){_0x59c5db=[undefined,null,''];for(let _0x42ac17 in _0x4436b9){_0x4436b9[_0x42ac17]&&_0x59c5db[_0x10961f(0x32a)](_0x42ac17);}const _0x1c46cc={};_0x1c46cc[_0x10961f(0x323)]=_0x59c5db,_0x3e323d[_0x10961f(0x292)+_0x10961f(0x352)]=_0x1c46cc;}let _0x56badc=_0x2bbfb7[_0x10961f(0x363)+_0x10961f(0x217)+_0x10961f(0x33c)+_0x10961f(0x25c)+'ai'];if(_0x56badc){_0x1d6898=[undefined,null,''];for(let _0x3b1663 in _0x56badc){_0x56badc[_0x3b1663]&&(!_0x4436b9||_0x4436b9[_0x3b1663])&&_0x1d6898[_0x10961f(0x32a)](_0x3b1663);}}}if(_0x2bbfb7['viewO'+_0x10961f(0x217)+_0x10961f(0x34b)+_0x10961f(0x236)+_0x10961f(0x29f)]&&_0x2bbfb7[_0x10961f(0x363)+_0x10961f(0x217)+_0x10961f(0x34b)+_0x10961f(0x236)+_0x10961f(0x29f)]['lengt'+'h']>0x0){const _0x1dde2a={};_0x1dde2a[_0x10961f(0x323)]=_0x2bbfb7[_0x10961f(0x363)+_0x10961f(0x217)+'r_use'+'r_gro'+_0x10961f(0x29f)];const _0x259d9={};_0x259d9[_0x10961f(0x2d8)+'p']=_0x11ef2d,_0x259d9[_0x10961f(0x21d)+_0x10961f(0x2c3)]=_0x1dde2a;const _0x3c372a={};_0x3c372a[_0x10961f(0x1e5)]=0x1;let _0x1e5350=await Participant[_0x10961f(0x247)](_0x259d9,_0x3c372a)[_0x10961f(0x375)]();_0x5c1fe6[_0x10961f(0x32a)](..._0x1e5350[_0x10961f(0x34f)](_0x10231a=>_0x10231a[_0x10961f(0x1e5)]));if(_0x4db21c){if(_0x1d6898){const _0x495b44={};_0x495b44[_0x10961f(0x323)]=_0x1d6898,_0x4db21c[_0x10961f(0x27d)]=[{'user_created':{'$in':_0x5c1fe6[_0x10961f(0x22a)+'r'](_0x259507=>_0x259507!=_0x5c7d86)},'trang_thai':_0x495b44},{'user_created':_0x5c7d86}];}else{const _0x332077={};_0x332077['$in']=_0x5c1fe6,_0x4db21c['user_'+_0x10961f(0x1e6)+'ed']=_0x332077;}}else{if(_0x1d6898){const _0x243a45={};_0x243a45[_0x10961f(0x323)]=_0x5c1fe6;const _0x5d32ff={};_0x5d32ff[_0x10961f(0x323)]=_0x1d6898;const _0x564ae1={};_0x564ae1['user_'+_0x10961f(0x1e6)+'ed']=_0x243a45,_0x564ae1[_0x10961f(0x292)+'_thai']=_0x5d32ff,_0xc90877['push'](_0x564ae1);const _0x55fbff={};_0x55fbff['$in']=_0x1d6898,_0xc90877[_0x10961f(0x32a)]({'$or':[{'user_created':{'$in':_0x5c1fe6[_0x10961f(0x22a)+'r'](_0x477d6f=>_0x477d6f!=_0x5c7d86)},'trang_thai':_0x55fbff},{'user_created':_0x5c7d86}]});}else{const _0x45db64={};_0x45db64[_0x10961f(0x323)]=_0x5c1fe6;const _0x1a8850={};_0x1a8850[_0x10961f(0x2ec)+_0x10961f(0x1e6)+'ed']=_0x45db64,_0xc90877[_0x10961f(0x32a)](_0x1a8850);}}}else{if(_0x1d6898){if(_0x4db21c){const _0x1b007f={};_0x1b007f[_0x10961f(0x30c)]=_0x5c7d86;const _0xba5a3={};_0xba5a3[_0x10961f(0x323)]=_0x1d6898;const _0x38fed7={};_0x38fed7['user_'+_0x10961f(0x1e6)+'ed']=_0x1b007f,_0x38fed7['trang'+_0x10961f(0x352)]=_0xba5a3;const _0x856bf9={};_0x856bf9['user_'+_0x10961f(0x1e6)+'ed']=_0x5c7d86,_0x4db21c[_0x10961f(0x27d)]=[_0x38fed7,_0x856bf9];}else{const _0x1081de={};_0x1081de[_0x10961f(0x30c)]=_0x5c7d86;const _0x424cbf={};_0x424cbf[_0x10961f(0x323)]=_0x1d6898;const _0x479575={};_0x479575[_0x10961f(0x2ec)+_0x10961f(0x1e6)+'ed']=_0x1081de,_0x479575['trang'+_0x10961f(0x352)]=_0x424cbf;const _0x154cc5={};_0x154cc5[_0x10961f(0x2ec)+_0x10961f(0x1e6)+'ed']=_0x5c7d86;const _0x1cdbe1={};_0x1cdbe1[_0x10961f(0x27d)]=[_0x479575,_0x154cc5],_0xc90877[_0x10961f(0x32a)](_0x1cdbe1);}}}}if(_0x3515d4){if(underscore[_0x10961f(0x1e9)](_0x7e04df[_0x10961f(0x31f)+'a'][_0x10961f(0x30e)],_0x10961f(0x287)+'er')){const _0x19c3ff={};_0x19c3ff[_0x10961f(0x323)]=[..._0x5c1fe6,_0x5c7d86];const _0x21f801={};_0x21f801[_0x10961f(0x287)+'er']=_0x19c3ff,_0xc90877['push'](_0x21f801);}if(underscore[_0x10961f(0x1e9)](_0x7e04df[_0x10961f(0x31f)+'a'][_0x10961f(0x30e)],'user')){const _0x3fd7bb={};_0x3fd7bb[_0x10961f(0x323)]=[..._0x5c1fe6,_0x5c7d86];const _0x3bae92={};_0x3bae92['user']=_0x3fd7bb,_0xc90877[_0x10961f(0x32a)](_0x3bae92);}if(underscore[_0x10961f(0x1e9)](_0x7e04df[_0x10961f(0x31f)+'a'][_0x10961f(0x30e)],_0x10961f(0x238)+'rach')){const _0x4013f5={};_0x4013f5['$in']=_0x5c1fe6;const _0x432abf={};_0x432abf['phu_t'+_0x10961f(0x33f)]=_0x4013f5;let _0x4b0f36=_0x432abf;_0xc90877[_0x10961f(0x32a)](_0x4b0f36);}if(underscore['has'](_0x7e04df[_0x10961f(0x31f)+'a'][_0x10961f(0x30e)],_0x10961f(0x27f)+'ds')){const _0x12fe21={};_0x12fe21[_0x10961f(0x323)]=_0x5c1fe6;const _0xbc6091={};_0xbc6091[_0x10961f(0x27f)+'ds']=_0x12fe21;let _0x33588b=_0xbc6091;_0xc90877[_0x10961f(0x32a)](_0x33588b);}}}else{if(not_need_right_models[_0x10961f(0x321)+'Of'](_0x715c01)<0x0){const _0x4df12d={};_0x4df12d[_0x10961f(0x2ec)+_0x10961f(0x1e6)+'ed']=_0x5c7d86,_0xc90877['push'](_0x4df12d);if(underscore[_0x10961f(0x1e9)](_0x7e04df[_0x10961f(0x31f)+'a']['paths'],_0x10961f(0x287)+'er')){const _0x4f82e2={};_0x4f82e2['$in']=[..._0x5c1fe6,_0x5c7d86];const _0x4a2858={};_0x4a2858[_0x10961f(0x287)+'er']=_0x4f82e2,_0xc90877[_0x10961f(0x32a)](_0x4a2858);}if(underscore['has'](_0x7e04df[_0x10961f(0x31f)+'a']['paths'],'user')){const _0x4e6c85={};_0x4e6c85[_0x10961f(0x323)]=[..._0x5c1fe6,_0x5c7d86];const _0x3701ed={};_0x3701ed[_0x10961f(0x2cb)]=_0x4e6c85,_0xc90877[_0x10961f(0x32a)](_0x3701ed);}if(underscore['has'](_0x7e04df[_0x10961f(0x31f)+'a'][_0x10961f(0x30e)],_0x10961f(0x238)+_0x10961f(0x33f))){const _0x160c0a={};_0x160c0a['$in']=_0x5c1fe6;const _0x1aeb97={};_0x1aeb97[_0x10961f(0x238)+_0x10961f(0x33f)]=_0x160c0a;let _0x438e4c=_0x1aeb97;_0xc90877['push'](_0x438e4c);}if(underscore[_0x10961f(0x1e9)](_0x7e04df[_0x10961f(0x31f)+'a'][_0x10961f(0x30e)],_0x10961f(0x27f)+'ds')){const _0x213d79={};_0x213d79['atten'+'ds']=_0x5c7d86;let _0x324a4=_0x213d79;_0xc90877[_0x10961f(0x32a)](_0x324a4);}}let _0x302af4={'items.code':_0x715c01['toLow'+_0x10961f(0x1f9)+'e']()};_0x3c0d09&&_0x3c0d09['menu_'+_0x10961f(0x241)]&&(_0x302af4['app']=_0x3c0d09[_0x10961f(0x22d)+'code']);const _0x51fbf5={};_0x51fbf5[_0x10961f(0x209)]=0x1;let _0x5e2a2d=await global[_0x10961f(0x299)+_0x10961f(0x2fd)](_0x10961f(0x2fc)+_0x10961f(0x2e0))['findO'+'ne'](_0x302af4,_0x51fbf5)['lean']();if(!_0x5e2a2d){const _0x533bc4={};_0x533bc4[_0x10961f(0x2eb)+_0x10961f(0x30a)]=null;let _0x5e1eb6=_0x533bc4;if(underscore[_0x10961f(0x1e9)](_0x7e04df[_0x10961f(0x31f)+'a']['paths'],_0x10961f(0x2eb)+_0x10961f(0x30a))){!_0x3e323d[_0x10961f(0x237)]&&(_0x3e323d['$and']=[]);const _0x3a977b={};_0x3a977b[_0x10961f(0x2eb)+_0x10961f(0x30a)]=0x0,_0x4db21c=_0x3a977b;const _0x3519f2={};_0x3519f2['visib'+'le_to']=0x2,_0x3519f2[_0x10961f(0x2eb)+_0x10961f(0x30a)+_0x10961f(0x329)+'s']=_0x5c7d86,_0x3515d4=_0x3519f2;if(underscore[_0x10961f(0x1e9)](_0x7e04df[_0x10961f(0x31f)+'a'][_0x10961f(0x30e)],_0x10961f(0x2eb)+'le_to'+'_user'+_0x10961f(0x21d)+'s')){const _0x17cd73={};_0x17cd73[_0x10961f(0x2eb)+'le_to']=0x5,_0x17cd73[_0x10961f(0x2eb)+'le_to'+'_user'+'group'+'s']=(_0x2c4402||{})['group'+_0x10961f(0x2c3)],_0x59a1cc=_0x17cd73;}else{const _0x5115f2={};_0x5115f2['visib'+_0x10961f(0x30a)]=0x5,_0x5115f2['visib'+_0x10961f(0x30a)+_0x10961f(0x329)+'s']=(_0x2c4402||{})[_0x10961f(0x21d)+_0x10961f(0x2c3)],_0x59a1cc=_0x5115f2;}_0xc90877['push'](_0x4db21c),_0xc90877['push'](_0x3515d4),_0xc90877[_0x10961f(0x32a)](_0x59a1cc),_0xc90877[_0x10961f(0x32a)](_0x5e1eb6);}}}if(underscore['has'](_0x7e04df[_0x10961f(0x31f)+'a'][_0x10961f(0x30e)],_0x10961f(0x2a2)+'c')){const _0x11ea8c={};_0x11ea8c[_0x10961f(0x2a2)+'c']=!![],_0xc90877[_0x10961f(0x32a)](_0x11ea8c);}if(underscore[_0x10961f(0x1e9)](_0x7e04df['schem'+'a'][_0x10961f(0x30e)],_0x10961f(0x27a)+'d')){const _0x211e7d={};_0x211e7d[_0x10961f(0x27a)+'d']=!![],_0xc90877['push'](_0x211e7d);}if(_0xc90877[_0x10961f(0x356)+'h']>0x0){if(!_0x3e323d[_0x10961f(0x237)])_0x3e323d[_0x10961f(0x237)]=[];const _0x13991c={};_0x13991c[_0x10961f(0x27d)]=_0xc90877,_0x3e323d['$and'][_0x10961f(0x32a)](_0x13991c);}if(_0x3e323d[_0x10961f(0x237)]&&_0x3e323d[_0x10961f(0x237)]['lengt'+'h']===0x0)delete _0x3e323d[_0x10961f(0x237)];if(_0x3e323d[_0x10961f(0x27d)]&&_0x3e323d[_0x10961f(0x27d)][_0x10961f(0x356)+'h']===0x0)delete _0x3e323d[_0x10961f(0x27d)];_0x1bc092&&(global['cache'+'Datas'][_0x1bc092]={'time':new Date(),'data':_['clone'+_0x10961f(0x35e)](_0x3e323d)}),_0x1ccd53(null,_0x3e323d,![]);}else _0x1ccd53(null,_0x3e323d,_0x26a591);},_0x22e6f2);},exports[_0x50542b(0x327)+_0x50542b(0x31c)+'taVie'+'w']=function(_0x5e1987,_0x4e4bc2,_0x31df4b,_0x5d15a5){exports['isAdm'+'in'](_0x5e1987,_0x31df4b,function(_0x206925,_0x427945){const _0x12e86a=_0x44de;if(_0x206925)return _0x5d15a5(_0x206925);let _0xd84624={};if(!_0x427945){if(underscore[_0x12e86a(0x1e9)](_0x4e4bc2[_0x12e86a(0x31f)+'a'][_0x12e86a(0x30e)],_0x12e86a(0x2ea)+'iew_t'+_0x12e86a(0x257)+'rs')===!![]){!_0xd84624[_0x12e86a(0x237)]&&(_0xd84624[_0x12e86a(0x237)]=[]);const _0x576669={};_0x576669['datav'+_0x12e86a(0x21c)+'o']=null;let _0x496b97=[_0x576669];const _0x477d03={};_0x477d03[_0x12e86a(0x2ea)+_0x12e86a(0x21c)+'o']=0x0,_0x496b97['push'](_0x477d03);const _0x4637c3={};_0x4637c3[_0x12e86a(0x2ea)+'iew_t'+'o']=0x1,_0x4637c3[_0x12e86a(0x2ec)+_0x12e86a(0x1e6)+'ed']=_0x31df4b,_0x496b97[_0x12e86a(0x32a)](_0x4637c3);const _0x17dc7b={};_0x17dc7b['datav'+_0x12e86a(0x21c)+'o']=0x2,_0x17dc7b[_0x12e86a(0x2ea)+_0x12e86a(0x21c)+_0x12e86a(0x257)+'rs']=_0x31df4b,_0x496b97[_0x12e86a(0x32a)](_0x17dc7b);const _0x5a61a3={};_0x5a61a3[_0x12e86a(0x27d)]=_0x496b97,_0xd84624[_0x12e86a(0x237)]['push'](_0x5a61a3);}}_0x5d15a5(null,_0xd84624,_0x427945);});},exports[_0x50542b(0x2cd)+'eldNo'+_0x50542b(0x349)+'t']=async(_0x18094e,_0x25d85d,_0x402d27)=>{const _0x4ddd0b=_0x50542b;if(!_0x18094e)return[];let _0x77f101=await Participant[_0x4ddd0b(0x2f4)](_0x18094e,_0x25d85d);if(_0x77f101['lengt'+'h']>0x0){let _0x13c01f=_0x77f101[0x0][_0x4ddd0b(0x21d)+_0x4ddd0b(0x2c3)],_0x45b0b0;try{_0x45b0b0=await right[_0x4ddd0b(0x264)+'fo'](_0x18094e,{'email':_0x13c01f,'module':_0x402d27[_0x4ddd0b(0x284)+_0x4ddd0b(0x1f9)+'e']()},_0x4ddd0b(0x35f)+_0x4ddd0b(0x263)+_0x4ddd0b(0x337));}catch(_0x224c72){return[];}let _0x194931=[];for(let _0x4de241 in _0x45b0b0){_0x45b0b0[_0x4de241]&&_0x194931[_0x4ddd0b(0x32a)](_0x4de241);}return _0x194931;}else return[];};const request=require(_0x50542b(0x256)+'st');function _0x5db4(){const _0x413d5a=['tCoJihJdOq','4BURig7dOhK','ihtHUQfPia','y3jLDd0','B25Zzt0','zYbUW6b5','y8o0BMCG','zgf0yxy','DMLZAwi','DxnLCL8','Asb0W61U','ywXSB3C','DMf0CMe','Bgf0zq','BMCGDhK','4BUrAsb24BUB','W61UAcb4','B2zbCha','qUg6Ow4GAW','CNv5igm','BIbJAmAW','CgH1ihq','igpdTg5N','DcbJAg8','CNb0zM8','Bw9KDwW','zgvS','BxbHBMK','B21Wyw4','Aw5Fyxm','Dgv4y2u','zxzLCMK','DhuGy2e','ihrOywK','lwnVzgu','Ahr0Chm','B25SEv8','C2HVCNq','BtO6','BgvFDg8','CgfYDgK','jg5L','BIbT4BUBAq','Cgf0Ahm','W6aGB3rW','ndmXntu1wK1sqxrr','AdO6','nJyZotbqs2zHzK8','mtGYmdK1ohrOtuTprq','AxrPB24','y2HL','CdOG','y29UDhi','yYbRAg8','y2f0y2G','AMvJDa','DgvTCgW','z2H0rge','rMfPBgu','BMzV','C2nOzw0','AmoPCcb4','Aw5KzxG','BNrFAwq','jgLU','ywnOigS','DgnOysa','DMf0DMe','z2v0uMK','DhjHx2m','x3vZzxi','ChvZAa','ignOBYa','CgfYyw0','yw5NugG','ysdeKCAW4BUJ','C+g7RsbK4BUL','Aw5MBW','rv9srum','zYb04BUtBG','CM91Ca','BwvZC2e','t2jQzwm','AmoHyW','CMLNAhq','C3rPB24','ChrJAge','DMLLDW','qvbjici','CL90CMe','4BQTCcbJW7q','z2LMEq','CMfJAa','DgLUig4','tCoJihbP','vhLWzxm','yYb04BQHBW','ChjVz3i','DhjPzwq','BMCGy2G','x3vWzge','zhnlAeq','DfjPz2G','y8oZihf1','CL91C2u','imsrW6mGAa','yYbUW6b5','D2fYBG','BwfW','Aw4GBSoG','BIbRAmo0','x3rOywK','y29UDge','x25HBwu','zgvSzxq','BgvUz3q','zwrsAwC','x2nVzgu','DxnLCMq','ntvgwxzYwMO','DhKGAgK','B2jQx2K','DgJHU4mGyW','rgvLCa','zMLLBgq','oI8VD3C','B2XSzxi','y3vZDg8','DMLLD08','CMv0Dxi','AcbOB+g6Oq','DgL0Bgu','ueLo','tufyx1q','BM90tMu','zxHWAxi','z1bODvq','Bgf5igq','W6mGXjhgSog7OW','r3jVDxa','BwfFy3q','DxbKyxq','x21Vzhu','ywn0Axy','nJrVAun3C0q','AgfUzYa','BgvHBG','yxrLCNa','4BQHBIdeKwe','B3jFy28','zw1HAwW','y3jLyxq','igTOW7rU','x2nVBMq','AgfZ','ywXS','zhneyw4','mtH1tKLTBhi','C29RAg8','zgfUzYa','yxn5BMm','4BQTCcb0Aa','yxb0y2G','B3jL','zwn0igm','CgLU','qvbuq0G','CMvWB3i','BSsdBMCG','DsbVDha','zxjdyxm','B2jQzwm','BM90x2y','zhndAgK','AhxHU5LJia','B2rL','4BUhDsbRAa','Bw9KzwW','jYbRAmo0','DgvPCd0','zgLMzG','ihtHUQfP','AwvK','z2XLlMm','z190Age','C2f2zq','yxbW','Ag/HURDJia','zog7Pw5N','vmoGAsbR','zcbJyxa','ig5O4BQTBG','Bg9JA18','DgLUzM8','ugLU','sxrLBq','ugXLyxm','Bw9Tzw4','ihr5ig4','y2LWyw4','zK90Agu','zgf0yq','vhlHUQfUzW','BgrYzw4','q2JHU4KGBG','Awv3x3q','z3jVDxa','yxbPx2m','zgf0yv8','CgHVBMu','DeLK','Amo0BMCG','igfKBwK','yxbWsw4','uKvux0S','BMfTzq','yxrLDM8','y3v0','AgfZuMK','zMLSDgu','BwLUDxq','C2vYAwu','BwvUDv8','zw1WDhK','y+g6RxaGDa','EuL0zw0','DgHHAq','AgfP','y2fWDgm','CUg7OYb2W6a','CcbS4BUhla','CL9NCM8','jgfUza','CgH1x3q','DgJHU4mGDa','Ag/HUQnUia','CcbS4BUhlG','ntmZmZa4mfvZEwnwAq','BMCGDog7KW','B3rW','Asb0CUg6Oq','qNLjDgu','y29Kzq','B3rWlwK','Aw5N','W6fPignO','zv9Kyxq','BgfIzwW','zMLUza','DhjHy2G','z+g7Q25Nia','x21VDgG','z2H0','ndi3odeZohD1D0D2vG','lcbTB2q','ignO4BUPBG','otG0mta5DKLpy0rr','yw5Nx3q','As9ZAxq','BwfFA2G','BSoGEsbR','x3bODv8','rgf0yxm','CMvXDwu','B191C2u','y2HLy2S','CNb0','y2XVBMu','z8AW4BUDAsa','BMDFDgG','zsbZzwW','B2jQ','C29JywK','ndfAqxfZtMy','Aw5Z','Esb2W6bV','x25VDf8','z2v0sw4','zM9Yx2m','y3vYCMu','x290Ca','uMLNAhq','BMCGAog7OW','zYb04BURia','q8o0BMCG','yYb0Aog7Sq','CgvYBwK','x251Bwi','4BQTCcbUAa','Dgr0Dgm','W6b5icH0','EEg7Gw4GDa','xsbBzxG','qv9trum','Aw9Uxq','Dg9tDhi','EvjLq2e','zxrLCG','DgHHEsa','C2HHCMu','tMfTzq','zf9HCha','jg9Y','C3rYAw4','yxr0zw4','AxnwywW','BMf5','DwnOzxi','4BUDimsrXRdHU6m','Dg9mB3C','AxnZAw8','Dg9vCha','B2zFDxm','zog7RYbSAq','Dog6Ow8Sia','BwvY','ywrK','y2fJAgu','igpdSYbX','DvrYywm','XjhdOYbO4BQ/','jg9WDgK','ihrPBsa','DhjHBMC','zNK/C2u','t1rqigS','iIbJAmAW','r09pr0W','ndq5nJGYmhnuu0Tnsq','x2fWCa','z2v0tw8','AxrLBxm','z3bODxq','AcbUXinU','jhjLz2u','zv9Yzxe','DxbZ','ywrTAw4','DgLTzq','ChvIBgK','CcbS4BUh','EEg7Gw4GjW','jNjLBw8','y2HViha','AwDODa','Dv90CMe','AwnHDgK','z2v0vgK','yxrLC3q','BgvZ','DMLLD18','Axnbzg0','w2DLDfi','DwXLoIa','q2JHU6LJia','Dgr0Dg4','CgJHU6uGDa','yw5Oihm','BM90x24','DMvYAwy','BgLZDgK','lMnVzgu','DwLYzq','AgeVyxa','CMvFzge','CMfJAca','CNb0B2i','tCoJihf1','BhrLBxa','DhKG','DxnLx3a','BSoGEsb5','x2LK','Dw5Kzxi','4BQTDcb0Aa','BMzVx2m','x2rLBgu','ihrOW6fP','jNjLC3a','zxnZ','DxnLCG','y2HLCG','z2v0rMK','4BQ/DcbO4BQH','W7rUzYb0','CSoHy2GS','BMCGDgG','DxnLCMC','zMLUze8','zhnFCgG','zxH0CMe','Dhj1Esa','B20VCMu','AwrFyxa','B3b0Aw8','yYb4W6fJ','zxjYB3i','EEg7Gw4GXje','Eu9uua','AwvZ','nZjNruDpAhK','zwLUzM8','ywn0Aw8','B3nL'];_0x5db4=function(){return _0x413d5a;};return _0x5db4();}function _0x44de(_0x259247,_0x2c4bde){_0x259247=_0x259247-0x1e4;const _0x5db487=_0x5db4();let _0x44dee9=_0x5db487[_0x259247];if(_0x44de['CHNqMx']===undefined){var _0x39b256=function(_0x5b8578){const _0x2a1c3f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4def3f='',_0x8957c='';for(let _0x12a173=0x0,_0x19d308,_0x5697a6,_0x1ada24=0x0;_0x5697a6=_0x5b8578['charAt'](_0x1ada24++);~_0x5697a6&&(_0x19d308=_0x12a173%0x4?_0x19d308*0x40+_0x5697a6:_0x5697a6,_0x12a173++%0x4)?_0x4def3f+=String['fromCharCode'](0xff&_0x19d308>>(-0x2*_0x12a173&0x6)):0x0){_0x5697a6=_0x2a1c3f['indexOf'](_0x5697a6);}for(let _0x29379e=0x0,_0x2a4f43=_0x4def3f['length'];_0x29379e<_0x2a4f43;_0x29379e++){_0x8957c+='%'+('00'+_0x4def3f['charCodeAt'](_0x29379e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x8957c);};_0x44de['QlFDIB']=_0x39b256,_0x44de['hbFwQq']={},_0x44de['CHNqMx']=!![];}const _0x2fd9e3=_0x5db487[0x0],_0x21c94b=_0x259247+_0x2fd9e3,_0x57a460=_0x44de['hbFwQq'][_0x21c94b];return!_0x57a460?(_0x44dee9=_0x44de['QlFDIB'](_0x44dee9),_0x44de['hbFwQq'][_0x21c94b]=_0x44dee9):_0x44dee9=_0x57a460,_0x44dee9;}exports[_0x50542b(0x2b6)+_0x50542b(0x277)+_0x50542b(0x339)]=async(_0x5235df,_0x15758f)=>{const _0x62a9=_0x50542b;if(!_0x5235df)throw new Error(_0x62a9(0x213)+_0x62a9(0x25d)+_0x62a9(0x1f3)+_0x62a9(0x1f1)+'a');let _0x53f69f=_0x62a9(0x306)+_0x62a9(0x360)+'w.goo'+_0x62a9(0x206)+_0x62a9(0x2d7)+_0x62a9(0x233)+_0x62a9(0x2ba)+_0x62a9(0x251)+_0x62a9(0x302)+_0x62a9(0x293)+_0x62a9(0x2e6)+global['confi'+'gs'][_0x62a9(0x296)+_0x62a9(0x331)+_0x62a9(0x1f5)+_0x62a9(0x274)+_0x62a9(0x225)+'EY']+(_0x62a9(0x2c9)+_0x62a9(0x2e7))+_0x5235df;if(_0x15758f)_0x53f69f+=_0x62a9(0x2a5)+_0x62a9(0x202)+_0x15758f;return new Promise((_0x12eb24,_0xbacbb1)=>{request(_0x53f69f,function(_0x4f5db6,_0x36803e,_0x126eea){const _0x47e9a1=_0x44de;_0x126eea=JSON['parse'](_0x126eea);if(!_0x126eea['succe'+'ss'])return Logger[_0x47e9a1(0x2db)](_0x47e9a1(0x31d)+_0x47e9a1(0x20d)+'tcha\x20'+_0x47e9a1(0x2b6)+_0x47e9a1(0x2a9)+'on',_0x126eea,_0x53f69f),_0xbacbb1(new Error(_0x47e9a1(0x31d)+_0x47e9a1(0x20d)+_0x47e9a1(0x325)+'verif'+_0x47e9a1(0x2a9)+'on'));_0x12eb24(!![]);});});},exports[_0x50542b(0x2b6)+_0x50542b(0x2dd)]=async(_0x3d00a0,_0x36e71f,_0x3037df)=>{const _0x1aca5f=_0x50542b;if(!_0x36e71f||!_0x3037df)throw new Error(_0x1aca5f(0x2b1)+_0x1aca5f(0x1f7)+_0x1aca5f(0x2c2)+'êu\x20cầ'+_0x1aca5f(0x1f8)+'-id\x20v'+_0x1aca5f(0x30f)+_0x1aca5f(0x305));const _0x575000={};_0x575000[_0x1aca5f(0x1e5)]=_0x3d00a0;const _0x40ef99={};_0x40ef99[_0x1aca5f(0x27d)]=[_0x575000];const _0x1548d4=await global['getMo'+_0x1aca5f(0x2fd)](_0x1aca5f(0x2cb))['findO'+'ne'](_0x40ef99);if(!_0x1548d4)throw new Error('Tài\x20k'+_0x1aca5f(0x23a)+_0x3d00a0+('\x20khôn'+_0x1aca5f(0x332)+_0x1aca5f(0x204)));if(_0x36e71f[_0x1aca5f(0x286)+_0x1aca5f(0x1f9)+'e']()===_0x1aca5f(0x367)&&configs[_0x1aca5f(0x2c1)+_0x1aca5f(0x300)+_0x1aca5f(0x267)]){if(!(_0x1548d4['local']||{})['pin'])throw new Error('Mã\x20pi'+_0x1aca5f(0x2f7)+_0x1aca5f(0x32e)+_0x1aca5f(0x343));if(!await _0x1548d4['valid'+_0x1aca5f(0x211)](_0x3037df))throw new Error(_0x1aca5f(0x341)+_0x1aca5f(0x351)+_0x1aca5f(0x346)+_0x1aca5f(0x2f3)+'ác');const _0x516158={};return _0x516158[_0x1aca5f(0x1f4)]=_0x3037df,_0x516158[_0x1aca5f(0x220)]=_0x3d00a0,_0x516158;}if(!global['mongo'+_0x1aca5f(0x2e2)][_0x1aca5f(0x342)][_0x1aca5f(0x335)+_0x1aca5f(0x221)][_0x1aca5f(0x280)+'id'](_0x36e71f))throw new Error(_0x1aca5f(0x242)+'d\x20khô'+_0x1aca5f(0x269)+_0x1aca5f(0x2a3));const _0x324095={};_0x324095['_id']=_0x36e71f,_0x324095[_0x1aca5f(0x220)]=_0x3d00a0;const _0x4e052a=await global[_0x1aca5f(0x299)+_0x1aca5f(0x2fd)](_0x1aca5f(0x23e))[_0x1aca5f(0x2d3)+'ne'](_0x324095);if(!_0x4e052a)throw new Error(_0x1aca5f(0x294)+_0x1aca5f(0x222)+'hợp\x20l'+'ệ');_0x4e052a[_0x1aca5f(0x345)+_0x1aca5f(0x26e)+'er']=(_0x4e052a['tried'+_0x1aca5f(0x26e)+'er']||0x0)+0x1,await _0x4e052a[_0x1aca5f(0x208)]();if(!_0x4e052a||_0x4e052a[_0x1aca5f(0x345)+_0x1aca5f(0x26e)+'er']>(configs[_0x1aca5f(0x368)+'RY_OT'+'P']||0x3)||_0x4e052a['otp']!=_0x3037df||_0x4e052a['verif'+_0x1aca5f(0x205)]||_0x4e052a[_0x1aca5f(0x36a)+'e_tim'+'e']['getTi'+'me']()<new Date()[_0x1aca5f(0x2aa)+'me']())throw new Error(_0x1aca5f(0x2e3)+_0x1aca5f(0x26c)+_0x1aca5f(0x34d)+_0x1aca5f(0x1e7)+_0x1aca5f(0x332)+_0x1aca5f(0x2e5)+_0x1aca5f(0x20a)+_0x1aca5f(0x28f)+'t\x20hiệ'+'u\x20lực');const _0x2ee6b6={};_0x2ee6b6[_0x1aca5f(0x2c3)]=_0x36e71f;const _0x163515={};return _0x163515[_0x1aca5f(0x2b6)+_0x1aca5f(0x205)]=!![],await global['getMo'+_0x1aca5f(0x2fd)](_0x1aca5f(0x23e))[_0x1aca5f(0x370)+'eOne'](_0x2ee6b6,_0x163515),_0x4e052a;};
@@ -1,3 +1 @@
1
- const sophanbokh=global.getModel("sophanbokh"),hspbts=global.getModel("hspbts"),underscore=require("underscore");
2
- module.exports=function($kqtinhkh$$,$fn$$){sophanbokh.deleteMany({id_ts:$kqtinhkh$$.id_ts,thang:$kqtinhkh$$.thang,nam:$kqtinhkh$$.nam},$error$$=>{if($error$$)return $fn$$($error$$);hspbts.find({id_app:$kqtinhkh$$.id_app,id_ts:$kqtinhkh$$.id_ts,thang:$kqtinhkh$$.thang,nam:$kqtinhkh$$.nam}).lean().then($hss$$=>{let $m$$=$hss$$.csum("he_so");$m$$!==0?$hss$$.forEach($hs$$=>{underscore.extend($hs$$,$kqtinhkh$$);$hs$$.gia_tri_kh_ky=Math.roundBy($hs$$.he_so/$m$$*$kqtinhkh$$.gia_tri_kh_ky,0);delete $hs$$._id}):
3
- $hss$$=[$kqtinhkh$$];sophanbokh.create($hss$$,$error$$=>{if($error$$)return $fn$$($error$$);$fn$$(null,$hss$$)})}).catch($error$$=>{$fn$$($error$$)})})};
1
+ const _0x2bd69e=_0x5c0f;(function(_0x5abee7,_0x2d0a0d){const _0x3d4d7b=_0x5c0f,_0x4abe9a=_0x5abee7();while(!![]){try{const _0x48612e=parseInt(_0x3d4d7b(0xa3))/0x1*(parseInt(_0x3d4d7b(0xa2))/0x2)+-parseInt(_0x3d4d7b(0xa8))/0x3*(-parseInt(_0x3d4d7b(0xa0))/0x4)+-parseInt(_0x3d4d7b(0x9b))/0x5*(parseInt(_0x3d4d7b(0x8d))/0x6)+-parseInt(_0x3d4d7b(0xa9))/0x7+-parseInt(_0x3d4d7b(0x92))/0x8+-parseInt(_0x3d4d7b(0x8c))/0x9+parseInt(_0x3d4d7b(0x99))/0xa;if(_0x48612e===_0x2d0a0d)break;else _0x4abe9a['push'](_0x4abe9a['shift']());}catch(_0xf285f7){_0x4abe9a['push'](_0x4abe9a['shift']());}}}(_0x4233,0x7eadf));function _0x4233(){const _0x2f6a91=['mJbqqNfithG','y3n1Bq','mte1otzgsKPRAu0','ndzpy2P0q3q','zu1HBNK','y2f0y2G','AwrFyxa','zM9Yrwe','mZC1ntKXBuDnwwTl','mZC3nJa5nhnlu3fUtW','BgvHBG','C29WAge','AwrFDhm','nde1mdi0mNnktxnRua','nde0yxPmD3vH','C2nVCMu','x2LK','x2T5','DgHLBG','ndy4mZiXnNn3AwnjBG','zxHWB3i','BMjVA2G','zgvS','z2LHx3q','CM91BMq','zgvSzxq','mJeWnte2nJbLywnmtuW','CMLFA2G','nJq3mtbhzwD0z00','AgvFC28','DgHHBMC','BMfT','z2v0tw8'];_0x4233=function(){return _0x2f6a91;};return _0x4233();}function _0x5c0f(_0x3d2e99,_0x9f204e){_0x3d2e99=_0x3d2e99-0x8c;const _0x4233e8=_0x4233();let _0x5c0fa4=_0x4233e8[_0x3d2e99];if(_0x5c0f['obezjK']===undefined){var _0x3adab9=function(_0x5a8215){const _0x99cb1e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3a2098='',_0x7e3f67='';for(let _0x3945c3=0x0,_0x3a23dd,_0x3b5aaa,_0x389fca=0x0;_0x3b5aaa=_0x5a8215['charAt'](_0x389fca++);~_0x3b5aaa&&(_0x3a23dd=_0x3945c3%0x4?_0x3a23dd*0x40+_0x3b5aaa:_0x3b5aaa,_0x3945c3++%0x4)?_0x3a2098+=String['fromCharCode'](0xff&_0x3a23dd>>(-0x2*_0x3945c3&0x6)):0x0){_0x3b5aaa=_0x99cb1e['indexOf'](_0x3b5aaa);}for(let _0x4b3589=0x0,_0x49ee1b=_0x3a2098['length'];_0x4b3589<_0x49ee1b;_0x4b3589++){_0x7e3f67+='%'+('00'+_0x3a2098['charCodeAt'](_0x4b3589)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x7e3f67);};_0x5c0f['MRskmC']=_0x3adab9,_0x5c0f['IWadZF']={},_0x5c0f['obezjK']=!![];}const _0x4a31b5=_0x4233e8[0x0],_0x4b484e=_0x3d2e99+_0x4a31b5,_0x126388=_0x5c0f['IWadZF'][_0x4b484e];return!_0x126388?(_0x5c0fa4=_0x5c0f['MRskmC'](_0x5c0fa4),_0x5c0f['IWadZF'][_0x4b484e]=_0x5c0fa4):_0x5c0fa4=_0x126388,_0x5c0fa4;}const sophanbokh=global[_0x2bd69e(0x9f)+_0x2bd69e(0x95)](_0x2bd69e(0xab)+_0x2bd69e(0x94)),hspbts=global[_0x2bd69e(0x9f)+_0x2bd69e(0x95)]('hspbt'+'s'),underscore=require('under'+_0x2bd69e(0x8e));module[_0x2bd69e(0x93)+'ts']=function(_0x3945c3,_0x3a23dd){const _0x5d96d1=_0x2bd69e,_0x3b5aaa={};_0x3b5aaa[_0x5d96d1(0xac)]=_0x3945c3[_0x5d96d1(0xac)],_0x3b5aaa['thang']=_0x3945c3[_0x5d96d1(0x9d)],_0x3b5aaa[_0x5d96d1(0x9e)]=_0x3945c3[_0x5d96d1(0x9e)],sophanbokh[_0x5d96d1(0x98)+_0x5d96d1(0xa4)](_0x3b5aaa,_0x389fca=>{const _0x368656=_0x5d96d1;if(_0x389fca)return _0x3a23dd(_0x389fca);const _0x4b3589={};_0x4b3589[_0x368656(0xa6)+'p']=_0x3945c3[_0x368656(0xa6)+'p'],_0x4b3589['id_ts']=_0x3945c3[_0x368656(0xac)],_0x4b3589['thang']=_0x3945c3[_0x368656(0x9d)],_0x4b3589['nam']=_0x3945c3[_0x368656(0x9e)],hspbts['find'](_0x4b3589)[_0x368656(0xaa)]()[_0x368656(0x91)](_0x49ee1b=>{const _0x3de2d1=_0x368656;let _0x2cf161=_0x49ee1b[_0x3de2d1(0xa1)](_0x3de2d1(0x9c));_0x2cf161!==0x0?_0x49ee1b[_0x3de2d1(0xa7)+'ch'](_0x4294c2=>{const _0x1be887=_0x3de2d1;underscore['exten'+'d'](_0x4294c2,_0x3945c3),_0x4294c2['gia_t'+'ri_kh'+_0x1be887(0x90)]=Math[_0x1be887(0x97)+'By'](_0x4294c2[_0x1be887(0x9c)]/_0x2cf161*_0x3945c3[_0x1be887(0x96)+_0x1be887(0x9a)+_0x1be887(0x90)],0x0),delete _0x4294c2[_0x1be887(0x8f)];}):_0x49ee1b=[_0x3945c3],sophanbokh['creat'+'e'](_0x49ee1b,_0x322e02=>{if(_0x322e02)return _0x3a23dd(_0x322e02);_0x3a23dd(null,_0x49ee1b);});})[_0x368656(0xa5)](_0x3c3ba5=>{_0x3a23dd(_0x3c3ba5);});});};