UNPKG

flexbiz-server

Version:

Flexible Server

29 lines (28 loc) 14 kB
const databanle=require("../../libs/databanle"),async=require("async"),underscore=require("underscore"),controller=require("../../controllers/controllerRPT"); module.exports=function($router$$){new controller($router$$,"thbanhangkempk",async function($i_req_total_fields$$,$callback$$){const $condition$$=$i_req_total_fields$$.query;var $data_query_nhan_vien_da_nop_tien_nhan_vien_da_nop_tk_cn_nv$$=$condition$$.tk_cn_nv||"1388";$condition$$.den_ngay||($condition$$.den_ngay=new Date);const $query$$={id_app:$condition$$.id_app};$query$$.ngay_ct={$lte:$condition$$.den_ngay};$condition$$.tu_ngay&&($query$$.ngay_ct.$gte=$condition$$.tu_ngay);$condition$$.ma_dvcs&& ($query$$.ma_dvcs=$condition$$.ma_dvcs);$condition$$.ma_kho&&($query$$.$or=[{ma_kho:$condition$$.ma_kho},{"details.ma_kho":$condition$$.ma_kho}]);$condition$$.ma_nv&&($query$$.ma_nv=$condition$$.ma_nv);if($condition$$.ma_kh)$query$$.ma_kh=$condition$$.ma_kh;else{var $condition_kh_custs_doanhthu$$={};if($condition$$.nh_kh){var $nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5_query_nhan_vien_tien_nhan_vien_giua$$=await global.getModel("group").getAllChildrenGroup($condition$$.id_app,$condition$$.nh_kh,{status:!0}); $condition_kh_custs_doanhthu$$.nh_kh={$in:$nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5_query_nhan_vien_tien_nhan_vien_giua$$}}$condition$$.nh_kh2&&($nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5_query_nhan_vien_tien_nhan_vien_giua$$=await global.getModel("group").getAllChildrenGroup($condition$$.id_app,$condition$$.nh_kh2,{status:!0}),$condition_kh_custs_doanhthu$$.nh_kh2={$in:$nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5_query_nhan_vien_tien_nhan_vien_giua$$});$condition$$.nh_kh3&&($nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5_query_nhan_vien_tien_nhan_vien_giua$$= await global.getModel("group").getAllChildrenGroup($condition$$.id_app,$condition$$.nh_kh3,{status:!0}),$condition_kh_custs_doanhthu$$.nh_kh3={$in:$nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5_query_nhan_vien_tien_nhan_vien_giua$$});$condition$$.nh_kh4&&($nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5_query_nhan_vien_tien_nhan_vien_giua$$=await global.getModel("group").getAllChildrenGroup($condition$$.id_app,$condition$$.nh_kh4,{status:!0}),$condition_kh_custs_doanhthu$$.nh_kh4={$in:$nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5_query_nhan_vien_tien_nhan_vien_giua$$}); $condition$$.nh_kh5&&($nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5_query_nhan_vien_tien_nhan_vien_giua$$=await global.getModel("group").getAllChildrenGroup($condition$$.id_app,$condition$$.nh_kh5,{status:!0}),$condition_kh_custs_doanhthu$$.nh_kh5={$in:$nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5_query_nhan_vien_tien_nhan_vien_giua$$});Object.keys($condition_kh_custs_doanhthu$$).length>0&&($condition_kh_custs_doanhthu$$.id_app=$condition$$.id_app,$condition_kh_custs_doanhthu$$=await global.getModel("customer").find($condition_kh_custs_doanhthu$$, {ma_kh:1}).lean(),$query$$.ma_kh={$in:$condition_kh_custs_doanhthu$$.map($c$$=>$c$$.ma_kh)})}$condition$$.ma_ct&&($query$$.ma_ct=$condition$$.ma_ct);$condition$$.so_ct&&($query$$.so_ct=$condition$$.so_ct);$condition$$.id_cs_ck_hd&&($query$$.id_cs_ck_hd=$condition$$.id_cs_ck_hd);$condition_kh_custs_doanhthu$$=await new Promise(($resolve$$,$reject$$)=>{databanle($query$$,function($error$$,$rs$$){if($error$$)return $reject$$($error$$);async.map($rs$$,function($r$$,$callback$$){setImmediate(async()=> {$r$$.so_don=1;$r$$.t_sl_xuat=$r$$.details.csum("sl_xuat");$r$$.t_tien_hang=$r$$.details.csum("tien_hang");$r$$.t_tien_hang_ct=$r$$.details.csum("tien_hang_ct");$r$$.t_tien_ck=$r$$.details.csum("tien_ck");$r$$.t_thue=$r$$.details.csum("tien_thue");$r$$.t_tien=$r$$.details.csum("tien");$r$$.t_tien_cp=$r$$.details.csum("tien_cp");$r$$.tien_ck_hd=$r$$.tien_ck_hd||0;$r$$.t_tien_xuat=$r$$.details.csum("tien_xuat");$r$$.t_tien_hoa_hong=$condition$$.user_hoa_hong&&$r$$.user_nv!==$condition$$.user_hoa_hong? 0:$r$$.details.csum("tien_hoa_hong");$r$$.t_tien_hoa_hong_gt=$condition$$.user_hoa_hong&&$r$$.user_gt!==$condition$$.user_hoa_hong?0:$r$$.details.csum("tien_hoa_hong_gt");$r$$.t_tien_hoa_hong_ctv=$condition$$.user_hoa_hong&&$r$$.user_ctv!==$condition$$.user_hoa_hong?0:$r$$.details.csum("tien_hoa_hong_ctv");$r$$.t_tien_hoa_hong_ql=$condition$$.user_hoa_hong&&$r$$.user_ql!==$condition$$.user_hoa_hong?0:$r$$.details.csum("tien_hoa_hong_ql");$r$$.details_tl?($r$$.t_tien_tl=$r$$.details_tl.csum("tien_hang_ct")- $r$$.details_tl.csum("tien_ck"),$r$$.t_tien_thue_tl=$r$$.details_tl.csum("tien_thue"),$r$$.t_tien_nhap=$r$$.details_tl.csum("tien_nhap"),$r$$.t_sl_nhap=$r$$.details_tl.csum("sl_nhap"),$r$$.t_tien_hoa_hong-=$r$$.details_tl.map($d$$=>$condition$$.user_hoa_hong&&$d$$.user_nv!==$condition$$.user_hoa_hong?0:$d$$.tien_hoa_hong).reduce(($a$$,$b$$)=>($a$$||0)+($b$$||0),0),$r$$.t_tien_hoa_hong_gt-=$r$$.details_tl.map($d$$=>$condition$$.user_hoa_hong&&$d$$.user_gt!==$condition$$.user_hoa_hong?0:$d$$.tien_hoa_hong_gt).reduce(($a$$, $b$$)=>($a$$||0)+($b$$||0),0),$r$$.t_tien_hoa_hong_ctv-=$r$$.details_tl.map($d$$=>$condition$$.user_hoa_hong&&$d$$.user_ctv!==$condition$$.user_hoa_hong?0:$d$$.tien_hoa_hong_ctv).reduce(($a$$,$b$$)=>($a$$||0)+($b$$||0),0),$r$$.t_tien_hoa_hong_ql-=$r$$.details_tl.map($d$$=>$condition$$.user_hoa_hong&&$d$$.user_ql!==$condition$$.user_hoa_hong?0:$d$$.tien_hoa_hong_ql).reduce(($a$$,$b$$)=>($a$$||0)+($b$$||0),0)):($r$$.t_tien_tl=0,$r$$.t_sl_nhap=0,$r$$.t_tien_nhap=0);$r$$.tien_freeship=$r$$.tien_freeship|| 0;$r$$.tien_phi_vc=$r$$.tien_phi_vc||0;$r$$.t_sl_vt_du=($r$$.details||[]).map($r$$=>$r$$.sl_vt_du||0).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$r$$.t_gt_vt_du=($r$$.details||[]).map($r$$=>$r$$.gt_vt_du||0).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$r$$.t_sl_pk_nhap=($r$$.ds_pk_nhap||[]).map($d$$=>$d$$.sl_pk_nhap).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$r$$.t_sl_pk_xuat=($r$$.ds_pk_xuat||[]).map($d$$=>$d$$.sl_pk_xuat).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$r$$.t_tien_tdtt_no=0;$r$$.t_tien_tdtt_no_nt=0;$r$$.t_tien_tdtt_da_thu= 0;$r$$.t_tien_tdtt_da_thu_nt=0;$r$$.t_tien_tdtt_con_no=0;$r$$.t_tien_tdtt_con_no_nt=0;var $da_thus_no$$=await global.getModel("tdttno").findOne({id_ct:$r$$._id,ma_kh:$r$$.ma_kh,id_app:$r$$.id_app}).lean();$da_thus_no$$&&($r$$.t_tien_tdtt_no_nt=$da_thus_no$$.tien_nt,$r$$.t_tien_tdtt_no=$da_thus_no$$.tien,$da_thus_no$$=await global.getModel("tdttno_tt").find({id_hd:$r$$._id,ma_kh:$r$$.ma_kh,id_app:$r$$.id_app}).lean(),$r$$.t_tien_tdtt_da_thu=$da_thus_no$$.map($d$$=>$d$$.tien).reduce(($a$$,$b$$)=>$a$$+ $b$$,0),$r$$.t_tien_tdtt_da_thu_nt=$da_thus_no$$.map($d$$=>$d$$.tien_nt).reduce(($a$$,$b$$)=>$a$$+$b$$,0));$r$$.t_tien_tdtt_con_no=$r$$.t_tien_tdtt_no-$r$$.t_tien_tdtt_da_thu;$r$$.t_tien_tdtt_con_no_nt=$r$$.t_tien_tdtt_no_nt-$r$$.t_tien_tdtt_da_thu_nt;$callback$$(null,$r$$)})},async function($error$$,$rs$$){if($error$$)return $reject$$($error$$);$resolve$$($rs$$)})})});$condition_kh_custs_doanhthu$$.forEach($r$$=>{$r$$.ma_kh_no&&$r$$.ma_kh_no!==$r$$.ma_kh&&($r$$.tien_nhan_vien_giu=$r$$.t_tien_hang_ct- $r$$.t_gt_vt_du-($r$$.t_tien_ck||0)+($r$$.tien_phi_vc||0)-($r$$.tien_freeship||0)-($r$$.tien_ck_hd||0)-($r$$.tien_evoucher||0))});const $ma_nvs$$=$condition_kh_custs_doanhthu$$.map($r$$=>$r$$.ma_nv).filter($r$$=>$r$$);$nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5_query_nhan_vien_tien_nhan_vien_giua$$={id_app:$query$$.id_app,ngay_ct:$query$$.ngay_ct,tk_no:$data_query_nhan_vien_da_nop_tien_nhan_vien_da_nop_tk_cn_nv$$,tk_co:{$regex:"^131"},ma_kho:{$nin:["",null]},ma_nv:{$in:$ma_nvs$$}};$nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5_query_nhan_vien_tien_nhan_vien_giua$$= await global.getModel("socai").find($nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5_query_nhan_vien_tien_nhan_vien_giua$$).lean();$nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5_query_nhan_vien_tien_nhan_vien_giua$$.forEach($r$$=>{$r$$.tien_nhan_vien_giu=$r$$.tien;delete $r$$.tien_nt;delete $r$$.tien});$data_query_nhan_vien_da_nop_tien_nhan_vien_da_nop_tk_cn_nv$$={id_app:$query$$.id_app,ngay_ct:$query$$.ngay_ct,tk_co:$data_query_nhan_vien_da_nop_tien_nhan_vien_da_nop_tk_cn_nv$$,tk_no:{$regex:"^111|^112"},ma_kho:{$nin:["", null]},ma_nv:{$in:$ma_nvs$$}};$data_query_nhan_vien_da_nop_tien_nhan_vien_da_nop_tk_cn_nv$$=await global.getModel("socai").find($data_query_nhan_vien_da_nop_tien_nhan_vien_da_nop_tk_cn_nv$$).lean();$data_query_nhan_vien_da_nop_tien_nhan_vien_da_nop_tk_cn_nv$$.forEach($r$$=>{$r$$.tien_nhan_vien_da_nop=$r$$.tien;delete $r$$.tien_nt;delete $r$$.tien});$data_query_nhan_vien_da_nop_tien_nhan_vien_da_nop_tk_cn_nv$$=[...$condition_kh_custs_doanhthu$$,...$nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5_query_nhan_vien_tien_nhan_vien_giua$$, ...$data_query_nhan_vien_da_nop_tien_nhan_vien_da_nop_tk_cn_nv$$];let $field_group_by$$=$i_req_total_fields$$.query.group_by||["ma_kho","ma_nv"];underscore.isString($field_group_by$$)&&($field_group_by$$=[$field_group_by$$]);let $report$$;$i_req_total_fields$$=[{name:"so_don",value:"so_don"},{name:"t_sl_xuat",value:"t_sl_xuat"},{name:"t_sl_nhap",value:"t_sl_nhap"},{name:"t_tien_hang",value:"t_tien_hang"},{name:"t_tien_hang_ct",value:"t_tien_hang_ct"},{name:"t_tien_cp",value:"t_tien_cp"},{name:"tien_freeship", value:"tien_freeship"},{name:"tien_phi_vc",value:"tien_phi_vc"},{name:"t_tien_ck",value:"t_tien_ck"},{name:"t_thue",value:"t_thue"},{name:"t_tien",value:"t_tien"},{name:"tien_ck_hd",value:"tien_ck_hd"},{name:"tien_evoucher",value:"tien_evoucher"},{name:"tien_thu",value:"tien_thu"},{name:"tien_thu2",value:"tien_thu2"},{name:"tien_paymentByPoints",value:"tien_paymentByPoints"},{name:"t_tien_xuat",value:"t_tien_xuat"},{name:"t_tien_tl",value:"t_tien_tl"},{name:"t_tien_thue_tl",value:"t_tien_thue_tl"}, {name:"t_tien_nhap",value:"t_tien_nhap"},{name:"phai_tra",value:"phai_tra"},{name:"t_tien_hoa_hong",value:"t_tien_hoa_hong"},{name:"t_tien_hoa_hong_gt",value:"t_tien_hoa_hong_gt"},{name:"t_tien_hoa_hong_ctv",value:"t_tien_hoa_hong_ctv"},{name:"t_tien_hoa_hong_ql",value:"t_tien_hoa_hong_ql"},{name:"t_sl_vt_du",value:"t_sl_vt_du"},{name:"t_gt_vt_du",value:"t_gt_vt_du"},{name:"t_sl_pk_nhap",value:"t_sl_pk_nhap"},{name:"t_sl_pk_xuat",value:"t_sl_pk_xuat"},{name:"t_tien_tdtt_no",value:"t_tien_tdtt_no"}, {name:"t_tien_tdtt_da_thu",value:"t_tien_tdtt_da_thu"},{name:"t_tien_tdtt_con_no",value:"t_tien_tdtt_con_no"},{name:"tien_nhan_vien_giu",value:"tien_nhan_vien_giu"},{name:"tien_nhan_vien_da_nop",value:"tien_nhan_vien_da_nop"}];try{$report$$=await $data_query_nhan_vien_da_nop_tien_nhan_vien_da_nop_tk_cn_nv$$.asyncGroupBy($field_group_by$$,$i_req_total_fields$$)}catch($e$$){return $callback$$($e$$)}$report$$=$report$$.sort(($a$$,$b$$)=>{for(let $i$$=0;$i$$<$field_group_by$$.length;$i$$++){let $field$$= $field_group_by$$[$i$$];if($a$$[$field$$]<$b$$[$field$$])return-1;if($a$$[$field$$]>$b$$[$field$$])return 1}return 0});$i_req_total_fields$$=0;for(var $r$$ of $report$$)$r$$.stt=$i_req_total_fields$$+1,$i_req_total_fields$$++,$r$$.bold=!1,$r$$.t_tien_paymentByPoints=$r$$.tien_paymentByPoints||0,$r$$.t_phai_thu=$r$$.t_tien_hang_ct-($r$$.t_gt_vt_du||0)-($r$$.t_tien_ck||0)+($r$$.tien_phi_vc||0)-($r$$.tien_freeship||0)-($r$$.tien_ck_hd||0)-($r$$.tien_evoucher||0)+($r$$.t_thue||0),$r$$.t_doanh_thu=$r$$.t_tien_hang_ct- ($r$$.t_gt_vt_du||0)-($r$$.t_tien_ck||0)+($r$$.tien_phi_vc||0)-($r$$.tien_freeship||0)-($r$$.tien_ck_hd||0)-($r$$.tien_evoucher||0),$r$$.t_lai=$r$$.t_doanh_thu-$r$$.t_tien_xuat-($r$$.t_tien_tl-$r$$.t_tien_nhap)-($r$$.t_tien_cp||0),$r$$.t_doanh_thu_thuan=$r$$.t_doanh_thu-$r$$.t_tien_tl,$r$$.t_hoa_hong=$r$$.t_tien_hoa_hong+$r$$.t_tien_hoa_hong_gt+$r$$.t_tien_hoa_hong_ctv+$r$$.t_tien_hoa_hong_ql,$r$$.t_tien_con_no=$r$$.t_tien_tdtt_no-$r$$.t_tien_tdtt_da_thu,$r$$.t_tien_da_thu=$r$$.t_doanh_thu-$r$$.t_tien_con_no, $r$$.tien_nhan_vien_con_giu=$r$$.tien_nhan_vien_giu-$r$$.tien_nhan_vien_da_nop;await $report$$.filter($r$$=>$r$$.ma_kho).asyncJoinModel2($condition$$.id_app,"dmkho",{where:"ma_kho",fields:"ten_kho"});await $report$$.filter($r$$=>$r$$.ma_nv).asyncJoinModel2($condition$$.id_app,"dmnv",{where:"ma_nv",fields:"ten_nv"});$r$$={[$field_group_by$$?$field_group_by$$[0]:"S\u1ed1 ch\u1ee9ng t\u1eeb"]:"T\u1ed5ng c\u1ed9ng",t_sl_xuat:$report$$.csum("t_sl_xuat"),t_sl_nhap:$report$$.csum("t_sl_nhap"),t_tien_hang:$report$$.csum("t_tien_hang"), t_tien_hang_ct:$report$$.csum("t_tien_hang_ct"),t_tien_cp:$report$$.csum("t_tien_cp"),t_tien_ck:$report$$.csum("t_tien_ck"),t_thue:$report$$.csum("t_thue"),t_tien:$report$$.csum("t_tien"),tien_ck_hd:$report$$.csum("tien_ck_hd"),tien_phi_vc:$report$$.csum("tien_phi_vc"),tien_freeship:$report$$.csum("tien_freeship"),t_tien_tl:$report$$.csum("t_tien_tl"),t_tien_thue_tl:$report$$.csum("t_tien_thue_tl"),t_tien_xuat:$report$$.csum("t_tien_xuat"),t_tien_nhap:$report$$.csum("t_tien_nhap"),t_phai_thu:$report$$.csum("t_phai_thu"), t_doanh_thu:$report$$.csum("t_doanh_thu"),t_doanh_thu_thuan:$report$$.csum("t_doanh_thu_thuan"),tien_evoucher:$report$$.csum("tien_evoucher"),tien_thu:$report$$.csum("tien_thu"),tien_thu2:$report$$.csum("tien_thu2"),t_tien_thu:$report$$.csum("t_tien_thu"),phai_tra:$report$$.csum("phai_tra"),t_tien_paymentByPoints:$report$$.csum("tien_paymentByPoints"),t_lai:$report$$.csum("t_lai"),t_tien_hoa_hong:$report$$.csum("t_tien_hoa_hong"),t_tien_hoa_hong_gt:$report$$.csum("t_tien_hoa_hong_gt"),t_tien_hoa_hong_ctv:$report$$.csum("t_tien_hoa_hong_ctv"), t_tien_hoa_hong_ql:$report$$.csum("t_tien_hoa_hong_ql"),t_hoa_hong:$report$$.csum("t_hoa_hong"),t_sl_vt_du:$report$$.csum("t_sl_vt_du"),t_gt_vt_du:$report$$.csum("t_gt_vt_du"),t_sl_pk_nhap:$report$$.csum("t_sl_pk_nhap"),t_sl_pk_xuat:$report$$.csum("t_sl_pk_xuat"),t_tien_tdtt_no:$report$$.csum("t_tien_tdtt_no"),t_tien_tdtt_da_thu:$report$$.csum("t_tien_tdtt_da_thu"),t_tien_tdtt_con_no:$report$$.csum("t_tien_tdtt_con_no"),t_tien_da_thu:$report$$.csum("t_tien_da_thu"),t_tien_con_no:$report$$.csum("t_tien_con_no"), tien_nhan_vien_giu:$report$$.csum("tien_nhan_vien_giu"),tien_nhan_vien_da_nop:$report$$.csum("tien_nhan_vien_da_nop"),tien_nhan_vien_con_giu:$report$$.csum("tien_nhan_vien_con_giu"),bold:!0};$report$$.push($r$$);$report$$.forEach($r$$=>{$r$$.t_tien_phai_tl=$r$$.t_tien_tl+$r$$.t_tien_thue_tl});$callback$$(null,{data:$report$$})})};