UNPKG

flexbiz-server

Version:

Flexible Server

8 lines (7 loc) 3.2 kB
const Vsocai=require("../../libs/vsocai"),Customer=global.getModel("customer"),dktk=require("../../libs/dktk"),async=require("async"),underscore=require("underscore"),controller=require("../../controllers/controllerRPT"),moment=require("moment"); module.exports=function($router$$){new controller($router$$,"sotiengui",function($req$$,$callback$$){const $condition$$=$req$$.query;if(!$condition$$.tk||!$condition$$.tu_ngay||!$condition$$.den_ngay)return $callback$$("B\u00e1o c\u00e1o n\u00e0y y\u00eau c\u1ea7u c\u00e1c tham s\u1ed1 tk,tu_ngay,den_ngay");$condition$$.ma_dvcs||($condition$$.ma_dvcs="");$condition$$.bu_tru=!0;async.series({dk:function($callback$$){let $query$$={};underscore.extend($query$$,$condition$$);$query$$.ngay=$condition$$.tu_ngay; dktk($query$$,function($data_error$$,$result$$){if($data_error$$)return $callback$$($data_error$$);$data_error$$={systotal:1,sysorder:0,bold:!0,dien_giai:"\u0110\u1ea7u k\u1ef3",ps_no:$result$$.csum("du_no00"),ps_co:$result$$.csum("du_co00"),ps_no_nt:$result$$.csum("du_no_nt00"),ps_co_nt:$result$$.csum("du_co_nt00")};$callback$$(null,$data_error$$)})},ps:function($callback$$){let $query$$={id_app:$condition$$.id_app,tk:{$regex:"^"+$condition$$.tk,$options:"i"},ma_dvcs:{$regex:$condition$$.ma_dvcs, $options:"i"},ngay_ct:{$gte:$condition$$.tu_ngay,$lte:$condition$$.den_ngay}};$condition$$.ma_kho&&($query$$.ma_kho=$condition$$.ma_kho);Vsocai.find($query$$,function($error$$,$result$$){if($error$$)return $callback$$($error$$);$result$$.forEach(function($r$$){$r$$.systotal=0;$r$$.sysorder=5;$r$$.bold=!1});$error$$={systotal:1,sysorder:6,bold:!0,dien_giai:"T\u1ed5ng c\u1ed9ng ph\u00e1t sinh",ps_no:$result$$.csum("ps_no"),ps_co:$result$$.csum("ps_co"),ps_no_nt:$result$$.csum("ps_no_nt"),ps_co_nt:$result$$.csum("ps_co_nt")}; $result$$.push($error$$);$result$$.push({systotal:0,sysorder:2,bold:!0,dien_giai:"Ph\u00e1t sinh trong k\u1ef3",ps_no:0,ps_co:0,ps_no_nt:0,ps_co_nt:0});$callback$$(null,$result$$)},{groupBy:!0,sortData:!0})}},function($error$$,$results$$){if($error$$)return $callback$$($error$$);let $data$$=$results$$.ps;$data$$.push($results$$.dk);$data$$.joinModel($req$$.query.id_app,Customer,[{akey:"ma_kh",bkey:"ma_kh",fields:[{name:"ten_kh",value:"ten_kh"}]}],function(){var $report_so_ck_nt$$=$data$$.csum("ps_no_nt", {systotal:1})-$data$$.csum("ps_co_nt",{systotal:1});let $so_ck$$=$data$$.csum("ps_no",{systotal:1})-$data$$.csum("ps_co",{systotal:1}),$dong_cuoi_ky$$={systotal:1,sysorder:9,bold:!0,dien_giai:"Cu\u1ed1i k\u1ef3",ps_no:0,ps_co:0,ps_no_nt:0,ps_co_nt:0};$report_so_ck_nt$$>0&&($dong_cuoi_ky$$.ps_no_nt=$report_so_ck_nt$$);$so_ck$$>0&&($dong_cuoi_ky$$.ps_no=$so_ck$$);$report_so_ck_nt$$<0&&($dong_cuoi_ky$$.ps_co_nt=Math.abs($report_so_ck_nt$$));$so_ck$$<0&&($dong_cuoi_ky$$.ps_co=Math.abs($so_ck$$));$data$$.push($dong_cuoi_ky$$); $report_so_ck_nt$$=underscore.sortBy($data$$,function($r$$){return $r$$.sysorder+($r$$.ngay_ct?moment($r$$.ngay_ct).format("YYYYMMDD"):"0")+($r$$.ps_no>0?0:1)});let $t_ps_no$$=0,$t_ps_co$$=0;$report_so_ck_nt$$.forEach(function($r$$){$t_ps_no$$+=$r$$.ps_no;$t_ps_co$$+=$r$$.ps_co;$r$$.bold||($r$$.du=$t_ps_no$$-$t_ps_co$$)});$callback$$(null,$report_so_ck_nt$$)})})})};