flexbiz-server 12.3.2 → 12.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. package/package.json +3 -3
  2. package/server/app.js +4 -4
  3. package/server/cluster.js +2 -2
  4. package/server/controllers/controller.js +109 -107
  5. package/server/data/account.js +479 -0
  6. package/server/data/ckgtluong.js +65 -0
  7. package/server/data/currency.js +4 -0
  8. package/server/data/dmdvt.js +54 -0
  9. package/server/data/dmkho.js +3 -0
  10. package/server/data/dvcs.js +3 -0
  11. package/server/data/kbm_bcdkt.js +4843 -0
  12. package/server/data/kbm_kqhdkd.js +655 -0
  13. package/server/data/kbm_lcttgt.js +2386 -0
  14. package/server/data/kbm_lctttt.js +934 -0
  15. package/server/data/kbm_tkgtgt.js +560 -0
  16. package/server/data/parameter.js +178 -0
  17. package/server/data/ptthanhtoan.js +3 -0
  18. package/server/data/rpt.js +123 -0
  19. package/server/data/rptobject.js +2 -0
  20. package/server/data/sys/labelinfo.js +2 -0
  21. package/server/data/sys/listinfo.js +225430 -0
  22. package/server/data/sys/menuinfo.js +1 -0
  23. package/server/data/sys/moduleinfo.js +523 -0
  24. package/server/data/sys/quanhuyen.js +9928 -0
  25. package/server/data/sys/reportinfo.js +14045 -0
  26. package/server/data/sys/tableinfo.js +5873 -0
  27. package/server/data/sys/templatestore.js +1988 -0
  28. package/server/data/sys/tinhthanh.js +821 -0
  29. package/server/data/sys/trangthai.js +12301 -0
  30. package/server/data/sys/user.js +21 -0
  31. package/server/data/sys/vietqrbanks.js +1 -0
  32. package/server/data/tc.js +5 -0
  33. package/server/data/usergroup.js +47 -0
  34. package/server/data/vat.js +115 -0
  35. package/server/global.js +1 -1
  36. package/server/libs/databanle.js +12 -9
  37. package/server/libs/databanletheongay.js +1 -1
  38. package/server/libs/docs.js +304 -0
  39. package/server/libs/dtbanletheosp.js +2 -2
  40. package/server/libs/getGiaban.js +57 -53
  41. package/server/libs/htmlReport.js +6 -6
  42. package/server/libs/mongooseDeletePost.js +4 -3
  43. package/server/libs/permission.js +25 -20
  44. package/server/libs/post-socai.js +6 -5
  45. package/server/libs/post-sokho.js +1 -1
  46. package/server/libs/tuoinophaithu.js +10 -10
  47. package/server/libs/tuoinophaitra.js +11 -9
  48. package/server/libs/utils.js +29 -5
  49. package/server/libs/validator.js +3 -2
  50. package/server/models/app.js +4 -3
  51. package/server/models/bds_area.js +2 -2
  52. package/server/models/bds_block.js +2 -2
  53. package/server/models/bds_building.js +3 -3
  54. package/server/models/bds_floor.js +2 -2
  55. package/server/models/bds_floordetail.js +3 -3
  56. package/server/models/bds_nhadat.js +6 -4
  57. package/server/models/bds_nhomnhadat.js +3 -0
  58. package/server/models/bds_phanloainhadat.js +2 -0
  59. package/server/models/customer.js +5 -5
  60. package/server/models/dh2.js +5 -5
  61. package/server/models/ecomproductlines.js +2 -0
  62. package/server/models/hd2.js +17 -15
  63. package/server/models/hd4.js +12 -0
  64. package/server/models/listinfo.js +12 -1
  65. package/server/models/moduleinfo.js +3 -3
  66. package/server/models/pn3.js +4 -4
  67. package/server/models/so9.js +7 -7
  68. package/server/models/tdttco.js +9 -8
  69. package/server/models/tdttco_tt.js +1 -1
  70. package/server/models/tdttno.js +9 -8
  71. package/server/models/tdttno_tt.js +2 -2
  72. package/server/models/user.js +7 -7
  73. package/server/models/vatra.js +5 -5
  74. package/server/models/vatvao.js +5 -5
  75. package/server/modules/lists/bg-cddiem.js +6 -7
  76. package/server/modules/lists/bg-cddt.js +7 -8
  77. package/server/modules/lists/bg-cdkh.js +11 -10
  78. package/server/modules/lists/bg-cdnphep.js +6 -7
  79. package/server/modules/lists/bg-cdtk.js +9 -9
  80. package/server/modules/lists/bg-cdvt.js +8 -9
  81. package/server/modules/lists/bg-cdvtnpp.js +7 -8
  82. package/server/modules/lists/ls-account.js +4 -4
  83. package/server/modules/lists/ls-afflink.js +2 -2
  84. package/server/modules/lists/ls-bds_area.js +4 -3
  85. package/server/modules/lists/ls-bds_block.js +1 -1
  86. package/server/modules/lists/ls-bds_building.js +2 -2
  87. package/server/modules/lists/ls-bds_floor.js +2 -2
  88. package/server/modules/lists/ls-bds_floordetail.js +18 -18
  89. package/server/modules/lists/ls-bds_nhadat.js +16 -7
  90. package/server/modules/lists/ls-bds_nhomnhadat.js +1 -0
  91. package/server/modules/lists/ls-bds_phanloainhadat.js +1 -0
  92. package/server/modules/lists/ls-currency.js +1 -1
  93. package/server/modules/lists/ls-dknphep.js +1 -1
  94. package/server/modules/lists/ls-dmban.js +3 -3
  95. package/server/modules/lists/ls-dmca.js +1 -1
  96. package/server/modules/lists/ls-dmchucvu.js +2 -1
  97. package/server/modules/lists/ls-dmcpmh.js +1 -1
  98. package/server/modules/lists/ls-dmdvt.js +1 -1
  99. package/server/modules/lists/ls-dmhoahonghd.js +2 -1
  100. package/server/modules/lists/ls-dmhoahongnpp.js +2 -1
  101. package/server/modules/lists/ls-dmkhuyenmai.js +4 -4
  102. package/server/modules/lists/ls-dmkhuyenmaihd.js +2 -2
  103. package/server/modules/lists/ls-dmletet.js +1 -1
  104. package/server/modules/lists/ls-dmloaicong.js +1 -1
  105. package/server/modules/lists/ls-dmloaits.js +1 -1
  106. package/server/modules/lists/ls-dmnckkm.js +5 -5
  107. package/server/modules/lists/ls-dmnghiepvu.js +1 -1
  108. package/server/modules/lists/ls-dmnguonvon.js +1 -1
  109. package/server/modules/lists/ls-dmnhnv.js +5 -5
  110. package/server/modules/lists/ls-dmnhtask.js +5 -5
  111. package/server/modules/lists/ls-dmnkh.js +5 -5
  112. package/server/modules/lists/ls-dmntt.js +5 -5
  113. package/server/modules/lists/ls-dmnvt.js +4 -4
  114. package/server/modules/lists/ls-dmqddvt.js +2 -2
  115. package/server/modules/lists/ls-dmtanggiamts.js +1 -1
  116. package/server/modules/lists/ls-dmvt.js +20 -19
  117. package/server/modules/lists/ls-dvcs.js +1 -1
  118. package/server/modules/lists/ls-fbpage.js +1 -1
  119. package/server/modules/lists/ls-hlink.js +1 -1
  120. package/server/modules/lists/ls-hlinkvalue.js +1 -1
  121. package/server/modules/lists/ls-hmcn.js +2 -2
  122. package/server/modules/lists/ls-kbm-bcdkt.js +1 -1
  123. package/server/modules/lists/ls-kbm-bcqt.js +4 -4
  124. package/server/modules/lists/ls-kbm-kqhdkd.js +1 -1
  125. package/server/modules/lists/ls-kbm-lcttgt.js +1 -1
  126. package/server/modules/lists/ls-kbm-lctttt.js +1 -1
  127. package/server/modules/lists/ls-kbm-pttct.js +2 -2
  128. package/server/modules/lists/ls-kbm-tkgtgt.js +2 -1
  129. package/server/modules/lists/ls-kbm-tmbctc.js +2 -2
  130. package/server/modules/lists/ls-label.js +1 -1
  131. package/server/modules/lists/ls-like-module.js +2 -2
  132. package/server/modules/lists/ls-newsfeed.js +3 -3
  133. package/server/modules/lists/ls-participant.js +3 -3
  134. package/server/modules/lists/ls-ptthanhtoan.js +2 -2
  135. package/server/modules/lists/ls-rpt.js +4 -4
  136. package/server/modules/lists/ls-rptform.js +4 -4
  137. package/server/modules/lists/ls-tc.js +1 -1
  138. package/server/modules/lists/ls-templaterpt.js +4 -3
  139. package/server/modules/lists/ls-templatevoucher.js +1 -1
  140. package/server/modules/lists/ls-vat.js +1 -1
  141. package/server/modules/lists/ls-vatra.js +5 -0
  142. package/server/modules/lists/ls-vatvao.js +5 -0
  143. package/server/modules/reports/calc-tinhgiatb.js +6 -6
  144. package/server/modules/reports/calc-tinhgiathanh.js +6 -7
  145. package/server/modules/reports/calc-tinhkhauhaots.js +3 -4
  146. package/server/modules/reports/calc-tinhluong.js +17 -17
  147. package/server/modules/reports/rp-congnophaithutheotuoino.js +2 -2
  148. package/server/modules/reports/rp-congnophaitratheotuoino.js +2 -2
  149. package/server/modules/reports/rp-congnosapthu.js +4 -0
  150. package/server/modules/reports/rp-congnosaptra.js +4 -0
  151. package/server/modules/reports/rp-congviectheotimeline.js +2 -1
  152. package/server/modules/reports/rp-dtbanletheoct.js +15 -15
  153. package/server/modules/reports/rp-dtbanletheokh.js +5 -5
  154. package/server/modules/reports/rp-dtbanletheokho.js +1 -1
  155. package/server/modules/reports/rp-dtbanletheonv.js +3 -3
  156. package/server/modules/reports/rp-kcsns.js +16 -16
  157. package/server/modules/reports/rp-tongquancongty.js +3 -0
  158. package/server/modules/systems/sys-ecomproductlines.js +1 -0
  159. package/server/modules/vouchers/vo-dh2.js +25 -24
  160. package/server/modules/vouchers/vo-hd1.js +18 -18
  161. package/server/modules/vouchers/vo-hd2.js +12 -6
  162. package/server/modules/vouchers/vo-hd3.js +37 -33
  163. package/server/modules/vouchers/vo-hd4.js +15 -0
  164. package/server/modules/vouchers/vo-pn3.js +5 -4
  165. package/server/modules/vouchers/vo-pn5.js +18 -13
  166. package/server/route.js +6 -4
