UNPKG

flexbiz-server

Version:

Flexible Server

10 lines (9 loc) 4.21 kB
'use strict';const dmnv=global.getModel("dmnv"),dmnhnv=global.getModel("dmnhnv"),group=global.getModel("group"),phieudanhgia=global.getModel("phieudanhgia"),dmbp=global.getModel("dmbp"),User=global.getModel("user"),dmdoi=global.getModel("dmdoi"),dmto=global.getModel("dmto"),dmdoituongdanhgia=global.getModel("dmdoituongdanhgia"),underscore=require("underscore"),async=require("async"),controller=require("../../controllers/controllerRPT"); module.exports=function($router$$){new controller($router$$,"dsnhanvientb",function($req$$,$callback$jscomp$0$$){const $id_app$$=$req$$.query.id_app,$query$$={};$query$$.id_app=$id_app$$;$query$$.ky=$req$$.query.ky;$query$$.nam=$req$$.query.nam;$req$$.query.ma_nv&&($query$$.ma_nv=$req$$.query.ma_nv);$req$$.query.ma_bp&&($query$$.ma_bp=$req$$.query.ma_bp);$req$$.query.ma_doi&&($query$$.ma_doi=$req$$.query.ma_doi);$req$$.query.ma_to&&($query$$.ma_to=$req$$.query.ma_to);phieudanhgia.find($query$$).lean().exec(($e$$, $phieudanhgias$$)=>{if($e$$)return $callback$jscomp$0$$($e$$);async.series({bophan:$callback$$=>{dmbp.find({id_app:$id_app$$}).lean().exec(($e$$,$rs$$)=>{$rs$$.joinModel2(null,User,[{where:{phu_trach:"email"},fields:[{ten_phu_trach:"name"}]}],function($rs$$){$rs$$.forEach($r$$=>{$r$$.sysorder=0;$r$$.bold=!0});$callback$$(null,$rs$$)})})},doi:$callback$$=>{dmdoi.find({id_app:$id_app$$}).lean().exec(($e$$,$rs$$)=>{$rs$$.joinModel2(null,User,[{where:{phu_trach:"email"},fields:[{ten_phu_trach:"name"}]}], function(){$rs$$.forEach($r$$=>{$r$$.sysorder=1;$r$$.bold=!0;$r$$.ten_nv=$r$$.ten_doi});$callback$$(null,$rs$$)})})},to:$callback$$=>{dmto.find({id_app:$id_app$$}).lean().exec(($e$$,$rs$$)=>{$rs$$.joinModel2(null,User,[{where:{phu_trach:"email"},fields:[{ten_phu_trach:"name"}]}],function(){$rs$$.forEach($r$$=>{$r$$.sysorder=2;$r$$.bold=!0;$r$$.ten_nv=$r$$.ten_to});$callback$$(null,$rs$$)})})},nhom:$callback$$=>{dmnhnv.find({id_app:$id_app$$}).lean().exec(($e$$,$rs$$)=>{$rs$$.joinModel2(null,User, [{where:{phu_trach:"email"},fields:[{ten_phu_trach:"name"}]}],function(){$rs$$.forEach($r$$=>{$r$$.sysorder=3;$r$$.bold=!0;$r$$.ten_nv=$r$$.ten_nh_nv});$callback$$(null,$rs$$)})})},nhanvien:$callback$$=>{dmnv.find({id_app:$id_app$$}).lean().exec(($e$$,$rs$$)=>{$rs$$.joinModel2($id_app$$,group,[{where:{chuc_vu:"_id"},fields:[{ten_chuc_vu:"group_name"}]}],function(){$rs$$.forEach($r$$=>{$r$$.sysorder=9;$r$$.bold=!1});$callback$$(null,$rs$$)})})},doituongdanhgia:$callback$$=>{dmdoituongdanhgia.find({id_app:$id_app$$}).lean().exec(($e$$, $rs$$)=>{$callback$$($e$$,$rs$$)})},phieudanhgias:$callback$$=>{$phieudanhgias$$.joinModel2($id_app$$,dmnv,[{where:{ma_nv:"ma_nv"},fields:[{ten_nv:"ten_nv"},{chuc_vu:"chuc_vu"}]}],function(){$phieudanhgias$$.joinModel2($id_app$$,group,[{where:{chuc_vu:"_id"},fields:[{ten_chuc_vu:"group_name"}]}],function(){$phieudanhgias$$.forEach($r$$=>{$r$$.sysorder=9;$r$$.bold=!1});$callback$$(null,$phieudanhgias$$)})})}},($e$$,$rs$$)=>{if($e$$)return $callback$jscomp$0$$($e$$);$rs$$.phieudanhgias.forEach($p$$=> {let $cap_danh_gia_truc_tiep$$=underscore.sortBy($rs$$.doituongdanhgia.filter($d$$=>1<$d$$.cap_danh_gia&&5>$d$$.cap_danh_gia),$d$$=>$d$$.cap_danh_gia);$p$$.ket_qua_diem=0;$p$$.ket_qua_xep_loai="";for(let $i$$=$cap_danh_gia_truc_tiep$$.length-1;0<=$i$$;$i$$--)if($p$$.exfields&&$p$$.exfields[$cap_danh_gia_truc_tiep$$[$i$$]._id+":tong_so_diem"]){$p$$.ket_qua_diem=$p$$.exfields[$cap_danh_gia_truc_tiep$$[$i$$]._id+":tong_so_diem"];$p$$.ket_qua_xep_loai=$p$$.exfields[$cap_danh_gia_truc_tiep$$[$i$$]._id+ ":xep_loai"];break}});$rs$$.phieudanhgias=$rs$$.phieudanhgias.filter($p$$=>"TB"===$p$$.ket_qua_xep_loai);$rs$$.nhom=$rs$$.nhom.filter($n$$=>$rs$$.phieudanhgias.find($p$$=>$p$$.ma_nh_nv==$n$$.ma_nh_nv&&$p$$.ma_to==$n$$.ma_to&&$p$$.ma_doi==$n$$.ma_doi));$rs$$.to=$rs$$.to.filter($n$$=>$rs$$.phieudanhgias.find($p$$=>$p$$.ma_to==$n$$.ma_to&&$p$$.ma_doi==$n$$.ma_doi));$rs$$.doi=$rs$$.doi.filter($n$$=>$rs$$.phieudanhgias.find($p$$=>$p$$.ma_doi==$n$$.ma_doi));$rs$$.report=$rs$$.doi.concat($rs$$.to).concat($rs$$.nhom).concat($rs$$.phieudanhgias); $rs$$.report=underscore.sortBy($rs$$.report,$r$$=>($r$$.ma_doi||"")+($r$$.ma_to||"")+($r$$.ma_nh_nv||""));$callback$jscomp$0$$(null,$rs$$)})})})};