UNPKG

flexbiz-server

Version:

Flexible Server

18 lines (17 loc) 8.2 kB
'use strict';const PostBook=require("../../libs/post-book"),PostSocai=require("../../libs/post-socai"),Sokho=global.getModel("sokho"),Vatvao=global.getModel("vatvao"),dvcs=global.getModel("dvcs"),dmvt=global.getModel("dmvt"),customer=global.getModel("customer"),dmdt=global.getModel("dmdt"),dmphi=global.getModel("dmphi"),contract=global.getModel("contract"),model=global.getModel("shipbook"),pn1=global.getModel("pn1"),pn9=global.getModel("pn9"),controller=require("../../controllers/controller"),trangthai= global.getModel("trangthai"),async=require("async"),ma_ct="SHIPBOOK",underscore=require("underscore"); module.exports=function($contr_router$$){$contr_router$$=new controller($contr_router$$,model,ma_ct.toLowerCase(),{isVoucher:!0,sort:{ngay_ct:-1,so_ct:-1}});$contr_router$$.route();$contr_router$$.post=function($obj$jscomp$0$$,$fn$$){$fn$$||($fn$$=function(){});async.series({post_sokho:function($callback$jscomp$0$$){(new PostBook($obj$jscomp$0$$,$obj$jscomp$0$$.details,Sokho,function($detail$$,$callback$$){$detail$$.nxt=1;$detail$$.he_so_qd=1;$detail$$.ma_kho=$obj$jscomp$0$$.ma_kho;$detail$$.sl_nhap= 0;$detail$$.sl_nhap_qd=0;$detail$$.tien_nhap_nt=$detail$$.tien_nt+$detail$$.exfields_detail.tien_phi_nt+$detail$$.exfields_detail.tien_phi_khac_nt;$detail$$.tien_nhap=$detail$$.tien+$detail$$.exfields_detail.tien_phi+$detail$$.exfields_detail.tien_phi_khac;$callback$$($detail$$)})).run(function($e$$,$rs$$){$callback$jscomp$0$$($e$$,$rs$$)})},post_vatvao:function($callback$jscomp$0$$){$obj$jscomp$0$$.so_hd&&$obj$jscomp$0$$.ngay_hd&&$obj$jscomp$0$$.ma_thue?(new PostBook($obj$jscomp$0$$,[{...$obj$jscomp$0$$}], Vatvao,function($obj$$,$callback$$){$obj$$.tk_du_thue=$obj$$.tk_co;$obj$$.t_tien_nt=$obj$$.details.csum("tien_nt");$obj$$.t_tien=$obj$$.details.csum("tien");$obj$$.ten_vt||($obj$$.ten_vt=$obj$$.dien_giai);$callback$$($obj$$)})).run(function($e$$,$rs$$){$callback$jscomp$0$$($e$$,$rs$$)}):Vatvao.deleteMany({id_ct:$obj$jscomp$0$$._id},function($error$$){$callback$jscomp$0$$($error$$)})},post_socai:function($callback$$){let $details$$=[];$obj$jscomp$0$$.details.forEach($detail$$=>{let $d$$={};underscore.extend($d$$, {...$detail$$});$d$$.tk_no=$obj$jscomp$0$$.tk_no;$d$$.tk_co=$obj$jscomp$0$$.tk_co;$d$$.tien_nt=$detail$$.tien_nt+$detail$$.exfields_detail.tien_phi_nt+$detail$$.exfields_detail.tien_phi_khac_nt;$d$$.tien=$detail$$.tien+$detail$$.exfields_detail.tien_phi+$detail$$.exfields_detail.tien_phi_khac;$details$$.push($d$$)});if(0<$obj$jscomp$0$$.t_thue_nt){let $thue$$={};underscore.extend($thue$$,{...$obj$jscomp$0$$});$thue$$.tien_nt=$thue$$.t_thue_nt;$thue$$.tien=$thue$$.t_thue;$thue$$.tk_no=$thue$$.tk_thue_no; $details$$.push($thue$$)}(new PostSocai($obj$jscomp$0$$,$details$$)).run(function($e$$,$rs$$){$callback$$($e$$,$rs$$)})}},function($e$$,$rs$$){$fn$$($e$$,$rs$$)})};const $valid$$=function($i_user$$,$obj$$,$next$$){for($i_user$$=0;$i_user$$<$obj$$.details.length;$i_user$$++){const $detail$$=$obj$$.details[$i_user$$];$detail$$.line=$i_user$$;$detail$$.exfields_detail||($detail$$.exfields_detail={});$detail$$.exfields_detail.tien_phi_nt=$detail$$.exfields_detail.tien_phi_nt||0;$detail$$.exfields_detail.tien_phi= $detail$$.exfields_detail.tien_phi||0;$detail$$.exfields_detail.tien_phi_khac_nt=$detail$$.exfields_detail.tien_phi_khac_nt||0;$detail$$.exfields_detail.tien_phi_khac=$detail$$.exfields_detail.tien_phi_khac||0;$detail$$.tt_nt=$detail$$.tien_nt-$detail$$.tien_ck_nt||0+$detail$$.exfields_detail.tien_phi_nt+$detail$$.exfields_detail.tien_phi_khac_nt;$detail$$.tt=$detail$$.tien-$detail$$.tien_ck||0+$detail$$.exfields_detail.tien_phi+$detail$$.exfields_detail.tien_phi_khac;"VND"==$obj$$.ma_nt&&($detail$$.tien= $detail$$.tien_nt,$detail$$.tien_ck=$detail$$.tien_ck_nt,$detail$$.exfields_detail.tien_phi_khac=$detail$$.exfields_detail.tien_phi_khac_nt,$detail$$.exfields_detail.tien_phi=$detail$$.exfields_detail.tien_phi_nt,$detail$$.tt=$detail$$.tt_nt)}$next$$(null,$obj$$)};$contr_router$$.creating=function($user$$,$obj$$,$next$$){$obj$$.details||($obj$$.details=[]);$valid$$($user$$,$obj$$,function($error$$){if($error$$)return $next$$($error$$);if("4"==$obj$$.trang_thai){if(!$obj$$.tk_no||!$obj$$.tk_co)return $next$$("B\u1ea1n ch\u01b0a nh\u1eadp \u0111\u1ea7y \u0111\u1ee7 t\u00e0i kho\u1ea3n \u0111\u1ec3 ghi s\u1ed5 c\u00e1i"); if(!$obj$$.ma_kho)return $next$$("B\u1ea1n ch\u01b0a nh\u1eadp m\u00e3 kho")}$next$$(null,$obj$$)})};$contr_router$$.updating=function($user$$,$data$$,$obj$$,$next$$){$valid$$($user$$,$data$$,function($error$$){if($error$$)return $next$$($error$$);if("4"==$data$$.trang_thai&&(!$data$$.tk_no&&!$obj$$.tk_no||!$data$$.tk_co&&!$obj$$.tk_co))return $next$$("B\u1ea1n ch\u01b0a nh\u1eadp \u0111\u1ea7y \u0111\u1ee7 t\u00e0i kho\u1ea3n \u0111\u1ec3 ghi s\u1ed5 c\u00e1i");if(!$data$$.ma_kho&&!$obj$$.ma_kho)return $next$$("B\u1ea1n ch\u01b0a nh\u1eadp m\u00e3 kho"); $next$$(null,$data$$,$obj$$)})};$contr_router$$.deleting=function($user$$,$obj$$,$next$$){$next$$(null,$obj$$)};$contr_router$$.view=function($user$$,$items$$,$fn$$){let $id_app$$=$user$$.current_id_app;async.series({dv:function($callback$$){$items$$.joinModel($id_app$$,dvcs,[{akey:"ma_dvcs",bkey:"_id",fields:[{name:"ten_dvcs",value:"ten_dvcs"}]}],function(){$callback$$()})},kh:function($callback$$){$items$$.joinModel($id_app$$,customer,[{akey:"ma_kh",bkey:"ma_kh",fields:[{name:"ten_kh",value:"ten_kh"}]}], function(){$callback$$()})},dt:function($callback$$){$items$$.joinModel($id_app$$,dmdt,[{akey:"ma_dt",bkey:"ma_dt",fields:[{name:"ten_dt",value:"ten_dt"}]}],function(){$callback$$()})},pn1:function($callback$$){$items$$.joinModel2($id_app$$,pn1,[{where:{_id:"id_contract"},fields:[{name:"id_pn1",value:"_id"}]}],function(){$callback$$()})},pn9:function($callback$$){$items$$.joinModel2($id_app$$,pn9,[{where:{_id:"id_contract"},fields:[{name:"id_pn9",value:"_id"}]}],function(){$callback$$()})},trangthai:function($callback$$){$items$$.joinModel2(null, trangthai,[{where:{trang_thai:"ma_trang_thai",ma_ct:"ma_ct"},fields:["ten_trang_thai","color"]}],function(){$callback$$()})},t_tien:function($callback$$){$items$$.forEach(function($r$$){$r$$.t_tt=0;$r$$.t_tt_nt=0;$r$$.details&&($r$$.details.forEach($detail$$=>{$detail$$.exfields_detail||($detail$$.exfields_detail={});$detail$$.tien_phi_nt=$detail$$.exfields_detail.tien_phi_nt||0;$detail$$.tien_phi=$detail$$.exfields_detail.tien_phi||0;$detail$$.tien_phi_khac_nt=$detail$$.exfields_detail.tien_phi_khac_nt|| 0;$detail$$.tien_phi_khac=$detail$$.exfields_detail.tien_phi_khac||0}),$r$$.t_sl=$r$$.details.csum("so_luong"),$r$$.t_tien=$r$$.details.csum("tien"),$r$$.t_tien_nt=$r$$.details.csum("tien_nt"),$r$$.t_ck=$r$$.details.csum("tien_ck"),$r$$.t_ck_nt=$r$$.details.csum("tien_ck_nt"),$r$$.t_phi=$r$$.details.csum("tien_phi"),$r$$.t_phi_nt=$r$$.details.csum("tien_phi_nt"),$r$$.t_phi_khac=$r$$.details.csum("tien_phi_khac"),$r$$.t_phi_khac_nt=$r$$.details.csum("tien_phi_khac_nt"),$r$$.t_tt=$r$$.t_tien+($r$$.t_thue| 0)-$r$$.t_ck+$r$$.t_phi+$r$$.t_phi_khac,$r$$.t_tt_nt=$r$$.t_tien_nt+($r$$.t_thue_nt|0)-$r$$.t_ck_nt+$r$$.t_phi_nt+$r$$.t_phi_khac_nt)});$callback$$()},details_vt:function($callback$$){async.each($items$$,function($r$$,$callback1$$){($r$$.details||[]).joinModel($id_app$$,dmvt,[{akey:"ma_vt",bkey:"ma_vt",fields:[{name:"ten_vt",value:"ten_vt"},{name:"tk_vt",value:"tk_vt"},{name:"tk_gv",value:"tk_gv"},{name:"tk_dt",value:"tk_dt"},{name:"tk_ck",value:"tk_ck"}]}],function(){$callback1$$()})},function(){$callback$$()})}, details_dt:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){($r$$.details||[]).joinModel($id_app$$,dmdt,[{akey:"ma_dt",bkey:"ma_dt",fields:[{name:"ten_dt",value:"ten_dt"}]}],function(){$callback1$$()})},function(){$callback$$()})},contract:function($callback$$){$items$$.joinModel($id_app$$,contract,[{akey:"ma_hd",bkey:"so_hd",fields:[{name:"ten_hd",value:"ten_hd"}]}],function(){$callback$$()})},details_phi:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){($r$$.details|| []).joinModel($id_app$$,dmphi,[{akey:"ma_phi",bkey:"ma_phi",fields:[{name:"ten_phi",value:"ten_phi"}]}],function(){$callback1$$()})},function(){$callback$$()})}},function(){$fn$$(null,$items$$)})}};