@@ -0,0 +1,304 @@
1
+ 'use strict';const types=[{code:"String",ten:"String"},{code:"Number",ten:"Number"},{code:"Boolean",ten:"Boolean"},{code:"Date",ten:"Date"},{code:"DateTime",ten:"DateTime",type_data:"Date"},{code:"Time",ten:"Time",type_data:"Date"},{code:"Array",ten:"Array"},{code:"Mixed",ten:"Mixed",type_data:"Json"},{code:"File",ten:"Excel",type_data:"String"},{code:"Pdf",ten:"PDF",type_data:"String"},{code:"Image",ten:"Image",type_data:"String"}],form=function($fields$$,$id_app$$){let $server_url$$=configs.api_url||
2
+ configs.domain;return`<table style='margin-top:10px'>
3
+ <tr>
4
+ <th>T\u00ean tr\u01b0\u1eddng</th>
5
+ <th>Ki\u1ec3u d\u1eef li\u1ec7u</th>
6
+ <th>B\u1eaft bu\u1ed9c nh\u1eadp</th>
7
+ <th>S\u1ed1 k\u00fd t\u1ef1 t\u1ed1i \u0111a</th>
8
+ <th>Di\u1ec5n gi\u1ea3i</th>
9
+ <th>Ch\u1ecdn t\u1eeb danh s\u00e1ch</th>
10
+ <th>C\u00e1c tr\u01b0\u1eddng chi ti\u1ebft</th>
11
+ </tr>
12
+ ${$fields$$.filter($f$$=>"true"!=$f$$.not_input&&1!=$f$$.not_input&&0>($f$$.grid_configs||"").indexOf("readOnly")&&"Button"!=$f$$.type&&"Link"!=$f$$.type&&types.find($t$$=>$t$$.code==$f$$.type)).map($field$$=>{let $type$$=types.find($t$$=>$t$$.code==$field$$.type),$ref_model$$=$field$$.ref_model||"";$ref_model$$&&0>$ref_model$$.indexOf("[")&&0>$ref_model$$.indexOf(",")&&($detail_url_model$$=`${$server_url$$}/api-docs-input/${$ref_model$$}`,$id_app$$&&($detail_url_model$$=$detail_url_model$$+
13
+ "?id_app="+$id_app$$),$ref_model$$=`<a href='${$detail_url_model$$}'>${$ref_model$$}</a>`);var $detail_url_model$$=$field$$.form||"";"0"==$detail_url_model$$&&($detail_url_model$$="");if($detail_url_model$$){let $url_fields$$=`${$server_url$$}/api-docs-fields/${$detail_url_model$$}`;$id_app$$&&($url_fields$$=$url_fields$$+"?id_app="+$id_app$$);$detail_url_model$$=`<a href='${$url_fields$$}'>${$detail_url_model$$}</a>`}return`<tr>
14
+ <td>${$field$$.name}</td>
15
+ <td>${$type$$.type_data||$type$$.code}</td>
16
+ <td>${1==$field$$.required||"true"==$field$$.required?"Yes":"No"}</td>
17
+ <td>${"String"==$field$$.type?$field$$.maxlength||4E3:""}</td>
18
+ <td>
19
+ ${$field$$.api_description||$field$$.header}
20
+ <div><i>${$field$$.help_text||""}</i></div>
21
+ </td>
22
+ <td>${$ref_model$$}</td>
23
+ <td>${$detail_url_model$$}</td>
24
+ </tr>
25
+ `}).join("")}
26
+ </table>`},apiFields=async function($code$$,$id_app$$){return($code$$=await global.getModel("listinfo").findOne({code:$code$$}).lean())?`<!DOCTYPE html>
27
+ <html>
28
+ <head>
29
+ <style>
30
+ table, td, th {
31
+ border: 1px solid;
32
+ }
33
+ td, th {
34
+ padding: 10px;
35
+ }
36
+ table {
37
+ width: 100%;
38
+ border-collapse: collapse;
39
+ }
40
+ </style>
41
+ </head>
42
+ <body style='padding:20px'>
43
+ <h2>C\u00e1c field c\u1ee7a: ${$code$$.title}</h2>
44
+ ${form($code$$.fields,$id_app$$)}
45
+ </body>
46
+ </html>
47
+ `:"Kh\u00f4ng c\u00f3 t\u00e0i li\u1ec7u cho api n\u00e0y"},apiDocs=async function($code$$,$id_app$$){let $server_url$$=configs.api_url||configs.domain,$listinfo$$=await global.getModel("listinfo").findOne({code:$code$$}).lean();$listinfo$$||($listinfo$$=await global.getModel("listinfo").findOne({api_code:$code$$}).lean());if(!$listinfo$$)return"Kh\u00f4ng c\u00f3 t\u00e0i li\u1ec7u cho api n\u00e0y";$code$$=global.controllers[($listinfo$$.api_code||$listinfo$$.code).toUpperCase()];if(!$code$$)return"Kh\u00f4ng c\u00f3 t\u00e0i li\u1ec7u cho api n\u00e0y";
48
+ $code$$=$code$$.route_name;$id_app$$&&($code$$=$code$$.replace(":id_app",$id_app$$));let $doc$$=`
49
+ <h3>Truy xu\u1ea5t d\u1eef li\u1ec7u</h3>
50
+ <ul>
51
+ <li>
52
+ Url: <span style='font-weight:450;background-color:#ddd;padding:5px;border-radius:3px;border:1px solid silver;'>${$server_url$$||""}/api/search${$code$$}</span>
53
+ <ul style='margin-top:5px'>
54
+ ${0<=$code$$.indexOf("id_app")?"<li>id_app: id c\u1ee7a c\u00f4ng ty \u0111ang thao t\u00e1c</li>":""}
55
+ </ul>
56
+
57
+ </li>
58
+ <li>
59
+ Method: <span style='font-weight:450'>POST</span>
60
+ </li>
61
+ <li>
62
+ Headers:
63
+ <ul>
64
+ <li>access-token: <a href=${`${$server_url$$}/api-docs-auth`}>Token</a> \u0111\u1ec3 truy c\u1eadp h\u1ec7 th\u1ed1ng.</li>
65
+ <li>Content-Type: application/json</li>
66
+ </ul>
67
+ </li>
68
+ <li>
69
+ Body (row json):
70
+ <ul>
71
+ <li>
72
+ page: <b>Number</b>. trang c\u1ea7n truy xu\u1ea5t. m\u1eb7c \u0111\u1ecbnh l\u00e0 trang 1
73
+ </li>
74
+ <li>
75
+ limit: <b>Number</b>. S\u1ed1 d\u00f2ng m\u1ed9t trang. M\u1eb7c \u0111\u1ecbnh 20 d\u00f2ng
76
+ </li>
77
+ <li>
78
+ fields: <b>String</b>. C\u00e1c tr\u01b0\u1eddng c\u1ea7n l\u1ea5y d\u1eef li\u1ec7u, m\u1ed7i tr\u01b0\u1eddng c\u00e1ch nhau b\u1eb1ng d\u1ea5u ph\u1ea9y. M\u1eb7c \u0111\u1ecbnh s\u1ebd l\u1ea5y t\u1ea5t c\u1ea3 c\u00e1c tr\u01b0\u1eddng
79
+ </li>
80
+ <li>
81
+ count: <b>Number</b>. Ch\u1ec9 nh\u1eadn gi\u00e1 tr\u1ecb 1 ho\u1eb7c 0. N\u1ebfu count=1 th\u00ec s\u1ebd \u0111\u1ebfm c\u00e1c k\u1ebft qu\u1ea3 t\u00ecm \u0111\u01b0\u1ee3c. M\u1eb7c \u0111\u1ecbnh count=0
82
+ </li>
83
+ <li>
84
+ <div>
85
+ <div>
86
+ q: <b>Json</b>. \u0110i\u1ec1u ki\u1ec7n truy xu\u1ea5t d\u1eef li\u1ec7u. s\u1eed d\u1ee5ng mongodb query. Danh s\u00e1ch c\u00e1c tr\u01b0\u1eddng d\u1eef li\u1ec7u c\u00f3 th\u1ec3 query
87
+ </div>
88
+ <table style='margin-top:10px'>
89
+ <tr>
90
+ <th>T\u00ean tr\u01b0\u1eddng</th>
91
+ <th>Ki\u1ec3u d\u1eef li\u1ec7u</th>
92
+ <th>Di\u1ec5n gi\u1ea3i</th>
93
+ </tr>
94
+ ${$listinfo$$.fields.filter($f$$=>"true"!=$f$$.not_input&&1!=$f$$.not_input&&0>($f$$.grid_configs||"").indexOf("readOnly")&&"Button"!=$f$$.type&&"Link"!=$f$$.type&&types.find($t$$=>$t$$.code==$f$$.type)).map($field$$=>{let $type$$=types.find($t$$=>$t$$.code==$field$$.type);return`<tr>
95
+ <td>${$field$$.name}</td>
96
+ <td>${$type$$.type_data||$type$$.code}</td>
97
+ <td>${$field$$.api_description||$field$$.header}</td>
98
+ </tr>
99
+ `}).join("")}
100
+ </table>
101
+ </div>
102
+ </li>
103
+ </ul>
104
+ </li>
105
+ </ul>
106
+ `;$doc$$=`${$doc$$}
107
+ <h3>L\u1ea5y d\u1eef li\u1ec7u c\u1ee7a m\u1ed9t \u0111\u1ed1i t\u01b0\u1ee3ng</h3>
108
+ <ul>
109
+ <li>
110
+ Url: <span style='font-weight:450;background-color:#ddd;padding:5px;border-radius:3px;border:1px solid silver;'>${$server_url$$||""}/api${$code$$}/:_id</span>
111
+ <ul style='margin-top:5px'>
112
+ ${0<=$code$$.indexOf("id_app")?"<li>id_app: id c\u1ee7a c\u00f4ng ty \u0111ang thao t\u00e1c</li>":""}
113
+ <li>_id: id c\u1ee7a ph\u1ea7n t\u1eed c\u1ea7n l\u1ea5y d\u1eef li\u1ec7u</li>
114
+ </ul>
115
+ </li>
116
+ <li>
117
+ Method: <span style='font-weight:450'>GET</span>
118
+ </li>
119
+ <li>
120
+ Headers:
121
+ <ul>
122
+ <li>access-token: <a href=${`${$server_url$$}/api-docs-auth`}>Token</a> \u0111\u1ec3 truy c\u1eadp h\u1ec7 th\u1ed1ng.</li>
123
+
124
+ </ul>
125
+ </li>
126
+ </ul>
127
+ `;1!=$listinfo$$.not_add&&$listinfo$$.fields&&0<$listinfo$$.fields.length&&($doc$$=`${$doc$$}
128
+ <h3>Th\u00eam m\u1edbi</h3>
129
+ <ul>
130
+ <li>
131
+ Url: <span style='font-weight:450;background-color:#ddd;padding:5px;border-radius:3px;border:1px solid silver;'>${$server_url$$||""}/api${$code$$}</span>
132
+ <ul style='margin-top:5px'>
133
+ ${0<=$code$$.indexOf("id_app")?"<li>id_app: id c\u1ee7a c\u00f4ng ty \u0111ang thao t\u00e1c</li>":""}
134
+ </ul>
135
+ </li>
136
+ <li>
137
+ Method: <span style='font-weight:450'>POST</span>
138
+ </li>
139
+ <li>
140
+ Headers:
141
+ <ul>
142
+ <li>access-token: <a href=${`${$server_url$$}/api-docs-auth`}>Token</a> \u0111\u1ec3 truy c\u1eadp h\u1ec7 th\u1ed1ng.</li>
143
+ <li>Content-Type: application/json</li>
144
+ </ul>
145
+ </li>
146
+ <li>
147
+ <div>
148
+ <div>
149
+ Body (row json). Danh s\u00e1ch c\u00e1c tr\u01b0\u1eddng d\u1eef li\u1ec7u
150
+ </div>
151
+ ${form($listinfo$$.fields,$id_app$$)}
152
+ </div>
153
+ </li>
154
+ </ul>
155
+ `);1!=$listinfo$$.not_update&&$listinfo$$.fields&&0<$listinfo$$.fields.length&&($doc$$=`${$doc$$}
156
+ <h3>C\u1eadp nh\u1eadt d\u1eef li\u1ec7u</h3>
157
+ <ul>
158
+ <li>
159
+ Url: <span style='font-weight:450;background-color:#ddd;padding:5px;border-radius:3px;border:1px solid silver;'>${$server_url$$||""}/api${$code$$}/:_id</span>
160
+ <ul style='margin-top:5px'>
161
+ ${0<=$code$$.indexOf("id_app")?"<li>id_app: id c\u1ee7a c\u00f4ng ty \u0111ang thao t\u00e1c</li>":""}
162
+ <li>_id: id c\u1ee7a ph\u1ea7n t\u1eed c\u1ea7n c\u1eadp nh\u1eadt</li>
163
+ </ul>
164
+ </li>
165
+ <li>
166
+ Method: <span style='font-weight:450'>PUT</span>
167
+ </li>
168
+ <li>
169
+ Headers:
170
+ <ul>
171
+ <li>access-token: <a href=${`${$server_url$$}/api-docs-auth`}>Token</a> \u0111\u1ec3 truy c\u1eadp h\u1ec7 th\u1ed1ng.</li>
172
+ <li>Content-Type: application/json</li>
173
+ </ul>
174
+
175
+ </li>
176
+ <li>
177
+ <div>
178
+ <div>Body (row json). C\u00f3 th\u1ec3 c\u1eadp nh\u1eadt 1 ho\u1eb7c t\u1ea5t c\u1ea3 c\u00e1c tr\u01b0\u1eddng d\u1eef li\u1ec7u. Danh s\u00e1ch c\u00e1c tr\u01b0\u1eddng d\u1eef li\u1ec7u</div>
179
+ ${form($listinfo$$.fields,$id_app$$)}
180
+ </div>
181
+ </li>
182
+ </ul>
183
+ `);1!=$listinfo$$.not_delete&&$listinfo$$.fields&&0<$listinfo$$.fields.length&&($doc$$=`${$doc$$}
184
+ <h3>Xo\u00e1 d\u1eef li\u1ec7u</h3>
185
+ <ul>
186
+ <li>
187
+ Url: <span style='font-weight:450;background-color:#ddd;padding:5px;border-radius:3px;border:1px solid silver;'>${$server_url$$||""}/api${$code$$}/:_id</span>
188
+ <ul style='margin-top:5px'>
189
+ ${0<=$code$$.indexOf("id_app")?"<li>id_app: id c\u1ee7a c\u00f4ng ty \u0111ang thao t\u00e1c</li>":""}
190
+ <li>_id: id c\u1ee7a ph\u1ea7n t\u1eed c\u1ea7n xo\u00e1</li>
191
+ </ul>
192
+ </li>
193
+ <li>
194
+ Method: <span style='font-weight:450'>DELETE</span>
195
+ </li>
196
+ <li>
197
+ Headers:
198
+ <ul>
199
+ <li>access-token: <a href=${`${$server_url$$}/api-docs-auth`}>Token</a> \u0111\u1ec3 truy c\u1eadp h\u1ec7 th\u1ed1ng.</li>
200
+ </ul>
201
+ </li>
202
+ </ul>
203
+ `);return`<!DOCTYPE html>
204
+ <html>
205
+ <head>
206
+ <style>
207
+ table, td, th {
208
+ border: 1px solid;
209
+ }
210
+ td, th {
211
+ padding: 10px;
212
+ }
213
+ table {
214
+ width: 100%;
215
+ border-collapse: collapse;
216
+ }
217
+ </style>
218
+ </head>
219
+ <body style='padding:20px'>
220
+ <h2>API: ${$listinfo$$.title}</h2>
221
+ ${$doc$$}
222
+ </body>
223
+ </html>
224
+ `},apiReport=async function($code$$,$doc$jscomp$1_id_app$$){let $server_url$$=configs.api_url||configs.domain;$code$$=await global.getModel("reportinfo").findOne({code:$code$$}).lean();if(!$code$$)return"Kh\u00f4ng c\u00f3 t\u00e0i li\u1ec7u cho api n\u00e0y";let $listinfo$$;$code$$.form_condition_info&&($listinfo$$=await global.getModel("listinfo").findOne({code:$code$$.form_condition_info}).lean());$listinfo$$=$listinfo$$||{};var $controller$jscomp$1_route_name$$=global.report_controllers[($code$$.api_code||
225
+ $code$$.code).toUpperCase()];if(!$controller$jscomp$1_route_name$$)return"Kh\u00f4ng c\u00f3 t\u00e0i li\u1ec7u cho api n\u00e0y";$controller$jscomp$1_route_name$$=`${$controller$jscomp$1_route_name$$.base_path+$controller$jscomp$1_route_name$$.module}`.replace(":id_app",$doc$jscomp$1_id_app$$);$doc$jscomp$1_id_app$$&&($controller$jscomp$1_route_name$$=$controller$jscomp$1_route_name$$.replace(":id_app",$doc$jscomp$1_id_app$$));$doc$jscomp$1_id_app$$=`
226
+ <ul>
227
+ <li>
228
+ Url: <span style='font-weight:450;background-color:#ddd;padding:5px;border-radius:3px;border:1px solid silver;'>${$server_url$$||""}/api${$controller$jscomp$1_route_name$$}</span>
229
+ <ul style='margin-top:5px'>
230
+ ${0<=$controller$jscomp$1_route_name$$.indexOf("id_app")?"<li>id_app: id c\u1ee7a c\u00f4ng ty \u0111ang thao t\u00e1c</li>":""}
231
+ </ul>
232
+ </li>
233
+ <li>
234
+ Method: <span style='font-weight:450'>POST</span>
235
+ </li>
236
+ <li>
237
+ Headers:
238
+ <ul>
239
+ <li>access-token: <a href=${`${$server_url$$}/api-docs-auth`}>Token</a> \u0111\u1ec3 truy c\u1eadp h\u1ec7 th\u1ed1ng.</li>
240
+ <li>Content-Type: application/json</li>
241
+ </ul>
242
+ </li>
243
+ <li>
244
+ Body (row json). \u0110i\u1ec1u ki\u1ec7n l\u1ecdc:
245
+ ${form($listinfo$$.fields||[],$doc$jscomp$1_id_app$$)}
246
+ </li>
247
+ </ul>
248
+ `;return`<!DOCTYPE html>
249
+ <html>
250
+ <head>
251
+ <style>
252
+ table, td, th {
253
+ border: 1px solid;
254
+ }
255
+ td, th {
256
+ padding: 10px;
257
+ }
258
+ table {
259
+ width: 100%;
260
+ border-collapse: collapse;
261
+ }
262
+ </style>
263
+ </head>
264
+ <body style='padding:20px'>
265
+ <h2>API: ${$code$$.title}</h2>
266
+ ${$doc$jscomp$1_id_app$$}
267
+ </body>
268
+ </html>
269
+ `},apiAuth=function(){return`<!DOCTYPE html>
270
+ <html>
271
+ <head>
272
+ <style>
273
+ table, td, th {
274
+ border: 1px solid;
275
+ }
276
+ td, th {
277
+ padding: 10px;
278
+ }
279
+ table {
280
+ width: 100%;
281
+ border-collapse: collapse;
282
+ }
283
+ </style>
284
+ </head>
285
+ <body style='padding:20px'>
286
+ <h2>H\u1ec7 th\u1ed1ng</h2>
287
+ <h3>\u0110\u0103ng nh\u1eadp</h3>
288
+ <ul>
289
+ <li>
290
+ Url: <span style='font-weight:450;background-color:#ddd;padding:5px;border-radius:3px;border:1px solid silver;'>${configs.api_url||configs.domain||""}/auth/local</span>
291
+ </li>
292
+ <li>
293
+ Method: <span style='font-weight:450'>GET</span>
294
+ </li>
295
+ <li>
296
+ Headers:
297
+ <ul>
298
+ <li>Authorization: <span style='font-size:18px;color:gray;margin-left:10px'>Basic Auth</span></li>
299
+ </ul>
300
+ </li>
301
+ </ul>
302
+ </body>
303
+ </html>
304
+ `};module.exports={apiDocs,apiFields,apiReport,apiAuth};
@@ -11,5 +11,5 @@ $details$$=$details$$.map($_r_detail$$=>{delete $_r_detail$$._id;$_r_detail$$.nx
11
11
  $r$$.ma_dt);$detail$$.ma_bp||($detail$$.ma_bp=$r$$.ma_bp);$detail$$.tien_hang_nt=0-$detail$$.tien_hang_nt||0;$detail$$.tien_hang=0-($detail$$.tien_hang||0);$detail$$.tien_hang_ct_nt=0-$detail$$.tien_hang_ct_nt||0;$detail$$.tien_hang_ct=0-($detail$$.tien_hang_ct||0);$detail$$.tien_ck=0-($detail$$.tien_ck||0);$detail$$.tien_ck_nt=0-($detail$$.tien_ck_nt||0);$detail$$.tien_thue=0-($detail$$.tien_thue||0);$detail$$.tien_thue_nt=0-($detail$$.tien_thue_nt||0);$detail$$.tien_xuat_tmp=0-($detail$$.tien_nhap_nt||
12
12
  0);$detail$$.tien_xuat_nt=0-($detail$$.tien_nhap_nt||0);$detail$$.sl_xuat=0;$detail$$.tien_hoa_hong=0-$detail$$.tien_hoa_hong;$detail$$.tien_hoa_hong_gt=0-$detail$$.tien_hoa_hong_gt;$detail$$.tien_hoa_hong_ctv=0-$detail$$.tien_hoa_hong_ctv;$detail$$.tien_hoa_hong_ql=0-$detail$$.tien_hoa_hong_ql;$detail$$.nxt=1;return $detail$$})],delete $r$$.details_tl);$callback$$(null,$details$$)},async function($error$$,$report$$){if($error$$)return $reject$$($error$$);$report$$=$report$$.reduce(($a$$,$b$$)=>$a$$.concat($b$$),
13
13
  []);$ma_vts$$&&($report$$=$report$$.filter($r$$=>0<=$ma_vts$$.indexOf($r$$.ma_vt)));$condition$$.id_cs&&($report$$=$report$$.filter($r$$=>$r$$.id_cs===$condition$$.id_cs));$condition$$.id_cs_ck&&($report$$=$report$$.filter($r$$=>$r$$.id_cs_ck===$condition$$.id_cs_ck));await $report$$.asyncJoinModel2($condition$$.id_app,"dmqddvt",{where:{ma_dvt:"ma_dvt",ma_vt:"ma_vt"},fields:["tu","mau","ma_dvt_goc"]});$report$$.forEach(function($r$$,$he_so_qd_i$$){$r$$.stt=$he_so_qd_i$$+1;$r$$.id_ct=$r$$._id.toString();
14
- $r$$.bold=!1;$r$$.tt=$r$$.tien=($r$$.tien_hang_ct||0)-($r$$.tien_ck||0)+($r$$.tien_thue||0);$r$$.loi_nhuan_tmp=$r$$.tien_xuat_tmp?$r$$.tt-$r$$.tien_xuat_tmp-($r$$.tien_thue||0):0;$r$$.loi_nhuan=$r$$.tt-($r$$.tien_xuat||0)-($r$$.tien_thue||0);$r$$.t_hoa_hong=$r$$.tien_hoa_hong+$r$$.tien_hoa_hong_gt+$r$$.tien_hoa_hong_ctv+$r$$.tien_hoa_hong_ql;$r$$.mau?($he_so_qd_i$$=$r$$.tu/$r$$.mau,$r$$.sl_xuat_qd=$he_so_qd_i$$*($r$$.sl_xuat||0),$r$$.sl_nhap_qd=$he_so_qd_i$$*($r$$.sl_nhap||0)):($r$$.sl_xuat_qd=$r$$.sl_xuat||
15
- 0,$r$$.sl_nhap_qd=$r$$.sl_nhap||0)});$resolve$$($report$$)})})})};
14
+ $r$$.bold=!1;$r$$.tt=$r$$.tien=($r$$.tien_hang_ct||0)-($r$$.tien_ck||0)+($r$$.tien_thue||0);$r$$.loi_nhuan_tmp=$r$$.tien_xuat_tmp?$r$$.tt-$r$$.tien_xuat_tmp-($r$$.tien_thue||0)-($r$$.tien_cp||0):0;$r$$.loi_nhuan=$r$$.tt-($r$$.tien_xuat||0)-($r$$.tien_thue||0)-($r$$.tien_cp||0);$r$$.t_hoa_hong=$r$$.tien_hoa_hong+$r$$.tien_hoa_hong_gt+$r$$.tien_hoa_hong_ctv+$r$$.tien_hoa_hong_ql;$r$$.mau?($he_so_qd_i$$=$r$$.tu/$r$$.mau,$r$$.sl_xuat_qd=$he_so_qd_i$$*($r$$.sl_xuat||0),$r$$.sl_nhap_qd=$he_so_qd_i$$*($r$$.sl_nhap||
15
+ 0)):($r$$.sl_xuat_qd=$r$$.sl_xuat||0,$r$$.sl_nhap_qd=$r$$.sl_nhap||0)});$resolve$$($report$$)})})})};
@@ -9,56 +9,60 @@ stt_uu_tien:$g$$.stt_uu_tien};break;case "CONG":$ck_ck$jscomp$1_ck$$=$g$$.cks.ma
9
9
  if(1==$groups$$.length)$id_app$jscomp$1_rs$$=$groups$$[0].ck.promotions;else if($groups$$.find($g$$=>$g$$.nh_me)){$groups$$=$groups$$.map($g$$=>{$g$$.nh_me&&($g$$.ma_nhom=$g$$.nh_me,$g$$.nh_me="",$g$$.phuong_phap_ap_dung="");return $g$$});const $new_groups$$=[...(new Set($groups$$.map($d$$=>$d$$.ma_nhom||"")))].map($ma_nhom$$=>{const $cks$$=$groups$$.filter($d$$=>($d$$.ma_nhom||"")==$ma_nhom$$).map($g$$=>$g$$.ck);return{ma_nhom:$ma_nhom$$,cks:$cks$$}});$id_app$jscomp$1_rs$$=await calcDefaultPromotion($id_app$jscomp$1_rs$$,
10
10
  $new_groups$$)}else $id_app$jscomp$1_rs$$=$groups$$.sort(($a$$,$b$$)=>($a$$.stt_uu_tien||0)-($b$$.stt_uu_tien||0))[0].ck.promotions;return $id_app$jscomp$1_rs$$};
