UNPKG

flexbiz-server

Version:

Flexible Server

20 lines (19 loc) 9.19 kB
'use strict';const PostBook=require("../../libs/post-book"),PostSocai=require("../../libs/post-socai"),Sokho=global.getModel("sokho"),Tdttco=global.getModel("tdttco"),Tdttco_tt=global.getModel("tdttco_tt"),Vatvao=global.getModel("vatvao"),dvcs=global.getModel("dvcs"),dmvt=global.getModel("dmvt"),dmcpmh=global.getModel("dmcpmh"),account=global.getModel("account"),customer=global.getModel("customer"),dmdt=global.getModel("dmdt"),dmnv=global.getModel("dmnv"),dmphi=global.getModel("dmphi"),contract=global.getModel("contract"), model=global.getModel("pn3"),controller=require("../../controllers/controller"),async=require("async"),ma_ct="PN3"; module.exports=function($contr_router$$){$contr_router$$=new controller($contr_router$$,model,ma_ct.toLowerCase(),{isVoucher:!0,kiem_tra_han_muc_cong_no:!0,check_stock:!1,sort:{ngay_ct:-1,so_ct:-1}});$contr_router$$.route();$contr_router$$.post=function($obj$jscomp$0$$,$fn$$,$_options$$={}){$fn$$||($fn$$=function(){});async.series({post_sokho:function($callback$jscomp$0$$){(new PostBook($obj$jscomp$0$$,$obj$jscomp$0$$.details,Sokho,async function($detail$$,$callback$$){$detail$$.nxt=1;$detail$$.sl_nhap= 0;$detail$$.tien_nhap=$detail$$.tien_phi;$detail$$.tien_nhap_nt=$detail$$.tien_phi_nt;$detail$$.tk_co=$obj$jscomp$0$$.tk_co;$callback$$($detail$$)})).run(function($e$$,$rs$$){$callback$jscomp$0$$($e$$,$rs$$)})},post_vatvao:function($callback$jscomp$0$$){(new PostBook($obj$jscomp$0$$,$obj$jscomp$0$$.vatvaos,Vatvao,($detail$$,$callback$$)=>{$detail$$={...$detail$$};$detail$$.ten_vt=$detail$$.ten_vt||$obj$jscomp$0$$.dien_giai||($obj$jscomp$0$$.details||[]).map($d$$=>$d$$.ten_vt).join(", ");$callback$$($detail$$)})).run(function($e$$, $rs$$){$callback$jscomp$0$$($e$$,$rs$$)})},post_socai:function($callback$$){const $details_sc$$=[];$obj$jscomp$0$$.vatvaos.forEach(function($v_vatvao$$){$v_vatvao$$={...$v_vatvao$$};$v_vatvao$$.tk_no=$v_vatvao$$.tk_thue_no;$v_vatvao$$.tk_co=$v_vatvao$$.tk_du_thue;$v_vatvao$$.tien_nt=$v_vatvao$$.t_thue_nt;$v_vatvao$$.tien=$v_vatvao$$.t_thue;$details_sc$$.push($v_vatvao$$)});$obj$jscomp$0$$.details.forEach(function($detail$jscomp$2_v$$){$detail$jscomp$2_v$$={...$detail$jscomp$2_v$$};$detail$jscomp$2_v$$.tk_no= $detail$jscomp$2_v$$.tk_vt;$detail$jscomp$2_v$$.ma_kh||($detail$jscomp$2_v$$.ma_kh=$obj$jscomp$0$$.ma_kh);$detail$jscomp$2_v$$.tk_co=$obj$jscomp$0$$.tk_co;$detail$jscomp$2_v$$.tien_nt=$detail$jscomp$2_v$$.tien_phi_nt;$detail$jscomp$2_v$$.tien=$detail$jscomp$2_v$$.tien_phi;$details_sc$$.push($detail$jscomp$2_v$$)});(new PostSocai($obj$jscomp$0$$,$details_sc$$,void 0,void 0,$_options$$)).run(function($e$$,$rs$$){$callback$$($e$$,$rs$$)})},post_tdttco:function($callback$jscomp$0$$){account.findOne({tk:$obj$jscomp$0$$.tk_co, id_app:$obj$jscomp$0$$.id_app},{tk_cn:1},function($error$$,$tk$$){if($error$$)return $callback$jscomp$0$$($error$$);$tk$$&&!0===$tk$$.tk_cn?(new PostBook($obj$jscomp$0$$,[{...$obj$jscomp$0$$}],Tdttco,function($obj$$,$callback$$){$obj$$.so_hd=$obj$$.so_ct;$obj$$.ngay_hd=$obj$$.ngay_ct;$obj$$.tien_nt=$obj$$.details.csum("tien_phi_nt")+($obj$$.vatvaos||[]).csum("t_thue_nt");$obj$$.tien=$obj$$.details.csum("tien_phi")+($obj$$.vatvaos||[]).csum("t_thue");$callback$$($obj$$)})).run(function($e$$,$rs$$){$callback$jscomp$0$$($e$$, $rs$$)}):Tdttco.deleteMany({id_ct:$obj$jscomp$0$$._id},function(){$callback$jscomp$0$$($error$$)})})}},function($e$$,$rs$$){$fn$$($e$$,$rs$$)})};const $valid$$=function($i_i$jscomp$1_i$$,$obj$$,$next$$){for($i_i$jscomp$1_i$$=0;$i_i$jscomp$1_i$$<$obj$$.details.length;$i_i$jscomp$1_i$$++){var $ctcpmh_detail$jscomp$3_vatvao$$=$obj$$.details[$i_i$jscomp$1_i$$];$ctcpmh_detail$jscomp$3_vatvao$$.line=$i_i$jscomp$1_i$$;"VND"==$obj$$.ma_nt&&($ctcpmh_detail$jscomp$3_vatvao$$.tien_phi=$ctcpmh_detail$jscomp$3_vatvao$$.tien_phi_nt)}if($obj$$.vatvaos)for($i_i$jscomp$1_i$$= 0;$i_i$jscomp$1_i$$<$obj$$.vatvaos.length;$i_i$jscomp$1_i$$++)$ctcpmh_detail$jscomp$3_vatvao$$=$obj$$.vatvaos[$i_i$jscomp$1_i$$],$ctcpmh_detail$jscomp$3_vatvao$$.line=$i_i$jscomp$1_i$$,"VND"==$obj$$.ma_nt&&($ctcpmh_detail$jscomp$3_vatvao$$.t_thue=$ctcpmh_detail$jscomp$3_vatvao$$.t_thue_nt);if($obj$$.ctcpmhs)for($i_i$jscomp$1_i$$=0;$i_i$jscomp$1_i$$<$obj$$.ctcpmhs.length;$i_i$jscomp$1_i$$++)$ctcpmh_detail$jscomp$3_vatvao$$=$obj$$.ctcpmhs[$i_i$jscomp$1_i$$],$ctcpmh_detail$jscomp$3_vatvao$$.line=$i_i$jscomp$1_i$$, "VND"==$obj$$.ma_nt&&($ctcpmh_detail$jscomp$3_vatvao$$.tien_cp=$ctcpmh_detail$jscomp$3_vatvao$$.tien_cp_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$$);$next$$(null,$obj$$)})};$contr_router$$.updating=function($user$$,$data$$,$obj$$,$next$$){Tdttco_tt.find({id_hd:$obj$$._id},function($error$jscomp$0$$,$results$$){if($error$jscomp$0$$)return $next$$($error$jscomp$0$$); $results$$&&0<$results$$.length?$next$$("L\u1ed7i: Kh\u00f4ng th\u1ec3 c\u1eadp nh\u1eadt ch\u1ee9ng t\u1eeb n\u00e0y do \u0111\u00e3 \u0111\u01b0\u1ee3c thanh to\u00e1n"):$valid$$($user$$,$data$$,function($error$$){if($error$$)return $next$$($error$$);$next$$(null,$data$$,$obj$$)})})};$contr_router$$.deleting=function($user$$,$obj$$,$next$$){Tdttco_tt.find({id_hd:$obj$$._id},function($error$$,$results$$){if($error$$)return $next$$($error$$);$results$$&&0<$results$$.length?$next$$("L\u1ed7i: Kh\u00f4ng th\u1ec3 x\u00f3a ch\u1ee9ng t\u1eeb n\u00e0y do \u0111\u00e3 \u0111\u01b0\u1ee3c thanh to\u00e1n"): $next$$(null,$obj$$)})};$contr_router$$.view=function($user$$,$items$$,$fn$$){let $id_app$$=$user$$.current_id_app;async.series({dv:function($callback$$){$items$$.filter($item$$=>$item$$.ma_dvcs).joinModel($id_app$$,dvcs,[{akey:"ma_dvcs",bkey:"_id",fields:[{name:"ten_dvcs",value:"ten_dvcs"}]}],function(){$callback$$()})},tk:function($callback$$){$items$$.filter($item$$=>$item$$.tk_co).joinModel($id_app$$,account,[{akey:"tk_co",bkey:"tk",fields:[{name:"ten_tk_co",value:"ten_tk"}]}],function(){$callback$$()})}, kh:function($callback$$){$items$$.filter($item$$=>$item$$.ma_kh).joinModel($id_app$$,customer,[{akey:"ma_kh",bkey:"ma_kh",fields:[{name:"ten_kh",value:"ten_kh"}]}],function(){$callback$$()})},dmdt:function($callback$$){$items$$.filter($item$$=>$item$$.ma_dt).joinModel2($id_app$$,dmdt,{where:"ma_dt",fields:"ten_dt"},function(){$callback$$()})},dmnv:function($callback$$){$items$$.filter($item$$=>$item$$.ma_nv).joinModel2($id_app$$,dmnv,{where:"ma_nv",fields:"ten_nv"},function(){$callback$$()})},t_tien:function($callback$$){$items$$.forEach(function($r$$){$r$$.t_cp= 0;$r$$.t_cp_nt=0;$r$$.t_thue_vao=0;$r$$.t_thue_vao_nt=0;$r$$.details&&($r$$.t_sl=$r$$.details.csum("sl_nhap"),$r$$.t_cp=$r$$.details.csum("tien_phi"),$r$$.t_cp_nt=$r$$.details.csum("tien_phi_nt"));$r$$.vatvaos&&($r$$.t_thue_vao=$r$$.vatvaos.csum("t_thue"),$r$$.t_thue_vao_nt=$r$$.vatvaos.csum("t_thue_nt"));$r$$.ctcpmhs&&($r$$.t_cp_cpb_nt=$r$$.ctcpmhs.csum("tien_cp_nt"),$r$$.t_cp_cpb=$r$$.ctcpmhs.csum("tien_cp"));$r$$.t_tt=$r$$.t_cp+$r$$.t_thue_vao;$r$$.t_tt_nt=$r$$.t_cp_nt+$r$$.t_thue_vao_nt});$callback$$()}, details_ct:function($callback$$){async.each($items$$,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.id_hd).joinModel2($id_app$$,"pn1",[{where:{id_hd:"_id"},fields:[{so_hd:"so_ct"},{ngay_hd:"ngay_ct"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_tk:function($callback$$){async.each($items$$,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.tk_vt).joinModel($id_app$$,account,[{akey:"tk_vt",bkey:"tk",fields:[{name:"ten_tk_vt",value:"ten_tk"}]}], function(){$callback1$$()})},function(){$callback$$()})},details_vt:function($callback$$){async.each($items$$,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_vt).joinModel($id_app$$,dmvt,[{akey:"ma_vt",bkey:"ma_vt",fields:[{name:"ten_vt",value:"ten_vt"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_dt:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_dt).joinModel($id_app$$,dmdt, [{akey:"ma_dt",bkey:"ma_dt",fields:[{name:"ten_dt",value:"ten_dt"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_contract:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){($r$$.details||[]).filter($item$$=>$item$$.ma_hd).joinModel($id_app$$,contract,[{akey:"ma_hd",bkey:"so_hd",fields:[{name:"ten_hd",value:"ten_hd"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_phi:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){($r$$.details|| []).filter($item$$=>$item$$.ma_phi).joinModel($id_app$$,dmphi,[{akey:"ma_phi",bkey:"ma_phi",fields:[{name:"ten_phi",value:"ten_phi"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_cpmh:function($callback$$){async.each($items$$,function($ctcpmhs_r$$,$callback1$$){($ctcpmhs_r$$=$ctcpmhs_r$$.ctcpmhs)?$ctcpmhs_r$$.filter($item$$=>$item$$.ma_cp).joinModel($id_app$$,dmcpmh,[{akey:"ma_cp",bkey:"ma_cp",fields:[{name:"ten_cp",value:"ten_cp"}]}],function(){$callback1$$()}):$callback1$$()}, function(){$callback$$()})}},function(){$fn$$(null,$items$$)})}};