flexbiz-server
Version:
Flexible Server
10 lines (9 loc) • 3.91 kB
JavaScript
const dmvt=global.getModel("dmvt"),dmnvt=global.getModel("dmnvt"),async=require("async");
module.exports=function($router$$){$router$$.route("/dmvt").get(function($req$$,$res$$){var $id_app$$=$req$$.query.id_app,$fields_k$$=$req$$.query.fields;let $gfields$$={};$fields_k$$&&$fields_k$$.split(",").forEach(function($f$$){$f$$!="_id"&&($gfields$$[$f$$]=1)});var $condition$$={};if($req$$.query.q)$condition$$=JSON.parse($req$$.query.q);else if($fields_k$$=$req$$.query.k)$condition$$.$or=[],$condition$$.$or.push({ma_vt:{$regex:$fields_k$$,$options:"si"}}),$condition$$.$or.push({ten_vt:{$regex:$fields_k$$,
$options:"si"}}),$condition$$.$or.push({nhan_hieu:{$regex:$fields_k$$,$options:"si"}}),$condition$$.$or.push({xuat_xu:{$regex:$fields_k$$,$options:"si"}});async.parallel({nvt:function($callback$$){var $ma_nvt$$=$req$$.query.ma_nvt;$ma_nvt$$?dmnvt.find({id_app:$id_app$$,nh_me:$ma_nvt$$}).lean().then(function($ma_nvts_nvts$$){$ma_nvts_nvts$$=$ma_nvts_nvts$$.map($v$$=>$v$$._id);$ma_nvts_nvts$$.push($ma_nvt$$);$callback$$(null,{$in:$ma_nvts_nvts$$})}).catch($e$$=>{$callback$$($e$$)}):$callback$$()}},
function($e$$,$page_rs_sort$$){$page_rs_sort$$.nvt&&($condition$$.ma_nvt=$page_rs_sort$$.nvt);if($e$$=$req$$.query.xuat_xu)$condition$$.xuat_xu={$regex:$e$$,$options:"i"};if($e$$=$req$$.query.nhan_hieu)$condition$$.nhan_hieu={$regex:$e$$,$options:"i"};$condition$$.gia_ban_le={$gte:Number($req$$.query.min)||0,$lte:Number($req$$.query.max)||999E6};$condition$$.id_app=$id_app$$;$condition$$.status=!0;$e$$=dmvt.find($condition$$,$gfields$$);$page_rs_sort$$=$req$$.query.page;var $limit$$=$req$$.query.limit;
$limit$$&&=Number($limit$$);$page_rs_sort$$?($limit$$||=20,$e$$.skip((Number($page_rs_sort$$)-1)*$limit$$).limit($limit$$)):$limit$$&&$e$$.limit($limit$$);if($page_rs_sort$$=$req$$.query.sort){var $gsort$$={};$page_rs_sort$$.split(",").forEach(function($f$$){$f$$!="_id"&&($f$$=="name"&&($f$$="ten_vt"),$f$$=="price"&&($f$$="gia_ban_le"),$f$$=="date"?$gsort$$.date_created=-1:$gsort$$[$f$$]=1)});$e$$.sort($gsort$$)}else $e$$.sort({date_updated:-1});$e$$.lean().then(function($result$$){$result$$.forEach(function($r$$){if($r$$.picture){var $p_tuan_truoc$$=
$r$$.picture.split(".");$r$$.picture_thumb=$r$$.picture+".thumb."+$p_tuan_truoc$$[$p_tuan_truoc$$.length-1]}else $r$$.picture="/getfile/others/noimage.png",$r$$.picture_thumb="/getfile/others/noimage.png";$r$$.picture2&&$r$$.picture2.indexOf("noimage.png")<0?($p_tuan_truoc$$=$r$$.picture2.split("."),$r$$.picture2_thumb=$r$$.picture2+".thumb."+$p_tuan_truoc$$[$p_tuan_truoc$$.length-1]):$r$$.picture2="";$r$$.picture3&&$r$$.picture3.indexOf("noimage.png")<0?($p_tuan_truoc$$=$r$$.picture3.split("."),
$r$$.picture3_thumb=$r$$.picture3+".thumb."+$p_tuan_truoc$$[$p_tuan_truoc$$.length-1]):$r$$.picture3="";$r$$.picture4&&$r$$.picture4.indexOf("noimage.png")<0?($p_tuan_truoc$$=$r$$.picture4.split("."),$r$$.picture4_thumb=$r$$.picture4+".thumb."+$p_tuan_truoc$$[$p_tuan_truoc$$.length-1]):$r$$.picture4="";$r$$.picture5&&$r$$.picture5.indexOf("noimage.png")<0?($p_tuan_truoc$$=$r$$.picture5.split("."),$r$$.picture5_thumb=$r$$.picture5+".thumb."+$p_tuan_truoc$$[$p_tuan_truoc$$.length-1]):$r$$.picture5=
"";$r$$.tien_ck||($r$$.tien_ck=0);$r$$.ty_le_ck||($r$$.ty_le_ck=0);$r$$.ty_le_ck===0&&$r$$.tien_ck!==0&&$r$$.gia_ban_le!==0&&($r$$.ty_le_ck=Math.roundBy($r$$.tien_ck/$r$$.gia_ban_le*100,2));$r$$.gia_ban_thuc=$r$$.gia_ban_le-$r$$.tien_ck;$p_tuan_truoc$$=new Date;$p_tuan_truoc$$.setDate($p_tuan_truoc$$.getDate()-7);$r$$.sp_moi=$r$$.date_created&&$r$$.date_created>$p_tuan_truoc$$?!0:!1;switch($r$$.tinh_trang){case "1":$r$$.ten_tinh_trang="\u0110ang c\u00f3 h\u00e0ng";break;case "2":$r$$.ten_tinh_trang=
"S\u1eafp c\u00f3 h\u00e0ng";break;default:$r$$.ten_tinh_trang="H\u1ebft h\u00e0ng"}$r$$.mieu_ta_chi_tiet||($r$$.mieu_ta_chi_tiet=$r$$.mieu_ta)});$res$$.send($result$$)}).catch($e$$=>{$res$$.status(400).send($e$$)})})})};