11
11
  module.exports=async($condition$$,$fn$$,$par$$={})=>{!$condition$$.ma_vt&&$condition$$.vt&&($condition$$.ma_vt=$condition$$.vt.ma_vt);$condition$$.so_luong=$condition$$.so_luong||$condition$$.sl_xuat||1;$condition$$.t_so_luong=$condition$$.t_so_luong||$condition$$.t_sl_xuat||$condition$$.t_sl||$condition$$.so_luong;$condition$$.t_so_luong_ntt=$condition$$.t_so_luong_ntt||$condition$$.t_sl_xuat_ntt||$condition$$.t_sl_ntt||$condition$$.so_luong_ntt||0;$condition$$.t_tien_ntt=$condition$$.t_tien_ntt||
12
- 0;!$condition$$.ma_vt&&$condition$$.vt&&$condition$$.vt._id&&($condition$$.vt=await dmvt.findOne({_id:$condition$$.vt._id},{ma_vt:1,ma_nvt:1,ma_nvt2:1,ma_nvt3:1,ma_nvt4:1,ma_danh_muc:1,gia_ban_le0:1,gia_ban_buon0:1,gia_ban_le:1,gia_ban_buon:1,ty_le_ck0:1,tien_ck0:1,ma_nt:1,gia_ban_chua_thue:1,ma_thue:1,ma_nt0:1}).lean(),$condition$$.vt&&($condition$$.vt.is_full=!0,$condition$$.ma_vt=$condition$$.vt.ma_vt));if($condition$$&&$condition$$.ma_vt&&$condition$$.id_app){var $vt$$=$condition$$.vt;if(!$vt$$||
13
- !$vt$$.is_full&&(void 0===$vt$$.gia_ban_le||void 0===$vt$$.gia_ban_le0||void 0===$vt$$.ty_le_ck0||void 0===$vt$$.tien_ck0||void 0===$vt$$.ma_nt0||void 0===$vt$$.ma_thue))if($vt$$=await dmvt.findOne({ma_vt:$condition$$.ma_vt,id_app:$condition$$.id_app},{ma_vt:1,ma_nvt:1,ma_nvt2:1,ma_nvt3:1,ma_nvt4:1,ma_danh_muc:1,gia_ban_le0:1,gia_ban_buon0:1,gia_ban_le:1,gia_ban_buon:1,ty_le_ck0:1,tien_ck0:1,ma_nt:1,gia_ban_chua_thue:1,ma_thue:1,ma_nt0:1}).lean(),!$vt$$)return $fn$$("Not found product: "+$condition$$.ma_vt);
14
- $vt$$.ma_nvt2||($vt$$.ma_nvt2=[]);"string"==typeof $vt$$.ma_nvt2&&($vt$$.ma_nvt2=[$vt$$.ma_nvt2]);$vt$$.ma_nvt3||($vt$$.ma_nvt3=[]);"string"==typeof $vt$$.ma_nvt3&&($vt$$.ma_nvt3=[$vt$$.ma_nvt3]);$vt$$.ma_nvt4||($vt$$.ma_nvt4=[]);"string"==typeof $vt$$.ma_nvt4&&($vt$$.ma_nvt4=[$vt$$.ma_nvt4]);if($condition$$.ma_tt1){var $hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$={id_app:$vt$$.id_app_vt||$condition$$.id_app,ma_vt:$vt$$.ma_vt,status:!0};$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.ma_tt=$condition$$.ma_tt1;
15
- $hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.loai_tt="1";if($hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$=await global.getModel("dmtt").findOne($hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$).lean())$vt$$.gia_ban_le0=$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.gia_ban_le||$vt$$.gia_ban_le0||$vt$$.gia_ban_le||0,$vt$$.gia_ban_buon0=$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.gia_ban_buon||$vt$$.gia_ban_buon0||$vt$$.gia_ban_buon||0}else if($condition$$.ma_tt2){var $query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$=
16
- {id_app:$vt$$.id_app_vt||$condition$$.id_app,ma_vt:$vt$$.ma_vt,status:!0};$query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.ma_tt=$condition$$.ma_tt2;$query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.loai_tt="2";if($query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$=await global.getModel("dmtt").findOne($query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$).lean())$vt$$.gia_ban_le0=$query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.gia_ban_le||$vt$$.gia_ban_le0||$vt$$.gia_ban_le||0,$vt$$.gia_ban_buon0=$query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.gia_ban_buon||
17
- $vt$$.gia_ban_buon0||$vt$$.gia_ban_buon||0}else $condition$$.ma_tt3&&($query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$={id_app:$vt$$.id_app_vt||$condition$$.id_app,ma_vt:$vt$$.ma_vt,status:!0},$query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.ma_tt=$condition$$.ma_tt3,$query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.loai_tt="3",$query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$=await global.getModel("dmtt").findOne($query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$).lean())&&($vt$$.gia_ban_le0=$query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.gia_ban_le||
18
- $vt$$.gia_ban_le0||$vt$$.gia_ban_le||0,$vt$$.gia_ban_buon0=$query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.gia_ban_buon||$vt$$.gia_ban_buon0||$vt$$.gia_ban_buon||0);$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$&&($condition$$.nh_tt_me=$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt?await global.getModel("group").getAllMotherGroup($condition$$.id_app,$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt):[],$condition$$.nh_tt2_me=$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt2?await global.getModel("group").getAllMotherGroup($condition$$.id_app,
19
- $hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt2):[],$condition$$.nh_tt3_me=$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt3?await global.getModel("group").getAllMotherGroup($condition$$.id_app,$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt3):[],$condition$$.nh_tt4_me=$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt4?await global.getModel("group").getAllMotherGroup($condition$$.id_app,$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt4):[],$condition$$.nh_tt5_me=$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt5?
20
- await global.getModel("group").getAllMotherGroup($condition$$.id_app,$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt5):[]);var $_cust_den_ngay_hieu_luc_tu$$;if($condition$$.user&&!$condition$$.ma_kh)try{if($_cust_den_ngay_hieu_luc_tu$$=await customer.findOne({id_app:$condition$$.id_app,of_user:$condition$$.user.email},{ma_kh:1,nh_kh:1,nh_kh2:1,nh_kh3:1,nh_kh4:1,nh_kh5:1}).lean())$condition$$.ma_kh=$_cust_den_ngay_hieu_luc_tu$$.ma_kh,$condition$$.nh_kh=$_cust_den_ngay_hieu_luc_tu$$.nh_kh,$condition$$.nh_kh2=
21
- $_cust_den_ngay_hieu_luc_tu$$.nh_kh2,$condition$$.nh_kh3=$_cust_den_ngay_hieu_luc_tu$$.nh_kh3,$condition$$.nh_kh4=$_cust_den_ngay_hieu_luc_tu$$.nh_kh4,$condition$$.nh_kh5=$_cust_den_ngay_hieu_luc_tu$$.nh_kh5}catch($e$$){console.log("Error find customer code of user",$e$$)}if($condition$$.ma_kh){var $lan_mua_thu$$=await so1.countDocuments({id_app:$condition$$.id_app,ma_kh:$condition$$.ma_kh,trang_thai:{$in:["4","5"]}});($lan_mua_thu$$+=await pbl.countDocuments({id_app:$condition$$.id_app,ma_kh:$condition$$.ma_kh,
22
- trang_thai:{$in:["5","6"]}}))||($lan_mua_thu$$=0);$lan_mua_thu$$+=1;!$_cust_den_ngay_hieu_luc_tu$$&&($_cust_den_ngay_hieu_luc_tu$$=await customer.findOne({id_app:$condition$$.id_app,ma_kh:$condition$$.ma_kh},{nh_kh:1,nh_kh2:1,nh_kh3:1,nh_kh4:1,nh_kh5:1}).lean())&&($condition$$.nh_kh=$_cust_den_ngay_hieu_luc_tu$$.nh_kh,$condition$$.nh_kh2=$_cust_den_ngay_hieu_luc_tu$$.nh_kh2,$condition$$.nh_kh3=$_cust_den_ngay_hieu_luc_tu$$.nh_kh3,$condition$$.nh_kh4=$_cust_den_ngay_hieu_luc_tu$$.nh_kh4,$condition$$.nh_kh5=
23
- $_cust_den_ngay_hieu_luc_tu$$.nh_kh5)}else $lan_mua_thu$$=0;var $query$$={ma_vt:$condition$$.ma_vt,id_app:$condition$$.id_app,status:!0,$and:[]};$query$$.ma_kh={$in:[null,"",$condition$$.ma_kh]};$_cust_den_ngay_hieu_luc_tu$$&&($condition$$.nh_kh_me=$_cust_den_ngay_hieu_luc_tu$$.nh_kh?await global.getModel("group").getAllMotherGroup($condition$$.id_app,$_cust_den_ngay_hieu_luc_tu$$.nh_kh):[],$condition$$.nh_kh2_me=$_cust_den_ngay_hieu_luc_tu$$.nh_kh2?await global.getModel("group").getAllMotherGroup($condition$$.id_app,
24
- $_cust_den_ngay_hieu_luc_tu$$.nh_kh2):[],$condition$$.nh_kh3_me=$_cust_den_ngay_hieu_luc_tu$$.nh_kh3?await global.getModel("group").getAllMotherGroup($condition$$.id_app,$_cust_den_ngay_hieu_luc_tu$$.nh_kh3):[],$condition$$.nh_kh4_me=$_cust_den_ngay_hieu_luc_tu$$.nh_kh4?await global.getModel("group").getAllMotherGroup($condition$$.id_app,$_cust_den_ngay_hieu_luc_tu$$.nh_kh4):[],$condition$$.nh_kh5_me=$_cust_den_ngay_hieu_luc_tu$$.nh_kh5?await global.getModel("group").getAllMotherGroup($condition$$.id_app,
25
- $_cust_den_ngay_hieu_luc_tu$$.nh_kh5):[]);$query$$.nh_kh={$in:[null,"",...($condition$$.nh_kh_me||[])]};$query$$.nh_kh2={$in:[null,"",...($condition$$.nh_kh2_me||[])]};$query$$.nh_kh3={$in:[null,"",...($condition$$.nh_kh3_me||[])]};$query$$.nh_kh4={$in:[null,"",...($condition$$.nh_kh4_me||[])]};$query$$.nh_kh5={$in:[null,"",...($condition$$.nh_kh5_me||[])]};$query$$.ma_kho={$in:[null,"",$condition$$.ma_kho]};$query$$.ma_tt1={$in:[null,"",$condition$$.ma_tt1]};$query$$.ma_tt2={$in:[null,"",$condition$$.ma_tt2]};
26
- $query$$.ma_tt3={$in:[null,"",$condition$$.ma_tt3]};$condition$$.ngay_ct=$condition$$.ngay_ct?new Date($condition$$.ngay_ct):new Date;$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$=$_cust_den_ngay_hieu_luc_tu$$=$condition$$.ngay_ct;$_cust_den_ngay_hieu_luc_tu$$={$lte:$_cust_den_ngay_hieu_luc_tu$$};$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$={$gte:$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$};$query$$.hieu_luc_tu=$_cust_den_ngay_hieu_luc_tu$$;$query$$.hieu_luc_den=$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$;
27
- var $sort$$={stt_uu_tien:1,sl_tu:-1,sl_den:-1,id_cs:-1,tien_ck:-1,ty_le_ck:-1,ma_kho:-1,ma_ban:-1,ma_kh:-1,nh_kh:-1,hieu_luc_tu:-1,ma_tt1:-1,ma_tt2:-1,ma_tt3:-1};async.parallel({giabans:$callback$$=>{if(0==$condition$$.get_price)return $callback$$(null,[]);setImmediate(()=>{let $_query$$=_.cloneDeep($query$$);$_query$$.$and.push({$or:[{ap_dung_lan_mua_tu_thu:{$in:[0,null]}},{ap_dung_lan_mua_tu_thu:{$lte:$lan_mua_thu$$}}]});$_query$$.$and.push({$or:[{ap_dung_lan_mua_den_thu:{$in:[0,null]}},{ap_dung_lan_mua_den_thu:{$gte:$lan_mua_thu$$}}]});
28
- void 0!=$condition$$.online&&($_query$$.online=$condition$$.online);void 0!=$condition$$.offline&&($_query$$.offline=$condition$$.offline);$_query$$.$and&&0==$_query$$.$and.length&&delete $_query$$.$and;dmgiaban.find($_query$$).sort($sort$$).lean().exec(async($_q_e$$,$giabans$$)=>{if($_q_e$$)return $callback$$($_q_e$$);0<$giabans$$.length?$callback$$(null,$giabans$$):($_q_e$$=_.cloneDeep($_query$$),$_q_e$$.ma_vt={$in:["",null]},$_q_e$$.ma_nvt={$in:["",null,$vt$$.ma_nvt]},$_q_e$$.ma_nvt2={$in:["",
29
- null,...$vt$$.ma_nvt2]},$_q_e$$.ma_nvt3={$in:["",null,...$vt$$.ma_nvt3]},$_q_e$$.ma_nvt4={$in:["",null,...$vt$$.ma_nvt4]},$_q_e$$.ma_danh_muc={$in:["",null,$vt$$.ma_danh_muc]},dmgiaban.find($_q_e$$).sort($sort$$).lean().exec(async($e$$,$giabans$$)=>{if($e$$)return $callback$$($e$$);$callback$$(null,$giabans$$)}))})})},discount_vt:$callback$jscomp$0$$=>{if(0==$condition$$.get_discount)return $callback$jscomp$0$$(null,[]);setImmediate(async()=>{let $query_ck$$=_.cloneDeep($query$$);$query_ck$$.$and.push({$or:[{ap_dung_lan_mua_tu_thu:{$in:[0,
30
- null]}},{ap_dung_lan_mua_tu_thu:{$lte:$lan_mua_thu$$}}]});$query_ck$$.$and.push({$or:[{ap_dung_lan_mua_den_thu:{$in:[0,null]}},{ap_dung_lan_mua_den_thu:{$gte:$lan_mua_thu$$}}]});void 0!=$condition$$.online&&($query_ck$$.online=$condition$$.online);void 0!=$condition$$.offline&&($query_ck$$.offline=$condition$$.offline);delete $query_ck$$.ma_kh;delete $query_ck$$.nh_kh;delete $query_ck$$.nh_kh2;delete $query_ck$$.nh_kh3;delete $query_ck$$.nh_kh4;delete $query_ck$$.nh_kh5;delete $query_ck$$.ma_tt1;
31
- delete $query_ck$$.ma_tt2;delete $query_ck$$.ma_tt3;$query_ck$$.$and&&0==$query_ck$$.$and.length&&delete $query_ck$$.$and;let $chietkhaus$$;try{$chietkhaus$$=await new Promise(($resolve$$,$reject$$)=>{async.parallel({cktheovt:$callback$$=>{let $_query$$=_.cloneDeep($query_ck$$);dmchietkhau.find($_query$$).sort($sort$$).lean().exec(async($e$$,$chietkhaus$$)=>{if($e$$)return $callback$$($e$$);$callback$$(null,$chietkhaus$$)})},cktheonvt:$callback$$=>{let $_q$$=_.cloneDeep($query_ck$$);$_q$$.ma_vt={$in:["",
32
- null]};$_q$$.ma_nvt={$in:["",null,$vt$$.ma_nvt]};$_q$$.ma_nvt2={$in:["",null,...$vt$$.ma_nvt2]};$_q$$.ma_nvt3={$in:["",null,...$vt$$.ma_nvt3]};$_q$$.ma_nvt4={$in:["",null,...$vt$$.ma_nvt4]};$_q$$.ma_danh_muc={$in:["",null,$vt$$.ma_danh_muc]};dmchietkhau.find($_q$$).sort($sort$$).lean().exec(async($e$$,$chietkhaus$$)=>{if($e$$)return $callback$$($e$$);$callback$$(null,$chietkhaus$$)})}},async($chietkhaus$jscomp$3_e$$,$rs$$)=>{if($chietkhaus$jscomp$3_e$$)return $reject$$($chietkhaus$jscomp$3_e$$);$chietkhaus$jscomp$3_e$$=
33
- $rs$$.cktheovt.concat($rs$$.cktheonvt);$resolve$$($chietkhaus$jscomp$3_e$$)})})}catch($e$$){return $callback$jscomp$0$$($e$$)}$chietkhaus$$=$chietkhaus$$.filter($ck$$=>(!$ck$$.ma_kh||$condition$$.ma_kh==$ck$$.ma_kh)&&(!$ck$$.nh_kh||($condition$$.nh_kh_me||[]).find($nh$$=>$ck$$.nh_kh==$nh$$))&&(null==$ck$$.nh_kh2||0==$ck$$.nh_kh2.length||($condition$$.nh_kh2_me||[]).find($nh$$=>0<=$ck$$.nh_kh2.indexOf($nh$$)))&&(null==$ck$$.nh_kh3||0==$ck$$.nh_kh3.length||($condition$$.nh_kh3_me||[]).find($nh$$=>0<=
34
- $ck$$.nh_kh3.indexOf($nh$$)))&&(null==$ck$$.nh_kh4||0==$ck$$.nh_kh4.length||($condition$$.nh_kh4_me||[]).find($nh$$=>0<=$ck$$.nh_kh4.indexOf($nh$$)))&&(null==$ck$$.nh_kh5||0==$ck$$.nh_kh5.length||($condition$$.nh_kh5_me||[]).find($nh$$=>0<=$ck$$.nh_kh5.indexOf($nh$$)))&&(!$ck$$.ma_tt1||$condition$$.ma_tt1==$ck$$.ma_tt1)&&(!$ck$$.ma_tt2||$condition$$.ma_tt2==$ck$$.ma_tt2)&&(!$ck$$.ma_tt3||$condition$$.ma_tt3==$ck$$.ma_tt3)&&(!$ck$$.nh_tt||($condition$$.nh_tt_me||[]).find($nh$$=>$ck$$.nh_tt==$nh$$))&&
35
- (null==$ck$$.nh_tt2||0==$ck$$.nh_tt2.length||($condition$$.nh_tt2_me||[]).find($nh$$=>0<=$ck$$.nh_tt2.indexOf($nh$$)))&&(null==$ck$$.nh_tt3||0==$ck$$.nh_tt3.length||($condition$$.nh_tt3_me||[]).find($nh$$=>0<=$ck$$.nh_tt3.indexOf($nh$$)))&&(null==$ck$$.nh_tt4||0==$ck$$.nh_tt4.length||($condition$$.nh_tt4_me||[]).find($nh$$=>0<=$ck$$.nh_tt4.indexOf($nh$$)))&&(null==$ck$$.nh_tt5||0==$ck$$.nh_tt5.length||($condition$$.nh_tt5_me||[]).find($nh$$=>0<=$ck$$.nh_tt5.indexOf($nh$$))));await getSLDaBanCKs($chietkhaus$$);
36
- $chietkhaus$$=$chietkhaus$$.filter($ck$$=>!$ck$$.tong_sl_ap_dung||!$ck$$.sl_da_ban||0<$ck$$.sl_con_lai);$callback$jscomp$0$$(null,$chietkhaus$$)})},promotion_vt:$callback$jscomp$0$$=>{if(0==$condition$$.get_promotion)return $callback$jscomp$0$$(null,[]);setImmediate(async()=>{let $query_promotion$$=_.cloneDeep($query$$);void 0!=$condition$$.online&&($query_promotion$$.online=$condition$$.online);void 0!=$condition$$.offline&&($query_promotion$$.offline=$condition$$.offline);let $sort_km$$={stt_uu_tien:1,
37
- sl_tu:-1,ma_vt:-1,ma_nvt:-1};$query_promotion$$.$and&&0==$query_promotion$$.$and.length&&delete $query_promotion$$.$and;delete $query_promotion$$.ma_kh;delete $query_promotion$$.nh_kh;delete $query_promotion$$.nh_kh2;delete $query_promotion$$.nh_kh3;delete $query_promotion$$.nh_kh4;delete $query_promotion$$.nh_kh5;delete $query_promotion$$.ma_tt1;delete $query_promotion$$.ma_tt2;delete $query_promotion$$.ma_tt3;try{var $khuyenmais_khuyenmais_tm$$=await new Promise(($resolve$$,$reject$$)=>{async.parallel({theovt:$callback$$=>
38
- {dmkhuyenmai.find($query_promotion$$).sort($sort_km$$).lean().exec(($e$$,$khuyenmai$$)=>{if($e$$)return $callback$$($e$$);$callback$$(null,$khuyenmai$$)})},theonvt:$callback$$=>{let $_q$$=_.cloneDeep($query_promotion$$);$_q$$.ma_vt={$in:["",null]};$_q$$.ma_nvt={$in:["",null,$vt$$.ma_nvt]};$_q$$.ma_nvt2={$in:["",null,...$vt$$.ma_nvt2]};$_q$$.ma_nvt3={$in:["",null,...$vt$$.ma_nvt3]};$_q$$.ma_danh_muc={$in:["",null,$vt$$.ma_danh_muc]};dmkhuyenmai.find($_q$$).sort($sort_km$$).lean().exec(($e$$,$khuyenmai$$)=>
39
- {if($e$$)return $callback$$($e$$);$callback$$(null,$khuyenmai$$)})}},($e$$,$rs$$)=>{if($e$$)return $reject$$($e$$);$e$$=$rs$$.theovt.concat($rs$$.theonvt);$resolve$$($e$$)})})}catch($e$$){return $callback$jscomp$0$$($e$$)}$khuyenmais_khuyenmais_tm$$=$khuyenmais_khuyenmais_tm$$.filter($ck$$=>(!$ck$$.ma_kh||$condition$$.ma_kh==$ck$$.ma_kh)&&(!$ck$$.nh_kh||($condition$$.nh_kh_me||[]).find($nh$$=>$ck$$.nh_kh==$nh$$))&&(null==$ck$$.nh_kh2||0==$ck$$.nh_kh2.length||($condition$$.nh_kh2_me||[]).find($nh$$=>
40
- 0<=$ck$$.nh_kh2.indexOf($nh$$)))&&(null==$ck$$.nh_kh3||0==$ck$$.nh_kh3.length||($condition$$.nh_kh3_me||[]).find($nh$$=>0<=$ck$$.nh_kh3.indexOf($nh$$)))&&(null==$ck$$.nh_kh4||0==$ck$$.nh_kh4.length||($condition$$.nh_kh4_me||[]).find($nh$$=>0<=$ck$$.nh_kh4.indexOf($nh$$)))&&(null==$ck$$.nh_kh5||0==$ck$$.nh_kh5.length||($condition$$.nh_kh5_me||[]).find($nh$$=>0<=$ck$$.nh_kh5.indexOf($nh$$)))&&(!$ck$$.ma_tt1||$condition$$.ma_tt1==$ck$$.ma_tt1)&&(!$ck$$.ma_tt2||$condition$$.ma_tt2==$ck$$.ma_tt2)&&(!$ck$$.ma_tt3||
41
- $condition$$.ma_tt3==$ck$$.ma_tt3)&&(!$ck$$.nh_tt||($condition$$.nh_tt_me||[]).find($nh$$=>$ck$$.nh_tt==$nh$$))&&(null==$ck$$.nh_tt2||0==$ck$$.nh_tt2.length||($condition$$.nh_tt2_me||[]).find($nh$$=>0<=$ck$$.nh_tt2.indexOf($nh$$)))&&(null==$ck$$.nh_tt3||0==$ck$$.nh_tt3.length||($condition$$.nh_tt3_me||[]).find($nh$$=>0<=$ck$$.nh_tt3.indexOf($nh$$)))&&(null==$ck$$.nh_tt4||0==$ck$$.nh_tt4.length||($condition$$.nh_tt4_me||[]).find($nh$$=>0<=$ck$$.nh_tt4.indexOf($nh$$)))&&(null==$ck$$.nh_tt5||0==$ck$$.nh_tt5.length||
42
- ($condition$$.nh_tt5_me||[]).find($nh$$=>0<=$ck$$.nh_tt5.indexOf($nh$$))));$callback$jscomp$0$$(null,$khuyenmais_khuyenmais_tm$$)})}},async($e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$,$rs$$)=>{if($e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$)return $fn$$($e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$);if(0==$condition$$.get_price)$rs$$.price={};else{if($condition$$.ma_dvt_sd&&($e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$=await global.getModel("dmqddvt").findOne({id_app:$condition$$.id_app,
43
- ma_vt:$condition$$.ma_vt,ma_dvt:$condition$$.ma_dvt_sd}).lean())){let $he_so_qd$$=$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.ty_le_qd||1;$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.mau&&$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.tu&&($he_so_qd$$=$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.tu/$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.mau);$rs$$.giabans.forEach($g$$=>{$g$$.gia_ban_le=utils.round($g$$.gia_ban_le*$he_so_qd$$,round);$g$$.gia_ban_buon=
44
- utils.round($g$$.gia_ban_buon*$he_so_qd$$,round)})}$vt$$.ma_nt0||($vt$$.ma_nt0="VND");!(0<$rs$$.giabans.length)||$rs$$.giabans[0].sl_tu||$rs$$.giabans[0].sl_den||$rs$$.giabans[0].t_sl_tu||$rs$$.giabans[0].t_sl_den||($rs$$.giabans=[$rs$$.giabans[0]]);let $giabans$$=[];$rs$$.giabans.forEach($g$$=>{$g$$.sl_tu=$g$$.sl_tu||0;$g$$.sl_den=$g$$.sl_den||0;$g$$.t_sl_tu=$g$$.t_sl_tu||0;$g$$.t_sl_den=$g$$.t_sl_den||0;$giabans$$.find($_g$$=>$_g$$.sl_tu===$g$$.sl_tu&&$_g$$.sl_den===$g$$.sl_den&&$_g$$.t_sl_tu===
45
- $g$$.t_sl_tu&&$_g$$.t_sl_den===$g$$.t_sl_den)||$giabans$$.push($g$$)});$rs$$.giabans=$giabans$$;$rs$$.giabans.find($g$$=>!$g$$.sl_tu)||($rs$$.giabans=[...$rs$$.giabans,{gia_ban_le:$vt$$.gia_ban_le0||$vt$$.gia_ban_le||0,gia_ban_buon:$vt$$.gia_ban_buon0||$vt$$.gia_ban_buon||0,ma_nt:$vt$$.ma_nt0,gia_ban_chua_thue:$vt$$.gia_ban_chua_thue,t_sl_tu:0,t_sl_den:0,sl_tu:0,sl_den:0<$rs$$.giabans.length?$rs$$.giabans.sort(($a$$,$b$$)=>$a$$.sl_tu-$b$$.sl_tu)[0].sl_tu-.001:0}]);$rs$$.giabans.forEach($r$$=>{$r$$.ma_nt||
46
- ($r$$.ma_nt="VND");$r$$.ma_thue=$vt$$.ma_thue;$r$$.thue_suat=$vt$$.thue_suat});await $rs$$.giabans.asyncJoinModel2($condition$$.id_app,"currency",{where:"ma_nt",fields:["ty_gia"]});await [$vt$$].asyncJoinModel2($condition$$.id_app,"currency",{where:{ma_nt0:"ma_nt"},fields:[{ty_gia0:"ty_gia"}]});$vt$$.ma_thue&&await [$vt$$].asyncJoinModel2($condition$$.id_app,"vat",{where:{ma_thue:"ma_thue"},fields:[{thue_suat:"thue_suat"}]});$rs$$.giabans.forEach($g$$=>{$par$$&&$par$$.ma_nt&&$par$$.ty_gia&&$g$$.ma_nt!==
47
- $par$$.ma_nt?($g$$.gia_ban_le0_qd=utils.round(($vt$$.gia_ban_le0||0)*$vt$$.ty_gia0/$par$$.ty_gia,2),$g$$.gia_ban_buon0_qd=utils.round(($vt$$.gia_ban_buon0||0)*$vt$$.ty_gia0/$par$$.ty_gia,2),$g$$.gia_ban_le=utils.round($g$$.gia_ban_le*$g$$.ty_gia/$par$$.ty_gia,2),$g$$.gia_ban_buon=utils.round(($g$$.gia_ban_buon||0)*$g$$.ty_gia/$par$$.ty_gia,2),$g$$.ma_nt=$par$$.ma_nt,$g$$.ty_gia=$par$$.ty_gia):($g$$.gia_ban_le0_qd=$vt$$.gia_ban_le0||0,$g$$.gia_ban_buon0_qd=$vt$$.gia_ban_buon0||0)});for($e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$=
48
- 0;$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$<$rs$$.giabans.length;$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$++){let $g$$=$rs$$.giabans[$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$];$g$$.gia_ban_chua_thue?($g$$.gia_ban_le0_qd_ct=$g$$.gia_ban_le0_qd,$g$$.gia_ban_buon0_qd_ct=$g$$.gia_ban_buon0_qd,$g$$.gia_ban_le_ct=$g$$.gia_ban_le,$g$$.gia_ban_buon_ct=$g$$.gia_ban_buon,$vt$$.ma_thue&&($vt$$.thue_suat=$vt$$.thue_suat||0,$g$$.gia_ban_le0_qd=utils.round($g$$.gia_ban_le0_qd_ct*
49
- (1+$vt$$.thue_suat/100),2),$g$$.gia_ban_buon0_qd=utils.round($g$$.gia_ban_buon0_qd_ct*(1+$vt$$.thue_suat/100),2),$g$$.gia_ban_le=utils.round($g$$.gia_ban_le_ct*(1+$vt$$.thue_suat/100),2),$g$$.gia_ban_buon=utils.round($g$$.gia_ban_buon_ct*(1+$vt$$.thue_suat/100),2))):($g$$.gia_ban_le0_qd_ct=$g$$.gia_ban_le0_qd,$g$$.gia_ban_buon0_qd_ct=$g$$.gia_ban_buon0_qd,$g$$.gia_ban_le_ct=$g$$.gia_ban_le,$g$$.gia_ban_buon_ct=$g$$.gia_ban_buon,$vt$$.ma_thue&&($vt$$.thue_suat=$vt$$.thue_suat||0,$g$$.gia_ban_le0_qd_ct=
50
- utils.round($g$$.gia_ban_le0_qd/(1+$vt$$.thue_suat/100),2),$g$$.gia_ban_buon0_qd_ct=utils.round($g$$.gia_ban_buon0_qd/(1+$vt$$.thue_suat/100),2),$g$$.gia_ban_le_ct=utils.round($g$$.gia_ban_le/(1+$vt$$.thue_suat/100),2),$g$$.gia_ban_buon_ct=utils.round($g$$.gia_ban_buon/(1+$vt$$.thue_suat/100),2)));delete $g$$.gia_ban_chua_thue}$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$=$rs$$.giabans.filter($g$$=>$g$$.sl_tu<=$condition$$.so_luong&&(!$g$$.sl_den||$g$$.sl_den>$condition$$.so_luong)&&$g$$.t_sl_tu<=
51
- $condition$$.t_so_luong&&(!$g$$.t_sl_den||$g$$.t_sl_den>$condition$$.t_so_luong)&&(!$g$$.t_sl_ntt_tu||$g$$.t_sl_ntt_tu<=$condition$$.t_so_luong_ntt)&&(!$g$$.t_sl_ntt_den||$g$$.t_sl_ntt_den>$condition$$.t_so_luong_ntt)&&(!$g$$.t_tien_ntt_tu||$g$$.t_tien_ntt_tu<=$condition$$.t_tien_ntt)&&(!$g$$.t_tien_ntt_den||$g$$.t_tien_ntt_den>$condition$$.t_tien_ntt));$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$=0<$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.length?$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$[0]:
52
- $rs$$.giabans[0]||{};$rs$$.price={gia_ban_le0_qd:$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.gia_ban_le0_qd,gia_ban_buon0_qd:$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.gia_ban_buon0_qd,gia_ban_le:$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.gia_ban_le,gia_ban_buon:$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.gia_ban_buon,gia_ban_le0_qd_ct:$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.gia_ban_le0_qd_ct,gia_ban_buon0_qd_ct:$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.gia_ban_buon0_qd_ct,
53
- gia_ban_le_ct:$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.gia_ban_le_ct,gia_ban_buon_ct:$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.gia_ban_buon_ct,ma_nt:$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.ma_nt,ty_gia:$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.ty_gia,ma_thue:$vt$$.ma_thue,thue_suat:$vt$$.thue_suat,prices:$rs$$.giabans}}if(0!=$condition$$.get_discount){$rs$$.discount=$rs$$.discount_vt;$rs$$.discount.forEach($r$$=>{$r$$.id_cs=$r$$._id});$rs$$.price.discount=
54
- $rs$$.discount.sort(function($a$$,$b$$){return($b$$.ap_dung_lan_mua_tu_thu||0)>($a$$.ap_dung_lan_mua_tu_thu||0)?1:$b$$.ty_le_ck-$a$$.ty_le_ck});let $discounts$$=[];$rs$$.price.discount.forEach($d$$=>{$d$$.tien_ck&&$rs$$.price.gia_ban_le_ct&&($d$$.ty_le_ck=$d$$.tien_ck/$rs$$.price.gia_ban_le_ct*100);$d$$.sl_tu=$d$$.sl_tu||0;$d$$.sl_den=$d$$.sl_den||0;$d$$.gt_hd_tu=$d$$.gt_hd_tu||0;$d$$.gt_hd_den=$d$$.gt_hd_den||0;$discounts$$.push($d$$)});$rs$$.price.discount=$discounts$$;let $gt_hd$$=$condition$$.t_gt_hd||
55
- 0,$default_cks$$=$discounts$$.filter($d$$=>(!$d$$.gt_hd_tu||$d$$.gt_hd_tu<$gt_hd$$)&&(!$d$$.gt_hd_den||$d$$.gt_hd_den>=$gt_hd$$)&&!$d$$.mua_them&&$condition$$.so_luong>=$d$$.sl_tu&&(!$d$$.sl_den||$d$$.sl_den>$condition$$.so_luong)&&(!$d$$.t_sl_tu||$d$$.t_sl_tu<=$condition$$.t_so_luong)&&(!$d$$.t_sl_den||$d$$.t_sl_den>$condition$$.t_so_luong)&&(!$d$$.t_sl_ntt_tu||$d$$.t_sl_ntt_tu<=$condition$$.t_so_luong_ntt)&&(!$d$$.t_sl_ntt_den||$d$$.t_sl_ntt_den>$condition$$.t_so_luong_ntt)&&(!$d$$.t_tien_ntt_tu||
56
- $d$$.t_tien_ntt_tu<=$condition$$.t_tien_ntt)&&(!$d$$.t_tien_ntt_den||$d$$.t_tien_ntt_den>$condition$$.t_tien_ntt));var $default_ck_groups$jscomp$2_i$$;$condition$$.id_cs_ck&&($default_ck_groups$jscomp$2_i$$=$default_cks$$.find($d$$=>$d$$._id.toString()==$condition$$.id_cs_ck));!$default_ck_groups$jscomp$2_i$$&&0<$default_cks$$.length&&($default_ck_groups$jscomp$2_i$$=[...(new Set($default_cks$$.map($d$$=>$d$$.ma_nhom||"")))].map($ma_nhom$$=>({ma_nhom:$ma_nhom$$,cks:$default_cks$$.filter($d$$=>($d$$.ma_nhom||
57
- "")==($ma_nhom$$||""))})),$default_ck_groups$jscomp$2_i$$=await calcDefaultDiscount($condition$$.id_app,$default_ck_groups$jscomp$2_i$$));$default_ck_groups$jscomp$2_i$$&&(underscore.extend($rs$$.price,{sl_tu:$default_ck_groups$jscomp$2_i$$.sl_tu,ty_le_ck:$default_ck_groups$jscomp$2_i$$.ty_le_ck||0,tien_ck:$default_ck_groups$jscomp$2_i$$.tien_ck,gt_hd_tu:$default_ck_groups$jscomp$2_i$$.gt_hd_tu,gt_hd_den:$default_ck_groups$jscomp$2_i$$.gt_hd_den,sl_ap_dung:$default_ck_groups$jscomp$2_i$$.sl_ap_dung,
58
- so_tien_max:$default_ck_groups$jscomp$2_i$$.so_tien_max,id_cs:$default_ck_groups$jscomp$2_i$$._id}),$rs$$.tien_ck_tmp=$rs$$.tien_ck,$rs$$.tien_ck_tmp||($rs$$.tien_ck_tmp=utils.round($rs$$.price.gia_ban_le_ct*$rs$$.ty_le_ck/100,2)),$rs$$.price.gia_ban_le_sau_ck_tmp=Math.max(0,$rs$$.price.gia_ban_le-$rs$$.tien_ck_tmp));$default_ck_groups$jscomp$2_i$$=underscore.filter($rs$$.discount,$d$$=>1<$d$$.sl_tu).sort(function($a$$,$b$$){return $b$$.ty_le_ck-$a$$.ty_le_ck});0<$default_ck_groups$jscomp$2_i$$.length&&
59
- ($rs$$.price.ck_sl_tu2=$default_ck_groups$jscomp$2_i$$)}if(0!=$condition$$.get_promotion){$rs$$.promotion=$rs$$.promotion_vt;$rs$$.promotion.forEach($r$$=>{$r$$.id_cs=$r$$._id});$rs$$.promotion&&$rs$$.promotion.forEach($p$$=>{delete $p$$.status;delete $p$$.user_created;delete $p$$.user_updated;delete $p$$.date_created;delete $p$$.date_updated;delete $p$$.exfields;delete $p$$.id_app;delete $p$$.dmkh;delete $p$$.dmkho;delete $p$$.dmnvt;delete $p$$.dmvt;delete $p$$.__v});$rs$$.price.promotion=$rs$$.promotion||
60
- [];$condition$$.ma_ct?($rs$$.price.promotion=$rs$$.price.promotion.filter($p$$=>!$p$$.chi_su_dung_cho_ct||0<=$p$$.chi_su_dung_cho_ct.toUpperCase().split(",").indexOf($condition$$.ma_ct.toUpperCase())),$rs$$.price.promotion=$rs$$.price.promotion.filter($p$$=>!$p$$.khong_su_dung_cho_ct||0>$p$$.khong_su_dung_cho_ct.toUpperCase().split(",").indexOf($condition$$.ma_ct.toUpperCase()))):$rs$$.price.promotion=$rs$$.price.promotion.filter($p$$=>!$p$$.chi_su_dung_cho_ct&&!$p$$.khong_su_dung_cho_ct);for($default_ck_groups$jscomp$2_i$$=
61
- 0;$default_ck_groups$jscomp$2_i$$<$rs$$.price.promotion.length;$default_ck_groups$jscomp$2_i$$++)$e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$=$rs$$.price.promotion[$default_ck_groups$jscomp$2_i$$],await ($e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.details_km||[]).asyncJoinModel2($condition$$.id_app,dmvt,{where:"ma_vt",fields:["ten_vt","picture"]}),await ($e$jscomp$13_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.details_km||[]).filter($d$$=>$d$$.ma_tt1).asyncJoinModel2($condition$$.id_app,
62
- "dmtt",{where:$item$$=>({ma_vt:$item$$.ma_vt,ma_tt:$item$$.ma_tt1,loai_tt:"1"}),setFields:($item$$,$ref$$)=>{$item$$.thuoc_tinh=$ref$$}});let $promotions_df$$=$rs$$.price.promotion.filter($p$$=>$p$$.details_km&&0<$p$$.details_km.length&&$p$$.sl_tu<=$condition$$.so_luong&&(!$p$$.sl_den||$p$$.sl_den>=$condition$$.so_luong||$p$$.sl_den===$p$$.sl_tu)&&(!$p$$.t_sl_tu||$p$$.t_sl_tu<=$condition$$.t_so_luong)&&(!$p$$.t_sl_den||$p$$.t_sl_den>$condition$$.t_so_luong)&&(!$p$$.t_sl_ntt_tu||$p$$.t_sl_ntt_tu<=
63
- $condition$$.t_so_luong_ntt)&&(!$p$$.t_sl_ntt_den||$p$$.t_sl_ntt_den>$condition$$.t_so_luong_ntt)&&(!$p$$.t_tien_ntt_tu||$p$$.t_tien_ntt_tu<=$condition$$.t_tien_ntt)&&(!$p$$.t_tien_ntt_den||$p$$.t_tien_ntt_den>$condition$$.t_tien_ntt));var $groups$$;$condition$$.id_cs&&($groups$$=$promotions_df$$.find($d$$=>$d$$._id.toString()==$condition$$.id_cs));!$groups$$&&0<$promotions_df$$.length&&($promotions_df$$.forEach($p$$=>{$p$$.t_sl_km=($p$$.details_km||[]).map($d$$=>$d$$.sl_km||0).reduce(($a$$,$b$$)=>
64
- $a$$+$b$$,0)}),$groups$$=[...(new Set($promotions_df$$.map($d$$=>$d$$.ma_nhom||"")))].map($ma_nhom$$=>({ma_nhom:$ma_nhom$$,cks:$promotions_df$$.filter($d$$=>($d$$.ma_nhom||"")==$ma_nhom$$)})),$groups$$=await calcDefaultPromotion($condition$$.id_app,$groups$$));$rs$$.price.default_promotion=$groups$$}$fn$$(null,$rs$$.price)})}else $fn$$(`Condition required ma_vt,id_app. Current condition ${JSON.stringify($condition$$)}`)};
12
+ 0;let $he_so_qd$$=1;if($condition$$.ma_dvt_sd){var $qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$=await global.getModel("dmqddvt").findOne({id_app:$condition$$.id_app,ma_vt:$condition$$.ma_vt,ma_dvt:$condition$$.ma_dvt_sd}).lean();$qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$&&($he_so_qd$$=$qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.ty_le_qd||1,$qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.mau&&$qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.tu&&($he_so_qd$$=$qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.tu/
13
+ $qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.mau))}!$condition$$.ma_vt&&$condition$$.vt&&$condition$$.vt._id&&($condition$$.vt=await dmvt.findOne({_id:$condition$$.vt._id},{ma_vt:1,ma_nvt:1,ma_nvt2:1,ma_nvt3:1,ma_nvt4:1,ma_danh_muc:1,gia_ban_le0:1,gia_ban_buon0:1,gia_ban_le:1,gia_ban_buon:1,ty_le_ck0:1,tien_ck0:1,ma_nt:1,gia_ban_chua_thue:1,ma_thue:1,ma_nt0:1}).lean(),$condition$$.vt&&($condition$$.vt.is_full=!0,$condition$$.ma_vt=$condition$$.vt.ma_vt));if($condition$$&&$condition$$.ma_vt&&
14
+ $condition$$.id_app){var $vt$$=$condition$$.vt;if(!$vt$$||!$vt$$.is_full&&(void 0===$vt$$.gia_ban_le||void 0===$vt$$.gia_ban_le0||void 0===$vt$$.ty_le_ck0||void 0===$vt$$.tien_ck0||void 0===$vt$$.ma_nt0||void 0===$vt$$.ma_thue))if($vt$$=await dmvt.findOne({ma_vt:$condition$$.ma_vt,id_app:$condition$$.id_app},{ma_vt:1,ma_nvt:1,ma_nvt2:1,ma_nvt3:1,ma_nvt4:1,ma_danh_muc:1,gia_ban_le0:1,gia_ban_buon0:1,gia_ban_le:1,gia_ban_buon:1,ty_le_ck0:1,tien_ck0:1,ma_nt:1,gia_ban_chua_thue:1,ma_thue:1,ma_nt0:1}).lean(),
15
+ !$vt$$)return $fn$$("Not found product: "+$condition$$.ma_vt);$vt$$.ma_nvt2||($vt$$.ma_nvt2=[]);"string"==typeof $vt$$.ma_nvt2&&($vt$$.ma_nvt2=[$vt$$.ma_nvt2]);$vt$$.ma_nvt3||($vt$$.ma_nvt3=[]);"string"==typeof $vt$$.ma_nvt3&&($vt$$.ma_nvt3=[$vt$$.ma_nvt3]);$vt$$.ma_nvt4||($vt$$.ma_nvt4=[]);"string"==typeof $vt$$.ma_nvt4&&($vt$$.ma_nvt4=[$vt$$.ma_nvt4]);if($condition$$.ma_tt1){var $hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$={id_app:$vt$$.id_app_vt||$condition$$.id_app,ma_vt:$vt$$.ma_vt,status:!0};
16
+ $hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.ma_tt=$condition$$.ma_tt1;$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.loai_tt="1";if($hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$=await global.getModel("dmtt").findOne($hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$).lean())$vt$$.gia_ban_le0=$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.gia_ban_le||$vt$$.gia_ban_le0||$vt$$.gia_ban_le||0,$vt$$.gia_ban_buon0=$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.gia_ban_buon||$vt$$.gia_ban_buon0||$vt$$.gia_ban_buon||
17
+ 0}else if($condition$$.ma_tt2){if($qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$={id_app:$vt$$.id_app_vt||$condition$$.id_app,ma_vt:$vt$$.ma_vt,status:!0},$qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.ma_tt=$condition$$.ma_tt2,$qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.loai_tt="2",$qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$=await global.getModel("dmtt").findOne($qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$).lean())$vt$$.gia_ban_le0=$qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.gia_ban_le||
18
+ $vt$$.gia_ban_le0||$vt$$.gia_ban_le||0,$vt$$.gia_ban_buon0=$qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.gia_ban_buon||$vt$$.gia_ban_buon0||$vt$$.gia_ban_buon||0}else $condition$$.ma_tt3&&($qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$={id_app:$vt$$.id_app_vt||$condition$$.id_app,ma_vt:$vt$$.ma_vt,status:!0},$qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.ma_tt=$condition$$.ma_tt3,$qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.loai_tt="3",$qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$=
19
+ await global.getModel("dmtt").findOne($qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$).lean())&&($vt$$.gia_ban_le0=$qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.gia_ban_le||$vt$$.gia_ban_le0||$vt$$.gia_ban_le||0,$vt$$.gia_ban_buon0=$qddct_query_tt$jscomp$1_query_tt$jscomp$2_tt_tt$$.gia_ban_buon||$vt$$.gia_ban_buon0||$vt$$.gia_ban_buon||0);$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$&&($condition$$.nh_tt_me=$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt?await global.getModel("group").getAllMotherGroup($condition$$.id_app,
20
+ $hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt):[],$condition$$.nh_tt2_me=$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt2?await global.getModel("group").getAllMotherGroup($condition$$.id_app,$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt2):[],$condition$$.nh_tt3_me=$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt3?await global.getModel("group").getAllMotherGroup($condition$$.id_app,$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt3):[],$condition$$.nh_tt4_me=$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt4?
21
+ await global.getModel("group").getAllMotherGroup($condition$$.id_app,$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt4):[],$condition$$.nh_tt5_me=$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt5?await global.getModel("group").getAllMotherGroup($condition$$.id_app,$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$.nh_tt5):[]);var $_cust_den_ngay_hieu_luc_tu$$;if($condition$$.user&&!$condition$$.ma_kh)try{if($_cust_den_ngay_hieu_luc_tu$$=await customer.findOne({id_app:$condition$$.id_app,of_user:$condition$$.user.email},
22
+ {ma_kh:1,nh_kh:1,nh_kh2:1,nh_kh3:1,nh_kh4:1,nh_kh5:1}).lean())$condition$$.ma_kh=$_cust_den_ngay_hieu_luc_tu$$.ma_kh,$condition$$.nh_kh=$_cust_den_ngay_hieu_luc_tu$$.nh_kh,$condition$$.nh_kh2=$_cust_den_ngay_hieu_luc_tu$$.nh_kh2,$condition$$.nh_kh3=$_cust_den_ngay_hieu_luc_tu$$.nh_kh3,$condition$$.nh_kh4=$_cust_den_ngay_hieu_luc_tu$$.nh_kh4,$condition$$.nh_kh5=$_cust_den_ngay_hieu_luc_tu$$.nh_kh5}catch($e$$){console.log("Error find customer code of user",$e$$)}if($condition$$.ma_kh){var $lan_mua_thu$$=
23
+ await so1.countDocuments({id_app:$condition$$.id_app,ma_kh:$condition$$.ma_kh,trang_thai:{$in:["4","5"]}});($lan_mua_thu$$+=await pbl.countDocuments({id_app:$condition$$.id_app,ma_kh:$condition$$.ma_kh,trang_thai:{$in:["5","6"]}}))||($lan_mua_thu$$=0);$lan_mua_thu$$+=1;!$_cust_den_ngay_hieu_luc_tu$$&&($_cust_den_ngay_hieu_luc_tu$$=await customer.findOne({id_app:$condition$$.id_app,ma_kh:$condition$$.ma_kh},{nh_kh:1,nh_kh2:1,nh_kh3:1,nh_kh4:1,nh_kh5:1}).lean())&&($condition$$.nh_kh=$_cust_den_ngay_hieu_luc_tu$$.nh_kh,
24
+ $condition$$.nh_kh2=$_cust_den_ngay_hieu_luc_tu$$.nh_kh2,$condition$$.nh_kh3=$_cust_den_ngay_hieu_luc_tu$$.nh_kh3,$condition$$.nh_kh4=$_cust_den_ngay_hieu_luc_tu$$.nh_kh4,$condition$$.nh_kh5=$_cust_den_ngay_hieu_luc_tu$$.nh_kh5)}else $lan_mua_thu$$=0;var $query$$={ma_vt:$condition$$.ma_vt,id_app:$condition$$.id_app,status:!0,$and:[]};$query$$.ma_kh={$in:[null,"",$condition$$.ma_kh]};$_cust_den_ngay_hieu_luc_tu$$&&($condition$$.nh_kh_me=$_cust_den_ngay_hieu_luc_tu$$.nh_kh?await global.getModel("group").getAllMotherGroup($condition$$.id_app,
25
+ $_cust_den_ngay_hieu_luc_tu$$.nh_kh):[],$condition$$.nh_kh2_me=$_cust_den_ngay_hieu_luc_tu$$.nh_kh2?await global.getModel("group").getAllMotherGroup($condition$$.id_app,$_cust_den_ngay_hieu_luc_tu$$.nh_kh2):[],$condition$$.nh_kh3_me=$_cust_den_ngay_hieu_luc_tu$$.nh_kh3?await global.getModel("group").getAllMotherGroup($condition$$.id_app,$_cust_den_ngay_hieu_luc_tu$$.nh_kh3):[],$condition$$.nh_kh4_me=$_cust_den_ngay_hieu_luc_tu$$.nh_kh4?await global.getModel("group").getAllMotherGroup($condition$$.id_app,
26
+ $_cust_den_ngay_hieu_luc_tu$$.nh_kh4):[],$condition$$.nh_kh5_me=$_cust_den_ngay_hieu_luc_tu$$.nh_kh5?await global.getModel("group").getAllMotherGroup($condition$$.id_app,$_cust_den_ngay_hieu_luc_tu$$.nh_kh5):[]);$query$$.nh_kh={$in:[null,"",...($condition$$.nh_kh_me||[])]};$query$$.nh_kh2={$in:[null,"",...($condition$$.nh_kh2_me||[])]};$query$$.nh_kh3={$in:[null,"",...($condition$$.nh_kh3_me||[])]};$query$$.nh_kh4={$in:[null,"",...($condition$$.nh_kh4_me||[])]};$query$$.nh_kh5={$in:[null,"",...($condition$$.nh_kh5_me||
27
+ [])]};$query$$.ma_kho={$in:[null,"",$condition$$.ma_kho]};$query$$.ma_tt1={$in:[null,"",$condition$$.ma_tt1]};$query$$.ma_tt2={$in:[null,"",$condition$$.ma_tt2]};$query$$.ma_tt3={$in:[null,"",$condition$$.ma_tt3]};$condition$$.ngay_ct=$condition$$.ngay_ct?new Date($condition$$.ngay_ct):new Date;$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$=$_cust_den_ngay_hieu_luc_tu$$=$condition$$.ngay_ct;$_cust_den_ngay_hieu_luc_tu$$={$lte:$_cust_den_ngay_hieu_luc_tu$$};$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$=
28
+ {$gte:$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$};$query$$.hieu_luc_tu=$_cust_den_ngay_hieu_luc_tu$$;$query$$.hieu_luc_den=$hieu_luc_den_query_tt_thuoc_tinh1_tu_ngay$$;var $sort$$={stt_uu_tien:1,sl_tu:-1,sl_den:-1,id_cs:-1,tien_ck:-1,ty_le_ck:-1,ma_kho:-1,ma_ban:-1,ma_kh:-1,nh_kh:-1,hieu_luc_tu:-1,ma_tt1:-1,ma_tt2:-1,ma_tt3:-1};async.parallel({giabans:$callback$$=>{if(0==$condition$$.get_price)return $callback$$(null,[]);setImmediate(()=>{let $_query$$=_.cloneDeep($query$$);$_query$$.$and.push({$or:[{ap_dung_lan_mua_tu_thu:{$in:[0,
29
+ null]}},{ap_dung_lan_mua_tu_thu:{$lte:$lan_mua_thu$$}}]});$_query$$.$and.push({$or:[{ap_dung_lan_mua_den_thu:{$in:[0,null]}},{ap_dung_lan_mua_den_thu:{$gte:$lan_mua_thu$$}}]});void 0!=$condition$$.online&&($_query$$.online=$condition$$.online);void 0!=$condition$$.offline&&($_query$$.offline=$condition$$.offline);$_query$$.$and&&0==$_query$$.$and.length&&delete $_query$$.$and;dmgiaban.find($_query$$).sort($sort$$).lean().exec(async($_q_e$$,$giabans$$)=>{if($_q_e$$)return $callback$$($_q_e$$);0<$giabans$$.length?
30
+ $callback$$(null,$giabans$$):($_q_e$$=_.cloneDeep($_query$$),$_q_e$$.ma_vt={$in:["",null]},$_q_e$$.ma_nvt={$in:["",null,$vt$$.ma_nvt]},$_q_e$$.ma_nvt2={$in:["",null,...$vt$$.ma_nvt2]},$_q_e$$.ma_nvt3={$in:["",null,...$vt$$.ma_nvt3]},$_q_e$$.ma_nvt4={$in:["",null,...$vt$$.ma_nvt4]},$_q_e$$.ma_danh_muc={$in:["",null,$vt$$.ma_danh_muc]},dmgiaban.find($_q_e$$).sort($sort$$).lean().exec(async($e$$,$giabans$$)=>{if($e$$)return $callback$$($e$$);$callback$$(null,$giabans$$)}))})})},discount_vt:$callback$jscomp$0$$=>
31
+ {if(0==$condition$$.get_discount)return $callback$jscomp$0$$(null,[]);setImmediate(async()=>{let $query_ck$$=_.cloneDeep($query$$);$query_ck$$.$and.push({$or:[{ap_dung_lan_mua_tu_thu:{$in:[0,null]}},{ap_dung_lan_mua_tu_thu:{$lte:$lan_mua_thu$$}}]});$query_ck$$.$and.push({$or:[{ap_dung_lan_mua_den_thu:{$in:[0,null]}},{ap_dung_lan_mua_den_thu:{$gte:$lan_mua_thu$$}}]});void 0!=$condition$$.online&&($query_ck$$.online=$condition$$.online);void 0!=$condition$$.offline&&($query_ck$$.offline=$condition$$.offline);
32
+ delete $query_ck$$.ma_kh;delete $query_ck$$.nh_kh;delete $query_ck$$.nh_kh2;delete $query_ck$$.nh_kh3;delete $query_ck$$.nh_kh4;delete $query_ck$$.nh_kh5;delete $query_ck$$.ma_tt1;delete $query_ck$$.ma_tt2;delete $query_ck$$.ma_tt3;$query_ck$$.$and&&0==$query_ck$$.$and.length&&delete $query_ck$$.$and;let $chietkhaus$$;try{$chietkhaus$$=await new Promise(($resolve$$,$reject$$)=>{async.parallel({cktheovt:$callback$$=>{let $_query$$=_.cloneDeep($query_ck$$);dmchietkhau.find($_query$$).sort($sort$$).lean().exec(async($e$$,
33
+ $chietkhaus$$)=>{if($e$$)return $callback$$($e$$);$callback$$(null,$chietkhaus$$)})},cktheonvt:$callback$$=>{let $_q$$=_.cloneDeep($query_ck$$);$_q$$.ma_vt={$in:["",null]};$_q$$.ma_nvt={$in:["",null,$vt$$.ma_nvt]};$_q$$.ma_nvt2={$in:["",null,...$vt$$.ma_nvt2]};$_q$$.ma_nvt3={$in:["",null,...$vt$$.ma_nvt3]};$_q$$.ma_nvt4={$in:["",null,...$vt$$.ma_nvt4]};$_q$$.ma_danh_muc={$in:["",null,$vt$$.ma_danh_muc]};dmchietkhau.find($_q$$).sort($sort$$).lean().exec(async($e$$,$chietkhaus$$)=>{if($e$$)return $callback$$($e$$);
34
+ $callback$$(null,$chietkhaus$$)})}},async($chietkhaus$jscomp$3_e$$,$rs$$)=>{if($chietkhaus$jscomp$3_e$$)return $reject$$($chietkhaus$jscomp$3_e$$);$chietkhaus$jscomp$3_e$$=$rs$$.cktheovt.concat($rs$$.cktheonvt);$resolve$$($chietkhaus$jscomp$3_e$$)})})}catch($e$$){return $callback$jscomp$0$$($e$$)}$chietkhaus$$=$chietkhaus$$.filter($ck$$=>(!$ck$$.ma_kh||$condition$$.ma_kh==$ck$$.ma_kh)&&(!$ck$$.nh_kh||($condition$$.nh_kh_me||[]).find($nh$$=>$ck$$.nh_kh==$nh$$))&&(null==$ck$$.nh_kh2||0==$ck$$.nh_kh2.length||
35
+ ($condition$$.nh_kh2_me||[]).find($nh$$=>0<=$ck$$.nh_kh2.indexOf($nh$$)))&&(null==$ck$$.nh_kh3||0==$ck$$.nh_kh3.length||($condition$$.nh_kh3_me||[]).find($nh$$=>0<=$ck$$.nh_kh3.indexOf($nh$$)))&&(null==$ck$$.nh_kh4||0==$ck$$.nh_kh4.length||($condition$$.nh_kh4_me||[]).find($nh$$=>0<=$ck$$.nh_kh4.indexOf($nh$$)))&&(null==$ck$$.nh_kh5||0==$ck$$.nh_kh5.length||($condition$$.nh_kh5_me||[]).find($nh$$=>0<=$ck$$.nh_kh5.indexOf($nh$$)))&&(!$ck$$.ma_tt1||$condition$$.ma_tt1==$ck$$.ma_tt1)&&(!$ck$$.ma_tt2||
36
+ $condition$$.ma_tt2==$ck$$.ma_tt2)&&(!$ck$$.ma_tt3||$condition$$.ma_tt3==$ck$$.ma_tt3)&&(!$ck$$.nh_tt||($condition$$.nh_tt_me||[]).find($nh$$=>$ck$$.nh_tt==$nh$$))&&(null==$ck$$.nh_tt2||0==$ck$$.nh_tt2.length||($condition$$.nh_tt2_me||[]).find($nh$$=>0<=$ck$$.nh_tt2.indexOf($nh$$)))&&(null==$ck$$.nh_tt3||0==$ck$$.nh_tt3.length||($condition$$.nh_tt3_me||[]).find($nh$$=>0<=$ck$$.nh_tt3.indexOf($nh$$)))&&(null==$ck$$.nh_tt4||0==$ck$$.nh_tt4.length||($condition$$.nh_tt4_me||[]).find($nh$$=>0<=$ck$$.nh_tt4.indexOf($nh$$)))&&
37
+ (null==$ck$$.nh_tt5||0==$ck$$.nh_tt5.length||($condition$$.nh_tt5_me||[]).find($nh$$=>0<=$ck$$.nh_tt5.indexOf($nh$$))));await getSLDaBanCKs($chietkhaus$$);$chietkhaus$$=$chietkhaus$$.filter($ck$$=>!$ck$$.tong_sl_ap_dung||!$ck$$.sl_da_ban||0<$ck$$.sl_con_lai);$callback$jscomp$0$$(null,$chietkhaus$$)})},promotion_vt:$callback$jscomp$0$$=>{if(0==$condition$$.get_promotion)return $callback$jscomp$0$$(null,[]);setImmediate(async()=>{let $query_promotion$$=_.cloneDeep($query$$);void 0!=$condition$$.online&&
38
+ ($query_promotion$$.online=$condition$$.online);void 0!=$condition$$.offline&&($query_promotion$$.offline=$condition$$.offline);let $sort_km$$={stt_uu_tien:1,sl_tu:-1,ma_vt:-1,ma_nvt:-1};$query_promotion$$.$and&&0==$query_promotion$$.$and.length&&delete $query_promotion$$.$and;delete $query_promotion$$.ma_kh;delete $query_promotion$$.nh_kh;delete $query_promotion$$.nh_kh2;delete $query_promotion$$.nh_kh3;delete $query_promotion$$.nh_kh4;delete $query_promotion$$.nh_kh5;delete $query_promotion$$.ma_tt1;
39
+ delete $query_promotion$$.ma_tt2;delete $query_promotion$$.ma_tt3;try{var $khuyenmais_khuyenmais_tm$$=await new Promise(($resolve$$,$reject$$)=>{async.parallel({theovt:$callback$$=>{dmkhuyenmai.find($query_promotion$$).sort($sort_km$$).lean().exec(($e$$,$khuyenmai$$)=>{if($e$$)return $callback$$($e$$);$callback$$(null,$khuyenmai$$)})},theonvt:$callback$$=>{let $_q$$=_.cloneDeep($query_promotion$$);$_q$$.ma_vt={$in:["",null]};$_q$$.ma_nvt={$in:["",null,$vt$$.ma_nvt]};$_q$$.ma_nvt2={$in:["",null,...$vt$$.ma_nvt2]};
40
+ $_q$$.ma_nvt3={$in:["",null,...$vt$$.ma_nvt3]};$_q$$.ma_danh_muc={$in:["",null,$vt$$.ma_danh_muc]};dmkhuyenmai.find($_q$$).sort($sort_km$$).lean().exec(($e$$,$khuyenmai$$)=>{if($e$$)return $callback$$($e$$);$callback$$(null,$khuyenmai$$)})}},($e$$,$rs$$)=>{if($e$$)return $reject$$($e$$);$e$$=$rs$$.theovt.concat($rs$$.theonvt);$resolve$$($e$$)})})}catch($e$$){return $callback$jscomp$0$$($e$$)}$khuyenmais_khuyenmais_tm$$=$khuyenmais_khuyenmais_tm$$.filter($ck$$=>(!$ck$$.ma_kh||$condition$$.ma_kh==$ck$$.ma_kh)&&
41
+ (!$ck$$.nh_kh||($condition$$.nh_kh_me||[]).find($nh$$=>$ck$$.nh_kh==$nh$$))&&(null==$ck$$.nh_kh2||0==$ck$$.nh_kh2.length||($condition$$.nh_kh2_me||[]).find($nh$$=>0<=$ck$$.nh_kh2.indexOf($nh$$)))&&(null==$ck$$.nh_kh3||0==$ck$$.nh_kh3.length||($condition$$.nh_kh3_me||[]).find($nh$$=>0<=$ck$$.nh_kh3.indexOf($nh$$)))&&(null==$ck$$.nh_kh4||0==$ck$$.nh_kh4.length||($condition$$.nh_kh4_me||[]).find($nh$$=>0<=$ck$$.nh_kh4.indexOf($nh$$)))&&(null==$ck$$.nh_kh5||0==$ck$$.nh_kh5.length||($condition$$.nh_kh5_me||
42
+ []).find($nh$$=>0<=$ck$$.nh_kh5.indexOf($nh$$)))&&(!$ck$$.ma_tt1||$condition$$.ma_tt1==$ck$$.ma_tt1)&&(!$ck$$.ma_tt2||$condition$$.ma_tt2==$ck$$.ma_tt2)&&(!$ck$$.ma_tt3||$condition$$.ma_tt3==$ck$$.ma_tt3)&&(!$ck$$.nh_tt||($condition$$.nh_tt_me||[]).find($nh$$=>$ck$$.nh_tt==$nh$$))&&(null==$ck$$.nh_tt2||0==$ck$$.nh_tt2.length||($condition$$.nh_tt2_me||[]).find($nh$$=>0<=$ck$$.nh_tt2.indexOf($nh$$)))&&(null==$ck$$.nh_tt3||0==$ck$$.nh_tt3.length||($condition$$.nh_tt3_me||[]).find($nh$$=>0<=$ck$$.nh_tt3.indexOf($nh$$)))&&
43
+ (null==$ck$$.nh_tt4||0==$ck$$.nh_tt4.length||($condition$$.nh_tt4_me||[]).find($nh$$=>0<=$ck$$.nh_tt4.indexOf($nh$$)))&&(null==$ck$$.nh_tt5||0==$ck$$.nh_tt5.length||($condition$$.nh_tt5_me||[]).find($nh$$=>0<=$ck$$.nh_tt5.indexOf($nh$$))));$callback$jscomp$0$$(null,$khuyenmais_khuyenmais_tm$$)})}},async($e$jscomp$13_g$jscomp$12_giabans$$,$rs$$)=>{if($e$jscomp$13_g$jscomp$12_giabans$$)return $fn$$($e$jscomp$13_g$jscomp$12_giabans$$);if(0==$condition$$.get_price)$rs$$.price={};else{$vt$$.ma_nt0||($vt$$.ma_nt0=
44
+ "VND");!(0<$rs$$.giabans.length)||$rs$$.giabans[0].sl_tu||$rs$$.giabans[0].sl_den||$rs$$.giabans[0].t_sl_tu||$rs$$.giabans[0].t_sl_den||($rs$$.giabans=[$rs$$.giabans[0]]);$e$jscomp$13_g$jscomp$12_giabans$$=[];for(let $g$$ of $rs$$.giabans)$g$$.sl_tu=$g$$.sl_tu||0,$g$$.sl_den=$g$$.sl_den||0,$g$$.t_sl_tu=$g$$.t_sl_tu||0,$g$$.t_sl_den=$g$$.t_sl_den||0,$e$jscomp$13_g$jscomp$12_giabans$$.find($_g$$=>$_g$$.sl_tu===$g$$.sl_tu&&$_g$$.sl_den===$g$$.sl_den&&$_g$$.t_sl_tu===$g$$.t_sl_tu&&$_g$$.t_sl_den===$g$$.t_sl_den)||
45
+ $e$jscomp$13_g$jscomp$12_giabans$$.push($g$$);$rs$$.giabans=$e$jscomp$13_g$jscomp$12_giabans$$;$rs$$.giabans.find($g$$=>!$g$$.sl_tu)||($rs$$.giabans=[...$rs$$.giabans,{gia_ban_le:$vt$$.gia_ban_le0||$vt$$.gia_ban_le||0,gia_ban_buon:$vt$$.gia_ban_buon0||$vt$$.gia_ban_buon||0,ma_nt:$vt$$.ma_nt0,gia_ban_chua_thue:$vt$$.gia_ban_chua_thue,t_sl_tu:0,t_sl_den:0,sl_tu:0,sl_den:0<$rs$$.giabans.length?$rs$$.giabans.sort(($a$$,$b$$)=>$a$$.sl_tu-$b$$.sl_tu)[0].sl_tu-.001:0}]);for($g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$ of $rs$$.giabans)$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.ma_nt||
46
+ ($g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.ma_nt="VND"),$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.ma_thue=$vt$$.ma_thue,$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.thue_suat=$vt$$.thue_suat;await $rs$$.giabans.asyncJoinModel2($condition$$.id_app,"currency",{where:"ma_nt",fields:["ty_gia"]});await [$vt$$].asyncJoinModel2($condition$$.id_app,"currency",{where:{ma_nt0:"ma_nt"},fields:[{ty_gia0:"ty_gia"}]});$vt$$.ma_thue&&await [$vt$$].asyncJoinModel2($condition$$.id_app,
47
+ "vat",{where:{ma_thue:"ma_thue"},fields:[{thue_suat:"thue_suat"}]});$rs$$.giabans.forEach($g$$=>{$par$$&&$par$$.ma_nt&&$par$$.ty_gia&&$g$$.ma_nt!==$par$$.ma_nt?($g$$.gia_ban_le0_qd=utils.round(($vt$$.gia_ban_le0||0)*$vt$$.ty_gia0/$par$$.ty_gia,2),$g$$.gia_ban_buon0_qd=utils.round(($vt$$.gia_ban_buon0||0)*$vt$$.ty_gia0/$par$$.ty_gia,2),$g$$.gia_ban_le=utils.round($g$$.gia_ban_le*$g$$.ty_gia/$par$$.ty_gia,2),$g$$.gia_ban_buon=utils.round(($g$$.gia_ban_buon||0)*$g$$.ty_gia/$par$$.ty_gia,2),$g$$.ma_nt=
48
+ $par$$.ma_nt,$g$$.ty_gia=$par$$.ty_gia):($g$$.gia_ban_le0_qd=$vt$$.gia_ban_le0||0,$g$$.gia_ban_buon0_qd=$vt$$.gia_ban_buon0||0)});for($g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$=0;$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$<$rs$$.giabans.length;$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$++)$e$jscomp$13_g$jscomp$12_giabans$$=$rs$$.giabans[$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$],$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_chua_thue?($e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_le0_qd_ct=
49
+ $e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_le0_qd,$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_buon0_qd_ct=$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_buon0_qd,$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_le_ct=$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_le,$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_buon_ct=$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_buon,$vt$$.ma_thue&&($vt$$.thue_suat=$vt$$.thue_suat||0,$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_le0_qd=utils.round($e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_le0_qd_ct*
50
+ (1+$vt$$.thue_suat/100),2),$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_buon0_qd=utils.round($e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_buon0_qd_ct*(1+$vt$$.thue_suat/100),2),$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_le=utils.round($e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_le_ct*(1+$vt$$.thue_suat/100),2),$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_buon=utils.round($e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_buon_ct*(1+$vt$$.thue_suat/100),2))):($e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_le0_qd_ct=
51
+ $e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_le0_qd,$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_buon0_qd_ct=$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_buon0_qd,$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_le_ct=$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_le,$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_buon_ct=$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_buon,$vt$$.ma_thue&&($vt$$.thue_suat=$vt$$.thue_suat||0,$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_le0_qd_ct=utils.round($e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_le0_qd/
52
+ (1+$vt$$.thue_suat/100),2),$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_buon0_qd_ct=utils.round($e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_buon0_qd/(1+$vt$$.thue_suat/100),2),$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_le_ct=utils.round($e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_le/(1+$vt$$.thue_suat/100),2),$e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_buon_ct=utils.round($e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_buon/(1+$vt$$.thue_suat/100),2))),delete $e$jscomp$13_g$jscomp$12_giabans$$.gia_ban_chua_thue,
53
+ $e$jscomp$13_g$jscomp$12_giabans$$.he_so_qd=$he_so_qd$$,$condition$$.ma_dvt_sd&&$rs$$.giabans.forEach($g$$=>{$g$$.gia_ban_le=utils.round($g$$.gia_ban_le*$he_so_qd$$,round);$g$$.gia_ban_buon=utils.round($g$$.gia_ban_buon*$he_so_qd$$,round);$g$$.gia_ban_le0_qd_ct=utils.round($g$$.gia_ban_le0_qd_ct*$he_so_qd$$,round);$g$$.gia_ban_buon0_qd_ct=utils.round($g$$.gia_ban_buon0_qd_ct*$he_so_qd$$,round);$g$$.gia_ban_le_ct=utils.round($g$$.gia_ban_le_ct*$he_so_qd$$,round);$g$$.gia_ban_buon_ct=utils.round($g$$.gia_ban_buon_ct*
54
+ $he_so_qd$$,round);$g$$.ma_dvt=$condition$$.ma_dvt_sd;$g$$.he_so_qd=$he_so_qd$$});var $g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$=$rs$$.giabans.filter($g$$=>$g$$.sl_tu<=$condition$$.so_luong&&(!$g$$.sl_den||$g$$.sl_den>$condition$$.so_luong)&&$g$$.t_sl_tu<=$condition$$.t_so_luong&&(!$g$$.t_sl_den||$g$$.t_sl_den>$condition$$.t_so_luong)&&(!$g$$.t_sl_ntt_tu||$g$$.t_sl_ntt_tu<=$condition$$.t_so_luong_ntt)&&(!$g$$.t_sl_ntt_den||$g$$.t_sl_ntt_den>$condition$$.t_so_luong_ntt)&&(!$g$$.t_tien_ntt_tu||
55
+ $g$$.t_tien_ntt_tu<=$condition$$.t_tien_ntt)&&(!$g$$.t_tien_ntt_den||$g$$.t_tien_ntt_den>$condition$$.t_tien_ntt));$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$=0<$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.length?$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$[0]:$rs$$.giabans[0]||{};$rs$$.price={gia_ban_le0_qd:$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.gia_ban_le0_qd,gia_ban_buon0_qd:$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.gia_ban_buon0_qd,gia_ban_le:$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.gia_ban_le,
56
+ gia_ban_buon:$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.gia_ban_buon,gia_ban_le0_qd_ct:$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.gia_ban_le0_qd_ct,gia_ban_buon0_qd_ct:$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.gia_ban_buon0_qd_ct,gia_ban_le_ct:$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.gia_ban_le_ct,gia_ban_buon_ct:$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.gia_ban_buon_ct,ma_nt:$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.ma_nt,
57
+ ty_gia:$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.ty_gia,ma_thue:$vt$$.ma_thue,thue_suat:$vt$$.thue_suat,prices:$rs$$.giabans}}if(0!=$condition$$.get_discount){$rs$$.discount=$rs$$.discount_vt;$rs$$.discount.forEach($r$$=>{$r$$.id_cs=$r$$._id});$rs$$.price.discount=$rs$$.discount.sort(function($a$$,$b$$){return($b$$.ap_dung_lan_mua_tu_thu||0)>($a$$.ap_dung_lan_mua_tu_thu||0)?1:$b$$.ty_le_ck-$a$$.ty_le_ck});let $discounts$$=[];$rs$$.price.discount.forEach($d$$=>{$d$$.tien_ck&&$rs$$.price.gia_ban_le_ct&&
58
+ ($d$$.ty_le_ck=$d$$.tien_ck/$rs$$.price.gia_ban_le_ct*100);$d$$.sl_tu=$d$$.sl_tu||0;$d$$.sl_den=$d$$.sl_den||0;$d$$.gt_hd_tu=$d$$.gt_hd_tu||0;$d$$.gt_hd_den=$d$$.gt_hd_den||0;$discounts$$.push($d$$)});$rs$$.price.discount=$discounts$$;let $gt_hd$$=$condition$$.t_gt_hd||0,$default_cks$$=$discounts$$.filter($d$$=>(!$d$$.gt_hd_tu||$d$$.gt_hd_tu<$gt_hd$$)&&(!$d$$.gt_hd_den||$d$$.gt_hd_den>=$gt_hd$$)&&!$d$$.mua_them&&$condition$$.so_luong>=$d$$.sl_tu&&(!$d$$.sl_den||$d$$.sl_den>$condition$$.so_luong)&&
59
+ (!$d$$.t_sl_tu||$d$$.t_sl_tu<=$condition$$.t_so_luong)&&(!$d$$.t_sl_den||$d$$.t_sl_den>$condition$$.t_so_luong)&&(!$d$$.t_sl_ntt_tu||$d$$.t_sl_ntt_tu<=$condition$$.t_so_luong_ntt)&&(!$d$$.t_sl_ntt_den||$d$$.t_sl_ntt_den>$condition$$.t_so_luong_ntt)&&(!$d$$.t_tien_ntt_tu||$d$$.t_tien_ntt_tu<=$condition$$.t_tien_ntt)&&(!$d$$.t_tien_ntt_den||$d$$.t_tien_ntt_den>$condition$$.t_tien_ntt));var $default_ck_groups$jscomp$2_i$$;$condition$$.id_cs_ck&&($default_ck_groups$jscomp$2_i$$=$default_cks$$.find($d$$=>
60
+ $d$$._id.toString()==$condition$$.id_cs_ck));!$default_ck_groups$jscomp$2_i$$&&0<$default_cks$$.length&&($default_ck_groups$jscomp$2_i$$=[...(new Set($default_cks$$.map($d$$=>$d$$.ma_nhom||"")))].map($ma_nhom$$=>({ma_nhom:$ma_nhom$$,cks:$default_cks$$.filter($d$$=>($d$$.ma_nhom||"")==($ma_nhom$$||""))})),$default_ck_groups$jscomp$2_i$$=await calcDefaultDiscount($condition$$.id_app,$default_ck_groups$jscomp$2_i$$));$default_ck_groups$jscomp$2_i$$&&(underscore.extend($rs$$.price,{sl_tu:$default_ck_groups$jscomp$2_i$$.sl_tu,
61
+ ty_le_ck:$default_ck_groups$jscomp$2_i$$.ty_le_ck||0,tien_ck:$default_ck_groups$jscomp$2_i$$.tien_ck,gt_hd_tu:$default_ck_groups$jscomp$2_i$$.gt_hd_tu,gt_hd_den:$default_ck_groups$jscomp$2_i$$.gt_hd_den,sl_ap_dung:$default_ck_groups$jscomp$2_i$$.sl_ap_dung,so_tien_max:$default_ck_groups$jscomp$2_i$$.so_tien_max,id_cs:$default_ck_groups$jscomp$2_i$$._id}),$rs$$.tien_ck_tmp=$rs$$.tien_ck,$rs$$.tien_ck_tmp||($rs$$.tien_ck_tmp=utils.round($rs$$.price.gia_ban_le_ct*$rs$$.ty_le_ck/100,2)),$rs$$.price.gia_ban_le_sau_ck_tmp=
62
+ Math.max(0,$rs$$.price.gia_ban_le-$rs$$.tien_ck_tmp));$default_ck_groups$jscomp$2_i$$=underscore.filter($rs$$.discount,$d$$=>1<$d$$.sl_tu).sort(function($a$$,$b$$){return $b$$.ty_le_ck-$a$$.ty_le_ck});0<$default_ck_groups$jscomp$2_i$$.length&&($rs$$.price.ck_sl_tu2=$default_ck_groups$jscomp$2_i$$)}if(0!=$condition$$.get_promotion){$rs$$.promotion=$rs$$.promotion_vt;$rs$$.promotion.forEach($r$$=>{$r$$.id_cs=$r$$._id});$rs$$.promotion&&$rs$$.promotion.forEach($p$$=>{delete $p$$.status;delete $p$$.user_created;
63
+ delete $p$$.user_updated;delete $p$$.date_created;delete $p$$.date_updated;delete $p$$.exfields;delete $p$$.id_app;delete $p$$.dmkh;delete $p$$.dmkho;delete $p$$.dmnvt;delete $p$$.dmvt;delete $p$$.__v});$rs$$.price.promotion=$rs$$.promotion||[];$condition$$.ma_ct?($rs$$.price.promotion=$rs$$.price.promotion.filter($p$$=>!$p$$.chi_su_dung_cho_ct||0<=$p$$.chi_su_dung_cho_ct.toUpperCase().split(",").indexOf($condition$$.ma_ct.toUpperCase())),$rs$$.price.promotion=$rs$$.price.promotion.filter($p$$=>!$p$$.khong_su_dung_cho_ct||
64
+ 0>$p$$.khong_su_dung_cho_ct.toUpperCase().split(",").indexOf($condition$$.ma_ct.toUpperCase()))):$rs$$.price.promotion=$rs$$.price.promotion.filter($p$$=>!$p$$.chi_su_dung_cho_ct&&!$p$$.khong_su_dung_cho_ct);for($default_ck_groups$jscomp$2_i$$=0;$default_ck_groups$jscomp$2_i$$<$rs$$.price.promotion.length;$default_ck_groups$jscomp$2_i$$++)$g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$=$rs$$.price.promotion[$default_ck_groups$jscomp$2_i$$],await ($g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.details_km||
65
+ []).asyncJoinModel2($condition$$.id_app,dmvt,{where:"ma_vt",fields:["ten_vt","picture"]}),await ($g$jscomp$10_gia_ban_mac_dinh_giabanstheosoluong_i_p$$.details_km||[]).filter($d$$=>$d$$.ma_tt1).asyncJoinModel2($condition$$.id_app,"dmtt",{where:$item$$=>({ma_vt:$item$$.ma_vt,ma_tt:$item$$.ma_tt1,loai_tt:"1"}),setFields:($item$$,$ref$$)=>{$item$$.thuoc_tinh=$ref$$}});let $promotions_df$$=$rs$$.price.promotion.filter($p$$=>$p$$.details_km&&0<$p$$.details_km.length&&$p$$.sl_tu<=$condition$$.so_luong&&
66
+ (!$p$$.sl_den||$p$$.sl_den>=$condition$$.so_luong||$p$$.sl_den===$p$$.sl_tu)&&(!$p$$.t_sl_tu||$p$$.t_sl_tu<=$condition$$.t_so_luong)&&(!$p$$.t_sl_den||$p$$.t_sl_den>$condition$$.t_so_luong)&&(!$p$$.t_sl_ntt_tu||$p$$.t_sl_ntt_tu<=$condition$$.t_so_luong_ntt)&&(!$p$$.t_sl_ntt_den||$p$$.t_sl_ntt_den>$condition$$.t_so_luong_ntt)&&(!$p$$.t_tien_ntt_tu||$p$$.t_tien_ntt_tu<=$condition$$.t_tien_ntt)&&(!$p$$.t_tien_ntt_den||$p$$.t_tien_ntt_den>$condition$$.t_tien_ntt));var $groups$$;$condition$$.id_cs&&($groups$$=
67
+ $promotions_df$$.find($d$$=>$d$$._id.toString()==$condition$$.id_cs));!$groups$$&&0<$promotions_df$$.length&&($promotions_df$$.forEach($p$$=>{$p$$.t_sl_km=($p$$.details_km||[]).map($d$$=>$d$$.sl_km||0).reduce(($a$$,$b$$)=>$a$$+$b$$,0)}),$groups$$=[...(new Set($promotions_df$$.map($d$$=>$d$$.ma_nhom||"")))].map($ma_nhom$$=>({ma_nhom:$ma_nhom$$,cks:$promotions_df$$.filter($d$$=>($d$$.ma_nhom||"")==$ma_nhom$$)})),$groups$$=await calcDefaultPromotion($condition$$.id_app,$groups$$));$rs$$.price.default_promotion=
68
+ $groups$$}$fn$$(null,$rs$$.price)})}else $fn$$(`Condition required ma_vt,id_app. Current condition ${JSON.stringify($condition$$)}`)};