flexbiz-server 12.6.11 → 12.6.13
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.
- package/package.json +11 -3
- package/server/app.js +11 -10
- package/server/auths/local.js +6 -6
- package/server/cluster.js +11 -12
- package/server/controllers/controller.js +14 -3
- package/server/controllers/controllerRPT.js +4 -4
- package/server/controllers/controllerUtils.js +12 -12
- package/server/controllers/createHandler.js +20 -21
- package/server/controllers/deleteHandler.js +3 -3
- package/server/controllers/findHandler.js +49 -48
- package/server/controllers/updateHandler.js +25 -26
- package/server/controllers/viewHandler.js +14 -14
- package/server/flow/handlers.js +2 -2
- package/server/flow/nodes/aiAnalysis.js +7 -7
- package/server/flow/nodes/checkAction.js +7 -0
- package/server/flow/nodes/email.js +7 -8
- package/server/flow/utils.js +58 -1
- package/server/global.js +1 -1
- package/server/libs/WorkerStaticPool.js +19 -18
- package/server/libs/cdpskh.js +3 -2
- package/server/libs/cdpstk.js +11 -11
- package/server/libs/cktk.js +3 -3
- package/server/libs/ckvt.js +10 -10
- package/server/libs/ckvtnpp.js +6 -5
- package/server/libs/ckvttt.js +5 -5
- package/server/libs/ctvt.js +6 -6
- package/server/libs/dkcn.js +1 -1
- package/server/libs/dktk.js +4 -3
- package/server/libs/docs.js +31 -25
- package/server/libs/dtbanletheosp.js +4 -1
- package/server/libs/email.js +2 -2
- package/server/libs/executiveDashboard.js +8 -0
- package/server/libs/getGiaban.js +2 -2
- package/server/libs/kpistatus.js +38 -36
- package/server/libs/kqchamcong.js +12 -0
- package/server/libs/kqhdkd.js +8 -0
- package/server/libs/post-book.js +4 -3
- package/server/libs/post-socai.js +2 -2
- package/server/libs/post-sokho.js +5 -5
- package/server/libs/redis-cache.js +0 -0
- package/server/libs/sctcnkh.js +18 -0
- package/server/libs/sessionContext.js +6 -11
- package/server/libs/socaitk.js +9 -0
- package/server/libs/thnxt.js +2 -1
- package/server/libs/tinhgiatb.js +4 -4
- package/server/libs/tuoinophaithu.js +11 -10
- package/server/libs/tuoinophaitra.js +12 -10
- package/server/libs/utils.js +8 -4
- package/server/libs/vectorService.js +12 -8
- package/server/models/actionLog.js +2 -0
- package/server/models/aimemory.js +1 -0
- package/server/models/app.js +3 -2
- package/server/models/approve.js +4 -4
- package/server/models/chat_message.js +2 -0
- package/server/models/chat_session.js +2 -0
- package/server/models/checkin.js +2 -2
- package/server/models/chitietluongds.js +4 -3
- package/server/models/customer.js +8 -9
- package/server/models/data_list_config.js +2 -2
- package/server/models/dmchietkhau.js +3 -4
- package/server/models/dmchietkhauhd.js +3 -4
- package/server/models/dmdiemthuong.js +2 -4
- package/server/models/dmhoahonghd.js +2 -3
- package/server/models/dmhoahongnpp.js +2 -3
- package/server/models/dmletet.js +2 -2
- package/server/models/dmphatdichvu.js +1 -2
- package/server/models/filechunk.js +2 -2
- package/server/models/hd2.js +9 -11
- package/server/models/hd3.js +10 -11
- package/server/models/listinfo.js +3 -1
- package/server/models/pc0.js +4 -4
- package/server/models/pn1.js +9 -11
- package/server/models/pn2.js +3 -3
- package/server/models/pnc.js +9 -10
- package/server/models/pnh.js +5 -6
- package/server/models/pnk.js +7 -7
- package/server/models/pxc.js +9 -10
- package/server/models/pxh.js +6 -7
- package/server/models/pxk.js +7 -8
- package/server/models/schedule.js +17 -16
- package/server/models/sokho.js +10 -11
- package/server/models/step.js +1 -1
- package/server/modules/lists/bg-cdvt.js +1 -1
- package/server/modules/lists/bg-cdvtnpp.js +1 -1
- package/server/modules/lists/ls-chat_session.js +5 -0
- package/server/modules/lists/ls-checkin.js +11 -12
- package/server/modules/lists/ls-chitietluongds.js +2 -2
- package/server/modules/lists/ls-customer.js +20 -20
- package/server/modules/lists/ls-dmnv.js +12 -11
- package/server/modules/lists/ls-file.js +5 -5
- package/server/modules/lists/ls-mailsent.js +3 -3
- package/server/modules/lists/ls-warranty.js +3 -4
- package/server/modules/reports/calc-tinhluong.js +42 -40
- package/server/modules/reports/rp-dtbanlekempk.js +1 -1
- package/server/modules/reports/rp-dtbanletheoctkempk.js +13 -13
- package/server/modules/reports/rp-kgchamcong.js +1 -12
- package/server/modules/reports/rp-kqhdkd.js +1 -7
- package/server/modules/reports/rp-phanbochitienchohoadon.js +1 -1
- package/server/modules/reports/rp-ptcttct.js +2 -2
- package/server/modules/reports/rp-sctcnkh.js +4 -19
- package/server/modules/reports/rp-socaitk.js +1 -8
- package/server/modules/systems/sys-app.js +20 -19
- package/server/modules/vouchers/vo-hd2.js +71 -85
- package/server/modules/vouchers/vo-hd3.js +15 -21
- package/server/modules/vouchers/vo-pbl.js +48 -48
- package/server/modules/vouchers/vo-pc1.js +11 -11
- package/server/modules/vouchers/vo-pc2.js +13 -12
- package/server/modules/vouchers/vo-pgh.js +12 -15
- package/server/modules/vouchers/vo-pn1.js +27 -33
- package/server/modules/vouchers/vo-pnc.js +14 -15
- package/server/modules/vouchers/vo-pnh.js +12 -15
- package/server/modules/vouchers/vo-pnk.js +11 -15
- package/server/modules/vouchers/vo-po1.js +0 -0
- package/server/modules/vouchers/vo-pxc.js +24 -22
- package/server/modules/vouchers/vo-pxh.js +13 -22
- package/server/modules/vouchers/vo-pxk.js +11 -16
- package/server/route.js +32 -32
- package/server/workers/inputWorker.js +8 -8
- package/server/workers/reportWorker.js +3 -4
- package/server/workers/sendEmail.js +11 -11
- package/server/workers/worker-utils.js +3 -1
- package/server/actions/mailtemplate.js +0 -142
- package/server/actions/schedule.js +0 -23
- package/server/libs/schedule.js +0 -18
- package/server/models/bds_area.js +0 -4
- package/server/models/bds_block.js +0 -3
- package/server/models/bds_building.js +0 -4
- package/server/models/bds_floor.js +0 -3
- package/server/models/bds_floordetail.js +0 -9
- package/server/models/bds_nhadat.js +0 -13
- package/server/models/bds_nhadat_moigioi_ban.js +0 -3
- package/server/models/bds_nhomnhadat.js +0 -4
- package/server/models/bds_phanloainhadat.js +0 -3
- package/server/models/campaign.js +0 -6
- package/server/models/form.js +0 -3
- package/server/models/formvalue.js +0 -3
- package/server/models/hlink.js +0 -2
- package/server/models/hlinkvalue.js +0 -2
- package/server/models/kbm_bcdkt.js +0 -4
- package/server/models/kbm_kqhdkd.js +0 -3
- package/server/models/kbm_lcttgt.js +0 -5
- package/server/models/kbm_lctttt.js +0 -4
- package/server/models/kbm_pttct.js +0 -4
- package/server/models/kbm_tkgtgt.js +0 -5
- package/server/models/mailschedule.js +0 -2
- package/server/models/waitevent.js +0 -2
- package/server/modules/lists/ls-bds_area.js +0 -3
- package/server/modules/lists/ls-bds_block.js +0 -1
- package/server/modules/lists/ls-bds_building.js +0 -3
- package/server/modules/lists/ls-bds_dmnhbds.js +0 -6
- package/server/modules/lists/ls-bds_floor.js +0 -2
- package/server/modules/lists/ls-bds_floordetail.js +0 -19
- package/server/modules/lists/ls-bds_nhadat.js +0 -19
- package/server/modules/lists/ls-bds_nhadat_moigioi_ban.js +0 -9
- package/server/modules/lists/ls-bds_nhomnhadat.js +0 -1
- package/server/modules/lists/ls-bds_phanloainhadat.js +0 -1
- package/server/modules/lists/ls-campaign.js +0 -1
- package/server/modules/lists/ls-dmnhnd.js +0 -1
- package/server/modules/lists/ls-formvalue.js +0 -1
- package/server/modules/lists/ls-hlink.js +0 -1
- package/server/modules/lists/ls-hlinkvalue.js +0 -1
- package/server/modules/lists/ls-mailschedule.js +0 -7
- package/server/modules/lists/ls-waitevent.js +0 -1
- package/server/modules/public/form.js +0 -7
- package/server/modules/public/hlink.js +0 -3
|
@@ -3,15 +3,15 @@ global.getModel("dmtt"),Dmban=global.getModel("dmban"),dmphi=global.getModel("dm
|
|
|
3
3
|
currency=global.getModel("currency"),vat=global.getModel("vat"),Wallet=global.getModel("wallet"),dmchietkhauhd=global.getModel("dmchietkhauhd"),dmkhuyenmaihd=global.getModel("dmkhuyenmaihd"),{QRPay}=require("vietnam-qr-pay"),khuyenmaihd=async $obj$$=>{if($obj$$.details){var $ckhds_query_t_tien_hang_ct_nt$$=$obj$$.details.csum("tien_hang_ct_nt")+$obj$$.details.csum("tien_hang_options_ct");if($ckhds_query_t_tien_hang_ct_nt$$!==0){var $hieu_luc_tu_i_q_ma_kh_t_ck_nt_t_tt_nt$$=$obj$$.details.csum("tien_ck_nt");
|
|
4
4
|
$hieu_luc_tu_i_q_ma_kh_t_ck_nt_t_tt_nt$$=$ckhds_query_t_tien_hang_ct_nt$$-$hieu_luc_tu_i_q_ma_kh_t_ck_nt_t_tt_nt$$;$obj$$.details=$obj$$.details.filter($d$$=>$d$$.km_yn_for!="khuyenmaihd");$ckhds_query_t_tien_hang_ct_nt$$={id_app:$obj$$.id_app,gt_tu:{$lte:$hieu_luc_tu_i_q_ma_kh_t_ck_nt_t_tt_nt$$},ma_kho:{$in:[void 0,null,"",$obj$$.ma_kho]}};$ckhds_query_t_tien_hang_ct_nt$$.$and=[{$or:[{gt_den:{$in:[0,void 0,null]}},{gt_den:{$gte:$hieu_luc_tu_i_q_ma_kh_t_ck_nt_t_tt_nt$$}}]}];var $hieu_luc_den_q_nh_kh_sl_toi_thieu_tu_ngay$$=
|
|
5
5
|
moment($obj$$.ngay_ct).startOf("date").toDate();$hieu_luc_tu_i_q_ma_kh_t_ck_nt_t_tt_nt$$={$lte:moment($obj$$.ngay_ct).endOf("date").toDate()};$hieu_luc_den_q_nh_kh_sl_toi_thieu_tu_ngay$$={$gte:$hieu_luc_den_q_nh_kh_sl_toi_thieu_tu_ngay$$};$ckhds_query_t_tien_hang_ct_nt$$.hieu_luc_tu=$hieu_luc_tu_i_q_ma_kh_t_ck_nt_t_tt_nt$$;$ckhds_query_t_tien_hang_ct_nt$$.hieu_luc_den=$hieu_luc_den_q_nh_kh_sl_toi_thieu_tu_ngay$$;$hieu_luc_tu_i_q_ma_kh_t_ck_nt_t_tt_nt$$={$in:[void 0,null,"",$obj$$.ma_kh]};$hieu_luc_den_q_nh_kh_sl_toi_thieu_tu_ngay$$=
|
|
6
|
-
{$in:[void 0,null,""]};if($obj$$.ma_kh){var $kh_lan_mua_thu$$=await customer.findOne({id_app:$obj$$.id_app,ma_kh:$obj$$.ma_kh},{nh_kh:1});$kh_lan_mua_thu$$&&$kh_lan_mua_thu$$.nh_kh&&($hieu_luc_den_q_nh_kh_sl_toi_thieu_tu_ngay$$={$in:[void 0,null,"",$kh_lan_mua_thu$$.nh_kh]});($kh_lan_mua_thu$$=await model.countDocuments({id_app:$obj$$.id_app,ma_kh:$obj$$.ma_kh,trang_thai:{$in:["5","6"]}}))||($kh_lan_mua_thu$$=0);$kh_lan_mua_thu$$+=1}$ckhds_query_t_tien_hang_ct_nt$$.$or=[{$and:[{ma_kh:$hieu_luc_tu_i_q_ma_kh_t_ck_nt_t_tt_nt$$},
|
|
6
|
+
{$in:[void 0,null,""]};if($obj$$.ma_kh){var $kh_lan_mua_thu$$=await customer.findOne({id_app:$obj$$.id_app,ma_kh:$obj$$.ma_kh},{nh_kh:1}).lean();$kh_lan_mua_thu$$&&$kh_lan_mua_thu$$.nh_kh&&($hieu_luc_den_q_nh_kh_sl_toi_thieu_tu_ngay$$={$in:[void 0,null,"",$kh_lan_mua_thu$$.nh_kh]});($kh_lan_mua_thu$$=await model.countDocuments({id_app:$obj$$.id_app,ma_kh:$obj$$.ma_kh,trang_thai:{$in:["5","6"]}}))||($kh_lan_mua_thu$$=0);$kh_lan_mua_thu$$+=1}$ckhds_query_t_tien_hang_ct_nt$$.$or=[{$and:[{ma_kh:$hieu_luc_tu_i_q_ma_kh_t_ck_nt_t_tt_nt$$},
|
|
7
7
|
{nh_kh:{$in:["",null,void 0]}}]},{$and:[{nh_kh:$hieu_luc_den_q_nh_kh_sl_toi_thieu_tu_ngay$$},{ma_kh:{$in:["",null,void 0]}}]}];$ckhds_query_t_tien_hang_ct_nt$$.ap_dung_lan_mua_thu={$in:[null,void 0,0,void 0]};$ckhds_query_t_tien_hang_ct_nt$$=await dmkhuyenmaihd.find($ckhds_query_t_tien_hang_ct_nt$$).sort({stt_uu_tien:1,gt_tu:-1,ma_kh:-1,nh_kh:-1,hieu_luc_tu:-1}).lean();for($hieu_luc_tu_i_q_ma_kh_t_ck_nt_t_tt_nt$$=0;$hieu_luc_tu_i_q_ma_kh_t_ck_nt_t_tt_nt$$<$ckhds_query_t_tien_hang_ct_nt$$.length;$hieu_luc_tu_i_q_ma_kh_t_ck_nt_t_tt_nt$$++){let $ckhd$$=
|
|
8
8
|
$ckhds_query_t_tien_hang_ct_nt$$[$hieu_luc_tu_i_q_ma_kh_t_ck_nt_t_tt_nt$$];if($ckhd$$&&$ckhd$$.details_km&&$ckhd$$.details_km.length>0){$hieu_luc_den_q_nh_kh_sl_toi_thieu_tu_ngay$$=$ckhd$$.sl_toi_thieu||0;let $sl_dap_ung$$=0;$hieu_luc_den_q_nh_kh_sl_toi_thieu_tu_ngay$$&&$ckhd$$.vts&&$ckhd$$.vts.length>0&&$ckhd$$.vts.forEach($vt$$=>{var $ds_tien$$=$obj$$.details.filter($d$$=>$d$$.ma_vt===$vt$$.ma_vt&&(!$vt$$.ma_tt1||$vt$$.ma_tt1===$d$$.ma_tt1)&&(!$vt$$.ma_tt2||$vt$$.ma_tt2===$d$$.ma_tt2)&&(!$vt$$.ma_tt3||
|
|
9
9
|
$vt$$.ma_tt3===$d$$.ma_tt3));if($ds_tien$$.length!=0){var $so_luong$$=$ds_tien$$.map($d$$=>$d$$.sl_xuat).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$ds_tien$$=$ds_tien$$.map($d$$=>($d$$.tien_hang_ct_nt||0)-($d$$.tien_ck_nt||0)).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$vt$$.sl_tu&&$so_luong$$<$vt$$.sl_tu||$vt$$.sl_den&&$so_luong$$>$vt$$.sl_den||$vt$$.gt_tu&&$ds_tien$$<$vt$$.gt_tu||$vt$$.gt_den&&$ds_tien$$>$vt$$.gt_den||($sl_dap_ung$$+=1)}});if($hieu_luc_den_q_nh_kh_sl_toi_thieu_tu_ngay$$<=$sl_dap_ung$$){$ckhd$$.details_km.forEach($d$$=>
|
|
10
10
|
{$d$$={...$d$$,km_yn_for:"khuyenmaihd"};$d$$.id_cs=$ckhd$$._id.toString();$d$$.sl_xuat=$d$$.sl_km;$d$$.tien_hang_ct_nt=$d$$.tien_hang_ct=$d$$.tien_hang_nt=$d$$.tien_hang=0;$d$$.tien_ck_nt=$d$$.tien_ck=0;$d$$.ty_le_ck=0;$d$$.tien_nt=$d$$.tien=0;$obj$$.details.push($d$$)});break}}}}}},chietkhauhd=async($user$$,$obj$$)=>{if(!$obj$$.signature){$obj$$.details=$obj$$.details||[];var $t_ck_nt$$=$obj$$.details.csum("tien_ck_nt"),$t_tien_hang_ct_nt$$=$obj$$.details.csum("tien_hang_ct_nt")+$obj$$.details.csum("tien_hang_options_ct");
|
|
11
|
-
$user$$.current_app_info&&($user$$.current_app_info.options||{}).tinh_lai_chiet_khau_pbl!=0&&dmchietkhauhd.tinhChietKhau($user$$,$obj$$.id_app,$obj$$,$t_tien_hang_ct_nt$$-$t_ck_nt$$)}},tinhtienthue
|
|
12
|
-
$detail$$.gia_ban_ct_nt),$detail$$.ty_le_ck&&($detail$$.tien_ck_nt=Math.roundBy($detail$$.tien_hang_ct_nt*$detail$$.ty_le_ck/100)),$detail$$.tien_thue=$detail$$.tien_thue_nt=Math.roundBy(($detail$$.tien_hang_ct_nt-$detail$$.tien_ck_nt)*$detail$$.thue_suat/100))},tinhtongtien=$r$$=>{$r$$.details&&($r$$.details.forEach($d$$=>{$d$$.sl_order=$d$$.sl_order||$d$$.sl_xuat}),$r$$.t_sl_order=$r$$.details.csum("sl_order"),$r$$.t_sl=$r$$.details.csum("sl_xuat"),$r$$.t_tien_hang_ct
|
|
13
|
-
$r$$.details.csum("tien_hang_options_ct"),$r$$.t_tien_hang_ct_nt=$r$$.details.csum("tien_hang_ct_nt")+$r$$.details.csum("tien_hang_options_ct"),$r$$.t_thue_nt=$r$$.details.csum("tien_thue_nt")+$r$$.details.csum("tien_thue_options"),$r$$.t_thue=$r$$.details.csum("tien_thue")+$r$$.details.csum("tien_thue_options"),$r$$.t_tien_hang=$r$$.t_tien_hang_ct+$r$$.t_thue,$r$$.t_tien_hang_nt=$r$$.t_tien_hang_ct_nt+$r$$.t_thue_nt,$r$$.t_ck=$r$$.details.csum("tien_ck")+$r$$.tien_ck_hd+
|
|
14
|
-
$r$$.details.csum("tien_ck_nt")+$r$$.tien_ck_hd+($r$$.tien_evoucher||0),$r$$.t_tien_nt=$r$$.details.csum("tien_nt"),$r$$.t_tien=$r$$.details.csum("tien"),$r$$.t_tt=$r$$.t_tt_nt=$r$$.
|
|
11
|
+
$user$$.current_app_info&&($user$$.current_app_info.options||{}).tinh_lai_chiet_khau_pbl!=0&&dmchietkhauhd.tinhChietKhau($user$$,$obj$$.id_app,$obj$$,$t_tien_hang_ct_nt$$-$t_ck_nt$$)}},tinhtienthue=($detail$$,$action$$)=>{$action$$=="import"&&$detail$$.tien_thue_nt?$detail$$.tien_thue=$detail$$.tien_thue_nt:($detail$$.thue_suat=$detail$$.thue_suat||0,$detail$$.gia_ban_ct_nt=$detail$$.gia_ban_ct=Math.roundBy($detail$$.gia_ban_nt/(1+$detail$$.thue_suat/100)),$detail$$.tien_hang_ct=$detail$$.tien_hang_ct_nt=
|
|
12
|
+
Math.roundBy($detail$$.sl_xuat*$detail$$.gia_ban_ct_nt),$detail$$.ty_le_ck&&($detail$$.tien_ck_nt=Math.roundBy($detail$$.tien_hang_ct_nt*$detail$$.ty_le_ck/100)),$detail$$.tien_thue=$detail$$.tien_thue_nt=Math.roundBy(($detail$$.tien_hang_ct_nt-$detail$$.tien_ck_nt)*$detail$$.thue_suat/100))},tinhtongtien=$r$$=>{$r$$.details&&($r$$.details.forEach($d$$=>{$d$$.sl_order=$d$$.sl_order||$d$$.sl_xuat}),$r$$.t_sl_order=$r$$.details.csum("sl_order"),$r$$.t_sl=$r$$.details.csum("sl_xuat"),$r$$.t_tien_hang_ct=
|
|
13
|
+
$r$$.details.csum("tien_hang_ct")+$r$$.details.csum("tien_hang_options_ct"),$r$$.t_tien_hang_ct_nt=$r$$.details.csum("tien_hang_ct_nt")+$r$$.details.csum("tien_hang_options_ct"),$r$$.t_thue_nt=$r$$.details.csum("tien_thue_nt")+$r$$.details.csum("tien_thue_options"),$r$$.t_thue=$r$$.details.csum("tien_thue")+$r$$.details.csum("tien_thue_options"),$r$$.t_tien_hang=$r$$.t_tien_hang_ct+$r$$.t_thue,$r$$.t_tien_hang_nt=$r$$.t_tien_hang_ct_nt+$r$$.t_thue_nt,$r$$.t_ck=$r$$.details.csum("tien_ck")+$r$$.tien_ck_hd+
|
|
14
|
+
($r$$.tien_evoucher||0),$r$$.t_ck_nt=$r$$.details.csum("tien_ck_nt")+$r$$.tien_ck_hd+($r$$.tien_evoucher||0),$r$$.t_tien_nt=$r$$.details.csum("tien_nt"),$r$$.t_tien=$r$$.details.csum("tien"),$r$$.t_tt=$r$$.t_tt_nt=$r$$.t_tien_nt-$r$$.t_ck_nt,$r$$.con_no=$r$$.t_tt-($r$$.tien_thu||0)-($r$$.tien_thu2||0)-($r$$.tien_paymentByPoints||0),$r$$.con_no<0&&($r$$.con_no=0),$r$$.t_tien_xuat=$r$$.details.csum("tien_xuat"),$r$$.t_tien_xuat_nt=$r$$.details.csum("tien_xuat_nt"))},taothongtinchuyenkhoan=async($bank_bin$jscomp$1_user$$,
|
|
15
15
|
$r$$)=>{if($r$$.trang_thai!="6"&&$r$$.trang_thai!="9"){var $amount_bank_name_bank_name$$=$r$$.t_tt-($r$$.tien_paymentByPoints||0);if($amount_bank_name_bank_name$$>0&&$r$$.pt_thanh_toan){var $amount$jscomp$2_bank_bin_pttt_pttt$$=await ptthanhtoan.findOne({id_app:$r$$.id_app,_id:$r$$.pt_thanh_toan,payment_service:"bank"}).lean();if($amount$jscomp$2_bank_bin_pttt_pttt$$&&$amount$jscomp$2_bank_bin_pttt_pttt$$.payment_service=="bank"&&$bank_bin$jscomp$1_user$$.current_app_info){$amount_bank_name_bank_name$$=
|
|
16
16
|
($amount$jscomp$2_bank_bin_pttt_pttt$$.bank_configs||{}).bank_name||$bank_bin$jscomp$1_user$$.current_app_info.ten_ngan_hang;var $bank_account_number_bank_account_number$$=($amount$jscomp$2_bank_bin_pttt_pttt$$.bank_configs||{}).bank_account_number||$bank_bin$jscomp$1_user$$.current_app_info.tai_khoan_ngan_hang,$bank_account_name_bank_account_name$$=($amount$jscomp$2_bank_bin_pttt_pttt$$.bank_configs||{}).bank_account_name||$bank_bin$jscomp$1_user$$.current_app_info.ten_chu_tai_khoan;$amount$jscomp$2_bank_bin_pttt_pttt$$=
|
|
17
17
|
($amount$jscomp$2_bank_bin_pttt_pttt$$.bank_configs||{}).so_bin||$bank_bin$jscomp$1_user$$.current_app_info.so_bin;var $amount$jscomp$1_purpose$$=$r$$.t_tt,$purpose_qrcode$$=`TTDH ${$r$$.so_ct} ${$r$$._id.toString()}`;const $qrcode$$=QRPay.initVietQR({bankBin:$amount$jscomp$2_bank_bin_pttt_pttt$$,bankNumber:$bank_account_number_bank_account_number$$,amount:$amount$jscomp$1_purpose$$.toString(),purpose:$purpose_qrcode$$}).build();$r$$.bank_payment_info={bank_name:$amount_bank_name_bank_name$$,bank_bin:$amount$jscomp$2_bank_bin_pttt_pttt$$,
|
|
@@ -19,41 +19,41 @@ bank_account_number:$bank_account_number_bank_account_number$$,bank_account_name
|
|
|
19
19
|
payment_service:"bank"}).lean())&&$amount$jscomp$2_bank_bin_pttt_pttt$$.payment_service=="bank"&&$bank_bin$jscomp$1_user$$.current_app_info?($amount_bank_name_bank_name$$=($amount$jscomp$2_bank_bin_pttt_pttt$$.bank_configs||{}).bank_name||$bank_bin$jscomp$1_user$$.current_app_info.ten_ngan_hang,$bank_account_number_bank_account_number$$=($amount$jscomp$2_bank_bin_pttt_pttt$$.bank_configs||{}).bank_account_number||$bank_bin$jscomp$1_user$$.current_app_info.tai_khoan_ngan_hang,$bank_account_name_bank_account_name$$=
|
|
20
20
|
($amount$jscomp$2_bank_bin_pttt_pttt$$.bank_configs||{}).bank_account_name||$bank_bin$jscomp$1_user$$.current_app_info.ten_chu_tai_khoan,$bank_bin$jscomp$1_user$$=($amount$jscomp$2_bank_bin_pttt_pttt$$.bank_configs||{}).so_bin||$bank_bin$jscomp$1_user$$.current_app_info.so_bin,$amount$jscomp$2_bank_bin_pttt_pttt$$=$r$$.t_tt,$amount$jscomp$1_purpose$$=`TTDH ${$r$$.so_ct} ${$r$$._id.toString()}`,$purpose_qrcode$$=QRPay.initVietQR({bankBin:$bank_bin$jscomp$1_user$$,bankNumber:$bank_account_number_bank_account_number$$,
|
|
21
21
|
amount:$amount$jscomp$2_bank_bin_pttt_pttt$$.toString(),purpose:$amount$jscomp$1_purpose$$}).build(),$r$$.bank_payment_info2={bank_name:$amount_bank_name_bank_name$$,bank_bin:$bank_bin$jscomp$1_user$$,bank_account_number:$bank_account_number_bank_account_number$$,bank_account_name:$bank_account_name_bank_account_name$$,amount:$amount$jscomp$2_bank_bin_pttt_pttt$$,purpose:$amount$jscomp$1_purpose$$,qrcode:$purpose_qrcode$$}):$r$$.bank_payment_info2=void 0:$r$$.bank_payment_info2=void 0}},getPointBalance=
|
|
22
|
-
async($id_app$$,$user$$)=>new Promise(($resolve$$,$reject$$)=>{ckdiem({id_app:$id_app$$,email:$user$$},($e$$,$rs$$)=>{if($e$$)return $reject$$(Error($e$$));$resolve$$($rs$$.length===0?0:$rs$$[0].ton00)})}),createTransactionBonus=async function($obj$$){if($obj$$.trang_thai!=="5")return await transaction.deleteTrans({id_ct:$obj$$._id.toString()+":bonus"},"Tr\u1ea3 l\u1ea1i \u0111i\u1ec3m th\u01b0\u1edfng \u0111\u1ec3 t\u00ednh l\u1ea1i"),null;let $kh$$=await customer.findOne({id_app:$obj$$.id_app,ma_kh:$obj$$.ma_kh});
|
|
22
|
+
async($id_app$$,$user$$)=>new Promise(($resolve$$,$reject$$)=>{ckdiem({id_app:$id_app$$,email:$user$$},($e$$,$rs$$)=>{if($e$$)return $reject$$(Error($e$$));$resolve$$($rs$$.length===0?0:$rs$$[0].ton00)})}),createTransactionBonus=async function($obj$$){if($obj$$.trang_thai!=="5")return await transaction.deleteTrans({id_ct:$obj$$._id.toString()+":bonus"},"Tr\u1ea3 l\u1ea1i \u0111i\u1ec3m th\u01b0\u1edfng \u0111\u1ec3 t\u00ednh l\u1ea1i"),null;let $kh$$=await customer.findOne({id_app:$obj$$.id_app,ma_kh:$obj$$.ma_kh}).lean();
|
|
23
23
|
if(!$kh$$)return await transaction.deleteTrans({id_ct:$obj$$._id.toString()+":bonus"},"Tr\u1ea3 l\u1ea1i \u0111i\u1ec3m th\u01b0\u1edfng \u0111\u1ec3 t\u00ednh l\u1ea1i"),null;const $receiver$$=$kh$$.of_user||$kh$$.ma_kh;let $lan_mua$$=(await model.find({id_app:$obj$$.id_app,ma_kh:$obj$$.ma_kh,ngay_ct:{$lte:$obj$$.ngay_ct}})).length+1;let $now$$=moment(new Date).startOf("date").toDate();var $amount$$=$obj$$.details.filter($d$$=>$d$$.tien_hang).map(async $d$$=>{var $amount$$=await dmvt.findOne({ma_vt:$d$$.ma_vt,
|
|
24
24
|
id_app:$obj$$.id_app}).lean(),$ckdiemthuong_ty_le_diem_thuong$$=await dmdiemthuong.find({id_app:$obj$$.id_app,status:!0,ma_kh:{$in:[null,"",$kh$$.ma_kh]},ma_kho:{$in:[null,"",$obj$$.ma_kho]},nh_kh:{$in:[null,"",$kh$$.nh_kh]},hieu_luc_tu:{$lte:$now$$},hieu_luc_den:{$gte:$now$$},ap_dung_lan_mua_thu:{$in:[null,0,$lan_mua$$]},ma_vt:{$in:[null,"",void 0,$d$$.ma_vt]},ma_nvt:{$in:[null,"",void 0,$amount$$?$amount$$.ma_nvt:""]}}).sort({ma_vt:-1,ma_nvt:-1,hieu_luc_tu:-1}).limit(1).lean();return $ckdiemthuong_ty_le_diem_thuong$$.length>
|
|
25
25
|
0?($amount$$=0,$ckdiemthuong_ty_le_diem_thuong$$[0].tien?($ckdiemthuong_ty_le_diem_thuong$$=$ckdiemthuong_ty_le_diem_thuong$$[0].diem/$ckdiemthuong_ty_le_diem_thuong$$[0].tien)&&($amount$$=Math.roundBy(($d$$.tien_hang-($d$$.tien_ck||0))*$ckdiemthuong_ty_le_diem_thuong$$,0)):$amount$$=$ckdiemthuong_ty_le_diem_thuong$$[0].diem*($d$$.sl_xuat||1),$amount$$):0});if($amount$$=(await Promise.all($amount$$)).reduce(($a$$,$b$$)=>$a$$+$b$$,0)){var $old_trans$$=await transaction.findOne({id_ct:$obj$$._id.toString()+
|
|
26
26
|
":bonus"});if(!$old_trans$$||$old_trans$$.amount!==$amount$$)return await transaction.deleteTrans({id_ct:$obj$$._id.toString()+":bonus"},"Tr\u1ea3 l\u1ea1i \u0111i\u1ec3m th\u01b0\u1edfng \u0111\u1ec3 t\u00ednh l\u1ea1i"),await transaction.createTrans({id_app:$obj$$.id_app,sender_email:$obj$$.id_app,receiver_email:$receiver$$,amount:$amount$$,description:"\u0110i\u1ec3m th\u01b0\u1edfng mua h\u00e0ng",otherData:{ma_ct:$obj$$.ma_ct,so_ct:$obj$$.so_ct,ngay_ct:$obj$$.ngay_ct,id_ct:$obj$$._id.toString()+
|
|
27
27
|
":bonus"}})}else await transaction.deleteTrans({id_ct:$obj$$._id.toString()+":bonus"},"Tr\u1ea3 l\u1ea1i \u0111i\u1ec3m th\u01b0\u1edfng \u0111\u1ec3 t\u00ednh l\u1ea1i")},createTransactionPayment=async function($obj$$,$user_payment$$){await transaction.deleteTrans({id_ct:$obj$$._id.toString()});let $amount$$=$obj$$.paymentByPoints;$amount$$&&($user_payment$$=$user_payment$$||$obj$$.user_created,await transaction.createTrans({id_app:$obj$$.id_app,sender_email:$user_payment$$,receiver_email:$obj$$.id_app,
|
|
28
|
-
amount:$amount$$,description:"Thanh to\u00e1n cho bill "+$obj$$.so_ct,otherData:{ma_ct:$obj$$.ma_ct,so_ct:$obj$$.so_ct,ngay_ct:$obj$$.ngay_ct,id_ct:$obj$$._id.toString()}}))},checkEvoucher=($user$$,$obj$$)=>{let $gt_don_hang$$=$obj$$.details.
|
|
29
|
-
|
|
30
|
-
$_e$$.
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
$vt$$.gt_den
|
|
35
|
-
$_e$$.so_tien_max
|
|
36
|
-
$
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
$
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
$
|
|
28
|
+
amount:$amount$$,description:"Thanh to\u00e1n cho bill "+$obj$$.so_ct,otherData:{ma_ct:$obj$$.ma_ct,so_ct:$obj$$.so_ct,ngay_ct:$obj$$.ngay_ct,id_ct:$obj$$._id.toString()}}))},checkEvoucher=($user$$,$obj$$)=>{let $gt_don_hang$$=$obj$$.details.csum("tien_nt")-$obj$$.details.csum("tien_ck_nt")-$obj$$.tien_ck_hd;return($obj$$.evouchers||[]).map($ev$$=>new Promise(($resolve$$,$reject$$)=>{(async()=>{var $cust_date_created_id_ct_so_tien_giam$$=($obj$$._id||"").toString();const $_e$$=await Evoucher.findOne({ma:$ev$$.ma,
|
|
29
|
+
id_app:$user$$.current_id_app});if(!$_e$$)return $reject$$(Error(`Th\u1ebb mua h\u00e0ng ${$ev$$.ma} kh\u00f4ng t\u1ed3n t\u1ea1i`));if($_e$$.id_ct_used&&$_e$$.id_ct_used!==$cust_date_created_id_ct_so_tien_giam$$)return $reject$$(Error(`Th\u1ebb mua h\u00e0ng ${$ev$$.ma} \u0111\u00e3 \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng`));if($_e$$.so_lan_sd>=1&&$_e$$.id_ct_useds&&$_e$$.id_ct_useds.length>0&&($_e$$.id_ct_useds=[...(new Set([...$_e$$.id_ct_useds]))],$_e$$.id_ct_useds.length>=$_e$$.so_lan_sd&&(!$obj$$._id||
|
|
30
|
+
$_e$$.id_ct_useds.indexOf($obj$$._id)<0)))return $reject$$(Error(`Th\u1ebb mua h\u00e0ng ${$ev$$.ma} \u0111\u00e3 \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng h\u1ebft`));if($_e$$.user){if(!$obj$$.ma_kh)return $reject$$(Error(`Th\u1ebb mua h\u00e0ng ${$ev$$.ma} n\u00e0y ch\u1ec9 s\u1eed d\u1ee5ng cho m\u1ed9t kh\u00e1ch h\u00e0ng c\u1ee5 th\u1ec3`));$cust_date_created_id_ct_so_tien_giam$$=await global.getModel("customer").findOne({id_app:$obj$$.id_app,ma_kh:$obj$$.ma_kh},{of_user:1}).lean();if(!$cust_date_created_id_ct_so_tien_giam$$||
|
|
31
|
+
$cust_date_created_id_ct_so_tien_giam$$.of_user!==$_e$$.user)return $reject$$(Error(`Th\u1ebb mua h\u00e0ng ${$ev$$.ma} kh\u00f4ng th\u1ec3 \u00e1p d\u1ee5ng cho kh\u00e1ch h\u00e0ng n\u00e0y`))}$cust_date_created_id_ct_so_tien_giam$$=new Date($obj$$.date_created);if(moment($_e$$.hieu_luc_den).endOf("date").toDate().getTime()<$cust_date_created_id_ct_so_tien_giam$$.getTime())return $reject$$(Error(`Th\u1ebb mua h\u00e0ng ${$ev$$.ma} \u0111\u00e3 h\u1ebft h\u1ea1n s\u1eed d\u1ee5ng`));if($_e$$.gt_don_hang_toi_thieu&&
|
|
32
|
+
$gt_don_hang$$<$_e$$.gt_don_hang_toi_thieu)return $reject$$(Error(`Th\u1ebb mua h\u00e0ng ${$ev$$.ma} ch\u1ec9 \u00e1p d\u1ee5ng cho c\u00e1c \u0111\u01a1n h\u00e0ng c\u00f3 gi\u00e1 tr\u1ecb l\u1edbn h\u01a1n ho\u1eb7c b\u1eb1ng ${numeral($_e$$.gt_don_hang_toi_thieu).format()}`));if($_e$$.vts&&$_e$$.vts.length>0&&$_e$$.sl_toi_thieu){let $sl_dap_ung$$=0;$_e$$.vts.forEach($vt$$=>{var $ds$jscomp$1_tien$$=$obj$$.details.filter($d$$=>$d$$.ma_vt===$vt$$.ma_vt&&(!$vt$$.ma_tt1||$vt$$.ma_tt1===$d$$.ma_tt1)&&
|
|
33
|
+
(!$vt$$.ma_tt2||$vt$$.ma_tt2===$d$$.ma_tt2)&&(!$vt$$.ma_tt3||$vt$$.ma_tt3===$d$$.ma_tt3));if($ds$jscomp$1_tien$$.length!=0){var $so_luong$$=$ds$jscomp$1_tien$$.map($d$$=>$d$$.sl_xuat).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$ds$jscomp$1_tien$$=$ds$jscomp$1_tien$$.map($d$$=>($d$$.tien_hang_ct_nt||0)-($d$$.tien_ck_nt||0)).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$vt$$.sl_tu&&$so_luong$$<$vt$$.sl_tu||$vt$$.sl_den&&$so_luong$$>$vt$$.sl_den||$vt$$.gt_tu&&$ds$jscomp$1_tien$$<$vt$$.gt_tu||$vt$$.gt_den&&$ds$jscomp$1_tien$$>
|
|
34
|
+
$vt$$.gt_den||($sl_dap_ung$$+=1)}});if($_e$$.sl_toi_thieu>$sl_dap_ung$$)return $reject$$(Error(`Th\u1ebb mua h\u00e0ng ${$ev$$.ma} kh\u00f4ng h\u1ee3p l\u1ec7 do kh\u00f4ng \u0111\u00e1p \u1ee9ng \u0111\u01b0\u1ee3c y\u00eau c\u1ea7u s\u1ea3n ph\u1ea9m`))}$cust_date_created_id_ct_so_tien_giam$$=$_e$$.so_tien;$_e$$.ty_le&&($cust_date_created_id_ct_so_tien_giam$$=Math.roundBy($gt_don_hang$$*$_e$$.ty_le/100));$_e$$.so_tien_max&&$cust_date_created_id_ct_so_tien_giam$$>$_e$$.so_tien_max&&($cust_date_created_id_ct_so_tien_giam$$=
|
|
35
|
+
$_e$$.so_tien_max);$ev$$.so_tien_giam=$cust_date_created_id_ct_so_tien_giam$$;$resolve$$(!0)})()}))},updateEvoucher=async($id_app$jscomp$1_rs$$,$evoucher_code$$,$id_ct$$)=>{$id_ct$$=$id_ct$$.toString();var $e$$=await Evoucher.findOne({ma:$evoucher_code$$,id_app:$id_app$jscomp$1_rs$$});$e$$?($e$$=$e$$.id_ct_useds||[],$e$$.push($id_ct$$),$e$$=[...(new Set($e$$))],$id_app$jscomp$1_rs$$=await Evoucher.updateOne({ma:$evoucher_code$$,id_app:$id_app$jscomp$1_rs$$},{id_ct_useds:$e$$}),Logger.info("update id_ct_useds",
|
|
36
|
+
$evoucher_code$$,$e$$,$id_app$jscomp$1_rs$$)):Logger.error("can't find evoucher",$evoucher_code$$)},deleteEvoucher=async($id_app$jscomp$2_id_ct_useds$$,$evoucher_code$$,$id_ct$$)=>{if($evoucher_code$$){$id_ct$$=$id_ct$$.toString();var $e$jscomp$2_rs$$=await Evoucher.findOne({id_app:$id_app$jscomp$2_id_ct_useds$$,ma:$evoucher_code$$});$e$jscomp$2_rs$$&&($id_app$jscomp$2_id_ct_useds$$=($e$jscomp$2_rs$$.id_ct_useds||[]).filter($ct$$=>$ct$$!==$id_ct$$),$e$jscomp$2_rs$$=await Evoucher.updateOne({_id:$e$jscomp$2_rs$$._id},
|
|
37
|
+
{id_ct_useds:$id_app$jscomp$2_id_ct_useds$$}),Logger.info("update id_ct_useds",$evoucher_code$$,$id_app$jscomp$2_id_ct_useds$$,$e$jscomp$2_rs$$))}},valid=async function($_opt_t_tien_evoucher_user$$,$obj$$,$next$$,$pre_obj_tien_con_lai$$,$options$$={}){$pre_obj_tien_con_lai$$&&($obj$$._id=$pre_obj_tien_con_lai$$._id,$obj$$.details=$obj$$.details||$pre_obj_tien_con_lai$$.details||[],$obj$$.evouchers=$obj$$.evouchers||$pre_obj_tien_con_lai$$.evouchers||[]);$obj$$.details=$obj$$.details||[];if($obj$$.signature&&
|
|
38
|
+
!await Wallet.verifySignature($obj$$.id_app,$obj$$.sign_user,$obj$$.sign_data,$obj$$.signature))return $next$$("Signature is not valid");try{await Promise.all(($obj$$.details||[]).map($detail$$=>(async()=>{if($detail$$.signature&&!await Wallet.verifySignature($obj$$.id_app,$detail$$.sign_user,$detail$$.sign_data,$detail$$.signature))throw"Signature is not valid";})()))}catch($e$$){return $next$$($e$$||$e$$.message)}await $obj$$.details.asyncJoinModel2($obj$$.id_app,vat,{where:"ma_thue",fields:["thue_suat",
|
|
39
|
+
"tk_thue_co","tk_thue_co_treo"]});const $should_tinh_thue$$=!_.isEqual($obj$$.details,$pre_obj_tien_con_lai$$?.details);for(let $i$$=0;$i$$<$obj$$.details.length;$i$$++){const $detail$$=$obj$$.details[$i$$];if($detail$$.line==null||$detail$$.line==void 0)$detail$$.line=(new Date).getTime();$detail$$.tien_hang=$detail$$.tien_hang_nt=Math.roundBy($detail$$.tien_hang_nt);$detail$$.tien_ck=$detail$$.tien_ck_nt=Math.roundBy($detail$$.tien_ck_nt||0);$detail$$.gia_ban=$detail$$.gia_ban_nt;$detail$$.ma_kho=
|
|
40
|
+
$obj$$.ma_kho;$detail$$.tien_xuat=$detail$$.tien_xuat_nt=Math.roundBy($detail$$.tien_xuat_nt||0);$should_tinh_thue$$&&tinhtienthue($detail$$,$options$$?.action);$detail$$.options=$detail$$.options||[];for(let $i_o$$=0;$i_o$$<$detail$$.options.length;$i_o$$++){let $o$$=$detail$$.options[0];$o$$.details=$o$$.details||[];await $o$$.details.filter($d$$=>!$d$$.ma_thue).asyncJoinModel2($_opt_t_tien_evoucher_user$$.current_id_app,dmvt,{where:"ma_vt",fields:["ma_thue"]});await $o$$.details.asyncJoinModel2($obj$$.id_app,
|
|
41
|
+
vat,{where:"ma_thue",fields:["thue_suat","tk_thue_co","tk_thue_co_treo"]});$o$$.details.filter($d$$=>$d$$.sl_xuat).forEach($d$$=>{$d$$.tien_hang=$d$$.tien_hang_nt=$d$$.sl_xuat*($d$$.gia_ban_nt||0);$should_tinh_thue$$&&tinhtienthue($d$$,$options$$?.action)});$o$$.tien_hang_nt=$o$$.details.map($d$$=>$d$$.tien_hang_nt).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$o$$.tien_hang_ct_nt=$o$$.details.map($d$$=>$d$$.tien_hang_ct_nt).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$o$$.tien_thue_nt=$o$$.details.map($d$$=>$d$$.tien_thue_nt).reduce(($a$$,
|
|
42
|
+
$b$$)=>$a$$+$b$$,0)}$detail$$.tien_hang_options=$detail$$.options.map($o$$=>$o$$.tien_hang_nt).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$detail$$.tien_hang_options_ct=$detail$$.options.map($o$$=>$o$$.tien_hang_ct_nt).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$detail$$.tien_thue_options=$detail$$.options.map($o$$=>$o$$.tien_thue_nt).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$detail$$.tien=$detail$$.tien_nt=$detail$$.tien_hang_nt+$detail$$.tien_hang_options}await $obj$$.details.filter($d$$=>!$d$$.ma_dvt&&$d$$.ma_tt1).asyncJoinModel2($_opt_t_tien_evoucher_user$$.current_id_app,
|
|
43
|
+
dmtt,{where:{ma_vt:"ma_vt",ma_tt1:"ma_tt"},fields:"ma_dvt"});await $obj$$.details.filter($d$$=>!$d$$.ma_dvt&&$d$$.ma_tt2).asyncJoinModel2($_opt_t_tien_evoucher_user$$.current_id_app,dmtt,{where:{ma_vt:"ma_vt",ma_tt2:"ma_tt"},fields:"ma_dvt"});await $obj$$.details.filter($d$$=>!$d$$.ma_dvt&&$d$$.ma_tt3).asyncJoinModel2($_opt_t_tien_evoucher_user$$.current_id_app,dmtt,{where:{ma_vt:"ma_vt",ma_tt3:"ma_tt"},fields:"ma_dvt"});try{const $_checkEvoucher$$=checkEvoucher($_opt_t_tien_evoucher_user$$,$obj$$,
|
|
44
|
+
$pre_obj_tien_con_lai$$);await Promise.all($_checkEvoucher$$)}catch($e$$){return $next$$($e$$.message)}$_opt_t_tien_evoucher_user$$=$obj$$.evouchers.map($e$$=>$e$$.so_tien_giam||0).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$pre_obj_tien_con_lai$$=$obj$$.details.map($a$$=>($a$$.tien_hang_ct_nt||0)-($a$$.tien_ck_nt||0)+($a$$.tien_thue_nt||0)+$a$$.tien_hang_options_ct+$a$$.tien_thue_options).reduce(($a$$,$b$$)=>$a$$+$b$$,0)-(($obj$$.tt_tien_thuong||0)+($obj$$.tien_ck_hd||0));$_opt_t_tien_evoucher_user$$>$pre_obj_tien_con_lai$$&&
|
|
45
|
+
($_opt_t_tien_evoucher_user$$=$pre_obj_tien_con_lai$$);$obj$$.tien_evoucher=$_opt_t_tien_evoucher_user$$;$_opt_t_tien_evoucher_user$$=await Options.findOne({id_app:$obj$$.id_app,id_func:$obj$$.ma_ct.toLowerCase()}).lean();$_opt_t_tien_evoucher_user$$=($_opt_t_tien_evoucher_user$$||{}).option||{};if($obj$$.tien_evoucher&&$_opt_t_tien_evoucher_user$$.phan_bo_evoucher){let $tien_evoucher_da_phan_bo$$=0,$tien_evoucher$$=$obj$$.tien_evoucher,$tien_evoucher_con_lai$$=$tien_evoucher$$-$tien_evoucher_da_phan_bo$$;
|
|
46
|
+
$obj$$.details.forEach($detail$$=>{if($tien_evoucher_con_lai$$>0){var $tien_evoucher_duoc_pb_tien_hang_con_lai$$=$detail$$.tien_hang_ct_nt-($detail$$.tien_ck_nt||0)+($detail$$.tien_thue_nt||0)+$detail$$.tien_hang_options_ct+$detail$$.tien_thue_options;$tien_evoucher_duoc_pb_tien_hang_con_lai$$=$tien_evoucher_con_lai$$>$tien_evoucher_duoc_pb_tien_hang_con_lai$$?$tien_evoucher_duoc_pb_tien_hang_con_lai$$:$tien_evoucher_con_lai$$;$detail$$.tien_evoucher_duoc_pb=$tien_evoucher_duoc_pb_tien_hang_con_lai$$;
|
|
47
|
+
$tien_evoucher_da_phan_bo$$+=$tien_evoucher_duoc_pb_tien_hang_con_lai$$;$tien_evoucher_con_lai$$=$tien_evoucher$$-$tien_evoucher_da_phan_bo$$}else $tien_evoucher_con_lai$$=0})}if($obj$$.paymentByPoints)try{let $he_so_qd$$=await currency.getRate($obj$$.id_app,$obj$$.ma_nt);$obj$$.tien_paymentByPoints=$obj$$.paymentByPoints*$he_so_qd$$}catch($e$$){return $next$$($e$$.message)}$next$$(null,$obj$$)};
|
|
48
48
|
module.exports=function($router$$){const $contr$$=new controller($router$$,model,ma_ct.toLowerCase(),{isVoucher:!0,kiem_tra_han_muc_cong_no:!0,sort:{ngay_ct:-1,so_ct:-1},users_receive_notification_default:[{send_tat_ca_nhan_vien:!0,send_admin:!0}],onFinding:($user$$,$condition$$,$next$$)=>{$next$$(null,$condition$$)}});$contr$$.route();$contr$$.post=async function($obj$$,$fn$$,$_options$$={}){$fn$$||=function(){};await $obj$$.details.asyncJoinModel2($obj$$.id_app,dmvt,{where:"ma_vt",fields:["ten_vt",
|
|
49
|
-
"tk_vt","tg_tk"]});$obj$$.details.filter($d$$=>!$d$$.tg_tk).forEach($d$$=>{$d$$.tien_xuat=$d$$.tien_xuat_nt=0;$d$$.gia_von_nt=$d$$.gia_von=0});$obj$$.t_tien=$obj$$.details.csum("tien");$obj$$.t_tien_nt=$obj$$.details.csum("tien_nt");$obj$$.
|
|
50
|
-
$obj$$.
|
|
49
|
+
"tk_vt","tg_tk"]});$obj$$.details.filter($d$$=>!$d$$.tg_tk).forEach($d$$=>{$d$$.tien_xuat=$d$$.tien_xuat_nt=0;$d$$.gia_von_nt=$d$$.gia_von=0});$obj$$.t_tien=$obj$$.details.csum("tien");$obj$$.t_tien_nt=$obj$$.details.csum("tien_nt");$obj$$.t_ck_nt=$obj$$.details.csum("tien_ck_nt")+$obj$$.tien_ck_hd+($obj$$.tien_evoucher||0);$obj$$.t_ck=Math.roundBy($obj$$.t_ck_nt*($obj$$.ty_gia||1));$obj$$.t_tien_hang_ct_nt=$obj$$.details.csum("tien_hang_ct_nt")+$obj$$.details.csum("tien_hang_options_ct");$obj$$.t_thue_nt=
|
|
50
|
+
$obj$$.details.csum("tien_thue_nt")+$obj$$.details.csum("tien_thue_options");$obj$$.t_tt_nt=$obj$$.t_tien_hang_ct_nt+$obj$$.t_thue_nt-$obj$$.t_ck_nt;$obj$$.t_tt=Math.roundBy($obj$$.t_tt_nt*($obj$$.ty_gia||1));$obj$$.con_no=$obj$$.t_tt_nt-($obj$$.tien_paymentByPoints||0)-($obj$$.tien_thu||0)-($obj$$.tien_thu2||0);$obj$$.con_no<0&&($obj$$.con_no=0);let $product_details$$=[...$obj$$.details.map($d$$=>({...$d$$}))];$product_details$$.forEach($d$$=>{$d$$={...$d$$};$d$$.promotion&&$d$$.promotion.details_km&&
|
|
51
51
|
$d$$.promotion.details_km.forEach($p$$=>{if($p$$.ma_vt&&$p$$.sl_km){let $_p$$={};_.extend($_p$$,$p$$,{sl_xuat:$p$$.sl_km});$product_details$$.push($_p$$)}});$d$$.combo&&$d$$.combo.length>0&&($d$$.combo.forEach($item$$=>{delete $item$$.px_gia_dd;$item$$.ma_kho=$item$$.ma_kho||$d$$.ma_kho}),$product_details$$=[...$product_details$$,...$d$$.combo]);$d$$.options&&$d$$.options.length>0&&$d$$.options.forEach($ds$jscomp$2_o$$=>{$ds$jscomp$2_o$$=$ds$jscomp$2_o$$.details.filter($d$$=>$d$$.sl_xuat);$ds$jscomp$2_o$$.forEach($item$$=>
|
|
52
52
|
{delete $item$$.px_gia_dd;$item$$.ma_kho=$d$$.ma_kho});$product_details$$=[...$product_details$$,...$ds$jscomp$2_o$$]})});$obj$$.promotion&&$obj$$.promotion.forEach($p$$=>{$p$$={...$p$$};if($p$$.ma_vt&&$p$$.sl_km){let $_p$$={};_.extend($_p$$,$p$$,{sl_xuat:$p$$.sl_km});$product_details$$.push($_p$$)}});$product_details$$=$product_details$$.filter($d$$=>!$d$$.combo||$d$$.combo.length===0);let $du_lieu_kho_kt$$;async.series({post_sokho:function($callback$$){async.series({kho:$callback$$=>{(new PostSokho($obj$$,
|
|
53
53
|
$product_details$$,async function($detail$$,$callback$$){$detail$$={...$detail$$,nxt:2};$detail$$.ma_kho=$obj$$.ma_kho;$callback$$($detail$$)})).run(function($e$$,$rs$$){if($e$$)return $callback$$($e$$);$du_lieu_kho_kt$$=$rs$$?.rs_sokho;$callback$$(null,$rs$$)})},khott:$callback$$=>{(new PostBook($obj$$,$product_details$$,Sokhott,async function($detail$$,$callback$$){$detail$$={...$detail$$,nxt:2};$detail$$.ma_kho=$obj$$.ma_kho;$callback$$($detail$$)})).run(function($e$$,$rs$$){$callback$$($e$$,$rs$$)})}},
|
|
54
|
-
($e$$,$rs$$)=>{$callback$$($e$$,$rs$$)})},post_vatra:function($callback$$){$obj$$.ngay_hd&&$obj$$.so_hd?setImmediate(async()=>{let $details_vatra$$=[];var $d$jscomp$
|
|
55
|
-
"vat",{where:"ma_thue",fields:["tk_thue_co"]});$d$jscomp$
|
|
56
|
-
0)+($detail$$.tien_hang_options_ct||0)-($detail$$.tien_ck||0),$detail$$.t_thue_nt=$detail$$.tien_thue_nt+($detail$$.tien_thue_options||0),$detail$$.t_thue=$detail$$.tien_thue+($detail$$.tien_thue_options||0),$detail$$.ten_vt=$detail$$.ten_vt_vat||$obj$$.ten_vt||$obj$$.dien_giai}catch($e$$){Logger.error($e$$,$obj$$)}});$details_vatra$$=[...$details_vatra$$,...$d$jscomp$
|
|
54
|
+
($e$$,$rs$$)=>{$callback$$($e$$,$rs$$)})},post_vatra:function($callback$$){$obj$$.ngay_hd&&$obj$$.so_hd?setImmediate(async()=>{let $details_vatra$$=[];var $d$jscomp$26_ds$$=$product_details$$.map($detail$$=>({...$detail$$,thue_suat:($detail$$.ma_thue?$detail$$.thue_suat:$obj$$.thue_suat)||0,ma_thue:$detail$$.ma_thue||$obj$$.ma_thue,tien_thue_nt:$detail$$.tien_thue_nt||0,tien_thue:$detail$$.tien_thue||0})).filter($d$$=>$d$$.ma_thue);await $d$jscomp$26_ds$$.filter($r$$=>!$r$$.tk_thue_co&&$r$$.ma_thue).asyncJoinModel2($obj$$.id_app,
|
|
55
|
+
"vat",{where:"ma_thue",fields:["tk_thue_co"]});$d$jscomp$26_ds$$=await $d$jscomp$26_ds$$.asyncGroupBy(["ma_thue","thue_suat","ten_vt_vat","tk_thue_co"],"tien_hang_ct_nt tien_hang_ct tien_ck_nt tien_ck tien_thue tien_thue_nt tien_hang_options_ct tien_thue_options".split(" "));$d$jscomp$26_ds$$.forEach($detail$$=>{try{$detail$$.tk_du_thue=$obj$$.tk_no,$detail$$.t_tien_nt=($detail$$.tien_hang_ct_nt||0)+($detail$$.tien_hang_options_ct||0)-($detail$$.tien_ck_nt||0),$detail$$.t_tien=($detail$$.tien_hang_ct||
|
|
56
|
+
0)+($detail$$.tien_hang_options_ct||0)-($detail$$.tien_ck||0),$detail$$.t_thue_nt=$detail$$.tien_thue_nt+($detail$$.tien_thue_options||0),$detail$$.t_thue=$detail$$.tien_thue+($detail$$.tien_thue_options||0),$detail$$.ten_vt=$detail$$.ten_vt_vat||$obj$$.ten_vt||$obj$$.dien_giai}catch($e$$){Logger.error($e$$,$obj$$)}});$details_vatra$$=[...$details_vatra$$,...$d$jscomp$26_ds$$];(new PostBook($obj$$,$details_vatra$$,global.getModel("vatra"),($detail$$,$callback$$)=>{$detail$$={...$detail$$};$detail$$.ten_vt=
|
|
57
57
|
$detail$$.ten_vt||$obj$$.dien_giai;$callback$$($detail$$)})).run(function($e$$,$rs$$){$callback$$($e$$,$rs$$)})}):$callback$$()},post_socai:function($callback$$){setImmediate(async()=>{try{var $_opt$$=await Options.findOne({id_app:$obj$$.id_app,id_func:ma_ct.toLowerCase()}).lean();let $option$$;$option$$=$_opt$$?$_opt$$.option||{}:{};let $kho$$=await dmkho.findOne({id_app:$obj$$.id_app,ma_kho:$obj$$.ma_kho}).lean()||{},$pt$$;$obj$$.pt_thanh_toan&&global.mongoose.Types.ObjectId.isValid($obj$$.pt_thanh_toan)&&
|
|
58
58
|
($pt$$=await ptthanhtoan.findOne({id_app:$obj$$.id_app,_id:$obj$$.pt_thanh_toan}).lean());$pt$$=$pt$$||{};$pt$$.tk_tien=$pt$$.tk_tien||$kho$$.tk_tien;$pt$$.tk_cn=$pt$$.tk_cn||$kho$$.tk_cn;$pt$$.tk_dt=$kho$$.tk_dt||$pt$$.tk_dt;$pt$$.tk_gv=$kho$$.tk_gv||$pt$$.tk_gv;$pt$$.tk_ck=$kho$$.tk_ck||$pt$$.tk_ck;$pt$$.ma_kh||($pt$$.ma_kh=$kho$$.ma_kh);$pt$$.ma_kh&&($pt$$.tk_tien=$pt$$.tk_cn);$option$$.tk_tien=$pt$$.tk_tien||$option$$.tk_tien||"1111";$option$$.tk_cn=$pt$$.tk_cn||$option$$.tk_cn||"131111";$option$$.tk_dt=
|
|
59
59
|
$pt$$.tk_dt||$option$$.tk_dt||"51111";$option$$.tk_ck=$pt$$.tk_ck||$option$$.tk_ck||"52111";$option$$.tk_gv=$pt$$.tk_gv||$option$$.tk_gv||"6321";let $details$$=[...$obj$$.details.map($d$$=>({...$d$$}))],$details_ht$$=[];$details$$.forEach($detail$$=>{$detail$$={...$detail$$};let $tien$$=$detail$$.tien_hang_ct+$detail$$.tien_hang_options_ct,$tien_nt$$=$detail$$.tien_hang_ct_nt+$detail$$.tien_hang_options_ct;$detail$$.tk_no=$option$$.tk_tien;$detail$$.tk_co=$option$$.tk_dt;$detail$$.ma_kh||($detail$$.ma_kh=
|
|
@@ -75,20 +75,20 @@ $new_combo$$=($ref$$.combo||[]).map($i$$=>({ma_vt:$i$$.ma_vt,sl_xuat:$i$$.sl_xua
|
|
|
75
75
|
$item$$.sl_xuat||0);$item$$.sl_xuat=($item$$.sl_xuat_1_combo||0)*($detail$$.sl_xuat||0);$item$$.tien_xuat=$item$$.tien_xuat_nt=$item$$.sl_xuat*($item$$.gia_von_nt||0);$item$$.tien_hang=$item$$.tien_hang_nt=$item$$.sl_xuat*($item$$.gia_ban_nt||0);$item$$.tien_ck=$item$$.tien_ck_nt=$item$$.sl_xuat*($item$$.tien_ck_nt||0);$item$$.tien=$item$$.tien_nt=$item$$.tien_hang_nt-($item$$.tien_ck_nt||0);return $item$$}))});$data$$.tien_thu=$data$$.tien_thu==void 0?$obj$$.tien_thu:$data$$.tien_thu;$data$$.tien_thu2=
|
|
76
76
|
$data$$.tien_thu2==void 0?$obj$$.tien_thu2:$data$$.tien_thu2;$data$$.tien_thu=Math.roundBy($data$$.tien_thu||0);$data$$.tien_thu2=Math.roundBy($data$$.tien_thu2||0);$data$$.ma_ban&&$obj$$.ma_ban!==$data$$.ma_ban&&($data$$.ma_ban0=$obj$$.ma_ban);$data$$.details.forEach(function($d$$){$obj$$.details.forEach(function($_d$$){if($_d$$.ma_vt===$d$$.ma_vt&&$_d$$.line===$d$$.line){if($d$$.sl_order==void 0||$d$$.sl_order==null)$d$$.sl_order=$_d$$.sl_order;if($d$$.sl_xuat==void 0||$d$$.sl_xuat==null)$d$$.sl_xuat=
|
|
77
77
|
$_d$$.sl_xuat;$d$$.order_time=$d$$.order_time||$_d$$.order_time||new Date;$d$$.sl_order<=$d$$.sl_xuat?$d$$.finish_time&&$d$$.sl_xuat===$_d$$.sl_xuat||($d$$.finish_time=new Date):$d$$.finish_time=null;let $trang_thai$$=$data$$.trang_thai||$obj$$.trang_thai;$d$$.finish_time||$trang_thai$$!=="5"&&$trang_thai$$!=="6"&&$trang_thai$$!=="9"||($d$$.finish_time=new Date);$_d$$.het_hang&&($d$$.het_hang=!0)}})});valid($user$$,$data$$,function($error$$){if($error$$)return $next$$($error$$);if($obj$$.paymentByPoints&&
|
|
78
|
-
$obj$$.paymentByPoints!==($data$$.paymentByPoints||0))return $next$$("B\u1ea1n kh\u00f4ng th\u1ec3 c\u1eadp nh\u1eadt s\u1ed1 \u0111i\u1ec3m thanh to\u00e1n.");$data$$.ma_ban&&$obj$$.ma_ban&&$data$$.ma_ban!==$obj$$.ma_ban&&App.emitEvent($obj$$.id_app,"pbl:delete",{_id:$obj$$._id,ma_ban:$obj$$.ma_ban,action:"DELETE",trang_thai:-1});$next$$(null,$data$$,$obj$$)},$obj$$,$options$$)};$contr$$.updated=async function($evouchers_user$$,$obj$$,$next$$){await Evoucher.updateMany({id_ct_used:$obj$$._id.toString()
|
|
79
|
-
{id_ct_used:null});$evouchers_user$$=await Evoucher.find({id_ct_useds:$obj$$._id.toString()});await Promise.all($evouchers_user$$.map($e$$=>deleteEvoucher($e$$.id_app,$e$$.ma,$obj$$._id)));$obj$$.trang_thai==="9"?(await transaction.deleteTrans({id_ct:$obj$$._id.toString()}),await transaction.deleteTrans({id_ct:$obj$$._id.toString()+":bonus"},"Tr\u1ea3 l\u1ea1i \u0111i\u1ec3m th\u01b0\u1edfng")):(await createTransactionBonus($obj$$),$obj$$.evouchers&&
|
|
80
|
-
$e$$.ma,$obj$$._id))));$obj$$.trang_thai=="5"&&($obj$$.trang_thai="6",await model.updateOne({_id:$obj$$._id},{trang_thai:"6"}));$next$$(null,$obj$$)};$contr$$.deleting=function($user$$,$obj$$,$next$$){$next$$(null,$obj$$)};$contr$$.deleted=async function($user$$,$obj$$,$callback$$){await transaction.deleteTrans({id_ct:$obj$$._id.toString()});await transaction.deleteTrans({id_ct:$obj$$._id.toString()+":bonus"},"Tr\u1ea3 l\u1ea1i \u0111i\u1ec3m th\u01b0\u1edfng")
|
|
81
|
-
deleteEvoucher($e$$.id_app,$e$$.ma,$obj$$._id)));$callback$$(null,$obj$$)};$contr$$.view=function($user$$,$items$$,$fn$$){let $id_app$$=$user$$.current_id_app;$items$$.forEach($item$$=>{$item$$.trang_thai=$item$$.trang_thai.toString();$item$$.evouchers&&($item$$.evouchers_string=$item$$.evouchers.map($e$$=>$e$$.ma).join(","))});async.parallel({cashier:function($callback$$){$items$$.filter($item$$=>$item$$.cashier).joinModel2(null,"user",
|
|
82
|
-
kh:function($callback$$){$items$$.filter($item$$=>$item$$.ma_kh).joinModel2($id_app$$,customer,[{where:{ma_kh:"ma_kh"},fields:[{ten_kh:"ten_kh"},{nh_kh:"nh_kh"},{dia_chi_kh:"dia_chi"},{dien_thoai_kh:"dien_thoai"}]}],function(){$callback$$()})},ban:function($callback$$){$items$$.filter($item$$=>$item$$.ma_ban).joinModel2($id_app$$,Dmban,[{where:{ma_ban:"ma_ban"},fields:[{ten_ban:"ten_ban"}]}],function(){$callback$$()})},
|
|
83
|
-
Dmban,[{where:{ma_ban0:"ma_ban"},fields:[{ten_ban0:"ten_ban"}]}],function(){$callback$$()})},kho:function($callback$$){$items$$.filter($item$$=>$item$$.ma_kho).joinModel2($id_app$$,dmkho,[{where:{ma_kho:"ma_kho"},fields:["ten_kho","wifi","wifi_pass"],setFields:($a$$,$b$$)=>{$b$$&&$b$$.exfields&&($a$$.dia_chi_kho=$b$$.exfields.dia_chi,$a$$.dien_thoai_kho=$b$$.exfields.dien_thoai)}}],function(){$callback$$()})},
|
|
84
|
-
{so_ct_hd7:"so_ct"},{ngay_ct_hd7:"ngay_ct"}]}],function(){$callback$$()})},trangthai:function($callback$$){$items$$.filter($item$$=>$item$$.trang_thai).joinModel2(null,trangthai,[{where:{trang_thai:"ma_trang_thai",ma_ct:"ma_ct"},fields:["ten_trang_thai","color"]}],function(){$callback$$()})},ptthanhtoan:function($callback$$){$items$$.filter($item$$=>$item$$.pt_thanh_toan).joinModel2($id_app$$,
|
|
85
|
-
ptthanhtoan2:function($callback$$){$items$$.filter($item$$=>$item$$.pt_thanh_toan2).joinModel2($id_app$$,ptthanhtoan,[{where:{pt_thanh_toan2:"_id"},fields:{ten_pt_thanh_toan2:"ten"}}],function(){$callback$$()})},t_tien:function($callback$$){$items$$.forEach(function($r$$){$r$$.details&&($r$$.details.forEach($d$$=>{$d$$.sl_order=$d$$.sl_order||$d$$.sl_xuat;$d$$.sl_order<=$d$$.sl_xuat?$d$$.finish_time||
|
|
86
|
-
$callback$$()},details_vt:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_vt).joinModel2($id_app$$,dmvt,[{where:{ma_vt:"ma_vt"},fields:[{ten_vt:"ten_vt"},{picture:"picture"},{sp_yeu_cau_che_bien:"sp_yeu_cau_che_bien",sp_yeu_cau_pha_che:"sp_yeu_cau_pha_che"},{gia_ban_le_goc:"gia_ban_le"},{barcode:"ma_vt2",ma_can:"ma_can"}]}],function(){$callback1$$()})},
|
|
87
|
-
20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_dt).joinModel2($id_app$$,dmdt,[{where:{ma_dt:"ma_dt"},fields:[{name:"ten_dt",value:"ten_dt"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_contract:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_hd).joinModel2($id_app$$,contract,[{where:{ma_hd:"so_hd"},
|
|
88
|
-
details_phi:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_phi).joinModel2($id_app$$,dmphi,[{where:{ma_phi:"ma_phi"},fields:[{name:"ten_phi",value:"ten_phi"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_chietkhau:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item
|
|
89
|
-
_id:$item$$.id_cs_ck}),fields:["ma_chietkhau","ten_chietkhau"]}],function(){$callback1$$()})},function(){$callback$$()})}},function(){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_tt1).joinModel2($id_app$$,dmtt,[{where:{ma_vt:"ma_vt",ma_tt1:"ma_tt"},setFields:($item$$,$ref$$)=>{$item$$.ten_vt=$item$$.ten_vt+" - "+$ref$$.ten_tt;$item$$.barcode=$ref$$.ma_tt2
|
|
90
|
-
function(){$fn$$(null,$items$$)})})};$contr$$.createRoute("payment/:id",async($req$$,$next$$)=>{var $id_obj$$=$req$$.params.id;if(!global.mongoose.Types.ObjectId.isValid($id_obj$$))return $next$$("Bill kh\u00f4ng t\u1ed3n t\u1ea1i");$id_obj$$=await model.findOne({_id:$id_obj$$});if(!$id_obj$$)return $next$$("Bill kh\u00f4ng t\u1ed3n t\u1ea1i");var $t_tien$$=$id_obj$$.details.map($r$$=>$r$$.tien_hang||0).reduce(($a
|
|
91
|
-
$b$$)=>$a$$+$b$$,0)+($id_obj$$.tien_ck_hd||0)+($id_obj$$.tien_evoucher||0);$t_tien$$=$t_tien$$-$t_ck$$-($id_obj$$.tien_paymentByPoints||0)-($id_obj$$.tien_thu||0)-($id_obj$$.tien_thu2||0);if($id_obj$$.trang_thai==="5"||$id_obj$$.trang_thai==="6"||!$t_tien$$)return $next$$("Bill n\u00e0y \u0111\u00e3 \u0111\u01b0\u1ee3c thanh to\u00e1n");try{var $he_so_qd$$=await currency.getRate($id_obj$$.id_app,$id_obj$$.ma_nt);
|
|
92
|
-
$id_obj$$.ma_nt);$he_so_qd$$=$t_tien$$/$he_so_qd$$;if(await getPointBalance($req$$.user.current_id_app,$req$$.user.email)<$he_so_qd$$)return $next$$("B\u1ea1n kh\u00f4ng c\u00f3 \u0111\u1ee7 \u0111i\u1ec3m \u0111\u1ec3 th\u1ef1c hi\u1ec7n giao d\u1ecbch n\u00e0y.");$id_obj$$.paymentByPoints=$he_so_qd$$;$id_obj$$.tien_paymentByPoints=$t_tien$$;await createTransactionPayment($id_obj
|
|
93
|
-
await model.findOne({_id:$id_obj$$._id}).lean();controller.postData($id_obj$$,$contr$$,async function($e$$){if($e$$)return $next$$($e$$);$e$$=await $contr$$.asyncView($req$$.user,[$obj_updated$$],{req:$req$$});controller.pushNotification($contr$$,$e$$[0],"update");controller.pushNotification($contr$$,$e$$[0],"payment",null,!1,{title:`Bill ${$obj_updated$$.so_ct} \u0111\u00e3 \u0111\u01b0\u1ee3c thanh to\u00e1n`})
|
|
94
|
-
{method:"GET"})};
|
|
78
|
+
$obj$$.paymentByPoints!==($data$$.paymentByPoints||0))return $next$$("B\u1ea1n kh\u00f4ng th\u1ec3 c\u1eadp nh\u1eadt s\u1ed1 \u0111i\u1ec3m thanh to\u00e1n.");$data$$.ma_ban&&$obj$$.ma_ban&&$data$$.ma_ban!==$obj$$.ma_ban&&App.emitEvent($obj$$.id_app,"pbl:delete",{_id:$obj$$._id,ma_ban:$obj$$.ma_ban,action:"DELETE",trang_thai:-1});$next$$(null,$data$$,$obj$$)},$obj$$,$options$$)};$contr$$.updated=async function($evouchers_user$$,$obj$$,$next$$){await Evoucher.updateMany({id_ct_used:$obj$$._id.toString(),
|
|
79
|
+
id_app:$obj$$.id_app},{id_ct_used:null});$evouchers_user$$=await Evoucher.find({id_ct_useds:$obj$$._id.toString(),id_app:$obj$$.id_app}).lean();await Promise.all($evouchers_user$$.map($e$$=>deleteEvoucher($e$$.id_app,$e$$.ma,$obj$$._id)));$obj$$.trang_thai==="9"?(await transaction.deleteTrans({id_ct:$obj$$._id.toString()}),await transaction.deleteTrans({id_ct:$obj$$._id.toString()+":bonus"},"Tr\u1ea3 l\u1ea1i \u0111i\u1ec3m th\u01b0\u1edfng")):(await createTransactionBonus($obj$$),$obj$$.evouchers&&
|
|
80
|
+
await Promise.all($obj$$.evouchers.map($e$$=>updateEvoucher($e$$.id_app,$e$$.ma,$obj$$._id))));$obj$$.trang_thai=="5"&&($obj$$.trang_thai="6",await model.updateOne({_id:$obj$$._id},{trang_thai:"6"}));$next$$(null,$obj$$)};$contr$$.deleting=function($user$$,$obj$$,$next$$){$next$$(null,$obj$$)};$contr$$.deleted=async function($user$$,$obj$$,$callback$$){await transaction.deleteTrans({id_ct:$obj$$._id.toString()});await transaction.deleteTrans({id_ct:$obj$$._id.toString()+":bonus"},"Tr\u1ea3 l\u1ea1i \u0111i\u1ec3m th\u01b0\u1edfng");
|
|
81
|
+
$obj$$.evouchers&&await Promise.all($obj$$.evouchers.map($e$$=>deleteEvoucher($e$$.id_app,$e$$.ma,$obj$$._id)));$callback$$(null,$obj$$)};$contr$$.view=function($user$$,$items$$,$fn$$){let $id_app$$=$user$$.current_id_app;$items$$.forEach($item$$=>{$item$$.trang_thai=$item$$.trang_thai.toString();$item$$.evouchers&&($item$$.evouchers_string=$item$$.evouchers.map($e$$=>$e$$.ma).join(","))});async.parallel({cashier:function($callback$$){$items$$.filter($item$$=>$item$$.cashier).joinModel2(null,"user",
|
|
82
|
+
[{where:{cashier:"email"},fields:[{cashier_name:"name"}]}],function(){$callback$$()})},kh:function($callback$$){$items$$.filter($item$$=>$item$$.ma_kh).joinModel2($id_app$$,customer,[{where:{ma_kh:"ma_kh"},fields:[{ten_kh:"ten_kh"},{nh_kh:"nh_kh"},{dia_chi_kh:"dia_chi"},{dien_thoai_kh:"dien_thoai"}]}],function(){$callback$$()})},ban:function($callback$$){$items$$.filter($item$$=>$item$$.ma_ban).joinModel2($id_app$$,Dmban,[{where:{ma_ban:"ma_ban"},fields:[{ten_ban:"ten_ban"}]}],function(){$callback$$()})},
|
|
83
|
+
ban0:function($callback$$){$items$$.filter($item$$=>$item$$.ma_ban0).joinModel2($id_app$$,Dmban,[{where:{ma_ban0:"ma_ban"},fields:[{ten_ban0:"ten_ban"}]}],function(){$callback$$()})},kho:function($callback$$){$items$$.filter($item$$=>$item$$.ma_kho).joinModel2($id_app$$,dmkho,[{where:{ma_kho:"ma_kho"},fields:["ten_kho","wifi","wifi_pass"],setFields:($a$$,$b$$)=>{$b$$&&$b$$.exfields&&($a$$.dia_chi_kho=$b$$.exfields.dia_chi,$a$$.dien_thoai_kho=$b$$.exfields.dien_thoai)}}],function(){$callback$$()})},
|
|
84
|
+
hd7:function($callback$$){$items$$.joinModel2($id_app$$,hd7,[{where:{_id:"id_pbl"},fields:[{id_hd7:"_id"},{so_ct_hd7:"so_ct"},{ngay_ct_hd7:"ngay_ct"}]}],function(){$callback$$()})},trangthai:function($callback$$){$items$$.filter($item$$=>$item$$.trang_thai).joinModel2(null,trangthai,[{where:{trang_thai:"ma_trang_thai",ma_ct:"ma_ct"},fields:["ten_trang_thai","color"]}],function(){$callback$$()})},ptthanhtoan:function($callback$$){$items$$.filter($item$$=>$item$$.pt_thanh_toan).joinModel2($id_app$$,
|
|
85
|
+
ptthanhtoan,[{where:{pt_thanh_toan:"_id"},fields:{ten_pt_thanh_toan:"ten"}}],function(){$callback$$()})},ptthanhtoan2:function($callback$$){$items$$.filter($item$$=>$item$$.pt_thanh_toan2).joinModel2($id_app$$,ptthanhtoan,[{where:{pt_thanh_toan2:"_id"},fields:{ten_pt_thanh_toan2:"ten"}}],function(){$callback$$()})},t_tien:function($callback$$){$items$$.forEach(function($r$$){$r$$.details&&($r$$.details.forEach($d$$=>{$d$$.sl_order=$d$$.sl_order||$d$$.sl_xuat;$d$$.sl_order<=$d$$.sl_xuat?$d$$.finish_time||
|
|
86
|
+
($d$$.finish_time=new Date):$d$$.finish_time=null}),tinhtongtien($r$$))});$callback$$()},details_vt:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_vt).joinModel2($id_app$$,dmvt,[{where:{ma_vt:"ma_vt"},fields:[{ten_vt:"ten_vt"},{picture:"picture"},{sp_yeu_cau_che_bien:"sp_yeu_cau_che_bien",sp_yeu_cau_pha_che:"sp_yeu_cau_pha_che"},{gia_ban_le_goc:"gia_ban_le"},{barcode:"ma_vt2",ma_can:"ma_can"}]}],function(){$callback1$$()})},
|
|
87
|
+
function(){$callback$$()})},details_dt:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_dt).joinModel2($id_app$$,dmdt,[{where:{ma_dt:"ma_dt"},fields:[{name:"ten_dt",value:"ten_dt"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_contract:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_hd).joinModel2($id_app$$,contract,[{where:{ma_hd:"so_hd"},
|
|
88
|
+
fields:[{ten_hd:"ten_hd"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_phi:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_phi).joinModel2($id_app$$,dmphi,[{where:{ma_phi:"ma_phi"},fields:[{name:"ten_phi",value:"ten_phi"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_chietkhau:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>
|
|
89
|
+
$item$$.id_cs_ck).joinModel2(null,"dmchietkhau",[{where:$item$$=>({id_app:$r$$.id_app,_id:$item$$.id_cs_ck}),fields:["ma_chietkhau","ten_chietkhau"]}],function(){$callback1$$()})},function(){$callback$$()})}},function(){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_tt1).joinModel2($id_app$$,dmtt,[{where:{ma_vt:"ma_vt",ma_tt1:"ma_tt"},setFields:($item$$,$ref$$)=>{$item$$.ten_vt=$item$$.ten_vt+" - "+$ref$$.ten_tt;$item$$.barcode=$ref$$.ma_tt2||
|
|
90
|
+
$item$$.barcode;$item$$.ma_can=$ref$$.ma_can||$item$$.ma_can}}],function(){$callback1$$()})},function(){$fn$$(null,$items$$)})})};$contr$$.createRoute("payment/:id",async($req$$,$next$$)=>{var $id_obj$$=$req$$.params.id;if(!global.mongoose.Types.ObjectId.isValid($id_obj$$))return $next$$("Bill kh\u00f4ng t\u1ed3n t\u1ea1i");$id_obj$$=await model.findOne({_id:$id_obj$$});if(!$id_obj$$)return $next$$("Bill kh\u00f4ng t\u1ed3n t\u1ea1i");var $t_tien$$=$id_obj$$.details.map($r$$=>$r$$.tien_hang||0).reduce(($a$$,
|
|
91
|
+
$b$$)=>$a$$+$b$$,0);let $t_ck$$=$id_obj$$.details.map($r$$=>$r$$.tien_ck||0).reduce(($a$$,$b$$)=>$a$$+$b$$,0)+($id_obj$$.tien_ck_hd||0)+($id_obj$$.tien_evoucher||0);$t_tien$$=$t_tien$$-$t_ck$$-($id_obj$$.tien_paymentByPoints||0)-($id_obj$$.tien_thu||0)-($id_obj$$.tien_thu2||0);if($id_obj$$.trang_thai==="5"||$id_obj$$.trang_thai==="6"||!$t_tien$$)return $next$$("Bill n\u00e0y \u0111\u00e3 \u0111\u01b0\u1ee3c thanh to\u00e1n");try{var $he_so_qd$$=await currency.getRate($id_obj$$.id_app,$id_obj$$.ma_nt);
|
|
92
|
+
if(!$he_so_qd$$)return $next$$("Ch\u01b0a khai bao h\u1ec7 s\u1ed1 quy \u0111\u1ed5i v\u1edbi lo\u1ea1i ti\u1ec1n "+$id_obj$$.ma_nt);$he_so_qd$$=$t_tien$$/$he_so_qd$$;if(await getPointBalance($req$$.user.current_id_app,$req$$.user.email)<$he_so_qd$$)return $next$$("B\u1ea1n kh\u00f4ng c\u00f3 \u0111\u1ee7 \u0111i\u1ec3m \u0111\u1ec3 th\u1ef1c hi\u1ec7n giao d\u1ecbch n\u00e0y.");$id_obj$$.paymentByPoints=$he_so_qd$$;$id_obj$$.tien_paymentByPoints=$t_tien$$;await createTransactionPayment($id_obj$$,
|
|
93
|
+
$req$$.user.email);$id_obj$$.con_no=0;$id_obj$$.trang_thai="6";tinhtongtien($id_obj$$);await $id_obj$$.save();const $obj_updated$$=await model.findOne({_id:$id_obj$$._id}).lean();controller.postData($id_obj$$,$contr$$,async function($e$$){if($e$$)return $next$$($e$$);$e$$=await $contr$$.asyncView($req$$.user,[$obj_updated$$],{req:$req$$});controller.pushNotification($contr$$,$e$$[0],"update");controller.pushNotification($contr$$,$e$$[0],"payment",null,!1,{title:`Bill ${$obj_updated$$.so_ct} \u0111\u00e3 \u0111\u01b0\u1ee3c thanh to\u00e1n`});
|
|
94
|
+
$next$$(null,{rs:"B\u1ea1n \u0111\u00e3 thanh to\u00e1n th\u00e0nh c\u00f4ng"})})}catch($e$$){$next$$($e$$.message)}},{method:"GET"})};
|
|
@@ -18,14 +18,14 @@ await pc0.findOne({_id:$dntt$jscomp$1_id_pc0_t_tien_dn$$,id_app:$user$$.current_
|
|
|
18
18
|
[]).map($d$$=>$d$$.t_thue_nt||0).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$ex$jscomp$1_t_tien_tt$$=($data$$.details||$obj$$.details||[]).map($d$$=>$d$$.tien_nt||0).reduce(($a$$,$b$$)=>$a$$+$b$$,0)+($data$$.tdttcos||$obj$$.tdttcos||[]).map($d$$=>$d$$.tien_nt||0).reduce(($a$$,$b$$)=>$a$$+$b$$,0)+($data$$.vatvaos||$obj$$.vatvaos||[]).map($d$$=>$d$$.t_thue_nt||0).reduce(($a$$,$b$$)=>$a$$+$b$$,0);if($dntt$jscomp$1_id_pc0_t_tien_dn$$!==$ex$jscomp$1_t_tien_tt$$)return $next$$("T\u1ed5ng s\u1ed1 ti\u1ec1n thanh to\u00e1n ph\u1ea3i b\u1eb1ng v\u1edbi s\u1ed1 ti\u1ec1n trong \u0111\u1ec1 ngh\u1ecb thanh to\u00e1n \u0111\u00e3 \u0111\u01b0\u1ee3c duy\u1ec7t")}if($obj$$.tdttcos&&
|
|
19
19
|
$obj$$.tdttcos.length>0&&(await $obj$$.tdttcos.asyncJoinModel2($user$$.current_id_app,Tdttco,{where:{id_tdtt:"_id"},fields:["tat_toan",{tien_hd_nt:"tien_nt"}]}),(await Promise.all($obj$$.tdttcos.map($hd$$=>(async()=>{if(!global.mongoose.Types.ObjectId.isValid($hd$$.id_tdtt))return{error:"Ho\u00e1 \u0111\u01a1n kh\u00f4ng h\u1ee3p l\u1ec7",invoice:$hd$$};let $ds_da_thanh_toan$$=await Tdttco_tt.find({id_app:$obj$$.id_app,id_tdtt:$hd$$.id_tdtt,id_ct:{$ne:$obj$$._id.toString()}}).lean(),$da_thanh_toan$$=
|
|
20
20
|
$ds_da_thanh_toan$$.map($t$$=>$t$$.thanh_toan_qd||0).reduce(($a$$,$b$$)=>$a$$+$b$$,0);return{ds_da_thanh_toan:$ds_da_thanh_toan$$,da_thanh_toan:$da_thanh_toan$$,invoice:$hd$$,con_lai:$hd$$.tien_hd_nt-$da_thanh_toan$$}})()))).filter($hd$$=>$hd$$.error).length>0))return $next$$("S\u1ed1 ti\u1ec1n thanh to\u00e1n kh\u00f4ng \u0111\u01b0\u1ee3c l\u1edbn h\u01a1n s\u1ed1 ti\u1ec1n c\u00f2n l\u1ea1i c\u1ee7a ho\u00e1 \u0111\u01a1n");valid_detail($user$$,$data$$,function($error$$){if($error$$)return $next$$($error$$);
|
|
21
|
-
$next$$(null,$data$$,$obj$$)})};$contr_router$$.deleted=($details$jscomp$1_user$$,$obj$$,$next$$)=>{$details$jscomp$1_user$$=($obj$$.details||[]).filter($d$$=>$d$$.id_tdtt);async.map($details$jscomp$1_user$$,($detail$$,$callback$$)=>{setImmediate(()=>{Tdttco.findOneAndUpdate({_id:$detail$$.id_tdtt.toString()},{$set:{tat_toan:!1}},function($error$$,$result$$){$callback$$($error$$,$result$$)})})},$e$$=>{$next$$($e$$,$obj$$)})};$contr_router$$.on("saved",function($
|
|
22
|
-
id_app:$
|
|
23
|
-
|
|
24
|
-
$e$$=>{$e$$&&Logger.error($e$$)})}
|
|
25
|
-
$user$$.current_id_app;async.parallel({kh:function($callback$$){$items$$.filter($item$$=>$item$$.ma_kh).joinModel2($id_app$$,customer,[{where:"ma_kh",fields:["ten_kh"]}],function(){$callback$$()})},nv:function($callback$$){$items$$.filter($item$$=>$item$$.ma_nv).joinModel2($id_app$$,dmnv,[{where:"ma_nv",fields:["ten_nv"]}],function(){$callback$$()})},trangthai:function($callback$$){$items$$.filter($item
|
|
26
|
-
fields:["ten_trang_thai","color"]}],function(){$callback$$()})},pc0:function($callback$$){$items$$.joinModel2($id_app$$,pc0,[{where:{id_pc0:"_id"},fields:[{so_ct_pc0:"so_ct"},{ngay_ct_pc0:"ngay_ct"}]}],function(){$callback$$()})},t_tien:function($callback$$){$items$$.forEach(function($r$$){$r$$.t_tien=0;$r$$.t_tien_nt=0;$r$$.t_thue_vao=0;$r$$.t_thue_vao_nt=0;$r$$.details&&($r$$.t_tien=$r$$.details.csum("tien")
|
|
27
|
-
$r$$.t_tien_nt+=$r$$.tdttcos.csum("tien_nt"));$r$$.vatvaos&&($r$$.t_thue_vao=$r$$.vatvaos.csum("t_thue"),$r$$.t_thue_vao_nt=$r$$.vatvaos.csum("t_thue_nt"));$r$$.t_tt=$r$$.t_tien+$r$$.t_thue_vao;$r$$.t_tt_nt=$r$$.t_tien_nt+$r$$.t_thue_vao_nt});$callback$$()},details_dt_tdttco:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.tdttcos||[]).filter($item$$=>$item$$.ma_dt).joinModel($id_app$$,
|
|
28
|
-
function(){$callback$$()})},details_hd_tdttco:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.tdttcos||[]).filter($item$$=>$item$$.ma_hd).joinModel2($id_app$$,contract,[{wher:{ma_hd:"so_hd"},fields:["ten_hd"]}],function(){$callback1$$()})},function(){$callback$$()})},details_phi_tdttco:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.tdttcos||
|
|
29
|
-
function(){$callback1$$()})},function(){$callback$$()})},details_customer:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_kh).joinModel2($id_app$$,customer,[{where:"ma_kh",fields:["ten_kh"]}],function(){$callback1$$()})},function(){$callback$$()})},details_dt:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||
|
|
30
|
-
fields:["ten_dt"]}],function(){$callback1$$()})},function(){$callback$$()})},details_hopdong:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_hd).joinModel2($id_app$$,contract,[{where:{ma_hd:"so_hd"},fields:["ten_hd"]}],function(){$callback1$$()})},function(){$callback$$()})},details_phi:function($callback$$){async.mapLimit($items$$,20,function($r
|
|
31
|
-
dmphi,[{where:"ma_phi",fields:["ten_phi"]}],function(){$callback1$$()})},function(){$callback$$()})}},function(){$fn$$(null,$items$$)})}};
|
|
21
|
+
$next$$(null,$data$$,$obj$$)})};$contr_router$$.deleted=($details$jscomp$1_user$$,$obj$$,$next$$)=>{$details$jscomp$1_user$$=($obj$$.details||[]).filter($d$$=>$d$$.id_tdtt);async.map($details$jscomp$1_user$$,($detail$$,$callback$$)=>{setImmediate(()=>{Tdttco.findOneAndUpdate({_id:$detail$$.id_tdtt.toString()},{$set:{tat_toan:!1}},function($error$$,$result$$){$callback$$($error$$,$result$$)})})},$e$$=>{$next$$($e$$,$obj$$)})};$contr_router$$.on("saved",async function($_obj$jscomp$1_obj$$){if($_obj$jscomp$1_obj$$.id_pc0){await pc0.updateMany({_id:$_obj$jscomp$1_obj$$.id_pc0,
|
|
22
|
+
id_app:$_obj$jscomp$1_obj$$.id_app},{id_pc1:$_obj$jscomp$1_obj$$._id.toString(),trang_thai:"6"});const $_obj$$=await pc0.findOne({_id:$_obj$jscomp$1_obj$$.id_pc0});$_obj$$&&controller.postData($_obj$$,global.controllers.PC0,$e$$=>{$e$$&&Logger.error($e$$)})}$_obj$jscomp$1_obj$$.id_pn6&&(await pn6.updateMany({_id:$_obj$jscomp$1_obj$$.id_pn6,id_app:$_obj$jscomp$1_obj$$.id_app},{id_pc1:$_obj$jscomp$1_obj$$._id.toString(),trang_thai:"7"}),($_obj$jscomp$1_obj$$=await pn6.findOne({_id:$_obj$jscomp$1_obj$$.id_pn6}))&&
|
|
23
|
+
controller.postData($_obj$jscomp$1_obj$$,global.controllers.PN6,$e$$=>{$e$$&&Logger.error($e$$)}))});$contr_router$$.on("deleted",async function($_obj$jscomp$3_obj$$){if($_obj$jscomp$3_obj$$.id_pc0){await pc0.updateMany({_id:$_obj$jscomp$3_obj$$.id_pc0,id_app:$_obj$jscomp$3_obj$$.id_app},{id_pc1:""});await pc0.updateMany({_id:$_obj$jscomp$3_obj$$.id_pc0,id_app:$_obj$jscomp$3_obj$$.id_app,trang_thai:"6"},{trang_thai:"4"});const $_obj$$=await pc0.findOne({_id:$_obj$jscomp$3_obj$$.id_pc0,id_app:$_obj$jscomp$3_obj$$.id_app});
|
|
24
|
+
$_obj$$&&controller.postData($_obj$$,global.controllers.PC0,$e$$=>{$e$$&&Logger.error($e$$)})}$_obj$jscomp$3_obj$$.id_pn6&&(await pn6.updateMany({_id:$_obj$jscomp$3_obj$$.id_pn6,id_app:$_obj$jscomp$3_obj$$.id_app},{id_pc1:""}),await pn6.updateMany({_id:$_obj$jscomp$3_obj$$.id_pn6,id_app:$_obj$jscomp$3_obj$$.id_app,trang_thai:"7"},{trang_thai:"5"}),($_obj$jscomp$3_obj$$=await pn6.findOne({_id:$_obj$jscomp$3_obj$$.id_pn6,id_app:$_obj$jscomp$3_obj$$.id_app}))&&controller.postData($_obj$jscomp$3_obj$$,
|
|
25
|
+
global.controllers.PN6,$e$$=>{$e$$&&Logger.error($e$$)}))});$contr_router$$.view=function($user$$,$items$$,$fn$$){let $id_app$$=$user$$.current_id_app;async.parallel({kh:function($callback$$){$items$$.filter($item$$=>$item$$.ma_kh).joinModel2($id_app$$,customer,[{where:"ma_kh",fields:["ten_kh"]}],function(){$callback$$()})},nv:function($callback$$){$items$$.filter($item$$=>$item$$.ma_nv).joinModel2($id_app$$,dmnv,[{where:"ma_nv",fields:["ten_nv"]}],function(){$callback$$()})},trangthai:function($callback$$){$items$$.filter($item$$=>
|
|
26
|
+
$item$$.trang_thai).joinModel2(null,trangthai,[{where:{trang_thai:"ma_trang_thai",ma_ct:"ma_ct"},fields:["ten_trang_thai","color"]}],function(){$callback$$()})},pc0:function($callback$$){$items$$.joinModel2($id_app$$,pc0,[{where:{id_pc0:"_id"},fields:[{so_ct_pc0:"so_ct"},{ngay_ct_pc0:"ngay_ct"}]}],function(){$callback$$()})},t_tien:function($callback$$){$items$$.forEach(function($r$$){$r$$.t_tien=0;$r$$.t_tien_nt=0;$r$$.t_thue_vao=0;$r$$.t_thue_vao_nt=0;$r$$.details&&($r$$.t_tien=$r$$.details.csum("tien"),
|
|
27
|
+
$r$$.t_tien_nt=$r$$.details.csum("tien_nt"));$r$$.tdttcos&&($r$$.t_tien+=$r$$.tdttcos.csum("tien"),$r$$.t_tien_nt+=$r$$.tdttcos.csum("tien_nt"));$r$$.vatvaos&&($r$$.t_thue_vao=$r$$.vatvaos.csum("t_thue"),$r$$.t_thue_vao_nt=$r$$.vatvaos.csum("t_thue_nt"));$r$$.t_tt=$r$$.t_tien+$r$$.t_thue_vao;$r$$.t_tt_nt=$r$$.t_tien_nt+$r$$.t_thue_vao_nt});$callback$$()},details_dt_tdttco:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.tdttcos||[]).filter($item$$=>$item$$.ma_dt).joinModel($id_app$$,
|
|
28
|
+
dmdt,[{akey:"ma_dt",bkey:"ma_dt",fields:[{name:"ten_dt",value:"ten_dt"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_hd_tdttco:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.tdttcos||[]).filter($item$$=>$item$$.ma_hd).joinModel2($id_app$$,contract,[{wher:{ma_hd:"so_hd"},fields:["ten_hd"]}],function(){$callback1$$()})},function(){$callback$$()})},details_phi_tdttco:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.tdttcos||
|
|
29
|
+
[]).filter($item$$=>$item$$.ma_phi).joinModel2($id_app$$,dmphi,[{where:"ma_phi",fields:["ten_phi"]}],function(){$callback1$$()})},function(){$callback$$()})},details_customer:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_kh).joinModel2($id_app$$,customer,[{where:"ma_kh",fields:["ten_kh"]}],function(){$callback1$$()})},function(){$callback$$()})},details_dt:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||
|
|
30
|
+
[]).filter($item$$=>$item$$.ma_dt).joinModel2($id_app$$,dmdt,[{where:"ma_dt",fields:["ten_dt"]}],function(){$callback1$$()})},function(){$callback$$()})},details_hopdong:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_hd).joinModel2($id_app$$,contract,[{where:{ma_hd:"so_hd"},fields:["ten_hd"]}],function(){$callback1$$()})},function(){$callback$$()})},details_phi:function($callback$$){async.mapLimit($items$$,20,function($r$$,
|
|
31
|
+
$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_phi).joinModel2($id_app$$,dmphi,[{where:"ma_phi",fields:["ten_phi"]}],function(){$callback1$$()})},function(){$callback$$()})}},function(){$fn$$(null,$items$$)})}};
|
|
@@ -10,15 +10,16 @@ $obj$$.ma_kh);$details_sc$$.push($d_detail$$)});$obj$$.tdttcos.forEach(function(
|
|
|
10
10
|
0);let $t_tien_tt$$=($obj$$.details||[]).map($d$$=>$d$$.tien_nt||0)+($obj$$.vatvaos||[]).map($d$$=>$d$$.t_thue_nt||0);if($dntt_t_tien_dn$$!==$t_tien_tt$$)return $next$$("T\u1ed5ng s\u1ed1 ti\u1ec1n t\u1ea1m \u1ee9ng ph\u1ea3i b\u1eb1ng v\u1edbi s\u1ed1 ti\u1ec1n trong \u0111\u1ec1 ngh\u1ecb t\u1ea1m \u1ee9ng \u0111\u00e3 \u0111\u01b0\u1ee3c duy\u1ec7t")}valid_detail($user$$,$obj$$,function($error$$){if($error$$)return $next$$($error$$);$next$$(null,$obj$$)})};$contr_router$$.created=function($user$$,
|
|
11
11
|
$obj$$,$next$$){$next$$(null,$obj$$)};$contr_router$$.updating=async function($user$$,$data$$,$obj$$,$next$$){var $dntt$jscomp$1_id_pc3_t_tien_dn$$=$data$$.id_pc3||$obj$$.id_pc3;if($dntt$jscomp$1_id_pc3_t_tien_dn$$){$dntt$jscomp$1_id_pc3_t_tien_dn$$=await pc3.findOne({_id:$dntt$jscomp$1_id_pc3_t_tien_dn$$,id_app:$user$$.current_id_app});if(!$dntt$jscomp$1_id_pc3_t_tien_dn$$)return $next$$("\u0110\u1ec1 ngh\u1ecb t\u1ea1m \u1ee9ng kh\u00f4ng t\u1ed3n t\u1ea1i");$dntt$jscomp$1_id_pc3_t_tien_dn$$=($dntt$jscomp$1_id_pc3_t_tien_dn$$.details||
|
|
12
12
|
[]).map($d$$=>$d$$.tien_nt||0)+($dntt$jscomp$1_id_pc3_t_tien_dn$$.vatvaos||[]).map($d$$=>$d$$.t_thue_nt||0);let $t_tien_tt$$=($data$$.details||$obj$$.details||[]).map($d$$=>$d$$.tien_nt||0)+($data$$.vatvaos||$obj$$.vatvaos||[]).map($d$$=>$d$$.t_thue_nt||0);if($dntt$jscomp$1_id_pc3_t_tien_dn$$!==$t_tien_tt$$)return $next$$("T\u1ed5ng s\u1ed1 ti\u1ec1n t\u1ea1m \u1ee9ng ph\u1ea3i b\u1eb1ng v\u1edbi s\u1ed1 ti\u1ec1n trong \u0111\u1ec1 ngh\u1ecb t\u1ea1m \u1ee9ng \u0111\u00e3 \u0111\u01b0\u1ee3c duy\u1ec7t")}valid_detail($user$$,
|
|
13
|
-
$data$$,function($error$$){if($error$$)return $next$$($error$$);$next$$(null,$data$$,$obj$$)})};$contr_router$$.updated=function($user$$,$obj$$,$next$$){$next$$(null,$obj$$)};$contr_router$$.on("saved",function($
|
|
14
|
-
$e$$=>{$e$$&&Logger.error($e$$)})
|
|
15
|
-
function($user$$,$items$$,$fn$$){let $id_app$$=$user$$.current_id_app;async.parallel({kh:function($callback$$){$items$$.filter($item$$=>$item$$.ma_kh).joinModel2($id_app$$,customer,[{where:"ma_kh",fields:["ten_kh"]}],function(){$callback$$()})},nv:function($callback$$){$items$$.filter($item$$=>$item$$.ma_nv).joinModel2($id_app$$,dmnv,[{where:"ma_nv",fields:["ten_nv"]}],function(){$callback$$()})},tk:function($callback$$){$items$$.filter($item
|
|
16
|
-
fields:[{ten_tk_co:"ten_tk"}]}],function(){$callback$$()})},dv:function($callback$$){$items$$.filter($item$$=>$item$$.ma_dvcs).joinModel2($id_app$$,dvcs,[{where:{ma_dvcs:"_id"},fields:["ten_dvcs"]}],function(){$callback$$()})},pn6:function($callback$$){$items$$.joinModel2($id_app$$,pn6,[{where:{_id:"id_pc2"},fields:[{name:"id_pn6",value:"_id"}]}],function(){$callback$$()})},trangthai:function($callback$$){$items$$.joinModel2(null,trangthai,
|
|
17
|
-
"color"]}],function(){$callback$$()})},pc3:function($callback$$){$items$$.joinModel2($id_app$$,pc3,[{where:{id_pc3:"_id"},fields:[{id_pc3:"_id"},{so_ct_pc3:"so_ct"},{ngay_ct_pc3:"ngay_ct"}]}],function(){$callback$$()})},details_tk:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.tk_no).joinModel2($id_app$$,account,[{where:{tk_no:"tk"},fields:[{ten_tk_no:"ten_tk"}]}],
|
|
18
|
-
20,function($r$$,$callback1$$){($r$$.tdttcos||[]).filter($item$$=>$item$$.tk_no).joinModel2($id_app$$,account,[{where:{tk_no:"tk"},fields:[{ten_tk_no:"ten_tk"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_dt_tdttco:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.tdttcos||[]).filter($item$$=>$item$$.ma_dt).joinModel2($id_app$$,
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
(async()=>{$r$$.t_tien=0;$r$$.t_tien_nt=0;$r$$.t_thue_vao=0;$r$$.t_thue_vao_nt=0;$r$$.details&&($r$$.t_tien=$r$$.details.csum("tien"),$r$$.t_tien_nt=$r$$.details.csum("tien_nt"));$r$$.tdttcos&&($r$$.t_tien+=$r$$.tdttcos.csum("tien"),$r$$.t_tien_nt+=$r$$.tdttcos.csum("tien_nt"))
|
|
23
|
-
id_pc2:$r$$._id.toString()}).lean()).map($d$$=>$d$$._id.toString());Logger.info("pn6",$id_pn6s_sc_pn6$$);var $sc_khac_tk_cos$$=($r$$.details||[]).map($d$$=>$d$$.tk_no);$id_pn6s_sc_pn6$$=await Socai.find({id_app:$r$$.id_app,tk_co:{$in:$sc_khac_tk_cos$$},
|
|
24
|
-
$r$$.t_hoan_ung_nt=$sc_khac_tk_cos$$.filter($r$$=>($r$$.ma_ct_link||"").toLowerCase()!=="pn6").map($r$$=>$r$$.tien_nt).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$r$$.t_con_lai_nt=$r$$.t_tt_nt-$r$$.t_hoan_ung_nt;return $r$$})())),$fn$$(null,$items$$)}catch($e$$){$fn$$($e$$.message
|
|
13
|
+
$data$$,function($error$$){if($error$$)return $next$$($error$$);$next$$(null,$data$$,$obj$$)})};$contr_router$$.updated=function($user$$,$obj$$,$next$$){$next$$(null,$obj$$)};$contr_router$$.on("saved",async function($_obj_obj$$){$_obj_obj$$.id_pc3&&(await pc3.updateMany({_id:$_obj_obj$$.id_pc3,id_app:$_obj_obj$$.id_app},{id_pc2:$_obj_obj$$._id.toString(),trang_thai:"6"}),($_obj_obj$$=await pc3.findOne({_id:$_obj_obj$$.id_pc3,id_app:$_obj_obj$$.id_app}))&&controller.postData($_obj_obj$$,global.controllers.PC3,
|
|
14
|
+
$e$$=>{$e$$&&Logger.error($e$$)}))});$contr_router$$.on("deleted",async function($_obj$jscomp$1_obj$$){$_obj$jscomp$1_obj$$.id_pc3&&(await pc3.updateMany({_id:$_obj$jscomp$1_obj$$.id_pc3,id_app:$_obj$jscomp$1_obj$$.id_app},{id_pc2:""}),await pc3.updateMany({_id:$_obj$jscomp$1_obj$$.id_pc3,id_app:$_obj$jscomp$1_obj$$.id_app,trang_thai:"6"},{trang_thai:"4"}),($_obj$jscomp$1_obj$$=await pc3.findOne({_id:$_obj$jscomp$1_obj$$.id_pc3,id_app:$_obj$jscomp$1_obj$$.id_app}))&&controller.postData($_obj$jscomp$1_obj$$,
|
|
15
|
+
global.controllers.PC3,$e$$=>{$e$$&&Logger.error($e$$)}))});$contr_router$$.view=function($user$$,$items$$,$fn$$){let $id_app$$=$user$$.current_id_app;async.parallel({kh:function($callback$$){$items$$.filter($item$$=>$item$$.ma_kh).joinModel2($id_app$$,customer,[{where:"ma_kh",fields:["ten_kh"]}],function(){$callback$$()})},nv:function($callback$$){$items$$.filter($item$$=>$item$$.ma_nv).joinModel2($id_app$$,dmnv,[{where:"ma_nv",fields:["ten_nv"]}],function(){$callback$$()})},tk:function($callback$$){$items$$.filter($item$$=>
|
|
16
|
+
$item$$.tk_co).joinModel2($id_app$$,account,[{where:{tk_co:"tk"},fields:[{ten_tk_co:"ten_tk"}]}],function(){$callback$$()})},dv:function($callback$$){$items$$.filter($item$$=>$item$$.ma_dvcs).joinModel2($id_app$$,dvcs,[{where:{ma_dvcs:"_id"},fields:["ten_dvcs"]}],function(){$callback$$()})},pn6:function($callback$$){$items$$.joinModel2($id_app$$,pn6,[{where:{_id:"id_pc2"},fields:[{name:"id_pn6",value:"_id"}]}],function(){$callback$$()})},trangthai:function($callback$$){$items$$.joinModel2(null,trangthai,
|
|
17
|
+
[{where:{trang_thai:"ma_trang_thai",ma_ct:"ma_ct"},fields:["ten_trang_thai","color"]}],function(){$callback$$()})},pc3:function($callback$$){$items$$.joinModel2($id_app$$,pc3,[{where:{id_pc3:"_id"},fields:[{id_pc3:"_id"},{so_ct_pc3:"so_ct"},{ngay_ct_pc3:"ngay_ct"}]}],function(){$callback$$()})},details_tk:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.tk_no).joinModel2($id_app$$,account,[{where:{tk_no:"tk"},fields:[{ten_tk_no:"ten_tk"}]}],
|
|
18
|
+
function(){$callback1$$()})},function(){$callback$$()})},details_tk_tdttco:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.tdttcos||[]).filter($item$$=>$item$$.tk_no).joinModel2($id_app$$,account,[{where:{tk_no:"tk"},fields:[{ten_tk_no:"ten_tk"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_dt_tdttco:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.tdttcos||[]).filter($item$$=>$item$$.ma_dt).joinModel2($id_app$$,
|
|
19
|
+
dmdt,[{where:"ma_dt",fields:["ten_dt"]}],function(){$callback1$$()})},function(){$callback$$()})},details_hd_tdttco:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.tdttcos||[]).filter($item$$=>$item$$.ma_hd).joinModel2($id_app$$,contract,[{where:{ma_hd:"so_hd"},fields:["ten_hd"]}],function(){$callback1$$()})},function(){$callback$$()})},details_phi_tdttco:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.tdttcos||[]).filter($item$$=>
|
|
20
|
+
$item$$.ma_phi).joinModel2($id_app$$,dmphi,[{where:"ma_phi",fields:["ten_phi"]}],function(){$callback1$$()})},function(){$callback$$()})},details_customer:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_kh).joinModel2($id_app$$,customer,[{where:"ma_kh",fields:["ten_kh"]}],function(){$callback1$$()})},function(){$callback$$()})},details_dt:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||
|
|
21
|
+
[]).filter($item$$=>$item$$.ma_dt).joinModel2($id_app$$,dmdt,[{where:"ma_dt",fields:["ten_dt"]}],function(){$callback1$$()})},function(){$callback$$()})},details_hopdong:function($callback$$){async.mapLimit($items$$,20,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_hd).joinModel2($id_app$$,contract,[{where:{ma_hd:"so_hd"},fields:["ten_hd"]}],function(){$callback1$$()})},function(){$callback$$()})},details_phi:function($callback$$){async.mapLimit($items$$,20,function($r$$,
|
|
22
|
+
$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_phi).joinModel2($id_app$$,dmphi,[{where:"ma_phi",fields:["ten_phi"]}],function(){$callback1$$()})},function(){$callback$$()})}},async()=>{try{await Promise.all($items$$.map($r$$=>(async()=>{$r$$.t_tien=0;$r$$.t_tien_nt=0;$r$$.t_thue_vao=0;$r$$.t_thue_vao_nt=0;$r$$.details&&($r$$.t_tien=$r$$.details.csum("tien"),$r$$.t_tien_nt=$r$$.details.csum("tien_nt"));$r$$.tdttcos&&($r$$.t_tien+=$r$$.tdttcos.csum("tien"),$r$$.t_tien_nt+=$r$$.tdttcos.csum("tien_nt"));
|
|
23
|
+
$r$$.vatvaos&&($r$$.t_thue_vao=$r$$.vatvaos.csum("t_thue"),$r$$.t_thue_vao_nt=$r$$.vatvaos.csum("t_thue_nt"));$r$$.t_tt=$r$$.t_tien+$r$$.t_thue_vao;$r$$.t_tt_nt=$r$$.t_tien_nt+$r$$.t_thue_vao_nt;var $id_pn6s_sc_pn6$$=(await pn6.find({id_app:$r$$.id_app,id_pc2:$r$$._id.toString()}).lean()).map($d$$=>$d$$._id.toString());Logger.info("pn6",$id_pn6s_sc_pn6$$);var $sc_khac_tk_cos$$=($r$$.details||[]).map($d$$=>$d$$.tk_no);$id_pn6s_sc_pn6$$=await Socai.find({id_app:$r$$.id_app,tk_co:{$in:$sc_khac_tk_cos$$},
|
|
24
|
+
id_ct:{$in:$id_pn6s_sc_pn6$$}}).lean();$r$$.t_hoan_ung_nt=$id_pn6s_sc_pn6$$.map($r$$=>$r$$.tien_nt).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$sc_khac_tk_cos$$=await Socai.find({id_app:$r$$.id_app,tk_co:{$in:$sc_khac_tk_cos$$},id_link:$r$$._id.toString()}).lean();$r$$.t_hoan_ung_nt=$sc_khac_tk_cos$$.filter($r$$=>($r$$.ma_ct_link||"").toLowerCase()!=="pn6").map($r$$=>$r$$.tien_nt).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$r$$.t_con_lai_nt=$r$$.t_tt_nt-$r$$.t_hoan_ung_nt;return $r$$})())),$fn$$(null,$items$$)}catch($e$$){$fn$$($e$$.message||
|
|
25
|
+
$e$$)}})}};
|
|
@@ -2,18 +2,15 @@ const model=global.getModel("pgh"),PostBook=require("../../libs/post-book"),Post
|
|
|
2
2
|
module.exports=function($contr_router$$){$contr_router$$=new controller($contr_router$$,model,ma_ct.toLowerCase(),{isVoucher:!0,sort:{ngay_ct:-1,so_ct:-1},onPopulate:function($mongooseDoc$$){return $mongooseDoc$$.populate({path:"details.don_hang"})}});$contr_router$$.route();$contr_router$$.creating=function($user$$,$obj$$,$next$$){$obj$$.details.forEach($d$$=>{$d$$.don_hang=$d$$.don_hang?._id});$next$$(null,$obj$$)};$contr_router$$.created=async function($user$$,$obj$$,$next$$){onAfterCommit(async()=>
|
|
3
3
|
{for(let $hd$$ of $obj$$.details||[])$hd$$.don_hang?.trang_thai&&await global.getModel("hd2").updateOne({_id:$hd$$.don_hang._id},{trang_thai:$obj$$.trang_thai,user_nv_giao_hang:$obj$$.user_nv_giao_hang})});$next$$(null,$obj$$)};$contr_router$$.updating=async function($user$$,$data$$,$obj$$,$next$$){($data$$.details||[]).forEach($d$$=>{$d$$.don_hang=typeof $d$$.don_hang=="string"?$d$$.don_hang:$d$$.don_hang?._id});$next$$(null,$data$$,$obj$$)};$contr_router$$.updated=async function($user$$,$obj$$,
|
|
4
4
|
$next$$){onAfterCommit(async()=>{for(let $hd$$ of $obj$$.details||[])$hd$$.don_hang?.trang_thai&&await global.getModel("hd2").updateOne({_id:$hd$$.don_hang._id},{trang_thai:$obj$$.trang_thai,user_nv_giao_hang:$obj$$.user_nv_giao_hang})});$next$$(null,$obj$$)};$contr_router$$.deleting=function($user$$,$obj$$,$next$$){$next$$(null,$obj$$)};$contr_router$$.post=async function($obj$$,$fn$$){$fn$$||=function(){};$obj$$=await model.findById($obj$$._id).populate({path:"details.don_hang"});if(!$obj$$)return $fn$$("Ch\u1ee9ng t\u1eeb kh\u00f4ng t\u1ed3n t\u1ea1i");
|
|
5
|
-
$obj$$=$obj$$.toObject();$obj$$.details=$obj$$.details.map($d$$=>{$d$$.toObject&&($d$$=$d$$.toObject());return{...$d$$}});let $
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
$
|
|
11
|
-
|
|
12
|
-
$r$$.details.csum("
|
|
13
|
-
|
|
14
|
-
function($r$$,$callback1$$){($r$$.details||[]).joinModel2($id_app$$,global.getModel("dmvt"),[{where:"ma_vt",
|
|
15
|
-
$
|
|
16
|
-
function($
|
|
17
|
-
function(){$callback$$()})},details_csck:function($callback$$){async.map($items$$,function($r$$,$callback1$$){($r$$.details||[]).filter($d$$=>$d$$.id_cs_ck).joinModel2($id_app$$,"dmchietkhau",[{where:{id_cs_ck:"_id"},setFields:($item$$,$ref$$)=>{$item$$.ten_chietkhau=$ref$$.ten_chietkhau}}],function(){$callback1$$()})},function(){$callback$$()})},details_tt1:function($callback$$){async.map($items$$,function($r$$,$callback1$$){($r$$.details||[]).filter($d$$=>$d$$.ma_tt1).joinModel2($id_app$$,"dmtt",
|
|
18
|
-
[{where:{ma_vt:"ma_vt",ma_tt1:"ma_tt"},setFields:($item$$,$ref$$)=>{$item$$.thuoc_tinh=$ref$$;$item$$.nh_tt||($item$$.nh_tt=$ref$$.nh_tt)}}],function(){$callback1$$()})},function(){$callback$$()})}},function(){$next$$(null,$items$$)})},async()=>{await $pghs$$.filter($item$$=>$item$$.trang_thai).asyncJoinModel2(null,"trangthai",[{where:{trang_thai:"ma_trang_thai",ma_ct:"ma_ct"},fields:["ten_trang_thai","color"]}]);await $pghs$$.filter($item$$=>$item$$.user_nv_giao_hang).joinModel2(null,"participant",
|
|
19
|
-
[{where:{user_nv_giao_hang:"email"},fields:{ten_nv_giao_hang:"name"}}]);$cb$$(null,$pghs$$)})}};
|
|
5
|
+
$obj$$=$obj$$.toObject();$obj$$.details=$obj$$.details.map($d$$=>{$d$$.toObject&&($d$$=$d$$.toObject());return{...$d$$}});let $product_details$$=$obj$$.details.map($d$$=>$d$$.don_hang?.details||[]).concat(($a$$,$b$$)=>$a$$.concat($b$$),[]).map($detail$$=>{$detail$$.toObject&&($detail$$=$detail$$.toObject());return $detail$$.combo&&$detail$$.combo.length>0?$detail$$.combo.map($item$$=>{$item$$=$item$$.toObject?$item$$.toObject():{...$item$$};delete $item$$.px_gia_dd;return $item$$}):[$detail$$]}).reduce(($a$$,
|
|
6
|
+
$b$$)=>$a$$.concat($b$$),[]);async.series({post_sokho:function($callback$$){const $details_kho$$=[];$product_details$$.forEach(function($d$jscomp$4_detail$$){$d$jscomp$4_detail$$={...$d$jscomp$4_detail$$,nxt:2};$d$jscomp$4_detail$$.ma_kho=$obj$$.ma_kho;$details_kho$$.push($d$jscomp$4_detail$$)});$product_details$$.forEach(function($d$jscomp$5_detail$$){$d$jscomp$5_detail$$={...$d$jscomp$5_detail$$,nxt:1,pn_gia_tb:!0};$d$jscomp$5_detail$$.ma_kho=$obj$$.ma_kho_nv;$d$jscomp$5_detail$$.sl_nhap=$d$jscomp$5_detail$$.sl_xuat;
|
|
7
|
+
$d$jscomp$5_detail$$.tien_nhap=$d$jscomp$5_detail$$.tien_xuat;$d$jscomp$5_detail$$.tien_nhap_nt=$d$jscomp$5_detail$$.tien_xuat_nt;$d$jscomp$5_detail$$.sl_xuat=0;$d$jscomp$5_detail$$.sl_xuat_qd=0;$d$jscomp$5_detail$$.tien_xuat=0;$d$jscomp$5_detail$$.tien_xuat_nt=0;$details_kho$$.push($d$jscomp$5_detail$$)});async.series({khott:$callback$$=>{(new PostBook($obj$$,[...$details_kho$$],global.getModel("sokhott"),async($_detail$$,$callback$$)=>{$callback$$({...$_detail$$})})).run(($e$$,$rs$$)=>{$callback$$($e$$,
|
|
8
|
+
$rs$$)})},khokt:$callback$$=>{(new PostSokho($obj$$,[...$details_kho$$],async($_detail$$,$callback$$)=>{$callback$$({...$_detail$$})})).run(function($e$$){$callback$$($e$$)})}},($e$$,$rs$$)=>{$callback$$($e$$,$rs$$)})}},function($e$$,$rs$$){$fn$$($e$$,$rs$$)})};$contr_router$$.view=function($user$$,$pghs$$,$cb$$){const $id_app$$=$user$$.current_id_app;async.map($pghs$$,($pgh$$,$next$$)=>{const $items$$=($pgh$$.details||[]).map($p$$=>$p$$.don_hang||{});async.parallel({kh:function($callback$$){$items$$.filter($item$$=>
|
|
9
|
+
$item$$.ma_kh).joinModel2($id_app$$,"customer",[{where:"ma_kh",fields:["ten_kh","email","nh_kh"]}],function(){$callback$$()})},trangthai:function($callback$$){$items$$.filter($item$$=>$item$$.trang_thai).joinModel2(null,"trangthai",[{where:{trang_thai:"ma_trang_thai",ma_ct:"ma_ct"},fields:["ten_trang_thai","color"]}],function(){$callback$$()})},t_tien:function($callback$$){$items$$.forEach(function($r$$){$r$$.details&&($r$$.t_sl=$r$$.details.csum("sl_xuat"),$r$$.t_thue=$r$$.details.csum("tien_thue"),
|
|
10
|
+
$r$$.t_thue_nt=$r$$.details.csum("tien_thue_nt"),$r$$.t_tien=$r$$.details.csum("tien"),$r$$.t_tien_nt=$r$$.details.csum("tien_nt"),$r$$.t_tien_ct=$r$$.details.csum("tien_ct"),$r$$.t_tien_ct_nt=$r$$.details.csum("tien_ct_nt"),$r$$.t_ck=$r$$.details.csum("tien_ck"),$r$$.t_ck_nt=$r$$.details.csum("tien_ck_nt"),$r$$.tc_ck_nt=$r$$.t_ck_nt+($r$$.tien_ck_hd||0),$r$$.tc_ck=$r$$.t_ck+($r$$.tien_ck_hd||0)*$r$$.ty_gia,$r$$.t_sl_vt_du=$r$$.details.csum("sl_vt_du"),$r$$.t_gt_vt_du=$r$$.details.csum("gt_vt_du"),
|
|
11
|
+
$r$$.t_tt_nt=$r$$.t_tien_ct_nt-$r$$.tc_ck_nt+$r$$.t_thue_nt+($r$$.tien_phi_vc_nt||0)-$r$$.t_gt_vt_du,$r$$.t_tt=Math.round($r$$.t_tt_nt*$r$$.ty_gia||1,0),$r$$.t_tien_xuat=$r$$.details.csum("tien_xuat"),$r$$.t_tien_xuat_nt=$r$$.details.csum("tien_xuat_nt"),$r$$.tien_hoa_hong=$r$$.details.csum("tien_hoa_hong"),$r$$.tien_hoa_hong_gt=$r$$.details.csum("tien_hoa_hong_gt"),$r$$.tien_hoa_hong_ql=$r$$.details.csum("tien_hoa_hong_ql"),$r$$.tien_hoa_hong_kho=$r$$.details.csum("tien_hoa_hong_kho"),$r$$.thu_nhap_ctv=
|
|
12
|
+
$r$$.details.csum("tien_hoa_hong_ctv"),$r$$.thu_nhap_ctv2=$r$$.details.csum("tien_hoa_hong_ctv2"))});$callback$$()},details_kho:function($callback$$){async.map($items$$,function($r$$,$callback$$){($r$$.details||[]).filter($item$$=>$item$$.ma_kho).joinModel2($id_app$$,global.getModel("dmkho"),[{where:"ma_kho",fields:["ten_kho"]}],function(){$callback$$()})},function(){$callback$$()})},details_vt:function($callback$$){async.map($items$$,function($r$$,$callback1$$){($r$$.details||[]).joinModel2($id_app$$,
|
|
13
|
+
global.getModel("dmvt"),[{where:"ma_vt",setFields:($item$$,$ref$$)=>{$item$$.ten_vt=$ref$$.ten_vt;$item$$.tk_tl=$ref$$.tk_tl;$item$$.trong_luong=$item$$.trong_luong||$ref$$.trong_luong;$item$$.chieu_sau=$item$$.chieu_sau||$ref$$.chieu_sau;$item$$.chieu_rong=$item$$.chieu_rong||$ref$$.chieu_rong;$item$$.chieu_cao=$item$$.chieu_cao||$ref$$.chieu_cao;$item$$.ma_tt1_yn=$ref$$.ma_tt1_yn;$item$$.ma_tt2_yn=$ref$$.ma_tt2_yn;$item$$.ma_tt3_yn=$ref$$.ma_tt3_yn;$item$$.ma_lo_yn=$ref$$.ma_lo_yn;$item$$.ma_nvt||
|
|
14
|
+
($item$$.ma_nvt=$ref$$.ma_nvt)}}],function(){$callback1$$()})},function(){$callback$$()})},details_vt_du:function($callback$$){async.map($items$$,function($r$$,$callback1$$){($r$$.details||[]).filter($d$$=>$d$$.ma_vt_du).joinModel2($id_app$$,global.getModel("dmvt"),[{where:{ma_vt_du:"ma_vt"},fields:{ten_vt_du:"ten_vt"}}],function(){$callback1$$()})},function(){$callback$$()})},details_csck:function($callback$$){async.map($items$$,function($r$$,$callback1$$){($r$$.details||[]).filter($d$$=>$d$$.id_cs_ck).joinModel2($id_app$$,
|
|
15
|
+
"dmchietkhau",[{where:{id_cs_ck:"_id"},setFields:($item$$,$ref$$)=>{$item$$.ten_chietkhau=$ref$$.ten_chietkhau}}],function(){$callback1$$()})},function(){$callback$$()})},details_tt1:function($callback$$){async.map($items$$,function($r$$,$callback1$$){($r$$.details||[]).filter($d$$=>$d$$.ma_tt1).joinModel2($id_app$$,"dmtt",[{where:{ma_vt:"ma_vt",ma_tt1:"ma_tt"},setFields:($item$$,$ref$$)=>{$item$$.thuoc_tinh=$ref$$;$item$$.nh_tt||($item$$.nh_tt=$ref$$.nh_tt)}}],function(){$callback1$$()})},function(){$callback$$()})}},
|
|
16
|
+
function(){$next$$(null,$items$$)})},async()=>{await $pghs$$.filter($item$$=>$item$$.trang_thai).asyncJoinModel2(null,"trangthai",[{where:{trang_thai:"ma_trang_thai",ma_ct:"ma_ct"},fields:["ten_trang_thai","color"]}]);await $pghs$$.filter($item$$=>$item$$.user_nv_giao_hang).joinModel2(null,"participant",[{where:{user_nv_giao_hang:"email"},fields:{ten_nv_giao_hang:"name"}}]);$cb$$(null,$pghs$$)})}};
|