UNPKG

flexbiz-server

Version:

Flexible Server

18 lines (17 loc) 8.3 kB
'use strict';const socai=global.getModel("socai"),dktk=require("../../libs/dktk"),cktk=require("../../libs/cktk"),kbmlcttgt=global.getModel("kbmlcttgt"),{calcGrid}=require("../../libs/utils"),async=require("async"),controller=require("../../controllers/controllerRPT"),getRegString=function($arrayTk$$){if(!$arrayTk$$)return null;let $tk$$;$arrayTk$$.forEach(function($t$$){""!==$t$$&&($tk$$=$tk$$?$tk$$+"|^"+$t$$:"^"+$t$$)});return $tk$$}; module.exports=function($router$$){new controller($router$$,"lcttgt",function($kbm_query_req$$,$callback$jscomp$0$$){const $query$$=$kbm_query_req$$.query;if(!($query$$.den_ngay&&$query$$.tu_ngay&&$query$$.den_ngay_kt&&$query$$.tu_ngay_kt))return $callback$jscomp$0$$("B\u00e1o c\u00e1o n\u00e0y y\u00eau c\u1ea7u c\u00e1c tham s\u1ed1: tu_ngay,den_ngay,tu_ngay_kt,den_ngay_kt");$query$$.ma_dvcs||($query$$.ma_dvcs="");let $report$$;$kbm_query_req$$={id_app:$query$$.id_app};$kbm_query_req$$.id_rptform= $query$$.id_rptform?$query$$.id_rptform:{$in:[void 0,null,""]};kbmlcttgt.find($kbm_query_req$$).sort({stt:1}).lean().exec(function($error$jscomp$0$$,$kbm$$){if($error$jscomp$0$$)return $callback$jscomp$0$$($error$jscomp$0$$);$report$$=$kbm$$;async.mapSeries($report$$,function($r$$,$c1$$){setImmediate(()=>{"1"==$r$$.cach_tinh?$c1$$(null,$r$$):"2"==$r$$.cach_tinh?async.series({ky_truoc:function($callback$$){const $condition$$={ngay_ct:{$gte:$query$$.tu_ngay_kt,$lte:$query$$.den_ngay_kt},ma_dvcs:{$regex:"^"+ $query$$.ma_dvcs,$options:"i"},id_app:$query$$.id_app};var $tk_co_tk_no$$=getRegString($r$$.tk_no);$tk_co_tk_no$$&&($condition$$.tk_no=$r$$.giam_tru_no?{$not:new RegExp($tk_co_tk_no$$)}:{$regex:$tk_co_tk_no$$,$options:"i"});if($tk_co_tk_no$$=getRegString($r$$.tk_co))$condition$$.tk_co=$r$$.giam_tru_co&&$tk_co_tk_no$$?{$not:new RegExp($tk_co_tk_no$$)}:{$regex:$tk_co_tk_no$$,$options:"i"};socai.find($condition$$,{tien:1,tien_nt:1},function($error$$,$rs$$){if($error$$)return $callback$$($error$$);$r$$.so_kt= $rs$$.csum("tien");$r$$.so_kt_nt=$rs$$.csum("tien_nt");"1"==$r$$.phan_loai&&($r$$.so_kt=-$r$$.so_kt,$r$$.so_kt_nt=-$r$$.so_kt_nt);0>$r$$.so_kn&&$r$$.khong_am&&($r$$.so_kn=0);0>$r$$.so_kn_nt&&$r$$.khong_am&&($r$$.so_kn_nt=0);$callback$$(null,$r$$)})},ky_nay:function($callback$$){const $condition$$={ngay_ct:{$gte:$query$$.tu_ngay,$lte:$query$$.den_ngay},ma_dvcs:{$regex:"^"+$query$$.ma_dvcs,$options:"i"},id_app:$query$$.id_app};var $tk_co$jscomp$1_tk_no$$=getRegString($r$$.tk_no);$tk_co$jscomp$1_tk_no$$&& ($condition$$.tk_no=$r$$.giam_tru_no?{$not:new RegExp($tk_co$jscomp$1_tk_no$$)}:{$regex:$tk_co$jscomp$1_tk_no$$,$options:"i"});if($tk_co$jscomp$1_tk_no$$=getRegString($r$$.tk_co))$condition$$.tk_co=$r$$.giam_tru_co&&$tk_co$jscomp$1_tk_no$$?{$not:new RegExp($tk_co$jscomp$1_tk_no$$)}:{$regex:$tk_co$jscomp$1_tk_no$$,$options:"i"};socai.find($condition$$,{tien:1,tien_nt:1},function($error$$,$rs$$){if($error$$)return $callback$$($error$$);$r$$.so_kn=$rs$$.csum("tien");$r$$.so_kn_nt=$rs$$.csum("tien_nt"); "1"==$r$$.phan_loai&&($r$$.so_kn=-$r$$.so_kn,$r$$.so_kn_nt=-$r$$.so_kn_nt);0>$r$$.so_kn&&$r$$.khong_am&&($r$$.so_kn=0);0>$r$$.so_kn_nt&&$r$$.khong_am&&($r$$.so_kn_nt=0);$callback$$(null,$r$$)})}},function($error$$,$results$$){$c1$$($error$$,$results$$)}):"3"==$r$$.cach_tinh||"4"==$r$$.cach_tinh||"5"==$r$$.cach_tinh?async.series({ky_truoc:function($callback$$){const $condition$$={ngay:$query$$.tu_ngay_kt,ma_dvcs:$query$$.ma_dvcs,id_app:$query$$.id_app,bu_tru:$r$$.bu_tru_cong_no};if("3"==$r$$.cach_tinh|| "4"==$r$$.cach_tinh){var $tk_co$jscomp$2_tk_no$$=$r$$.tk_no;$tk_co$jscomp$2_tk_no$$&&1==$tk_co$jscomp$2_tk_no$$.length&&""===$tk_co$jscomp$2_tk_no$$[0]&&($tk_co$jscomp$2_tk_no$$=null);$condition$$.tk=$tk_co$jscomp$2_tk_no$$}else($tk_co$jscomp$2_tk_no$$=$r$$.tk_co)&&1==$tk_co$jscomp$2_tk_no$$.length&&""===$tk_co$jscomp$2_tk_no$$[0]&&($tk_co$jscomp$2_tk_no$$=null),$condition$$.tk=$tk_co$jscomp$2_tk_no$$;dktk($condition$$,function($error$$,$rs$$){if($error$$)return $callback$$($error$$);"3"==$r$$.cach_tinh? ($r$$.so_kt=$rs$$.csum("du_no00")-$rs$$.csum("du_co00"),$r$$.so_kt_nt=$rs$$.csum("du_no_nt00")-$rs$$.csum("du_co_nt00"),"1"==$r$$.phan_loai&&($r$$.so_kt=-$r$$.so_kt,$r$$.so_kt_nt=-$r$$.so_kt_nt),0>$r$$.so_kt&&$r$$.khong_am&&($r$$.so_kt=0),0>$r$$.so_kt_nt&&$r$$.khong_am&&($r$$.so_kt_nt=0)):"4"==$r$$.cach_tinh?($r$$.so_kt=$rs$$.csum("du_no00"),$r$$.so_kt_nt=$rs$$.csum("du_no_nt00")):($r$$.so_kt=$rs$$.csum("du_co00"),$r$$.so_kt_nt=$rs$$.csum("du_co_nt00"));$callback$$(null,$r$$)})},ky_nay:function($callback$$){const $condition$$= {ngay:$query$$.tu_ngay,ma_dvcs:$query$$.ma_dvcs,id_app:$query$$.id_app,bu_tru:$r$$.bu_tru_cong_no};if("3"==$r$$.cach_tinh||"4"==$r$$.cach_tinh){var $tk_co$jscomp$3_tk_no$$=$r$$.tk_no;$tk_co$jscomp$3_tk_no$$&&1==$tk_co$jscomp$3_tk_no$$.length&&""===$tk_co$jscomp$3_tk_no$$[0]&&($tk_co$jscomp$3_tk_no$$=null);$condition$$.tk=$tk_co$jscomp$3_tk_no$$}else($tk_co$jscomp$3_tk_no$$=$r$$.tk_co)&&1==$tk_co$jscomp$3_tk_no$$.length&&""===$tk_co$jscomp$3_tk_no$$[0]&&($tk_co$jscomp$3_tk_no$$=null),$condition$$.tk= $tk_co$jscomp$3_tk_no$$;dktk($condition$$,function($error$$,$rs$$){if($error$$)return $callback$$($error$$);"3"==$r$$.cach_tinh?($r$$.so_kn=$rs$$.csum("du_no00")-$rs$$.csum("du_co00"),$r$$.so_kn_nt=$rs$$.csum("du_no_nt00")-$rs$$.csum("du_co_nt00"),"1"==$r$$.phan_loai&&($r$$.so_kn=-$r$$.so_kn,$r$$.so_kn_nt=-$r$$.so_kn_nt),0>$r$$.so_kn&&$r$$.khong_am&&($r$$.so_kn=0),0>$r$$.so_kn_nt&&$r$$.khong_am&&($r$$.so_kn_nt=0)):"4"==$r$$.cach_tinh?($r$$.so_kn=$rs$$.csum("du_no00"),$r$$.so_kn_nt=$rs$$.csum("du_no_nt00")): ($r$$.so_kn=$rs$$.csum("du_co00"),$r$$.so_kn_nt=$rs$$.csum("du_co_nt00"));$callback$$(null,$r$$)})}},function($error$$,$results$$){$c1$$($error$$,$results$$)}):async.series({ky_truoc:function($callback$$){const $condition$$={ngay:$query$$.tu_ngay_kt,ma_dvcs:$query$$.ma_dvcs,id_app:$query$$.id_app,bu_tru:$r$$.bu_tru_cong_no};if("6"==$r$$.cach_tinh||"7"==$r$$.cach_tinh){var $tk_co$jscomp$4_tk_no$$=$r$$.tk_no;$tk_co$jscomp$4_tk_no$$&&1==$tk_co$jscomp$4_tk_no$$.length&&""===$tk_co$jscomp$4_tk_no$$[0]&& ($tk_co$jscomp$4_tk_no$$=null);$condition$$.tk=$tk_co$jscomp$4_tk_no$$}else($tk_co$jscomp$4_tk_no$$=$r$$.tk_co)&&1==$tk_co$jscomp$4_tk_no$$.length&&""===$tk_co$jscomp$4_tk_no$$[0]&&($tk_co$jscomp$4_tk_no$$=null),$condition$$.tk=$tk_co$jscomp$4_tk_no$$;cktk($condition$$,function($error$$,$rs$$){if($error$$)return $callback$$($error$$);"6"==$r$$.cach_tinh?($r$$.so_kt=$rs$$.csum("du_no00")-$rs$$.csum("du_co00"),$r$$.so_kt_nt=$rs$$.csum("du_no_nt00")-$rs$$.csum("du_co_nt00"),"1"==$r$$.phan_loai&&($r$$.so_kt= -$r$$.so_kt,$r$$.so_kt_nt=-$r$$.so_kt_nt),0>$r$$.so_kt&&$r$$.khong_am&&($r$$.so_kt=0),0>$r$$.so_kt_nt&&$r$$.khong_am&&($r$$.so_kt_nt=0)):"7"==$r$$.cach_tinh?($r$$.so_kt=$rs$$.csum("du_no00"),$r$$.so_kt_nt=$rs$$.csum("du_no_nt00")):($r$$.so_kt=$rs$$.csum("du_co00"),$r$$.so_kt_nt=$rs$$.csum("du_co_nt00"));$callback$$(null,$r$$)})},ky_nay:function($callback$$){const $condition$$={ngay:$query$$.tu_ngay,ma_dvcs:$query$$.ma_dvcs,id_app:$query$$.id_app,bu_tru:$r$$.bu_tru_cong_no};if("6"==$r$$.cach_tinh|| "7"==$r$$.cach_tinh){var $tk_co$jscomp$5_tk_no$$=$r$$.tk_no;$tk_co$jscomp$5_tk_no$$&&1==$tk_co$jscomp$5_tk_no$$.length&&""===$tk_co$jscomp$5_tk_no$$[0]&&($tk_co$jscomp$5_tk_no$$=null);$condition$$.tk=$tk_co$jscomp$5_tk_no$$}else($tk_co$jscomp$5_tk_no$$=$r$$.tk_co)&&1==$tk_co$jscomp$5_tk_no$$.length&&""===$tk_co$jscomp$5_tk_no$$[0]&&($tk_co$jscomp$5_tk_no$$=null),$condition$$.tk=$tk_co$jscomp$5_tk_no$$;cktk($condition$$,function($error$$,$rs$$){if($error$$)return $callback$$($error$$);"6"==$r$$.cach_tinh? ($r$$.so_kn=$rs$$.csum("du_no00")-$rs$$.csum("du_co00"),$r$$.so_kn_nt=$rs$$.csum("du_no_nt00")-$rs$$.csum("du_co_nt00"),"1"==$r$$.phan_loai&&($r$$.so_kn=-$r$$.so_kn,$r$$.so_kn_nt=-$r$$.so_kn_nt),0>$r$$.so_kn&&$r$$.khong_am&&($r$$.so_kn=0),0>$r$$.so_kn_nt&&$r$$.khong_am&&($r$$.so_kn_nt=0)):"7"==$r$$.cach_tinh?($r$$.so_kn=$rs$$.csum("du_no00"),$r$$.so_kn_nt=$rs$$.csum("du_no_nt00")):($r$$.so_kn=$rs$$.csum("du_co00"),$r$$.so_kn_nt=$rs$$.csum("du_co_nt00"));$callback$$(null,$r$$)})}},function($error$$, $results$$){$c1$$($error$$,$results$$)})})},function($error$$){if($error$$)return $callback$jscomp$0$$($error$$);calcGrid($report$$,"so_kn,so_kn_nt,so_kt,so_kt_nt",function($rs$$){$callback$jscomp$0$$(null,$rs$$)})})})})};