UNPKG

flexbiz-server

Version:

Flexible Server

6 lines (5 loc) 2.19 kB
const model=global.getModel("reportinfo"),underscore=require("underscore"),controller=require("../../controllers/controller"),{isSupperAdmin}=require("../../libs/utils"); module.exports=function($router$$){(new controller($router$$,model,"reportinfo",{sort:{code:1},require_id_app:!1,unique:["code"],onView:async($user$$,$items$$,$next$$,$options$$)=>{await $items$$.filter($i$$=>$i$$.form_condition_info).asyncJoinModel2(null,"listinfo",{where:{form_condition_info:"code"},fields:{filterFields:"fields"}});if($options$$&&$options$$.req&&$options$$.req.query&&(!$options$$.req.query.fields||$options$$.req.query.fields.indexOf("columns")>=0)){await $items$$.filter($i$$=>$i$$.table_info).asyncJoinModel2(null, "tableinfo",{where:$item$$=>({code:$item$$.table_info.toUpperCase()}),fields:{tbHeaders:"headers"}});for(let $item$$ of $items$$)(!$item$$.columns||$item$$.columns?.length==0)&&$item$$.tbHeaders&&$item$$.tbHeaders.length>0&&($item$$.columns=$item$$.tbHeaders[0]?.cells||[],$item$$.columns.forEach($c$$=>{$c$$.datatype=$c$$.datatype||$c$$.dataType}))}$next$$(null,$items$$)},onCreating:($user$$,$obj$$,$next$$)=>{const $usersAdmin$$=configs.admins.concat(configs.subAdmins||[]);if(!underscore.contains($usersAdmin$$, $user$$.email)&&!isSupperAdmin($user$$.email.toLowerCase()))return $next$$("Ch\u1ec9 admin m\u1edbi c\u00f3 quy\u1ec1n t\u1ea1o b\u00e1o c\u00e1o m\u1edbi");$next$$(null,$obj$$)},onUpdating:($user$$,$data$$,$obj$$,$next$$)=>{if(!underscore.contains(configs.admins,$user$$.email)&&!isSupperAdmin($user$$.email.toLowerCase())&&($obj$$.allow_users||"").indexOf($user$$.email)<0)return $next$$("B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n th\u1ef1c hi\u1ec7n thao t\u00e1c n\u00e0y. Ch\u1ec9 c\u00e1c admin h\u1ec7 th\u1ed1ng v\u00e0 c\u00e1c user sau l\u00e0 \u0111\u01b0\u1ee3c ph\u00e9p:"+ $obj$$.allow_users);$next$$(null,$data$$,$obj$$)},onCreated:($user$$,$obj$$,$next$$)=>{$next$$(null,$obj$$)},onUpdated:($user$$,$obj$$,$next$$)=>{$next$$(null,$obj$$)},onDeleting:($user$$,$obj$$,$next$$)=>{if(!isSupperAdmin($user$$.email.toLowerCase()))return $next$$("Ch\u1ec9 admin m\u1edbi c\u00f3 quy\u1ec1n x\u00f3a b\u00e1o c\u00e1o n\u00e0y");$next$$(null,$obj$$)}})).route()};