flexbiz-server
Version:
Flexible Server
16 lines (15 loc) • 6.96 kB
JavaScript
'use strict';const databanle=require("./databanle"),async=require("async");
module.exports=async function($condition$$){if(!$condition$$.id_app)throw"B\u00e1o c\u00e1o n\u00e0y y\u00eau c\u1ea7u c\u00e1c tham s\u1ed1:id_app";$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_nv&&($query$$.ma_nv=$condition$$.ma_nv);$condition$$.ma_kho&&
($query$$.$or=[{ma_kho:$condition$$.ma_kho},{"details.ma_kho":$condition$$.ma_kho}]);if($condition$$.ma_kh)$query$$.ma_kh=$condition$$.ma_kh;else{var $condition_kh_custs_q$$={};if($condition$$.nh_kh){var $nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5$$=await global.getModel("group").getAllChildrenGroup($condition$$.id_app,$condition$$.nh_kh,{status:!0});$condition_kh_custs_q$$.nh_kh={$in:$nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5$$}}$condition$$.nh_kh2&&($nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5$$=await global.getModel("group").getAllChildrenGroup($condition$$.id_app,
$condition$$.nh_kh2,{status:!0}),$condition_kh_custs_q$$.nh_kh2={$in:$nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5$$});$condition$$.nh_kh3&&($nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5$$=await global.getModel("group").getAllChildrenGroup($condition$$.id_app,$condition$$.nh_kh3,{status:!0}),$condition_kh_custs_q$$.nh_kh3={$in:$nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5$$});$condition$$.nh_kh4&&($nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5$$=await global.getModel("group").getAllChildrenGroup($condition$$.id_app,$condition$$.nh_kh4,
{status:!0}),$condition_kh_custs_q$$.nh_kh4={$in:$nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5$$});$condition$$.nh_kh5&&($nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5$$=await global.getModel("group").getAllChildrenGroup($condition$$.id_app,$condition$$.nh_kh5,{status:!0}),$condition_kh_custs_q$$.nh_kh5={$in:$nh_khs_nh_khs2_nh_khs3_nh_khs4_nh_khs5$$});0<Object.keys($condition_kh_custs_q$$).length&&($condition_kh_custs_q$$.id_app=$condition$$.id_app,$condition_kh_custs_q$$=await global.getModel("customer").find($condition_kh_custs_q$$,
{ma_kh:1}).lean(),$query$$.ma_kh={$in:$condition_kh_custs_q$$.map($c$$=>$c$$.ma_kh)})}$condition$$.ma_ct&&($query$$.ma_ct=$condition$$.ma_ct);$condition$$.user_hoa_hong&&($query$$.$or?$query$$.$and=[{$or:[{user_nv:$condition$$.user_hoa_hong},{user_ctv:$condition$$.user_hoa_hong},{user_gt:$condition$$.user_hoa_hong},{user_ql:$condition$$.user_hoa_hong},{"details.user_nv":$condition$$.user_hoa_hong},{"details.user_ctv":$condition$$.user_hoa_hong},{"details.user_gt":$condition$$.user_hoa_hong},{"details.user_ql":$condition$$.user_hoa_hong}]}]:
$query$$.$or=[{user_nv:$condition$$.user_hoa_hong},{user_ctv:$condition$$.user_hoa_hong},{user_gt:$condition$$.user_hoa_hong},{user_ql:$condition$$.user_hoa_hong},{"details.user_nv":$condition$$.user_hoa_hong},{"details.user_ctv":$condition$$.user_hoa_hong},{"details.user_gt":$condition$$.user_hoa_hong},{"details.user_ql":$condition$$.user_hoa_hong}]);let $ma_vts$$;if($condition$$.ma_vt)$query$$["details.ma_vt"]=$condition$$.ma_vt,$ma_vts$$=[$condition$$.ma_vt];else if($condition$$.ma_ncc||$condition$$.ma_nvt||
$condition$$.ma_danh_muc_cty||$condition$$.ma_danh_muc)$condition_kh_custs_q$$={id_app:$condition$$.id_app},$condition$$.ma_ncc&&($condition_kh_custs_q$$.ma_ncc=$condition$$.ma_ncc),$condition$$.ma_nvt&&($condition_kh_custs_q$$.ma_nvt=$condition$$.ma_nvt),$condition$$.ma_danh_muc_cty&&($condition_kh_custs_q$$.ma_danh_muc_cty=$condition$$.ma_danh_muc_cty),$condition$$.ma_danh_muc&&($condition_kh_custs_q$$.ma_danh_muc=$condition$$.ma_danh_muc),$ma_vts$$=(await global.getModel("dmvt").find($condition_kh_custs_q$$,
{ma_vt:1}).lean().exec()).map($v$$=>$v$$.ma_vt),$query$$["details.ma_vt"]={$in:$ma_vts$$};$condition$$.id_cs&&($query$$["details.id_cs"]=$condition$$.id_cs);$condition$$.id_cs_ck&&($query$$["details.id_cs_ck"]=$condition$$.id_cs_ck);$query$$.show_payment_method=!1;return new Promise(($resolve$$,$reject$$)=>{databanle($query$$,function($error$jscomp$0$$,$rs$$){if($error$jscomp$0$$)return $reject$$($error$jscomp$0$$);async.mapSeries($rs$$,function($r$$,$callback$$){let $details$$=$r$$.details||[];delete $r$$.details;
$details$$=$details$$.map($_r_detail$$=>{delete $_r_detail$$._id;$_r_detail$$.nxt=2;$_r_detail$$={...$r$$,...$_r_detail$$};$_r_detail$$.ma_nv||($_r_detail$$.ma_nv=$r$$.ma_nv);$_r_detail$$.ma_dt||($_r_detail$$.ma_dt=$r$$.ma_dt);$_r_detail$$.ma_bp||($_r_detail$$.ma_bp=$r$$.ma_bp);return $_r_detail$$});$r$$.details_tl&&($details$$=[...$details$$,...$r$$.details_tl.map($detail$$=>{delete $detail$$._id;$detail$$={...$r$$,...$detail$$};$detail$$.ma_nv||($detail$$.ma_nv=$r$$.ma_nv);$detail$$.ma_dt||($detail$$.ma_dt=
$r$$.ma_dt);$detail$$.ma_bp||($detail$$.ma_bp=$r$$.ma_bp);$detail$$.tien_hang_nt=0-$detail$$.tien_hang_nt||0;$detail$$.tien_hang=0-($detail$$.tien_hang||0);$detail$$.tien_hang_ct_nt=0-$detail$$.tien_hang_ct_nt||0;$detail$$.tien_hang_ct=0-($detail$$.tien_hang_ct||0);$detail$$.tien_ck=0-($detail$$.tien_ck||0);$detail$$.tien_ck_nt=0-($detail$$.tien_ck_nt||0);$detail$$.tien_thue=0-($detail$$.tien_thue||0);$detail$$.tien_thue_nt=0-($detail$$.tien_thue_nt||0);$detail$$.tien_xuat_tmp=0-($detail$$.tien_nhap_nt||
0);$detail$$.tien_xuat_nt=0-($detail$$.tien_nhap_nt||0);$detail$$.sl_xuat=0;$detail$$.tien_hoa_hong=0-$detail$$.tien_hoa_hong;$detail$$.tien_hoa_hong_gt=0-$detail$$.tien_hoa_hong_gt;$detail$$.tien_hoa_hong_ctv=0-$detail$$.tien_hoa_hong_ctv;$detail$$.tien_hoa_hong_ql=0-$detail$$.tien_hoa_hong_ql;$detail$$.nxt=1;return $detail$$})],delete $r$$.details_tl);$callback$$(null,$details$$)},async function($error$$,$report$$){if($error$$)return $reject$$($error$$);$report$$=$report$$.reduce(($a$$,$b$$)=>$a$$.concat($b$$),
[]);$ma_vts$$&&($report$$=$report$$.filter($r$$=>0<=$ma_vts$$.indexOf($r$$.ma_vt)));$condition$$.id_cs&&($report$$=$report$$.filter($r$$=>$r$$.id_cs===$condition$$.id_cs));$condition$$.id_cs_ck&&($report$$=$report$$.filter($r$$=>$r$$.id_cs_ck===$condition$$.id_cs_ck));await $report$$.asyncJoinModel2($condition$$.id_app,"dmqddvt",{where:{ma_dvt:"ma_dvt",ma_vt:"ma_vt"},fields:["tu","mau","ma_dvt_goc"]});$report$$.forEach(function($r$$,$he_so_qd_i$$){$r$$.stt=$he_so_qd_i$$+1;$r$$.id_ct=$r$$._id.toString();
$r$$.bold=!1;$r$$.tt=$r$$.tien=($r$$.tien_hang_ct||0)-($r$$.tien_ck||0)+($r$$.tien_thue||0);$r$$.loi_nhuan_tmp=$r$$.tien_xuat_tmp?$r$$.tt-$r$$.tien_xuat_tmp-($r$$.tien_thue||0)-($r$$.tien_cp||0):0;$r$$.loi_nhuan=$r$$.tt-($r$$.tien_xuat||0)-($r$$.tien_thue||0)-($r$$.tien_cp||0);$r$$.t_hoa_hong=$r$$.tien_hoa_hong+$r$$.tien_hoa_hong_gt+$r$$.tien_hoa_hong_ctv+$r$$.tien_hoa_hong_ql;$r$$.mau?($he_so_qd_i$$=$r$$.tu/$r$$.mau,$r$$.sl_xuat_qd=$he_so_qd_i$$*($r$$.sl_xuat||0),$r$$.sl_nhap_qd=$he_so_qd_i$$*($r$$.sl_nhap||
0)):($r$$.sl_xuat_qd=$r$$.sl_xuat||0,$r$$.sl_nhap_qd=$r$$.sl_nhap||0)});$resolve$$($report$$)})})})};