flexbiz-server
Version:
Flexible Server
4 lines (3 loc) • 1.4 kB
JavaScript
'use strict';const model=global.getModel("department"),so2=global.getModel("so2"),area=global.getModel("area"),dmdvt=global.getModel("dmdvt"),controller=require("../../controllers/controller"),async=require("async"),department=function($router$$){(new controller($router$$,model,"department",{sort:{stt:1,department_name:1},unique:["department_code"],onView:($user$$,$items$$,$next$$)=>{let $id_app$$=$user$$.current_id_app;async.series({b:$callback$$=>{$items$$.joinModel2(null,area,{where:{area_code:"area_code",
id_app:"id_app"},fields:"area_name"},()=>{$callback$$()})},dvt:$callback$$=>{async.each($items$$,function($r$$,$callback1$$){var $prices$$=$r$$.prices||[];$prices$$.forEach($p$$=>{$p$$.id_app=$r$$.id_app});$prices$$.joinModel2(null,dmdvt,[{where:{ma_dvt:"ma_dvt",id_app:"id_app"},fields:["tg_qd","kieu_tg"]}],function(){$callback1$$()})},function(){$callback$$()})},ngaytrong:$callback$jscomp$0$$=>{async.mapSeries($items$$,($item$$,$callback$$)=>{so2.find({id_app:$id_app$$,details:{$elemMatch:{department_code:$item$$.department_code}}}).sort({ngay_di:-1}).limit(1).lean().exec(($e$$,
$rs$$)=>{if($e$$)return $callback$$($e$$);1===$rs$$.length&&($item$$.ngay_trong=$rs$$[0].ngay_di);$callback$$(null)})},$e$$=>{$callback$jscomp$0$$($e$$)})}},()=>{$items$$.forEach($item$$=>{$item$$.title=$item$$.department_name});$next$$(null,$items$$)})}})).route()};module.exports=department;