UNPKG

flexbiz-server

Version:

Flexible Server

5 lines (4 loc) 1.71 kB
const model=global.getModel("transaction"),Wallet=global.getModel("wallet"),ckdiem=require("../../libs/ckdiem"),controller=require("../../controllers/controller"),getBalance=async($id_app$$,$email$$)=>new Promise(($resolve$$,$reject$$)=>{ckdiem({id_app:$id_app$$,email:$email$$},($e$$,$rs$$)=>{if($e$$)return $reject$$(Error($e$$));$resolve$$($rs$$.length===0?0:$rs$$[0].ton00)})}); module.exports=function($contr_router$$){$contr_router$$=new controller($contr_router$$,model,"transaction",{sort:{ngay_ct:-1},onFinding:($user$$,$condition$$,$next$$)=>{$next$$(null,$condition$$)},onUpdating:($user$$,$data$$,$obj$$,$next$$)=>{$next$$("This API is invalid")},onCreating:($user$$,$obj$$,$next$$)=>{$next$$("This API is invalid")},onDeleting:($user$$,$obj$$,$next$$)=>{$next$$("This API is invalid")}});$contr_router$$.route();$contr_router$$.createRoute("createTrans",async($data$$,$next$$)=> {let $body$$=$data$$.body,$receiver_email$$;try{$receiver_email$$=await Wallet.getEmail($data$$.user.current_id_app,$body$$.receiver)}catch($e$$){return $next$$($e$$.message)}if(await getBalance($data$$.user.current_id_app,$data$$.user.email)<$body$$.amount)return $next$$("S\u1ed1 d\u01b0 c\u1ee7a b\u1ea1n kh\u00f4ng \u0111\u1ee7 \u0111\u1ec3 th\u1ef1c hi\u1ec7n giao d\u1ecbch n\u00e0y");$data$$={id_app:$data$$.user.current_id_app,sender_email:$data$$.user.email,receiver_email:$receiver_email$$,amount:$body$$.amount, description:$body$$.description,otherData:{tk_no:$body$$.tk_no,tk_co:$body$$.tk_co,ngay_ct:new Date,so_ct:`TRANS${(new Date).getTime()}`,ma_ct:"transaction"}};try{let $rs$$=await model.createTrans($data$$);$next$$(null,$rs$$)}catch($e$$){return $next$$($e$$.message||$e$$)}},{method:"POST"})};