flexbiz-server 12.2.3 → 12.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. package/package.json +1 -1
  2. package/server/auths/local.js +27 -26
  3. package/server/controllers/controller.js +56 -55
  4. package/server/controllers/controllerRPT.js +18 -17
  5. package/server/libs/cdpstk.js +1 -1
  6. package/server/libs/databanle.js +13 -13
  7. package/server/libs/getGiaban.js +23 -22
  8. package/server/libs/post-book.js +9 -8
  9. package/server/libs/post-socai.js +9 -9
  10. package/server/libs/prototypes.js +4 -4
  11. package/server/libs/tinhGtPhanboSltp.js +5 -5
  12. package/server/libs/tinhGtPhanboYtcp.js +2 -2
  13. package/server/libs/tinhGtThcppstk.js +1 -1
  14. package/server/libs/tinhGtTrucTiep.js +8 -7
  15. package/server/libs/tinhgiatb.js +4 -4
  16. package/server/libs/tinhgiatb1vt.js +3 -3
  17. package/server/libs/tinhhoahong.js +32 -0
  18. package/server/libs/utils.js +4 -3
  19. package/server/models/app.js +9 -8
  20. package/server/models/approve.js +4 -4
  21. package/server/models/customer.js +8 -8
  22. package/server/models/dh2.js +10 -9
  23. package/server/models/dmgiaban.js +6 -6
  24. package/server/models/dmhoahonghd.js +6 -5
  25. package/server/models/fbconversation.js +9 -0
  26. package/server/models/fbmessage.js +2 -0
  27. package/server/models/fbpage.js +2 -0
  28. package/server/models/group.js +4 -2
  29. package/server/models/hd2.js +8 -8
  30. package/server/models/hd3.js +9 -9
  31. package/server/models/hd7.js +1 -1
  32. package/server/models/notification.js +3 -2
  33. package/server/models/participant.js +5 -5
  34. package/server/models/pbl.js +4 -4
  35. package/server/models/reportinfo.js +2 -2
  36. package/server/models/rptform.js +3 -2
  37. package/server/models/schedule.js +1 -1
  38. package/server/models/so1.js +7 -6
  39. package/server/models/socai.js +4 -4
  40. package/server/models/tdttco.js +8 -4
  41. package/server/models/tdttno.js +8 -4
  42. package/server/models/tokens.js +2 -2
  43. package/server/models/usergroup.js +5 -4
  44. package/server/models/vatra.js +2 -2
  45. package/server/models/vatvao.js +4 -4
  46. package/server/modules/lists/ls-assinvestment.js +1 -1
  47. package/server/modules/lists/ls-customer.js +13 -14
  48. package/server/modules/lists/ls-dmvt.js +48 -39
  49. package/server/modules/lists/ls-fbconversation.js +3 -0
  50. package/server/modules/lists/ls-fbmessage.js +3 -0
  51. package/server/modules/lists/ls-fbpage.js +10 -0
  52. package/server/modules/lists/ls-introducecode.js +1 -1
  53. package/server/modules/lists/ls-news.js +1 -1
  54. package/server/modules/lists/ls-opportunity.js +3 -3
  55. package/server/modules/lists/ls-session.js +1 -1
  56. package/server/modules/public/callin.js +6 -6
  57. package/server/modules/reports/rp-cdpstk.js +3 -3
  58. package/server/modules/reports/rp-chitiettaisan.js +9 -8
  59. package/server/modules/reports/rp-ckvt.js +9 -7
  60. package/server/modules/reports/rp-ctbanle.js +13 -12
  61. package/server/modules/reports/rp-databanle.js +8 -4
  62. package/server/modules/reports/rp-dtbanletheoct.js +16 -9
  63. package/server/modules/reports/rp-dtbanletheokh.js +12 -6
  64. package/server/modules/reports/rp-dtbanletheokho.js +14 -9
  65. package/server/modules/reports/rp-dtbanletheonam.js +15 -9
  66. package/server/modules/reports/rp-dtbanletheongay.js +13 -8
  67. package/server/modules/reports/rp-dtbanletheonv.js +15 -9
  68. package/server/modules/reports/rp-dtbanletheoquy.js +15 -9
  69. package/server/modules/reports/rp-dtbanletheothang.js +15 -9
  70. package/server/modules/reports/rp-getinvoice2pay.js +4 -6
  71. package/server/modules/reports/rp-getinvoice2receive.js +4 -6
  72. package/server/modules/reports/rp-hoahong.js +9 -0
  73. package/server/modules/reports/rp-kqhdkd.js +5 -4
  74. package/server/modules/reports/rp-ptcttct.js +7 -6
  75. package/server/modules/reports/rp-pttct.js +8 -8
  76. package/server/modules/reports/rp-pttctkho.js +3 -2
  77. package/server/modules/reports/rp-pttctkho2.js +3 -3
  78. package/server/modules/reports/rp-thnxt.js +8 -8
  79. package/server/modules/reports/rp-thnxt_sl.js +6 -6
  80. package/server/modules/reports/rp-thnxttt.js +6 -6
  81. package/server/modules/reports/rp-tmbctc.js +16 -16
  82. package/server/modules/systems/sys-app.js +25 -24
  83. package/server/modules/systems/sys-notification.js +2 -2
  84. package/server/modules/systems/sys-schedule.js +1 -1
  85. package/server/modules/systems/sys-user.js +8 -8
  86. package/server/modules/vouchers/vo-bc1.js +9 -8
  87. package/server/modules/vouchers/vo-bg2.js +9 -9
  88. package/server/modules/vouchers/vo-bn1.js +5 -4
  89. package/server/modules/vouchers/vo-dh2.js +15 -38
  90. package/server/modules/vouchers/vo-dnm.js +11 -12
  91. package/server/modules/vouchers/vo-hd2.js +63 -83
  92. package/server/modules/vouchers/vo-hd3.js +28 -22
  93. package/server/modules/vouchers/vo-hd7.js +37 -36
  94. package/server/modules/vouchers/vo-pbl.js +49 -49
  95. package/server/modules/vouchers/vo-pc1.js +9 -8
  96. package/server/modules/vouchers/vo-pn1.js +24 -22
  97. package/server/modules/vouchers/vo-pn5.js +1 -1
  98. package/server/modules/vouchers/vo-pn9.js +23 -23
  99. package/server/modules/vouchers/vo-pnc.js +8 -8
  100. package/server/modules/vouchers/vo-pnh.js +5 -5
  101. package/server/modules/vouchers/vo-pt1.js +17 -16
  102. package/server/modules/vouchers/vo-pxc.js +16 -16
  103. package/server/modules/vouchers/vo-pxh.js +12 -10
  104. package/server/modules/vouchers/vo-so1.js +94 -119
  105. package/server/modules/vouchers/vo-so4.js +1 -1
  106. package/server/modules/vouchers/vo-so5.js +2 -2
  107. package/server/workers/restoreApp.js +21 -12
  108. package/server/workers/runScript.js +3 -3
@@ -1,23 +1,25 @@
1
1
  'use strict';const PostBook=require("../../libs/post-book"),PostSocai=require("../../libs/post-socai"),dmkho=global.getModel("dmkho"),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"),dmphi=global.getModel("dmphi"),contract=global.getModel("contract"),purchasecontract=
2
- global.getModel("purchase_contract"),po1=global.getModel("po1"),model=global.getModel("pn1"),controller=require("../../controllers/controller"),trangthai=global.getModel("trangthai"),async=require("async"),Sokho=global.getModel("sokho"),ma_ct="PN1",moment=require("moment");
3
- 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,async($detail$$,$callback$$)=>{$detail$$={...$detail$$,nxt:1};$detail$$.tk_co=$obj$jscomp$0$$.tk_co;$callback$$($detail$$)})).run(function(){$callback$jscomp$0$$()})},
4
- post_vat_vao:function($callback$$){(new PostBook($obj$jscomp$0$$,$obj$jscomp$0$$.vatvaos,Vatvao)).run(function($e$$,$rs$$){$callback$$($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;$v_vatvao$$.ma_kh=$v_vatvao$$.ma_kh_cn||$v_vatvao$$.ma_kh;
5
- $details_sc$$.push($v_vatvao$$)});$obj$jscomp$0$$.details.forEach(function($d_detail$$){$d_detail$$={...$d_detail$$};$d_detail$$.tk_no=$d_detail$$.tk_vt;$d_detail$$.ma_kh||($d_detail$$.ma_kh=$obj$jscomp$0$$.ma_kh);$d_detail$$.tk_co=$obj$jscomp$0$$.tk_co;$d_detail$$.tien_nt=$d_detail$$.tien_nhap_nt;$d_detail$$.tien=$d_detail$$.tien_nhap;$details_sc$$.push($d_detail$$)});(new PostSocai($obj$jscomp$0$$,$details_sc$$)).run(function($e$$,$rs$$){$callback$$($e$$,$rs$$)})},post_tdttco:function($callback$jscomp$0$$){account.findOne({tk:$obj$jscomp$0$$.tk_co,
6
- 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_hang_nt")-$obj$$.details.csum("tien_ck_nt")+$obj$$.details.csum("tien_phi_nt")+($obj$$.vatvaos||[]).csum("t_thue_nt");$obj$$.tien=$obj$$.details.csum("tien_hang")-$obj$$.details.csum("tien_ck")+
7
- $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$$=async($_po1_i_i$jscomp$1_i$$,$obj$$,$next$$)=>{for($_po1_i_i$jscomp$1_i$$=0;$_po1_i_i$jscomp$1_i$$<$obj$$.details.length;$_po1_i_i$jscomp$1_i$$++){var $ctcpmh_detail$jscomp$2_vatvao$$=$obj$$.details[$_po1_i_i$jscomp$1_i$$];
8
- $ctcpmh_detail$jscomp$2_vatvao$$.line=$_po1_i_i$jscomp$1_i$$;$ctcpmh_detail$jscomp$2_vatvao$$.tien_nhap_nt=($ctcpmh_detail$jscomp$2_vatvao$$.tien_hang_nt||0)+($ctcpmh_detail$jscomp$2_vatvao$$.tien_phi_nt||0)-($ctcpmh_detail$jscomp$2_vatvao$$.tien_ck_nt||0);$ctcpmh_detail$jscomp$2_vatvao$$.tien_nhap=($ctcpmh_detail$jscomp$2_vatvao$$.tien_hang||0)+($ctcpmh_detail$jscomp$2_vatvao$$.tien_phi||0)-($ctcpmh_detail$jscomp$2_vatvao$$.tien_ck||0);"VND"===$obj$$.ma_nt&&($ctcpmh_detail$jscomp$2_vatvao$$.tien_hang=
9
- $ctcpmh_detail$jscomp$2_vatvao$$.tien_hang_nt=Math.roundBy($ctcpmh_detail$jscomp$2_vatvao$$.tien_hang_nt),$ctcpmh_detail$jscomp$2_vatvao$$.tien_ck=$ctcpmh_detail$jscomp$2_vatvao$$.tien_ck_nt=Math.roundBy($ctcpmh_detail$jscomp$2_vatvao$$.tien_ck_nt),$ctcpmh_detail$jscomp$2_vatvao$$.tien_phi=$ctcpmh_detail$jscomp$2_vatvao$$.tien_phi_nt=Math.roundBy($ctcpmh_detail$jscomp$2_vatvao$$.tien_phi_nt),$ctcpmh_detail$jscomp$2_vatvao$$.tien_nhap=$ctcpmh_detail$jscomp$2_vatvao$$.tien_nhap_nt=Math.roundBy($ctcpmh_detail$jscomp$2_vatvao$$.tien_nhap_nt));
10
- $obj$$.ma_kho&&($ctcpmh_detail$jscomp$2_vatvao$$.ma_kho=$obj$$.ma_kho)}if($obj$$.vatvaos)for($_po1_i_i$jscomp$1_i$$=0;$_po1_i_i$jscomp$1_i$$<$obj$$.vatvaos.length;$_po1_i_i$jscomp$1_i$$++)$ctcpmh_detail$jscomp$2_vatvao$$=$obj$$.vatvaos[$_po1_i_i$jscomp$1_i$$],$ctcpmh_detail$jscomp$2_vatvao$$.line=$_po1_i_i$jscomp$1_i$$,"VND"===$obj$$.ma_nt&&($ctcpmh_detail$jscomp$2_vatvao$$.t_thue=$ctcpmh_detail$jscomp$2_vatvao$$.t_thue_nt);if($obj$$.ctcpmhs)for($_po1_i_i$jscomp$1_i$$=0;$_po1_i_i$jscomp$1_i$$<$obj$$.ctcpmhs.length;$_po1_i_i$jscomp$1_i$$++)$ctcpmh_detail$jscomp$2_vatvao$$=
11
- $obj$$.ctcpmhs[$_po1_i_i$jscomp$1_i$$],$ctcpmh_detail$jscomp$2_vatvao$$.line=$_po1_i_i$jscomp$1_i$$,"VND"===$obj$$.ma_nt&&($ctcpmh_detail$jscomp$2_vatvao$$.tien_cp=$ctcpmh_detail$jscomp$2_vatvao$$.tien_cp_nt=Math.roundBy($ctcpmh_detail$jscomp$2_vatvao$$.tien_cp_nt));$obj$$.id_po1&&!$obj$$.id_contract&&($_po1_i_i$jscomp$1_i$$=await po1.findOne({_id:$obj$$.id_po1}))&&($obj$$.id_contract=$_po1_i_i$jscomp$1_i$$.id_contract);$obj$$.id_contract?purchasecontract.findOne({_id:$obj$$.id_contract}).lean().exec(($e$$,
12
- $c$$)=>{$c$$&&($obj$$.ma_hd=$c$$.ma_hd);$next$$(null,$obj$$)}):$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.findOne({id_hd:$obj$$._id},function($error$jscomp$0$$,$ct_tt$$){if($error$jscomp$0$$)return $next$$($error$jscomp$0$$);$ct_tt$$?$next$$(`Kh\u00f4ng th\u1ec3 c\u1eadp nh\u1eadt phi\u1ebfu n\u00e0y do \u0111\u00e3 \u0111\u01b0\u1ee3c thanh to\u00e1n b\u1edfi ${$ct_tt$$.ma_ct||
13
- "ch\u1ee9ng t\u1eeb"}: ${$ct_tt$$.so_ct}, ng\u00e0y ${moment($ct_tt$$.ngay_ct).format("DD/MM/YYYY")}`):$valid$$($user$$,$data$$,function($error$$){if($error$$)return $next$$($error$$);$next$$(null,$data$$,$obj$$)})})};$contr_router$$.deleting=function($user$$,$obj$$,$next$$){Tdttco_tt.findOne({id_hd:$obj$$._id},function($error$$,$ct_tt$$){if($error$$)return $next$$($error$$);$ct_tt$$?$next$$(`Kh\u00f4ng th\u1ec3 xo\u00e1 phi\u1ebfu n\u00e0y do \u0111\u00e3 \u0111\u01b0\u1ee3c thanh to\u00e1n b\u1edfi ${$ct_tt$$.ma_ct||
14
- "ch\u1ee9ng t\u1eeb"}: ${$ct_tt$$.so_ct}, ng\u00e0y ${moment($ct_tt$$.ngay_ct).format("DD/MM/YYYY")}`):$next$$(null,$obj$$)})};$contr_router$$.on("saved",function($obj$$){$obj$$.id_po1&&po1.updateMany({_id:$obj$$.id_po1},{id_pn1:$obj$$._id.toString(),trang_thai:"7"},($e$jscomp$1$$,$rs$$)=>{console.log("update po1",$obj$$.id_po1,$rs$$);po1.findOne({_id:$obj$$.id_po1},($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PO1,$e$$=>{$e$$&&console.error($e$$)})})})});$contr_router$$.on("deleted",
15
- function($obj$$){$obj$$.id_po1&&po1.updateMany({_id:$obj$$.id_po1},{id_pn1:"",trang_thai:"3"},()=>{po1.updateMany({_id:$obj$$.id_po1,id_pnh:{$nin:["",null,void 0]}},{trang_thai:"6"},($e$jscomp$1$$,$rs$$)=>{console.log("update po1",$rs$$);po1.findOne({_id:$obj$$.id_po1},($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PO1,$e$$=>{$e$$&&console.error($e$$)})})})})});$contr_router$$.view=function($user$$,$items$$,$fn$$){const $id_app$$=$user$$.current_id_app;async.series({dv:function($callback$$){$items$$.filter($item$$=>
16
- $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$$()})},dt:function($callback$$){$items$$.filter($item$$=>$item$$.ma_dt).joinModel($id_app$$,dmdt,[{akey:"ma_dt",bkey:"ma_dt",fields:[{name:"ten_dt",value:"ten_dt"}]}],function(){$callback$$()})},
17
- 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$$()})},kho:function($callback$$){$items$$.filter($item$$=>$item$$.ma_kho).joinModel($id_app$$,dmkho,[{akey:"ma_kho",bkey:"ma_kho",fields:[{name:"ten_kho",value:"ten_kho"}]}],function(){$callback$$()})},trangthai:function($callback$$){$items$$.filter($item$$=>$item$$.trang_thai).joinModel2(null,trangthai,[{where:{trang_thai:"ma_trang_thai",
18
- ma_ct:"ma_ct"},fields:["ten_trang_thai","color"]}],function(){$callback$$()})},contract:function($callback$$){$items$$.filter($item$$=>$item$$.ma_hd).joinModel2($id_app$$,contract,[{where:{ma_hd:"so_hd"},fields:["ten_hd","ten_hd"]}],function(){$callback$$()})},t_tien:function($callback$$){$items$$.forEach(function($r$$){$r$$.t_thue_vao=0;$r$$.t_thue_vao_nt=0;$r$$.t_tien_nhap=0;$r$$.t_tien_nhap_nt=0;$r$$.details&&($r$$.t_sl=$r$$.details.csum("sl_nhap"),$r$$.t_tien_hang=$r$$.details.csum("tien_hang"),
19
- $r$$.t_tien_hang_nt=$r$$.details.csum("tien_hang_nt"),$r$$.t_ck=$r$$.details.csum("tien_ck"),$r$$.t_ck_nt=$r$$.details.csum("tien_ck_nt"),$r$$.t_cp=$r$$.details.csum("tien_phi"),$r$$.t_cp_nt=$r$$.details.csum("tien_phi_nt"),$r$$.t_tien_nhap=$r$$.details.csum("tien_nhap"),$r$$.t_tien_nhap_nt=$r$$.details.csum("tien_nhap_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"),
20
- $r$$.t_cp_cpb=$r$$.ctcpmhs.csum("tien_cp"));$r$$.t_tt=$r$$.t_tien_nhap+$r$$.t_thue_vao;$r$$.t_tt_nt=$r$$.t_tien_nhap_nt+$r$$.t_thue_vao_nt});$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$$,
21
- $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$$,
22
- 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$$()})},
23
- 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$$)})}};
2
+ global.getModel("purchase_contract"),po1=global.getModel("po1"),model=global.getModel("pn1"),controller=require("../../controllers/controller"),trangthai=global.getModel("trangthai"),async=require("async"),Sokho=global.getModel("sokho"),Sokhott=global.getModel("sokhott"),Options=global.getModel("options"),ma_ct="PN1",moment=require("moment");
3
+ 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=async function($obj$jscomp$0$$,$fn$$){$fn$$||($fn$$=function(){});let $options$$;try{$options$$=await Options.getInfo($obj$jscomp$0$$.id_app,{id_func:$obj$jscomp$0$$.ma_ct.toLowerCase()},"option")}catch($e$$){console.log($e$$.message,{id_func:$obj$jscomp$0$$.ma_ct})}$options$$||($options$$={});async.series({post_sokho:function($callback$jscomp$1$$){async.series({kt:$callback$jscomp$0$$=>
4
+ {$options$$.not_post_sokho?$callback$jscomp$0$$():(new PostBook($obj$jscomp$0$$,$obj$jscomp$0$$.details,Sokho,async($detail$$,$callback$$)=>{$detail$$={...$detail$$,nxt:1};$detail$$.tk_co=$obj$jscomp$0$$.tk_co;$callback$$($detail$$)})).run(function(){$callback$jscomp$0$$()})},tt:$callback$jscomp$0$$=>{$options$$.post_sokhott?(new PostBook($obj$jscomp$0$$,$obj$jscomp$0$$.details,Sokhott,async($detail$$,$callback$$)=>{$detail$$={...$detail$$,nxt:1};$detail$$.tk_co=$obj$jscomp$0$$.tk_co;$callback$$($detail$$)})).run(function(){$callback$jscomp$0$$()}):
5
+ $callback$jscomp$0$$()}},($e$$,$rs$$)=>{$callback$jscomp$1$$($e$$,$rs$$)})},post_vat_vao:function($callback$$){(new PostBook($obj$jscomp$0$$,$obj$jscomp$0$$.vatvaos,Vatvao)).run(function($e$$,$rs$$){$callback$$($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=
6
+ $v_vatvao$$.t_thue;$v_vatvao$$.ma_kh=$v_vatvao$$.ma_kh_cn||$v_vatvao$$.ma_kh;$details_sc$$.push($v_vatvao$$)});$obj$jscomp$0$$.details.forEach(function($d_detail$$){$d_detail$$={...$d_detail$$};$d_detail$$.tk_no=$d_detail$$.tk_vt;$d_detail$$.ma_kh||($d_detail$$.ma_kh=$obj$jscomp$0$$.ma_kh);$d_detail$$.tk_co=$obj$jscomp$0$$.tk_co;$d_detail$$.tien_nt=$d_detail$$.tien_nhap_nt;$d_detail$$.tien=$d_detail$$.tien_nhap;$details_sc$$.push($d_detail$$)});(new PostSocai($obj$jscomp$0$$,$details_sc$$)).run(function($e$$,
7
+ $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_hang_nt")-$obj$$.details.csum("tien_ck_nt")+$obj$$.details.csum("tien_phi_nt")+
8
+ ($obj$$.vatvaos||[]).csum("t_thue_nt");$obj$$.tien=$obj$$.details.csum("tien_hang")-$obj$$.details.csum("tien_ck")+$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$$=async($_po1_i_i$jscomp$1_i$$,$obj$$,$next$$)=>{for($_po1_i_i$jscomp$1_i$$=0;$_po1_i_i$jscomp$1_i$$<
9
+ $obj$$.details.length;$_po1_i_i$jscomp$1_i$$++){var $ctcpmh_detail$jscomp$3_vatvao$$=$obj$$.details[$_po1_i_i$jscomp$1_i$$];$ctcpmh_detail$jscomp$3_vatvao$$.line=$_po1_i_i$jscomp$1_i$$;$ctcpmh_detail$jscomp$3_vatvao$$.tien_nhap_nt=($ctcpmh_detail$jscomp$3_vatvao$$.tien_hang_nt||0)+($ctcpmh_detail$jscomp$3_vatvao$$.tien_phi_nt||0)-($ctcpmh_detail$jscomp$3_vatvao$$.tien_ck_nt||0);$ctcpmh_detail$jscomp$3_vatvao$$.tien_nhap=($ctcpmh_detail$jscomp$3_vatvao$$.tien_hang||0)+($ctcpmh_detail$jscomp$3_vatvao$$.tien_phi||
10
+ 0)-($ctcpmh_detail$jscomp$3_vatvao$$.tien_ck||0);"VND"===$obj$$.ma_nt&&($ctcpmh_detail$jscomp$3_vatvao$$.tien_hang=$ctcpmh_detail$jscomp$3_vatvao$$.tien_hang_nt=Math.roundBy($ctcpmh_detail$jscomp$3_vatvao$$.tien_hang_nt),$ctcpmh_detail$jscomp$3_vatvao$$.tien_ck=$ctcpmh_detail$jscomp$3_vatvao$$.tien_ck_nt=Math.roundBy($ctcpmh_detail$jscomp$3_vatvao$$.tien_ck_nt),$ctcpmh_detail$jscomp$3_vatvao$$.tien_phi=$ctcpmh_detail$jscomp$3_vatvao$$.tien_phi_nt=Math.roundBy($ctcpmh_detail$jscomp$3_vatvao$$.tien_phi_nt),
11
+ $ctcpmh_detail$jscomp$3_vatvao$$.tien_nhap=$ctcpmh_detail$jscomp$3_vatvao$$.tien_nhap_nt=Math.roundBy($ctcpmh_detail$jscomp$3_vatvao$$.tien_nhap_nt))}if($obj$$.vatvaos)for($_po1_i_i$jscomp$1_i$$=0;$_po1_i_i$jscomp$1_i$$<$obj$$.vatvaos.length;$_po1_i_i$jscomp$1_i$$++)$ctcpmh_detail$jscomp$3_vatvao$$=$obj$$.vatvaos[$_po1_i_i$jscomp$1_i$$],$ctcpmh_detail$jscomp$3_vatvao$$.line=$_po1_i_i$jscomp$1_i$$,"VND"===$obj$$.ma_nt&&($ctcpmh_detail$jscomp$3_vatvao$$.t_thue=$ctcpmh_detail$jscomp$3_vatvao$$.t_thue_nt);
12
+ if($obj$$.ctcpmhs)for($_po1_i_i$jscomp$1_i$$=0;$_po1_i_i$jscomp$1_i$$<$obj$$.ctcpmhs.length;$_po1_i_i$jscomp$1_i$$++)$ctcpmh_detail$jscomp$3_vatvao$$=$obj$$.ctcpmhs[$_po1_i_i$jscomp$1_i$$],$ctcpmh_detail$jscomp$3_vatvao$$.line=$_po1_i_i$jscomp$1_i$$,"VND"===$obj$$.ma_nt&&($ctcpmh_detail$jscomp$3_vatvao$$.tien_cp=$ctcpmh_detail$jscomp$3_vatvao$$.tien_cp_nt=Math.roundBy($ctcpmh_detail$jscomp$3_vatvao$$.tien_cp_nt));$obj$$.id_po1&&!$obj$$.id_contract&&($_po1_i_i$jscomp$1_i$$=await po1.findOne({_id:$obj$$.id_po1}))&&
13
+ ($obj$$.id_contract=$_po1_i_i$jscomp$1_i$$.id_contract);$obj$$.id_contract?purchasecontract.findOne({_id:$obj$$.id_contract}).lean().exec(($e$$,$c$$)=>{$c$$&&($obj$$.ma_hd=$c$$.ma_hd);$next$$(null,$obj$$)}):$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.findOne({id_hd:$obj$$._id},
14
+ function($error$jscomp$0$$,$ct_tt$$){if($error$jscomp$0$$)return $next$$($error$jscomp$0$$);$ct_tt$$?$next$$(`Kh\u00f4ng th\u1ec3 c\u1eadp nh\u1eadt phi\u1ebfu n\u00e0y do \u0111\u00e3 \u0111\u01b0\u1ee3c thanh to\u00e1n b\u1edfi ${$ct_tt$$.ma_ct||"ch\u1ee9ng t\u1eeb"}: ${$ct_tt$$.so_ct}, ng\u00e0y ${moment($ct_tt$$.ngay_ct).format("DD/MM/YYYY")}`):$valid$$($user$$,$data$$,function($error$$){if($error$$)return $next$$($error$$);$next$$(null,$data$$,$obj$$)})})};$contr_router$$.deleting=function($user$$,
15
+ $obj$$,$next$$){Tdttco_tt.findOne({id_hd:$obj$$._id},function($error$$,$ct_tt$$){if($error$$)return $next$$($error$$);$ct_tt$$?$next$$(`Kh\u00f4ng th\u1ec3 xo\u00e1 phi\u1ebfu n\u00e0y do \u0111\u00e3 \u0111\u01b0\u1ee3c thanh to\u00e1n b\u1edfi ${$ct_tt$$.ma_ct||"ch\u1ee9ng t\u1eeb"}: ${$ct_tt$$.so_ct}, ng\u00e0y ${moment($ct_tt$$.ngay_ct).format("DD/MM/YYYY")}`):$next$$(null,$obj$$)})};$contr_router$$.on("saved",function($obj$$){$obj$$.id_po1&&po1.updateMany({_id:$obj$$.id_po1},{id_pn1:$obj$$._id.toString(),
16
+ trang_thai:"7"},($e$jscomp$1$$,$rs$$)=>{console.log("update po1",$obj$$.id_po1,$rs$$);po1.findOne({_id:$obj$$.id_po1},($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PO1,$e$$=>{$e$$&&console.error($e$$)})})})});$contr_router$$.on("deleted",function($obj$$){$obj$$.id_po1&&po1.updateMany({_id:$obj$$.id_po1},{id_pn1:"",trang_thai:"3"},()=>{po1.updateMany({_id:$obj$$.id_po1,id_pnh:{$nin:["",null,void 0]}},{trang_thai:"6"},($e$jscomp$1$$,$rs$$)=>{console.log("update po1",
17
+ $rs$$);po1.findOne({_id:$obj$$.id_po1},($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PO1,$e$$=>{$e$$&&console.error($e$$)})})})})});$contr_router$$.view=function($user$$,$items$$,$fn$$){const $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$$=>
18
+ $item$$.tk_co).joinModel($id_app$$,account,[{akey:"tk_co",bkey:"tk",fields:[{name:"ten_tk_co",value:"ten_tk"}]}],function(){$callback$$()})},dt:function($callback$$){$items$$.filter($item$$=>$item$$.ma_dt).joinModel($id_app$$,dmdt,[{akey:"ma_dt",bkey:"ma_dt",fields:[{name:"ten_dt",value:"ten_dt"}]}],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$$()})},
19
+ kho:function($callback$$){$items$$.filter($item$$=>$item$$.ma_kho).joinModel($id_app$$,dmkho,[{akey:"ma_kho",bkey:"ma_kho",fields:[{name:"ten_kho",value:"ten_kho"}]}],function(){$callback$$()})},trangthai:function($callback$$){$items$$.filter($item$$=>$item$$.trang_thai).joinModel2(null,trangthai,[{where:{trang_thai:"ma_trang_thai",ma_ct:"ma_ct"},fields:["ten_trang_thai","color"]}],function(){$callback$$()})},contract:function($callback$$){$items$$.filter($item$$=>$item$$.ma_hd).joinModel2($id_app$$,
20
+ contract,[{where:{ma_hd:"so_hd"},fields:["ten_hd","ten_hd"]}],function(){$callback$$()})},t_tien:function($callback$$){$items$$.forEach(function($r$$){$r$$.t_thue_vao=0;$r$$.t_thue_vao_nt=0;$r$$.t_tien_nhap=0;$r$$.t_tien_nhap_nt=0;$r$$.details&&($r$$.t_sl=$r$$.details.csum("sl_nhap"),$r$$.t_tien_hang=$r$$.details.csum("tien_hang"),$r$$.t_tien_hang_nt=$r$$.details.csum("tien_hang_nt"),$r$$.t_ck=$r$$.details.csum("tien_ck"),$r$$.t_ck_nt=$r$$.details.csum("tien_ck_nt"),$r$$.t_cp=$r$$.details.csum("tien_phi"),
21
+ $r$$.t_cp_nt=$r$$.details.csum("tien_phi_nt"),$r$$.t_tien_nhap=$r$$.details.csum("tien_nhap"),$r$$.t_tien_nhap_nt=$r$$.details.csum("tien_nhap_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_tien_nhap+$r$$.t_thue_vao;$r$$.t_tt_nt=$r$$.t_tien_nhap_nt+$r$$.t_thue_vao_nt});$callback$$()},details_tk:function($callback$$){async.each($items$$,
22
+ 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$$()})},
23
+ 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"}]}],
24
+ 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$$=>
25
+ $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$$)})}};
@@ -1,6 +1,6 @@
1
1
  'use strict';const PostBook=require("../../libs/post-book"),PostSocai=require("../../libs/post-socai"),Sokho=global.getModel("sokho"),Sokhott=global.getModel("sokhott"),Vatvao=global.getModel("vatvao"),dvcs=global.getModel("dvcs"),dmvt=global.getModel("dmvt"),dmkho=global.getModel("dmkho"),account=global.getModel("account"),customer=global.getModel("customer"),dmdt=global.getModel("dmdt"),dmphi=global.getModel("dmphi"),contract=global.getModel("contract"),model=global.getModel("pn5"),trangthai=global.getModel("trangthai"),
2
2
  controller=require("../../controllers/controller"),async=require("async"),ma_ct="PN5";
3
- module.exports=function($contr_router$$){$contr_router$$=new controller($contr_router$$,model,ma_ct.toLowerCase(),{isVoucher:!0,check_stock:!1,sort:{ngay_ct:-1,so_ct:-1}});$contr_router$$.route();$contr_router$$.post=function($obj$$,$fn$$){$fn$$||($fn$$=function(){});async.series({post_sokho:function($callback$jscomp$0$$){(new PostBook($obj$$,$obj$$.details,Sokho,async function($detail$$,$callback$$){$detail$$.nxt=2;$detail$$.px_gia_dd=!0;$detail$$.tk_no=$obj$$.tk_no;$callback$$($detail$$)})).run(function($e$$,
3
+ module.exports=function($contr_router$$){$contr_router$$=new controller($contr_router$$,model,ma_ct.toLowerCase(),{isVoucher:!0,check_stock:!1,sort:{ngay_ct:-1,so_ct:-1}});$contr_router$$.route();$contr_router$$.post=async function($obj$$,$fn$$){$fn$$||($fn$$=function(){});async.series({post_sokho:function($callback$jscomp$0$$){(new PostBook($obj$$,$obj$$.details,Sokho,async function($detail$$,$callback$$){$detail$$.nxt=2;$detail$$.px_gia_dd=!0;$detail$$.tk_no=$obj$$.tk_no;$callback$$($detail$$)})).run(function($e$$,
4
4
  $rs$$){$callback$jscomp$0$$($e$$,$rs$$)})},post_sokhott:function($callback$jscomp$0$$){(new PostBook($obj$$,$obj$$.details,Sokhott,async function($detail$$,$callback$$){$detail$$.nxt=2;$detail$$.px_gia_dd=!0;$detail$$.tk_no=$obj$$.tk_no;$callback$$($detail$$)})).run(function($e$$,$rs$$){$callback$jscomp$0$$($e$$,$rs$$)})},post_socai:function($callback$$){const $details_sc$$=[];$obj$$.details.forEach(function($d_detail$$){$d_detail$$={...$d_detail$$};$d_detail$$.tk_no=$obj$$.tk_no;$d_detail$$.ma_kh||
5
5
  ($d_detail$$.ma_kh=$obj$$.ma_kh);$d_detail$$.tk_co=$d_detail$$.tk_vt;$d_detail$$.tien_nt=$d_detail$$.tien_xuat_nt;$d_detail$$.tien=$d_detail$$.tien_xuat;$details_sc$$.push($d_detail$$)});$obj$$.vatvaos.forEach(function($v_vatvao$$){$v_vatvao$$={...$v_vatvao$$};$v_vatvao$$.tk_no=$v_vatvao$$.tk_du_thue||"1111";$v_vatvao$$.tk_co=$v_vatvao$$.tk_thue_no;$v_vatvao$$.tien_nt=$v_vatvao$$.t_thue_nt;$v_vatvao$$.tien=$v_vatvao$$.t_thue;$details_sc$$.push($v_vatvao$$)});(new PostSocai($obj$$,$details_sc$$)).run(function($e$$,
6
6
  $rs$$){$callback$$($e$$,$rs$$)})},post_vatvao:function($callback$$){(new PostBook($obj$$,$obj$$.vatvaos,Vatvao)).run(function($e$$,$rs$$){$callback$$($e$$,$rs$$)})}},function($e$$,$rs$$){$fn$$($e$$,$rs$$)})};const $valid$$=function($i_i$$,$obj$$,$next$$){for($i_i$$=0;$i_i$$<$obj$$.details.length;$i_i$$++){var $detail$jscomp$3_vatvao$$=$obj$$.details[$i_i$$];$detail$jscomp$3_vatvao$$.line=$i_i$$;"VND"==$obj$$.ma_nt&&($detail$jscomp$3_vatvao$$.tien_hang=$detail$jscomp$3_vatvao$$.tien_hang_nt,$detail$jscomp$3_vatvao$$.tien_ck=
@@ -1,23 +1,23 @@
1
- 'use strict';const PostBook=require("../../libs/post-book"),PostSocai=require("../../libs/post-socai"),Sokho=global.getModel("sokho"),dmkho=global.getModel("dmkho"),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"),dmphi=global.getModel("dmphi"),contract=
2
- global.getModel("contract"),purchasecontract=global.getModel("purchase_contract"),po1=global.getModel("po1"),model=global.getModel("pn9"),controller=require("../../controllers/controller"),trangthai=global.getModel("trangthai"),async=require("async"),ma_ct="PN9",moment=require("moment");
3
- 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,async function($detail$$,$callback$$){$detail$$.nxt=1;$detail$$.tk_co=$obj$jscomp$0$$.tk_co;$callback$$($detail$$)})).run(function($e$$,
4
- $rs$$){$callback$jscomp$0$$($e$$,$rs$$)})},post_vatvao:function($callback$$){(new PostBook($obj$jscomp$0$$,$obj$jscomp$0$$.vatvaos,Vatvao)).run(function($e$$,$rs$$){$callback$$($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;$v_vatvao$$.ma_kh=
5
- $v_vatvao$$.ma_kh_cn||$v_vatvao$$.ma_kh;$details_sc$$.push($v_vatvao$$)});$obj$jscomp$0$$.details.forEach(function($d_detail$$){$d_detail$$={...$d_detail$$};$d_detail$$.tk_no=$d_detail$$.tk_vt;$d_detail$$.ma_kh||($d_detail$$.ma_kh=$obj$jscomp$0$$.ma_kh);$d_detail$$.tk_co=$d_detail$$.tk_thue_nk;$d_detail$$.tien_nt=$d_detail$$.tien_thue_nk_nt;$d_detail$$.tien=$d_detail$$.tien_thue_nk;$details_sc$$.push($d_detail$$)});$obj$jscomp$0$$.details.forEach(function($d$jscomp$1_detail$$){$d$jscomp$1_detail$$=
6
- {...$d$jscomp$1_detail$$};$d$jscomp$1_detail$$.tk_no=$d$jscomp$1_detail$$.tk_vt;$d$jscomp$1_detail$$.ma_kh||($d$jscomp$1_detail$$.ma_kh=$obj$jscomp$0$$.ma_kh);$d$jscomp$1_detail$$.tk_co=$obj$jscomp$0$$.tk_co;$d$jscomp$1_detail$$.tien_nt=$d$jscomp$1_detail$$.tien_hang_nt+$d$jscomp$1_detail$$.tien_phi_nt-$d$jscomp$1_detail$$.tien_ck_nt;$d$jscomp$1_detail$$.tien=$d$jscomp$1_detail$$.tien_hang+$d$jscomp$1_detail$$.tien_phi-$d$jscomp$1_detail$$.tien_ck;$details_sc$$.push($d$jscomp$1_detail$$)});(new PostSocai($obj$jscomp$0$$,
7
- $details_sc$$)).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_hang_nt")-$obj$$.details.csum("tien_ck_nt")+
8
- $obj$$.details.csum("tien_phi_nt");$obj$$.tien=$obj$$.details.csum("tien_hang")-$obj$$.details.csum("tien_ck")+$obj$$.details.csum("tien_phi");$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$$=async($_po1_i_i$jscomp$1_i$$,$obj$$,$next$$)=>{for($_po1_i_i$jscomp$1_i$$=0;$_po1_i_i$jscomp$1_i$$<$obj$$.details.length;$_po1_i_i$jscomp$1_i$$++){var $ctcpmh_detail$jscomp$3_vatvao$$=
9
- $obj$$.details[$_po1_i_i$jscomp$1_i$$];$ctcpmh_detail$jscomp$3_vatvao$$.line=$_po1_i_i$jscomp$1_i$$;"VND"===$obj$$.ma_nt&&($ctcpmh_detail$jscomp$3_vatvao$$.tien_hang=$ctcpmh_detail$jscomp$3_vatvao$$.tien_hang_nt,$ctcpmh_detail$jscomp$3_vatvao$$.tien_ck=$ctcpmh_detail$jscomp$3_vatvao$$.tien_ck_nt,$ctcpmh_detail$jscomp$3_vatvao$$.tien_phi=$ctcpmh_detail$jscomp$3_vatvao$$.tien_phi_nt,$ctcpmh_detail$jscomp$3_vatvao$$.tien_thue_nk=$ctcpmh_detail$jscomp$3_vatvao$$.tien_thue_nk_nt,$ctcpmh_detail$jscomp$3_vatvao$$.tien_hang_nk=
10
- $ctcpmh_detail$jscomp$3_vatvao$$.tien_hang_nk_nt,$ctcpmh_detail$jscomp$3_vatvao$$.tien_nhap=$ctcpmh_detail$jscomp$3_vatvao$$.tien_nhap_nt);$ctcpmh_detail$jscomp$3_vatvao$$.ma_kho?$obj$$.ma_kho||($obj$$.ma_kho=$ctcpmh_detail$jscomp$3_vatvao$$.ma_kho):$ctcpmh_detail$jscomp$3_vatvao$$.ma_kho=$obj$$.ma_kho}if($obj$$.vatvaos)for($_po1_i_i$jscomp$1_i$$=0;$_po1_i_i$jscomp$1_i$$<$obj$$.vatvaos.length;$_po1_i_i$jscomp$1_i$$++)$ctcpmh_detail$jscomp$3_vatvao$$=$obj$$.vatvaos[$_po1_i_i$jscomp$1_i$$],$ctcpmh_detail$jscomp$3_vatvao$$.line=
11
- $_po1_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($_po1_i_i$jscomp$1_i$$=0;$_po1_i_i$jscomp$1_i$$<$obj$$.ctcpmhs.length;$_po1_i_i$jscomp$1_i$$++)$ctcpmh_detail$jscomp$3_vatvao$$=$obj$$.ctcpmhs[$_po1_i_i$jscomp$1_i$$],$ctcpmh_detail$jscomp$3_vatvao$$.line=$_po1_i_i$jscomp$1_i$$,"VND"===$obj$$.ma_nt&&($ctcpmh_detail$jscomp$3_vatvao$$.t_thue=$ctcpmh_detail$jscomp$3_vatvao$$.t_thue_nt);$obj$$.id_po1&&
12
- !$obj$$.id_contract&&($_po1_i_i$jscomp$1_i$$=await po1.findOne({_id:$obj$$.id_po1}))&&($obj$$.id_contract=$_po1_i_i$jscomp$1_i$$.id_contract);$obj$$.id_contract?purchasecontract.findOne({_id:$obj$$.id_contract}).lean().exec(($e$$,$c$$)=>{$c$$&&($obj$$.ma_hd=$c$$.ma_hd);$next$$(null,$obj$$)}):$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,
13
- $obj$$)})};$contr_router$$.updating=function($user$$,$data$$,$obj$$,$next$$){Tdttco_tt.findOne({id_hd:$obj$$._id},function($error$jscomp$0$$,$ct_tt$$){if($error$jscomp$0$$)return $next$$($error$jscomp$0$$);$ct_tt$$?$next$$(`Kh\u00f4ng th\u1ec3 c\u1eadp nh\u1eadt phi\u1ebfu n\u00e0y do \u0111\u00e3 \u0111\u01b0\u1ee3c thanh to\u00e1n b\u1edfi ${$ct_tt$$.ma_ct||"ch\u1ee9ng t\u1eeb"}: ${$ct_tt$$.so_ct}, ng\u00e0y ${moment($ct_tt$$.ngay_ct).format("DD/MM/YYYY")}`):$valid$$($user$$,$data$$,function($error$$){if($error$$)return $next$$($error$$);
14
- $next$$(null,$data$$,$obj$$)})})};$contr_router$$.deleting=function($user$$,$obj$$,$next$$){Tdttco_tt.findOne({id_hd:$obj$$._id},function($error$$,$ct_tt$$){if($error$$)return $next$$($error$$);$ct_tt$$?$next$$(`Kh\u00f4ng th\u1ec3 xo\u00e1 phi\u1ebfu n\u00e0y do \u0111\u00e3 \u0111\u01b0\u1ee3c thanh to\u00e1n b\u1edfi ${$ct_tt$$.ma_ct||"ch\u1ee9ng t\u1eeb"}: ${$ct_tt$$.so_ct}, ng\u00e0y ${moment($ct_tt$$.ngay_ct).format("DD/MM/YYYY")}`):$next$$(null,$obj$$)})};$contr_router$$.view=function($user$$,
15
- $items$$,$fn$$){const $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$$()})},dt:function($callback$$){$items$$.filter($item$$=>
16
- $item$$.ma_dt).joinModel($id_app$$,dmdt,[{akey:"ma_dt",bkey:"ma_dt",fields:[{name:"ten_dt",value:"ten_dt"}]}],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$$()})},kho:function($callback$$){$items$$.filter($item$$=>$item$$.ma_kho).joinModel($id_app$$,dmkho,[{akey:"ma_kho",bkey:"ma_kho",fields:[{name:"ten_kho",value:"ten_kho"}]}],function(){$callback$$()})},
17
- trangthai:function($callback$$){$items$$.filter($item$$=>$item$$.trang_thai).joinModel2(null,trangthai,[{where:{trang_thai:"ma_trang_thai",ma_ct:"ma_ct"},fields:["ten_trang_thai","color"]}],function(){$callback$$()})},contract:function($callback$$){$items$$.filter($item$$=>$item$$.ma_hd).joinModel2($id_app$$,contract,[{where:{ma_hd:"so_hd"},fields:["ten_hd","ten_hd"]}],function(){$callback$$()})},t_tien:function($callback$$){$items$$.forEach(function($r$$){$r$$.t_thue_vao=0;$r$$.t_thue_vao_nt=0;$r$$.t_tien_nhap=
18
- 0;$r$$.t_tien_nhap_nt=0;$r$$.details&&($r$$.t_sl=$r$$.details.csum("sl_nhap"),$r$$.t_tien_hang=$r$$.details.csum("tien_hang"),$r$$.t_tien_hang_nt=$r$$.details.csum("tien_hang_nt"),$r$$.t_ck=$r$$.details.csum("tien_ck"),$r$$.t_ck_nt=$r$$.details.csum("tien_ck_nt"),$r$$.t_cp=$r$$.details.csum("tien_phi"),$r$$.t_cp_nt=$r$$.details.csum("tien_phi_nt"),$r$$.t_tien_hang_nk=$r$$.details.csum("tien_hang_nk"),$r$$.t_tien_hang_nk_nt=$r$$.details.csum("tien_hang_nk_nt"),$r$$.t_tien_thue_nk=$r$$.details.csum("tien_thue_nk"),
19
- $r$$.t_tien_thue_nk_nt=$r$$.details.csum("tien_thue_nk_nt"),$r$$.t_tien_nhap=$r$$.details.csum("tien_nhap"),$r$$.t_tien_nhap_nt=$r$$.details.csum("tien_nhap_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$$.vatvaos.csum("tien_cp"));$r$$.t_tt=$r$$.t_tien_nhap+$r$$.t_thue_vao;$r$$.t_tt_nt=$r$$.t_tien_nhap_nt+$r$$.t_thue_vao_nt});$callback$$()},details_tk:function($callback$$){async.each($items$$,
20
- function($r$$,$callback1$$){$r$$.details.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.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$$,
21
- $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$$()})},
22
- 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",
23
- bkey:"ma_cp",fields:[{name:"ten_cp",value:"ten_cp"}]}],function(){$callback1$$()}):$callback1$$()},function(){$callback$$()})}},function(){$fn$$(null,$items$$)})}};
1
+ 'use strict';const PostBook=require("../../libs/post-book"),PostSocai=require("../../libs/post-socai"),Sokho=global.getModel("sokho"),Sokhott=global.getModel("sokhott"),dmkho=global.getModel("dmkho"),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"),dmphi=
2
+ global.getModel("dmphi"),contract=global.getModel("contract"),purchasecontract=global.getModel("purchase_contract"),po1=global.getModel("po1"),model=global.getModel("pn9"),controller=require("../../controllers/controller"),trangthai=global.getModel("trangthai"),async=require("async"),ma_ct="PN9",moment=require("moment");
3
+ 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=async 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,async function($detail$$,$callback$$){$detail$$.nxt=1;$detail$$.tk_co=$obj$jscomp$0$$.tk_co;$callback$$($detail$$)})).run(function($e$$,
4
+ $rs$$){$callback$jscomp$0$$($e$$,$rs$$)})},post_sokhott:function($callback$jscomp$0$$){(new PostBook($obj$jscomp$0$$,$obj$jscomp$0$$.details,Sokhott,async function($detail$$,$callback$$){$detail$$.nxt=1;$detail$$.tk_co=$obj$jscomp$0$$.tk_co;$callback$$($detail$$)})).run(function($e$$,$rs$$){$callback$jscomp$0$$($e$$,$rs$$)})},post_vatvao:function($callback$$){(new PostBook($obj$jscomp$0$$,$obj$jscomp$0$$.vatvaos,Vatvao)).run(function($e$$,$rs$$){$callback$$($e$$,$rs$$)})},post_socai:function($callback$$){const $details_sc$$=
5
+ [];$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;$v_vatvao$$.ma_kh=$v_vatvao$$.ma_kh_cn||$v_vatvao$$.ma_kh;$details_sc$$.push($v_vatvao$$)});$obj$jscomp$0$$.details.forEach(function($d_detail$$){$d_detail$$={...$d_detail$$};$d_detail$$.tk_no=$d_detail$$.tk_vt;$d_detail$$.ma_kh||($d_detail$$.ma_kh=$obj$jscomp$0$$.ma_kh);
6
+ $d_detail$$.tk_co=$d_detail$$.tk_thue_nk;$d_detail$$.tien_nt=$d_detail$$.tien_thue_nk_nt;$d_detail$$.tien=$d_detail$$.tien_thue_nk;$details_sc$$.push($d_detail$$)});$obj$jscomp$0$$.details.forEach(function($d$jscomp$1_detail$$){$d$jscomp$1_detail$$={...$d$jscomp$1_detail$$};$d$jscomp$1_detail$$.tk_no=$d$jscomp$1_detail$$.tk_vt;$d$jscomp$1_detail$$.ma_kh||($d$jscomp$1_detail$$.ma_kh=$obj$jscomp$0$$.ma_kh);$d$jscomp$1_detail$$.tk_co=$obj$jscomp$0$$.tk_co;$d$jscomp$1_detail$$.tien_nt=$d$jscomp$1_detail$$.tien_hang_nt+
7
+ $d$jscomp$1_detail$$.tien_phi_nt-$d$jscomp$1_detail$$.tien_ck_nt;$d$jscomp$1_detail$$.tien=$d$jscomp$1_detail$$.tien_hang+$d$jscomp$1_detail$$.tien_phi-$d$jscomp$1_detail$$.tien_ck;$details_sc$$.push($d$jscomp$1_detail$$)});(new PostSocai($obj$jscomp$0$$,$details_sc$$)).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$$);
8
+ $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_hang_nt")-$obj$$.details.csum("tien_ck_nt")+$obj$$.details.csum("tien_phi_nt");$obj$$.tien=$obj$$.details.csum("tien_hang")-$obj$$.details.csum("tien_ck")+$obj$$.details.csum("tien_phi");$callback$$($obj$$)})).run(function($e$$,$rs$$){$callback$jscomp$0$$($e$$,$rs$$)}):Tdttco.deleteMany({id_ct:$obj$jscomp$0$$._id},
9
+ function(){$callback$jscomp$0$$($error$$)})})}},function($e$$,$rs$$){$fn$$($e$$,$rs$$)})};const $valid$$=async($_po1_i_i$jscomp$1_i$$,$obj$$,$next$$)=>{for($_po1_i_i$jscomp$1_i$$=0;$_po1_i_i$jscomp$1_i$$<$obj$$.details.length;$_po1_i_i$jscomp$1_i$$++){var $ctcpmh_detail$jscomp$4_vatvao$$=$obj$$.details[$_po1_i_i$jscomp$1_i$$];$ctcpmh_detail$jscomp$4_vatvao$$.line=$_po1_i_i$jscomp$1_i$$;"VND"===$obj$$.ma_nt&&($ctcpmh_detail$jscomp$4_vatvao$$.tien_hang=$ctcpmh_detail$jscomp$4_vatvao$$.tien_hang_nt,
10
+ $ctcpmh_detail$jscomp$4_vatvao$$.tien_ck=$ctcpmh_detail$jscomp$4_vatvao$$.tien_ck_nt,$ctcpmh_detail$jscomp$4_vatvao$$.tien_phi=$ctcpmh_detail$jscomp$4_vatvao$$.tien_phi_nt,$ctcpmh_detail$jscomp$4_vatvao$$.tien_thue_nk=$ctcpmh_detail$jscomp$4_vatvao$$.tien_thue_nk_nt,$ctcpmh_detail$jscomp$4_vatvao$$.tien_hang_nk=$ctcpmh_detail$jscomp$4_vatvao$$.tien_hang_nk_nt,$ctcpmh_detail$jscomp$4_vatvao$$.tien_nhap=$ctcpmh_detail$jscomp$4_vatvao$$.tien_nhap_nt)}if($obj$$.vatvaos)for($_po1_i_i$jscomp$1_i$$=0;$_po1_i_i$jscomp$1_i$$<
11
+ $obj$$.vatvaos.length;$_po1_i_i$jscomp$1_i$$++)$ctcpmh_detail$jscomp$4_vatvao$$=$obj$$.vatvaos[$_po1_i_i$jscomp$1_i$$],$ctcpmh_detail$jscomp$4_vatvao$$.line=$_po1_i_i$jscomp$1_i$$,"VND"===$obj$$.ma_nt&&($ctcpmh_detail$jscomp$4_vatvao$$.t_thue=$ctcpmh_detail$jscomp$4_vatvao$$.t_thue_nt);if($obj$$.ctcpmhs)for($_po1_i_i$jscomp$1_i$$=0;$_po1_i_i$jscomp$1_i$$<$obj$$.ctcpmhs.length;$_po1_i_i$jscomp$1_i$$++)$ctcpmh_detail$jscomp$4_vatvao$$=$obj$$.ctcpmhs[$_po1_i_i$jscomp$1_i$$],$ctcpmh_detail$jscomp$4_vatvao$$.line=
12
+ $_po1_i_i$jscomp$1_i$$,"VND"===$obj$$.ma_nt&&($ctcpmh_detail$jscomp$4_vatvao$$.t_thue=$ctcpmh_detail$jscomp$4_vatvao$$.t_thue_nt);$obj$$.id_po1&&!$obj$$.id_contract&&($_po1_i_i$jscomp$1_i$$=await po1.findOne({_id:$obj$$.id_po1}))&&($obj$$.id_contract=$_po1_i_i$jscomp$1_i$$.id_contract);$obj$$.id_contract?purchasecontract.findOne({_id:$obj$$.id_contract}).lean().exec(($e$$,$c$$)=>{$c$$&&($obj$$.ma_hd=$c$$.ma_hd);$next$$(null,$obj$$)}):$next$$(null,$obj$$)};$contr_router$$.creating=function($user$$,
13
+ $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.findOne({id_hd:$obj$$._id},function($error$jscomp$0$$,$ct_tt$$){if($error$jscomp$0$$)return $next$$($error$jscomp$0$$);$ct_tt$$?$next$$(`Kh\u00f4ng th\u1ec3 c\u1eadp nh\u1eadt phi\u1ebfu n\u00e0y do \u0111\u00e3 \u0111\u01b0\u1ee3c thanh to\u00e1n b\u1edfi ${$ct_tt$$.ma_ct||
14
+ "ch\u1ee9ng t\u1eeb"}: ${$ct_tt$$.so_ct}, ng\u00e0y ${moment($ct_tt$$.ngay_ct).format("DD/MM/YYYY")}`):$valid$$($user$$,$data$$,function($error$$){if($error$$)return $next$$($error$$);$next$$(null,$data$$,$obj$$)})})};$contr_router$$.deleting=function($user$$,$obj$$,$next$$){Tdttco_tt.findOne({id_hd:$obj$$._id},function($error$$,$ct_tt$$){if($error$$)return $next$$($error$$);$ct_tt$$?$next$$(`Kh\u00f4ng th\u1ec3 xo\u00e1 phi\u1ebfu n\u00e0y do \u0111\u00e3 \u0111\u01b0\u1ee3c thanh to\u00e1n b\u1edfi ${$ct_tt$$.ma_ct||
15
+ "ch\u1ee9ng t\u1eeb"}: ${$ct_tt$$.so_ct}, ng\u00e0y ${moment($ct_tt$$.ngay_ct).format("DD/MM/YYYY")}`):$next$$(null,$obj$$)})};$contr_router$$.view=function($user$$,$items$$,$fn$$){const $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$$,
16
+ account,[{akey:"tk_co",bkey:"tk",fields:[{name:"ten_tk_co",value:"ten_tk"}]}],function(){$callback$$()})},dt:function($callback$$){$items$$.filter($item$$=>$item$$.ma_dt).joinModel($id_app$$,dmdt,[{akey:"ma_dt",bkey:"ma_dt",fields:[{name:"ten_dt",value:"ten_dt"}]}],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$$()})},kho:function($callback$$){$items$$.filter($item$$=>
17
+ $item$$.ma_kho).joinModel($id_app$$,dmkho,[{akey:"ma_kho",bkey:"ma_kho",fields:[{name:"ten_kho",value:"ten_kho"}]}],function(){$callback$$()})},trangthai:function($callback$$){$items$$.filter($item$$=>$item$$.trang_thai).joinModel2(null,trangthai,[{where:{trang_thai:"ma_trang_thai",ma_ct:"ma_ct"},fields:["ten_trang_thai","color"]}],function(){$callback$$()})},contract:function($callback$$){$items$$.filter($item$$=>$item$$.ma_hd).joinModel2($id_app$$,contract,[{where:{ma_hd:"so_hd"},fields:["ten_hd",
18
+ "ten_hd"]}],function(){$callback$$()})},t_tien:function($callback$$){$items$$.forEach(function($r$$){$r$$.t_thue_vao=0;$r$$.t_thue_vao_nt=0;$r$$.t_tien_nhap=0;$r$$.t_tien_nhap_nt=0;$r$$.details&&($r$$.t_sl=$r$$.details.csum("sl_nhap"),$r$$.t_tien_hang=$r$$.details.csum("tien_hang"),$r$$.t_tien_hang_nt=$r$$.details.csum("tien_hang_nt"),$r$$.t_ck=$r$$.details.csum("tien_ck"),$r$$.t_ck_nt=$r$$.details.csum("tien_ck_nt"),$r$$.t_cp=$r$$.details.csum("tien_phi"),$r$$.t_cp_nt=$r$$.details.csum("tien_phi_nt"),
19
+ $r$$.t_tien_hang_nk=$r$$.details.csum("tien_hang_nk"),$r$$.t_tien_hang_nk_nt=$r$$.details.csum("tien_hang_nk_nt"),$r$$.t_tien_thue_nk=$r$$.details.csum("tien_thue_nk"),$r$$.t_tien_thue_nk_nt=$r$$.details.csum("tien_thue_nk_nt"),$r$$.t_tien_nhap=$r$$.details.csum("tien_nhap"),$r$$.t_tien_nhap_nt=$r$$.details.csum("tien_nhap_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"),
20
+ $r$$.t_cp_cpb=$r$$.vatvaos.csum("tien_cp"));$r$$.t_tt=$r$$.t_tien_nhap+$r$$.t_thue_vao;$r$$.t_tt_nt=$r$$.t_tien_nhap_nt+$r$$.t_thue_vao_nt});$callback$$()},details_tk:function($callback$$){async.each($items$$,function($r$$,$callback1$$){$r$$.details.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.joinModel($id_app$$,
21
+ 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$$=>
22
+ $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$$,
23
+ 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$$)})}};
@@ -1,13 +1,13 @@
1
1
  'use strict';const PostBook=require("../../libs/post-book"),PostSocai=require("../../libs/post-socai"),Sokho=global.getModel("sokho"),Sokhott=global.getModel("sokhott"),dvcs=global.getModel("dvcs"),dmvt=global.getModel("dmvt"),dmkho=global.getModel("dmkho"),account=global.getModel("account"),model=global.getModel("pnc"),pxc=global.getModel("pxc"),controller=require("../../controllers/controller"),trangthai=global.getModel("trangthai"),async=require("async"),ma_ct="PNC";
2
2
  module.exports=function($contr_router$$){$contr_router$$=new controller($contr_router$$,model,ma_ct.toLowerCase(),{isVoucher:!0,sort:{ngay_ct:-1,so_ct:-1},check_stock:!1,onCreated:($user$$,$obj$$,$next$$)=>{$obj$$.id_px?pxc.findOneAndUpdate({_id:$obj$$.id_px},{$set:{id_pn:$obj$$._id}},{new:!1},()=>{$next$$(null,$obj$$)}):$next$$(null,$obj$$)},onDeleted:($user$$,$obj$$,$next$$)=>{$obj$$.id_px?pxc.findOneAndUpdate({_id:$obj$$.id_px},{$set:{id_pn:null}},{new:!1},()=>{$next$$(null,$obj$$)}):$next$$(null,
3
- $obj$$)}});$contr_router$$.route();$contr_router$$.post=function($obj$$,$fn$$){$fn$$||($fn$$=function(){});$obj$$=$obj$$.toObject?$obj$$.toObject():{...$obj$$};$obj$$.details=$obj$$.details.map($d$$=>$d$$.toObject?$d$$.toObject():$d$$);async.series({post_sokho:function($callback$jscomp$1$$){const $details_kho$$=[];$obj$$.details.forEach(function($d$$){$d$$={...$d$$,nxt:1};$d$$.pn_gia_tb=!$d$$.px_gia_dd;$d$$.ma_kho=$obj$$.ma_kho_n;$d$$.tk_vt=$d$$.tk_du;$d$$.sl_nhap=$d$$.sl_xuat;$d$$.tien_nhap=$d$$.tien_xuat;
4
- $d$$.tien_nhap_nt=$d$$.tien_xuat_nt;$d$$.sl_xuat=0;$d$$.sl_xuat_qd=0;$d$$.tien_xuat=0;$d$$.tien_xuat_nt=0;$details_kho$$.push($d$$)});async.series({khott:$callback$jscomp$0$$=>{(new PostBook($obj$$,$details_kho$$,Sokhott,async($_detail$$,$callback$$)=>{$callback$$({...$_detail$$})})).run(function($e$$,$rs$$){$callback$jscomp$0$$($e$$,$rs$$)})},khokt:$callback$jscomp$0$$=>{(new PostBook($obj$$,$details_kho$$,Sokho,async($_detail$$,$callback$$)=>{$callback$$({...$_detail$$})})).run(function($e$$,$rs$$){$callback$jscomp$0$$($e$$,
5
- $rs$$)})}},($e$$,$rs$$)=>{$callback$jscomp$1$$($e$$,$rs$$)})},post_socai:function($callback$jscomp$0$$){(new PostSocai($obj$$,$obj$$.details,function($detail$$,$callback$$){$detail$$.tk_no=$detail$$.tk_vt;$detail$$.tk_co=$detail$$.tk_du;$detail$$.tien_nt=$detail$$.tien_xuat_nt;$detail$$.tien=$detail$$.tien_xuat;$callback$$($detail$$)})).run(function($e$$,$rs$$){$callback$jscomp$0$$($e$$,$rs$$)})}},function($e$$,$rs$$){$fn$$($e$$,$rs$$)})};const $valid$$=function($i_user$$,$obj$$,$next$$){for($i_user$$=
6
- 0;$i_user$$<$obj$$.details.length;$i_user$$++){const $detail$$=$obj$$.details[$i_user$$];$detail$$.line=$i_user$$;"VND"==$obj$$.ma_nt&&($detail$$.tien_xuat=$detail$$.tien_xuat_nt)}$obj$$.id_px?pxc.find({_id:$obj$$.id_px}).lean().exec(($e$jscomp$0$$,$pxcs$$)=>{if($e$jscomp$0$$)return $next$$($e$jscomp$0$$);async.mapSeries($obj$$.details,($d$jscomp$0$$,$callback$$)=>{let $detail$$=$d$jscomp$0$$;$d$jscomp$0$$.toObject&&($detail$$=$d$jscomp$0$$.toObject());$detail$$.sl_xuat_pxc=$pxcs$$.map($p$$=>$p$$.details.filter($d_pxc$$=>
7
- $d_pxc$$.ma_vt===$detail$$.ma_vt).map($d$$=>$d$$.sl_xuat).reduce(($a$$,$b$$)=>$a$$+$b$$,0)).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$detail$$.sl_xuat_pxc&&$detail$$.sl_xuat_pxc<$detail$$.sl_xuat?$callback$$(`S\u1ed1 l\u01b0\u1ee3ng phi\u1ebfu nh\u1eadp \u0111i\u1ec1u chuy\u1ec3n v\u1eadt t\u01b0 ${$detail$$.ten_vt||$detail$$.ma_vt} l\u1edbn h\u01a1n s\u1ed1 l\u01b0\u1ee3ng phi\u1ebfu xu\u1ea5t \u0111i\u1ec1u chuy\u1ec3n`):$callback$$()},$e$$=>{if($e$$)return $next$$($e$$);$next$$(null,$obj$$)})}):$next$$(null,
8
- $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$$){$valid$$($user$$,$data$$,function($error$$){if($error$$)return $next$$($error$$);$next$$(null,$data$$,$obj$$)})};$contr_router$$.on("saved",function($obj$$){$obj$$.id_px&&pxc.updateMany({_id:$obj$$.id_px},{id_pnc:$obj$$._id.toString(),
9
- trang_thai:"7"},($e$jscomp$1$$,$rs$$)=>{console.log("update pxc",$rs$$);pxc.findOne({_id:$obj$$.id_px},($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PXC,$e$$=>{$e$$&&console.error($e$$)})})})});$contr_router$$.on("deleted",function($obj$$){$obj$$.id_px&&pxc.updateMany({_id:$obj$$.id_px},{id_pnc:""},()=>{pxc.updateMany({_id:$obj$$.id_px,trang_thai:"7"},{trang_thai:"5"},($e$jscomp$1$$,$rs$$)=>{console.log("update pxc",$rs$$);pxc.findOne({_id:$obj$$.id_px},($e$jscomp$0$$,
10
- $_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PXC,$e$$=>{$e$$&&console.error($e$$)})})})})});$contr_router$$.view=function($user$$,$items$$,$fn$$){const $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$$()})},trangthai:function($callback$$){$items$$.filter($item$$=>$item$$.trang_thai).joinModel2(null,
3
+ $obj$$)}});$contr_router$$.route();$contr_router$$.post=async function($obj$$,$fn$$){$fn$$||($fn$$=function(){});$obj$$=$obj$$.toObject?$obj$$.toObject():{...$obj$$};$obj$$.details=$obj$$.details.map($d$$=>$d$$.toObject?$d$$.toObject():$d$$);async.series({post_sokho:function($callback$jscomp$1$$){const $details_kho$$=[];$obj$$.details.forEach(function($d$$){$d$$={...$d$$,nxt:1};$d$$.pn_gia_tb=!$d$$.px_gia_dd;$d$$.ma_kho=$obj$$.ma_kho_n;$d$$.tk_vt=$d$$.tk_du;$d$$.sl_nhap=$d$$.sl_xuat;$d$$.tien_nhap=
4
+ $d$$.tien_xuat;$d$$.tien_nhap_nt=$d$$.tien_xuat_nt;$d$$.sl_xuat=0;$d$$.sl_xuat_qd=0;$d$$.tien_xuat=0;$d$$.tien_xuat_nt=0;$details_kho$$.push($d$$)});async.series({khokt:$callback$jscomp$0$$=>{(new PostBook($obj$$,$details_kho$$,Sokho,async($_detail$$,$callback$$)=>{$callback$$({...$_detail$$})})).run(function($e$$,$rs$$){$callback$jscomp$0$$($e$$,$rs$$)})},khott:$callback$jscomp$0$$=>{(new PostBook($obj$$,$details_kho$$,Sokhott,async($_detail$$,$callback$$)=>{$callback$$({...$_detail$$})})).run(function($e$$,
5
+ $rs$$){$callback$jscomp$0$$($e$$,$rs$$)})}},($e$$,$rs$$)=>{$callback$jscomp$1$$($e$$,$rs$$)})},post_socai:function($callback$jscomp$0$$){(new PostSocai($obj$$,$obj$$.details,function($detail$$,$callback$$){$detail$$.tk_no=$detail$$.tk_vt;$detail$$.tk_co=$detail$$.tk_du;$detail$$.tien_nt=$detail$$.tien_xuat_nt;$detail$$.tien=$detail$$.tien_xuat;$callback$$($detail$$)})).run(function($e$$,$rs$$){$callback$jscomp$0$$($e$$,$rs$$)})}},function($e$$,$rs$$){$fn$$($e$$,$rs$$)})};const $valid$$=function($i_user$$,
6
+ $obj$$,$next$$){for($i_user$$=0;$i_user$$<$obj$$.details.length;$i_user$$++){const $detail$$=$obj$$.details[$i_user$$];$detail$$.line=$i_user$$;"VND"==$obj$$.ma_nt&&($detail$$.tien_xuat=$detail$$.tien_xuat_nt)}$obj$$.id_px?pxc.find({_id:$obj$$.id_px}).lean().exec(($e$jscomp$0$$,$pxcs$$)=>{if($e$jscomp$0$$)return $next$$($e$jscomp$0$$);async.mapSeries($obj$$.details,($d$jscomp$0$$,$callback$$)=>{let $detail$$=$d$jscomp$0$$;$d$jscomp$0$$.toObject&&($detail$$=$d$jscomp$0$$.toObject());$detail$$.sl_xuat_pxc=
7
+ $pxcs$$.map($p$$=>$p$$.details.filter($d_pxc$$=>$d_pxc$$.ma_vt===$detail$$.ma_vt).map($d$$=>$d$$.sl_xuat).reduce(($a$$,$b$$)=>$a$$+$b$$,0)).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$detail$$.sl_xuat_pxc&&$detail$$.sl_xuat_pxc<$detail$$.sl_xuat?$callback$$(`S\u1ed1 l\u01b0\u1ee3ng phi\u1ebfu nh\u1eadp \u0111i\u1ec1u chuy\u1ec3n v\u1eadt t\u01b0 ${$detail$$.ten_vt||$detail$$.ma_vt} l\u1edbn h\u01a1n s\u1ed1 l\u01b0\u1ee3ng phi\u1ebfu xu\u1ea5t \u0111i\u1ec1u chuy\u1ec3n`):$callback$$()},$e$$=>{if($e$$)return $next$$($e$$);
8
+ $next$$(null,$obj$$)})}):$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$$){$valid$$($user$$,$data$$,function($error$$){if($error$$)return $next$$($error$$);$next$$(null,$data$$,$obj$$)})};$contr_router$$.on("saved",function($obj$$){$obj$$.id_px&&pxc.updateMany({_id:$obj$$.id_px},
9
+ {id_pnc:$obj$$._id.toString(),trang_thai:"7"},($e$jscomp$1$$,$rs$$)=>{console.log("update pxc",$rs$$);pxc.findOne({_id:$obj$$.id_px},($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PXC,$e$$=>{$e$$&&console.error($e$$)})})})});$contr_router$$.on("deleted",function($obj$$){$obj$$.id_px&&pxc.updateMany({_id:$obj$$.id_px},{id_pnc:""},()=>{pxc.updateMany({_id:$obj$$.id_px,trang_thai:"7"},{trang_thai:"5"},($e$jscomp$1$$,$rs$$)=>{console.log("update pxc",$rs$$);pxc.findOne({_id:$obj$$.id_px},
10
+ ($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PXC,$e$$=>{$e$$&&console.error($e$$)})})})})});$contr_router$$.view=function($user$$,$items$$,$fn$$){const $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$$()})},trangthai:function($callback$$){$items$$.filter($item$$=>$item$$.trang_thai).joinModel2(null,
11
11
  trangthai,[{where:{trang_thai:"ma_trang_thai",ma_ct:"ma_ct"},fields:["ten_trang_thai","color"]}],function(){$callback$$()})},pxc:function($callback$$){$items$$.joinModel2($id_app$$,pxc,[{where:{id_px:"_id"},fields:[{so_ct_px:"so_ct"},{ngay_ct_px:"ngay_ct"}],setFields:($a$jscomp$0$$,$b$jscomp$0$$)=>{$a$jscomp$0$$&&$b$jscomp$0$$&&($a$jscomp$0$$.details.forEach($a_detail$$=>{$a_detail$$.sl_xuat_pxc=$b$jscomp$0$$.details.filter($d$$=>$d$$.ma_vt===$a_detail$$.ma_vt).map($d$$=>$d$$.sl_xuat).reduce(($a$$,
12
12
  $b$$)=>$a$$+$b$$,0)}),$a$jscomp$0$$.t_sl_xuat=$b$jscomp$0$$.details.map($d$$=>$d$$.sl_xuat).reduce(($a$$,$b$$)=>$a$$+$b$$,0))}}],function(){$callback$$()})},t_tien:function($callback$$){$items$$.forEach(function($r$$){$r$$.details&&($r$$.t_sl=$r$$.details.csum("sl_xuat"),$r$$.t_tien_xuat=$r$$.details.csum("tien_xuat"),$r$$.t_tien_xuat_nt=$r$$.details.csum("tien_xuat_nt"))});$callback$$()},ma_kho_x:$callback$$=>{$items$$.filter($item$$=>$item$$.ma_kho_x).joinModel2($id_app$$,dmkho,[{where:{ma_kho_x:"ma_kho"},
13
13
  fields:[{name:"ten_kho_x",value:"ten_kho"},{name:"kho_dc_x",value:"kho_dc"}]}],function(){$callback$$()})},ma_kho_n:$callback$$=>{$items$$.filter($item$$=>$item$$.ma_kho_n).joinModel2($id_app$$,dmkho,[{where:{ma_kho_n:"ma_kho"},fields:[{name:"ten_kho_n",value:"ten_kho"},{name:"kho_dc_n",value:"kho_dc"}]}],function(){$callback$$()})},details_tk:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.details.joinModel($id_app$$,account,[{akey:"tk_vt",bkey:"tk",fields:[{name:"ten_tk_vt",
@@ -1,11 +1,11 @@
1
1
  'use strict';const dmkho=global.getModel("dmkho"),dvcs=global.getModel("dvcs"),dmvt=global.getModel("dmvt"),account=global.getModel("account"),customer=global.getModel("customer"),dmdt=global.getModel("dmdt"),dmphi=global.getModel("dmphi"),contract=global.getModel("contract"),purchasecontract=global.getModel("purchase_contract"),po1=global.getModel("po1"),model=global.getModel("pnh"),controller=require("../../controllers/controller"),trangthai=global.getModel("trangthai"),async=require("async"),ma_ct=
2
2
  "PNH",Sokhott=global.getModel("sokhott"),Sokho=global.getModel("sokho"),Options=global.getModel("options"),PostBook=require("../../libs/post-book");
3
3
  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();const $valid$$=async($_po1_i_user$$,$obj$$,$next$$)=>{for($_po1_i_user$$=0;$_po1_i_user$$<$obj$$.details.length;$_po1_i_user$$++){const $detail$$=$obj$$.details[$_po1_i_user$$];$detail$$.line=$_po1_i_user$$;$detail$$.tien_hang_nt=$detail$$.tien_hang_nt?$detail$$.tien_hang_nt:$detail$$.sl_nhap*$detail$$.gia_von_nt;$detail$$.tien_hang=
4
- $detail$$.tien_hang?$detail$$.tien_hang:$detail$$.sl_nhap*$detail$$.gia_von;$detail$$.tien_nhap_nt=($detail$$.tien_hang_nt||0)+($detail$$.tien_phi_nt||0)-($detail$$.tien_ck_nt||0);$detail$$.tien_nhap=($detail$$.tien_hang||0)+($detail$$.tien_phi||0)-($detail$$.tien_ck||0);"VND"===$obj$$.ma_nt&&($detail$$.tien_hang=$detail$$.tien_hang_nt,$detail$$.tien_ck=$detail$$.tien_ck_nt,$detail$$.tien_phi=$detail$$.tien_phi_nt,$detail$$.tien_nhap=$detail$$.tien_nhap_nt);$obj$$.ma_kho&&($detail$$.ma_kho=$obj$$.ma_kho)}$obj$$.id_po1&&
5
- !$obj$$.id_contract&&($_po1_i_user$$=await po1.findOne({_id:$obj$$.id_po1}))&&($obj$$.id_contract=$_po1_i_user$$.id_contract);$obj$$.id_contract?purchasecontract.findOne({_id:$obj$$.id_contract}).lean().exec(($e$$,$c$$)=>{$c$$&&($obj$$.ma_hd=$c$$.ma_hd);$next$$(null,$obj$$)}):$next$$(null,$obj$$)};$contr_router$$.post=async function($obj$$,$fn$$){$fn$$||($fn$$=function(){});let $options$$;try{$options$$=await Options.getInfo($obj$$.id_app,{id_func:$obj$$.ma_ct.toLowerCase()},"option")}catch($e$$){console.log($e$$.message,
6
- {id_func:$obj$$.ma_ct})}$options$$||($options$$={});async.series({post_sokhott:function($callback$jscomp$0$$){$options$$.not_post_sokhott?$callback$jscomp$0$$():(new PostBook($obj$$,$obj$$.details,Sokhott,async($detail$$,$callback$$)=>{$detail$$={...$detail$$,nxt:1};$detail$$.tk_co=$obj$$.tk_co;$callback$$($detail$$)})).run(function(){$callback$jscomp$0$$()})},post_sokho:function($callback$jscomp$0$$){$options$$.post_sokho?$callback$jscomp$0$$():(new PostBook($obj$$,$obj$$.details,Sokho,async($detail$$,
7
- $callback$$)=>{$detail$$={...$detail$$,nxt:1};$detail$$.tk_co=$obj$$.tk_co;$callback$$($detail$$)})).run(function(){$callback$jscomp$0$$()})}},function($e$$,$rs$$){$fn$$($e$$,$rs$$)})};$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$$){$valid$$($user$$,$data$$,function($error$$){if($error$$)return $next$$($error$$);
8
- $next$$(null,$data$$,$obj$$)})};$contr_router$$.on("saved",function($obj$$){$obj$$.id_po1&&po1.updateMany({_id:$obj$$.id_po1},{id_pnh:$obj$$._id.toString()},($e$jscomp$2$$,$rs$jscomp$0$$)=>{console.log("update po1",$rs$jscomp$0$$);po1.updateMany({_id:$obj$$.id_po1,trang_thai:{$ne:"7"}},{trang_thai:"6"},($e$jscomp$1$$,$rs$$)=>{console.log("update po1",$rs$$);po1.findOne({_id:$obj$$.id_po1},($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PO1,$e$$=>{$e$$&&console.error($e$$)})})})})});
4
+ $detail$$.tien_hang?$detail$$.tien_hang:$detail$$.sl_nhap*$detail$$.gia_von;$detail$$.tien_nhap_nt=($detail$$.tien_hang_nt||0)+($detail$$.tien_phi_nt||0)-($detail$$.tien_ck_nt||0);$detail$$.tien_nhap=($detail$$.tien_hang||0)+($detail$$.tien_phi||0)-($detail$$.tien_ck||0);"VND"===$obj$$.ma_nt&&($detail$$.tien_hang=$detail$$.tien_hang_nt,$detail$$.tien_ck=$detail$$.tien_ck_nt,$detail$$.tien_phi=$detail$$.tien_phi_nt,$detail$$.tien_nhap=$detail$$.tien_nhap_nt)}$obj$$.id_po1&&!$obj$$.id_contract&&($_po1_i_user$$=
5
+ await po1.findOne({_id:$obj$$.id_po1}))&&($obj$$.id_contract=$_po1_i_user$$.id_contract);$obj$$.id_contract?purchasecontract.findOne({_id:$obj$$.id_contract}).lean().exec(($e$$,$c$$)=>{$c$$&&($obj$$.ma_hd=$c$$.ma_hd);$next$$(null,$obj$$)}):$next$$(null,$obj$$)};$contr_router$$.post=async function($obj$$,$fn$$){$fn$$||($fn$$=function(){});let $options$$;try{$options$$=await Options.getInfo($obj$$.id_app,{id_func:$obj$$.ma_ct.toLowerCase()},"option")}catch($e$$){console.log($e$$.message,{id_func:$obj$$.ma_ct})}$options$$||
6
+ ($options$$={});async.series({post_sokhott:function($callback$jscomp$0$$){$options$$.not_post_sokhott?$callback$jscomp$0$$():(new PostBook($obj$$,$obj$$.details,Sokhott,async($detail$$,$callback$$)=>{$detail$$={...$detail$$,nxt:1};$detail$$.tk_co=$obj$$.tk_co;$callback$$($detail$$)})).run(function(){$callback$jscomp$0$$()})},post_sokho:function($callback$jscomp$0$$){$options$$.post_sokho?(new PostBook($obj$$,$obj$$.details,Sokho,async($detail$$,$callback$$)=>{$detail$$={...$detail$$,nxt:1};$detail$$.tk_co=
7
+ $obj$$.tk_co;$callback$$($detail$$)})).run(function(){$callback$jscomp$0$$()}):$callback$jscomp$0$$()}},function($e$$,$rs$$){$fn$$($e$$,$rs$$)})};$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$$){$valid$$($user$$,$data$$,function($error$$){if($error$$)return $next$$($error$$);$next$$(null,
8
+ $data$$,$obj$$)})};$contr_router$$.on("saved",function($obj$$){$obj$$.id_po1&&po1.updateMany({_id:$obj$$.id_po1},{id_pnh:$obj$$._id.toString()},($e$jscomp$2$$,$rs$jscomp$0$$)=>{console.log("update po1",$rs$jscomp$0$$);po1.updateMany({_id:$obj$$.id_po1,trang_thai:{$ne:"7"}},{trang_thai:"6"},($e$jscomp$1$$,$rs$$)=>{console.log("update po1",$rs$$);po1.findOne({_id:$obj$$.id_po1},($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PO1,$e$$=>{$e$$&&console.error($e$$)})})})})});
9
9
  $contr_router$$.on("deleted",function($obj$$){$obj$$.id_po1&&po1.updateMany({_id:$obj$$.id_po1},{id_pnh:""},()=>{po1.updateMany({_id:$obj$$.id_po1,trang_thai:{$ne:"7"}},{trang_thai:"3"},($e$jscomp$1$$,$rs$$)=>{console.log("update po1",$rs$$);po1.findOne({_id:$obj$$.id_po1},($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PO1,$e$$=>{$e$$&&console.error($e$$)})})})})});$contr_router$$.view=function($user$$,$items$$,$fn$$){let $id_app$$=$user$$.current_id_app;async.series({dv:function($callback$$){$items$$.filter($item$$=>
10
10
  $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$$()})},dt:function($callback$$){$items$$.filter($item$$=>$item$$.ma_dt).joinModel($id_app$$,dmdt,[{akey:"ma_dt",bkey:"ma_dt",fields:[{name:"ten_dt",value:"ten_dt"}]}],function(){$callback$$()})},
11
11
  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$$()})},kho:function($callback$$){$items$$.filter($item$$=>$item$$.ma_kho).joinModel($id_app$$,dmkho,[{akey:"ma_kho",bkey:"ma_kho",fields:[{name:"ten_kho",value:"ten_kho"}]}],function(){$callback$$()})},trangthai:function($callback$$){$items$$.filter($item$$=>$item$$.trang_thai).joinModel2(null,trangthai,[{where:{trang_thai:"ma_trang_thai",
@@ -1,19 +1,20 @@
1
1
  'use strict';const PostBook=require("../../libs/post-book"),PostSocai=require("../../libs/post-socai"),Tdttno_tt=global.getModel("tdttno_tt"),Tdttno=global.getModel("tdttno"),dvcs=global.getModel("dvcs"),account=global.getModel("account"),dmphi=global.getModel("dmphi"),customer=global.getModel("customer"),dmnv=global.getModel("dmnv"),dmdt=global.getModel("dmdt"),contract=global.getModel("contract"),model=global.getModel("pt1"),pn6=global.getModel("pn6"),controller=require("../../controllers/controller"),
2
2
  trangthai=global.getModel("trangthai"),async=require("async"),ma_ct="PT1",{round}=require("../../libs/utils"),valid_detail=function($i_i$$,$obj$$,$fn$$){for($i_i$$=0;$i_i$$<$obj$$.details.length;$i_i$$++){var $detail_tdttno$$=$obj$$.details[$i_i$$];$detail_tdttno$$.line=$i_i$$;"VND"==$obj$$.ma_nt&&($detail_tdttno$$.tien=Math.roundBy($detail_tdttno$$.tien_nt,0))}if($obj$$.tdttnos)for($i_i$$=0;$i_i$$<$obj$$.tdttnos.length;$i_i$$++)$detail_tdttno$$=$obj$$.tdttnos[$i_i$$],$detail_tdttno$$.line=$i_i$$,
3
- "VND"===$obj$$.ma_nt&&($detail_tdttno$$.tien=$detail_tdttno$$.tien_nt),$detail_tdttno$$.thanh_toan_qd=round($detail_tdttno$$.tien/$detail_tdttno$$.ty_gia_hd,2);$fn$$(null,$obj$$)};
3
+ "VND"===$obj$$.ma_nt&&($detail_tdttno$$.tien=$detail_tdttno$$.tien_nt),$detail_tdttno$$.thanh_toan_qd=$detail_tdttno$$.ma_nt_hd==$obj$$.ma_nt?$detail_tdttno$$.tien_nt:round($detail_tdttno$$.tien/$detail_tdttno$$.ty_gia_hd,2);$fn$$(null,$obj$$)};
4
4
  module.exports=function($contr_router$$){$contr_router$$=new controller($contr_router$$,model,ma_ct.toLowerCase(),{isVoucher:!0,sort:{ngay_ct:-1,so_ct:-1},keyValues:{ma_ct},onExport:function($user$$,$obj$$,$next$$){$obj$$.tdttnos&&0<$obj$$.tdttnos.length&&($obj$$.details=$obj$$.tdttnos);$next$$()}});$contr_router$$.route();$contr_router$$.post=function($obj$$,$fn$$){$fn$$||($fn$$=function(){});async.series({post_tdttno:function($callback$jscomp$0$$){(new PostBook($obj$$,$obj$$.tdttnos,Tdttno_tt,function($tdttno$$,
5
- $callback$$){$tdttno$$.tk_no=$obj$$.tk_no;$callback$$($tdttno$$)})).run(function($e$$,$details$$){if($e$$)return $callback$jscomp$0$$($e$$);async.mapSeries($details$$,($detail$$,$callback$$)=>{$detail$$.con_lai_nt<=$detail$$.thanh_toan_qd?Tdttno.findOneAndUpdate({_id:$detail$$.id_tdtt.toString()},{$set:{tat_toan:!0}},($error$$,$result$$)=>{$callback$$($error$$,$result$$)}):$callback$$(null,$detail$$)},($e$$,$rs$$)=>{$callback$jscomp$0$$($e$$,$rs$$)})})},post_socai:function($callback$$){const $details_sc$$=
6
- [];$obj$$.details.forEach(function($d_detail$$){$d_detail$$={...$d_detail$$};$d_detail$$.tk_no=$obj$$.tk_no;$d_detail$$.ma_kh||($d_detail$$.ma_kh=$obj$$.ma_kh);$details_sc$$.push($d_detail$$)});$obj$$.tdttnos.forEach($t_tdttno$$=>{$t_tdttno$$={...$t_tdttno$$};$t_tdttno$$.tk_no=$obj$$.tk_no;$t_tdttno$$.ma_kh||($t_tdttno$$.ma_kh=$obj$$.ma_kh);$details_sc$$.push($t_tdttno$$)});(new PostSocai($obj$$,$details_sc$$)).run(($e$$,$rs$$)=>{$callback$$($e$$,$rs$$)})}},($e$$,$rs$$)=>{$fn$$($e$$,$rs$$)})};$contr_router$$.creating=
7
- async function($user$$,$obj$$,$next$$){$obj$$.details||($obj$$.details=[]);if($obj$$.tdttnos&&0<$obj$$.tdttnos.length&&(await $obj$$.tdttnos.asyncJoinModel2($user$$.current_id_app,Tdttno,{where:{id_tdtt:"_id"},fields:["tat_toan",{tien_hd_nt:"tien_nt"}]}),0<(await Promise.all($obj$$.tdttnos.map($hd$$=>(async()=>{if(!global.mongoose.Types.ObjectId.isValid($hd$$.id_tdtt))return{error:"Ho\u00e1 \u0111\u01a1n kh\u00f4ng h\u1ee3p l\u1ec7",invoice:$hd$$};let $ds_da_thanh_toan$$=await Tdttno_tt.find({id_app:$obj$$.id_app,
8
- id_tdtt:$hd$$.id_tdtt}).lean(),$da_thanh_toan$$=$ds_da_thanh_toan$$.map($t$$=>$t$$.thanh_toan_qd||0).reduce(($a$$,$b$$)=>$a$$+$b$$,0),$con_lai$$=$hd$$.tien_hd_nt-$da_thanh_toan$$;return 0>=$con_lai$$?{error:"Ho\u00e1 \u0111\u01a1n \u0111\u00e3 \u0111\u01b0\u1ee3c thanh to\u00e1n",invoice:$hd$$,da_thanh_toan:$da_thanh_toan$$,con_lai:$con_lai$$,ds_da_thanh_toan:$ds_da_thanh_toan$$}:{invoice:$hd$$,da_thanh_toan:$da_thanh_toan$$,con_lai:$con_lai$$,ds_da_thanh_toan:$ds_da_thanh_toan$$}})()))).filter($hd$$=>
9
- $hd$$.error).length))return $next$$("Ho\u00e1 \u0111\u01a1n \u0111\u00e3 \u0111\u01b0\u1ee3c thanh to\u00e1n");valid_detail($user$$,$obj$$,function($error$$){if($error$$)return $next$$($error$$);$next$$(null,$obj$$)})};$contr_router$$.updating=function($user$$,$data$$,$obj$$,$next$$){valid_detail($user$$,$data$$,function($error$$){if($error$$)return $next$$($error$$);$next$$(null,$data$$,$obj$$)})};$contr_router$$.deleted=($details$jscomp$1_user$$,$obj$$,$next$$)=>{$details$jscomp$1_user$$=($obj$$.details||
10
- []).filter($d$$=>$d$$.id_tdtt);async.mapSeries($details$jscomp$1_user$$,($detail$$,$callback$$)=>{setImmediate(()=>{Tdttno.findOneAndUpdate({_id:$detail$$.id_tdtt.toString()},{$set:{tat_toan:!1}},($error$$,$result$$)=>{$callback$$($error$$,$result$$)})})},$e$$=>{$next$$($e$$,$obj$$)})};$contr_router$$.on("saved",function($obj$$){$obj$$.id_pn6&&pn6.updateMany({_id:$obj$$.id_pn6},{id_pt1:$obj$$._id.toString(),trang_thai:"7"},($e$jscomp$1$$,$rs$$)=>{console.log("update pn6",$obj$$.id_pn6,$rs$$);pn6.findOne({_id:$obj$$.id_pn6},
11
- ($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PN6,$e$$=>{$e$$&&console.error($e$$)})})})});$contr_router$$.on("deleted",function($obj$$){$obj$$.id_pn6&&pn6.updateMany({_id:$obj$$.id_pn6},{id_pt1:""},()=>{pn6.updateMany({_id:$obj$$.id_pn6,trang_thai:"7"},{trang_thai:"5"},($e$jscomp$1$$,$rs$$)=>{console.log("update pn6",$obj$$.id_pn6,$rs$$);pn6.findOne({_id:$obj$$.id_pn6},($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PN6,$e$$=>
12
- {$e$$&&console.error($e$$)})})})})});$contr_router$$.view=function($user$$,$items$$,$fn$$){let $id_app$$=$user$$.current_id_app;async.series({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$$()})},nv:function($callback$$){$items$$.filter($item$$=>$item$$.ma_nv).joinModel($id_app$$,dmnv,[{akey:"ma_nv",bkey:"ma_nv",fields:[{name:"ten_nv",value:"ten_nv"}]}],function(){$callback$$()})},
13
- tk:function($callback$$){$items$$.filter($item$$=>$item$$.tk_no).joinModel($id_app$$,account,[{akey:"tk_no",bkey:"tk",fields:[{name:"ten_tk_no",value:"ten_tk"}]}],function(){$callback$$()})},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$$()})},trangthai:function($callback$$){$items$$.filter($item$$=>$item$$.trang_thai).joinModel2(null,trangthai,[{where:{trang_thai:"ma_trang_thai",
14
- ma_ct:"ma_ct"},fields:["ten_trang_thai","color"]}],function(){$callback$$()})},t_tien:function($callback$$){$items$$.forEach(function($r$$){$r$$.t_tien=0;$r$$.t_tien_nt=0;$r$$.details&&($r$$.t_tien=$r$$.details.csum("tien"),$r$$.t_tien_nt=$r$$.details.csum("tien_nt"));$r$$.tdttnos&&($r$$.t_tien+=$r$$.tdttnos.csum("tien"),$r$$.t_tien_nt+=$r$$.tdttnos.csum("tien_nt"));$r$$.t_tt=$r$$.t_tien;$r$$.t_tt_nt=$r$$.t_tien_nt});$callback$$()},details_tk:function($callback$$){async.mapSeries($items$$,function($r$$,
15
- $callback1$$){$r$$.details.filter($item$$=>$item$$.tk_co).joinModel($id_app$$,account,[{akey:"tk_co",bkey:"tk",fields:[{name:"ten_tk_co",value:"ten_tk"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_tk_tdttno:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.tdttnos.filter($item$$=>$item$$.tk_co).joinModel($id_app$$,account,[{akey:"tk_co",bkey:"tk",fields:[{name:"ten_tk_co",value:"ten_tk"}]}],function(){$callback1$$()})},function(){$callback$$()})},
16
- details_contract_tdttno:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.tdttnos.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_dt_tdttno:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.tdttnos.filter($item$$=>$item$$.ma_dt).joinModel($id_app$$,dmdt,[{akey:"ma_dt",bkey:"ma_dt",fields:[{name:"ten_dt",
17
- value:"ten_dt"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_customer:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.details.filter($item$$=>$item$$.ma_kh).joinModel($id_app$$,customer,[{akey:"ma_kh",bkey:"ma_kh",fields:[{name:"ten_kh",value:"ten_kh"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_dt:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.details.filter($item$$=>$item$$.ma_dt).joinModel($id_app$$,
18
- 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$$=>
19
- $item$$.ma_phi).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$$)})}};
5
+ $callback$$){$tdttno$$.tk_no=$obj$$.tk_no;$callback$$($tdttno$$)})).run(function($e$$,$details$$){if($e$$)return $callback$jscomp$0$$($e$$);async.mapSeries($details$$,($detail$$,$callback$$)=>{$detail$$.con_lai_nt<=$detail$$.thanh_toan_qd?Tdttno.findOneAndUpdate({_id:$detail$$.id_tdtt.toString()},{$set:{tat_toan:!0}},($error$$,$result$$)=>{$callback$$($error$$,$result$$)}):$callback$$(null,$detail$$)},($e$$,$rs$$)=>{$callback$jscomp$0$$($e$$,$rs$$)})})},post_socai:function($callback$$){setImmediate(async()=>
6
+ {const $details_sc$$=[];$obj$$.details.forEach(function($d_detail$$){$d_detail$$={...$d_detail$$};$d_detail$$.tk_no=$obj$$.tk_no;$d_detail$$.ma_kh||($d_detail$$.ma_kh=$obj$$.ma_kh);$details_sc$$.push($d_detail$$)});$obj$$.tdttnos.forEach($t_tdttno$$=>{$t_tdttno$$={...$t_tdttno$$};$t_tdttno$$.tk_no=$obj$$.tk_no;$t_tdttno$$.ma_kh||($t_tdttno$$.ma_kh=$obj$$.ma_kh);$details_sc$$.push($t_tdttno$$)});const $tdttnos_cl$$=$obj$$.tdttnos.filter($t$$=>$t$$.ty_gia_hd!=$obj$$.ty_gia);await $tdttnos_cl$$.asyncJoinModel2($obj$$.id_app,
7
+ "currency",{where:{ma_nt_hd:"ma_nt"},fields:["tk_cl_no","tk_cl_co"]});$tdttnos_cl$$.forEach($t$$=>{let $chenh_lech$$=Math.roundBy($obj$$.ty_gia*$t$$.tien_nt-$t$$.ty_gia_hd*$t$$.thanh_toan_qd,0);if(0!=$chenh_lech$$){const $ht$$={...$t$$,ma_nt:"VND",ty_gia:1};$ht$$.tien_nt=$ht$$.tien=Math.abs($chenh_lech$$);0>$chenh_lech$$?$ht$$.tk_no=$t$$.tk_cl_no:($ht$$.tk_no=$t$$.tk_co,$ht$$.tk_co=$t$$.tk_cl_co);$ht$$.ma_kh||($ht$$.ma_kh=$obj$$.ma_kh);$details_sc$$.push($ht$$)}});(new PostSocai($obj$$,$details_sc$$)).run(($e$$,
8
+ $rs$$)=>{$callback$$($e$$,$rs$$)})})}},($e$$,$rs$$)=>{$fn$$($e$$,$rs$$)})};$contr_router$$.creating=async function($user$$,$obj$$,$next$$){$obj$$.details||($obj$$.details=[]);if($obj$$.tdttnos&&0<$obj$$.tdttnos.length&&(await $obj$$.tdttnos.asyncJoinModel2($user$$.current_id_app,Tdttno,{where:{id_tdtt:"_id"},fields:["tat_toan",{tien_hd_nt:"tien_nt"}]}),0<(await Promise.all($obj$$.tdttnos.map($hd$$=>(async()=>{if(!global.mongoose.Types.ObjectId.isValid($hd$$.id_tdtt))return{error:"Ho\u00e1 \u0111\u01a1n kh\u00f4ng h\u1ee3p l\u1ec7",
9
+ invoice:$hd$$};let $ds_da_thanh_toan$$=await Tdttno_tt.find({id_app:$obj$$.id_app,id_tdtt:$hd$$.id_tdtt}).lean(),$da_thanh_toan$$=$ds_da_thanh_toan$$.map($t$$=>$t$$.thanh_toan_qd||0).reduce(($a$$,$b$$)=>$a$$+$b$$,0),$con_lai$$=$hd$$.tien_hd_nt-$da_thanh_toan$$;return 0>=$con_lai$$?{error:"Ho\u00e1 \u0111\u01a1n \u0111\u00e3 \u0111\u01b0\u1ee3c thanh to\u00e1n",invoice:$hd$$,da_thanh_toan:$da_thanh_toan$$,con_lai:$con_lai$$,ds_da_thanh_toan:$ds_da_thanh_toan$$}:{invoice:$hd$$,da_thanh_toan:$da_thanh_toan$$,
10
+ con_lai:$con_lai$$,ds_da_thanh_toan:$ds_da_thanh_toan$$}})()))).filter($hd$$=>$hd$$.error).length))return $next$$("Ho\u00e1 \u0111\u01a1n \u0111\u00e3 \u0111\u01b0\u1ee3c thanh to\u00e1n");valid_detail($user$$,$obj$$,function($error$$){if($error$$)return $next$$($error$$);$next$$(null,$obj$$)})};$contr_router$$.updating=function($user$$,$data$$,$obj$$,$next$$){valid_detail($user$$,$data$$,function($error$$){if($error$$)return $next$$($error$$);$next$$(null,$data$$,$obj$$)})};$contr_router$$.deleted=
11
+ ($details$jscomp$1_user$$,$obj$$,$next$$)=>{$details$jscomp$1_user$$=($obj$$.details||[]).filter($d$$=>$d$$.id_tdtt);async.mapSeries($details$jscomp$1_user$$,($detail$$,$callback$$)=>{setImmediate(()=>{Tdttno.findOneAndUpdate({_id:$detail$$.id_tdtt.toString()},{$set:{tat_toan:!1}},($error$$,$result$$)=>{$callback$$($error$$,$result$$)})})},$e$$=>{$next$$($e$$,$obj$$)})};$contr_router$$.on("saved",function($obj$$){$obj$$.id_pn6&&pn6.updateMany({_id:$obj$$.id_pn6},{id_pt1:$obj$$._id.toString(),trang_thai:"7"},
12
+ ($e$jscomp$1$$,$rs$$)=>{console.log("update pn6",$obj$$.id_pn6,$rs$$);pn6.findOne({_id:$obj$$.id_pn6},($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PN6,$e$$=>{$e$$&&console.error($e$$)})})})});$contr_router$$.on("deleted",function($obj$$){$obj$$.id_pn6&&pn6.updateMany({_id:$obj$$.id_pn6},{id_pt1:""},()=>{pn6.updateMany({_id:$obj$$.id_pn6,trang_thai:"7"},{trang_thai:"5"},($e$jscomp$1$$,$rs$$)=>{console.log("update pn6",$obj$$.id_pn6,$rs$$);pn6.findOne({_id:$obj$$.id_pn6},
13
+ ($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PN6,$e$$=>{$e$$&&console.error($e$$)})})})})});$contr_router$$.view=function($user$$,$items$$,$fn$$){let $id_app$$=$user$$.current_id_app;async.series({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$$()})},nv:function($callback$$){$items$$.filter($item$$=>$item$$.ma_nv).joinModel($id_app$$,
14
+ dmnv,[{akey:"ma_nv",bkey:"ma_nv",fields:[{name:"ten_nv",value:"ten_nv"}]}],function(){$callback$$()})},tk:function($callback$$){$items$$.filter($item$$=>$item$$.tk_no).joinModel($id_app$$,account,[{akey:"tk_no",bkey:"tk",fields:[{name:"ten_tk_no",value:"ten_tk"}]}],function(){$callback$$()})},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$$()})},trangthai:function($callback$$){$items$$.filter($item$$=>
15
+ $item$$.trang_thai).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_tien=0;$r$$.t_tien_nt=0;$r$$.details&&($r$$.t_tien=$r$$.details.csum("tien"),$r$$.t_tien_nt=$r$$.details.csum("tien_nt"));$r$$.tdttnos&&($r$$.t_tien+=$r$$.tdttnos.csum("tien"),$r$$.t_tien_nt+=$r$$.tdttnos.csum("tien_nt"));$r$$.t_tt=$r$$.t_tien;$r$$.t_tt_nt=$r$$.t_tien_nt});
16
+ $callback$$()},details_tk:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.details.filter($item$$=>$item$$.tk_co).joinModel($id_app$$,account,[{akey:"tk_co",bkey:"tk",fields:[{name:"ten_tk_co",value:"ten_tk"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_tk_tdttno:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.tdttnos.filter($item$$=>$item$$.tk_co).joinModel($id_app$$,account,[{akey:"tk_co",bkey:"tk",fields:[{name:"ten_tk_co",
17
+ value:"ten_tk"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_contract_tdttno:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.tdttnos.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_dt_tdttno:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.tdttnos.filter($item$$=>$item$$.ma_dt).joinModel($id_app$$,
18
+ dmdt,[{akey:"ma_dt",bkey:"ma_dt",fields:[{name:"ten_dt",value:"ten_dt"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_customer:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.details.filter($item$$=>$item$$.ma_kh).joinModel($id_app$$,customer,[{akey:"ma_kh",bkey:"ma_kh",fields:[{name:"ten_kh",value:"ten_kh"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_dt:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.details.filter($item$$=>
19
+ $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$$,
20
+ 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$$()})}},function(){$fn$$(null,$items$$)})}};
@@ -1,17 +1,17 @@
1
1
  'use strict';const PostBook=require("../../libs/post-book"),PostSocai=require("../../libs/post-socai"),Sokho=global.getModel("sokho"),Sokhott=global.getModel("sokhott"),dvcs=global.getModel("dvcs"),dmvt=global.getModel("dmvt"),dmkho=global.getModel("dmkho"),account=global.getModel("account"),pnc=global.getModel("pnc"),pdn=global.getModel("pdn"),model=global.getModel("pxc"),controller=require("../../controllers/controller"),trangthai=global.getModel("trangthai"),async=require("async"),ma_ct="PXC";
2
- 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$$,$fn$$){$fn$$||($fn$$=function(){});$obj$$=$obj$$.toObject?$obj$$.toObject():{...$obj$$};$obj$$.details=$obj$$.details.map($d$$=>{$d$$.toObject&&($d$$=$d$$.toObject());return{...$d$$}});async.series({post_sokho:function($callback$jscomp$1$$){dmkho.findOne({id_app:$obj$$.id_app,ma_kho:$obj$$.ma_kho_n}).lean().exec(($e$$,
3
- $khonhap$$)=>{if($e$$)return $callback$jscomp$1$$($e$$);const $details_kho$$=[];$obj$$.details.forEach(function($d$$){$d$$={...$d$$,nxt:2};$d$$.ma_kho=$obj$$.ma_kho_x;$details_kho$$.push($d$$)});$khonhap$$.kho_dc&&$obj$$.details.forEach(function($d$jscomp$2_detail$$){$d$jscomp$2_detail$$={...$d$jscomp$2_detail$$,nxt:1,pn_gia_tb:!0};$d$jscomp$2_detail$$.ma_kho=$obj$$.ma_kho_n;$d$jscomp$2_detail$$.tk_vt=$d$jscomp$2_detail$$.tk_du;$d$jscomp$2_detail$$.sl_nhap=$d$jscomp$2_detail$$.sl_xuat;$d$jscomp$2_detail$$.tien_nhap=
4
- $d$jscomp$2_detail$$.tien_xuat;$d$jscomp$2_detail$$.tien_nhap_nt=$d$jscomp$2_detail$$.tien_xuat_nt;$d$jscomp$2_detail$$.sl_xuat=0;$d$jscomp$2_detail$$.sl_xuat_qd=0;$d$jscomp$2_detail$$.tien_xuat=0;$d$jscomp$2_detail$$.tien_xuat_nt=0;$details_kho$$.push($d$jscomp$2_detail$$)});async.series({khott:$callback$jscomp$0$$=>{(new PostBook($obj$$,[...$details_kho$$],Sokhott,async($_detail$$,$callback$$)=>{$callback$$({...$_detail$$})})).run(($e$$,$rs$$)=>{$callback$jscomp$0$$($e$$,$rs$$)})},khokt:$callback$jscomp$0$$=>
5
- {(new PostBook($obj$$,[...$details_kho$$],Sokho,async($_detail$$,$callback$$)=>{$callback$$({...$_detail$$})})).run(function($e$jscomp$0$$){!$e$jscomp$0$$&&$khonhap$$.kho_dc?model.findOneAndUpdate({_id:$obj$$._id},{$set:{id_pn:$obj$$._id.toString()}},{new:!1},($e$$,$rs$$)=>{$obj$$.id_pn=$obj$$._id.toString();console.log("tu tao phieu nhap",$rs$$?$rs$$.id_pn:"");$callback$jscomp$0$$($e$$,$rs$$)}):model.findOneAndUpdate({_id:$obj$$._id,id_pn:$obj$$._id.toString()},{$set:{id_pn:null}},{new:!1},($e$$,
6
- $rs$$)=>{$obj$$.id_pn=null;console.log("khong tu tao phieu nhap",$rs$$?$rs$$.id_pn:"");$callback$jscomp$0$$($e$$,$rs$$)})})}},($e$$,$rs$$)=>{$callback$jscomp$1$$($e$$,$rs$$)})})},post_socai:function($callback$jscomp$0$$){(new PostSocai($obj$$,[...$obj$$.details],function($_detail$jscomp$2_detail$$,$callback$$){$_detail$jscomp$2_detail$$={...$_detail$jscomp$2_detail$$};$_detail$jscomp$2_detail$$.tk_no=$_detail$jscomp$2_detail$$.tk_du;$_detail$jscomp$2_detail$$.tk_co=$_detail$jscomp$2_detail$$.tk_vt;
7
- $_detail$jscomp$2_detail$$.tien_nt=$_detail$jscomp$2_detail$$.tien_xuat_nt;$_detail$jscomp$2_detail$$.tien=$_detail$jscomp$2_detail$$.tien_xuat;$callback$$($_detail$jscomp$2_detail$$)})).run(function($e$$,$rs$$){$callback$jscomp$0$$($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$$;"VND"==$obj$$.ma_nt&&($detail$$.tien_xuat=
8
- $detail$$.tien_xuat_nt)}$next$$(null,$obj$$)};$contr_router$$.creating=function($user$$,$obj$$,$next$$){if($user$$.current_app_info.options.phieu_pxc_phai_co_phieu_de_nghi&&!$obj$$.id_dn)return $next$$("Ch\u01b0a c\u00f3 phi\u1ebfu \u0111\u1ec1 ngh\u1ecb \u0111i\u1ec1u chuy\u1ec3n");$obj$$.id_pnc="";$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$$){$valid$$($user$$,
9
- $data$$,function($error$$){if($error$$)return $next$$($error$$);$next$$(null,$data$$,$obj$$)})};$contr_router$$.on("saved",function($obj$$){$obj$$.id_dn&&pdn.updateMany({_id:$obj$$.id_dn},{id_pxc:$obj$$._id.toString(),trang_thai:"7"},($e$jscomp$1$$,$rs$$)=>{console.log("update pdn",$rs$$);pdn.findOne({_id:$obj$$.id_dn},($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PDN,$e$$=>{$e$$&&console.error($e$$)})})})});$contr_router$$.on("deleted",function($obj$$){$obj$$.id_dn&&
10
- pdn.updateMany({_id:$obj$$.id_dn},{id_pxc:""},()=>{pdn.updateMany({_id:$obj$$.id_dn,trang_thai:"7"},{trang_thai:"5"},($e$jscomp$1$$,$rs$$)=>{console.log("update pdn",$rs$$);pdn.findOne({_id:$obj$$.id_dn},($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PDN,$e$$=>{$e$$&&console.error($e$$)})})})})});$contr_router$$.view=function($user$$,$items$$,$fn$$){const $id_app$$=$user$$.current_id_app;async.series({dv:function($callback$$){$items$$.joinModel($id_app$$,dvcs,[{akey:"ma_dvcs",
11
- bkey:"_id",fields:[{name:"ten_dvcs",value:"ten_dvcs"}]}],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$$()})},denghi:function($callback$$){$items$$.joinModel2($id_app$$,pdn,[{where:{id_dn:"_id"},fields:[{so_ct_dn:"so_ct"}],setFields:($a$jscomp$0$$,$b$jscomp$0$$)=>{$a$jscomp$0$$&&$b$jscomp$0$$&&($a$jscomp$0$$.details.forEach($a_detail$$=>{$a_detail$$.sl_dn=
12
- $b$jscomp$0$$.details.filter($d$$=>$d$$.ma_vt===$a_detail$$.ma_vt).map($d$$=>$d$$.sl_xuat).reduce(($a$$,$b$$)=>$a$$+$b$$,0)}),$a$jscomp$0$$.t_sl_dn=$a$jscomp$0$$.details.map($d$$=>$d$$.sl_dn).reduce(($a$$,$b$$)=>$a$$+$b$$,0))}}],function(){$callback$$()})},t_tien:function($callback$$){$items$$.forEach(function($r$$){$r$$.details&&($r$$.t_sl=$r$$.details.csum("sl_xuat"),$r$$.t_tien_xuat=$r$$.details.csum("tien_xuat"),$r$$.t_tien_xuat_nt=$r$$.details.csum("tien_xuat_nt"))});$callback$$()},ma_kho_x:$callback$$=>
13
- {$items$$.joinModel2($id_app$$,dmkho,[{where:{ma_kho_x:"ma_kho"},fields:[{name:"ten_kho_x",value:"ten_kho"},{name:"kho_dc_x",value:"kho_dc"}]}],function(){$callback$$()})},ma_kho_n:$callback$$=>{$items$$.joinModel2($id_app$$,dmkho,[{where:{ma_kho_n:"ma_kho"},fields:[{name:"ten_kho_n",value:"ten_kho"},{name:"kho_dc_n",value:"kho_dc"}]}],function(){$callback$$()})},details_tk:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.details.joinModel($id_app$$,account,[{akey:"tk_vt",
14
- bkey:"tk",fields:[{name:"ten_tk_vt",value:"ten_tk"}]},{akey:"tk_du",bkey:"tk",fields:[{name:"ten_tk_du",value:"ten_tk"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_vt:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.details.joinModel($id_app$$,dmvt,[{akey:"ma_vt",bkey:"ma_vt",fields:[{name:"ten_vt",value:"ten_vt"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_kho_n:function($callback$$){async.mapSeries($items$$,function($r$$,
15
- $callback1$$){$r$$.details.joinModel($id_app$$,dmkho,[{akey:"ma_kho_n",bkey:"ma_kho",fields:[{name:"ten_kho_n",value:"ten_kho"},{name:"kho_dc_n",value:"kho_dc"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_kho_x:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.details.joinModel($id_app$$,dmkho,[{akey:"ma_kho_x",bkey:"ma_kho",fields:[{name:"ten_kho_x",value:"ten_kho"},{name:"kho_dc_x",value:"kho_dc"}]}],function(){$callback1$$()})},function(){$callback$$()})}},
16
- function(){async.mapSeries($items$$,($pxc$$,$callback$$)=>{$pxc$$.kho_dc_n?($pxc$$.t_sl_da_nhap=$pxc$$.t_sl,$callback$$()):pnc.find({id_px:$pxc$$._id}).lean().exec(($e$$,$pncs$$)=>{if($e$$)return $callback$$($e$$);$pxc$$.ds_pnc=$pncs$$.map($p$$=>({_id:$p$$._id,so_ct:$p$$.so_ct,ngay_ct:$p$$.ngay_ct}));let $pnc_details$$=$pncs$$.map($p$$=>$p$$.details).reduce(($a$$,$b$$)=>$a$$.concat($b$$),[]);$pxc$$.details.forEach($pxc_detail$$=>{$pxc_detail$$.sl_da_nhap=$pnc_details$$.filter($d$$=>$d$$.ma_vt===$pxc_detail$$.ma_vt).map($d$$=>
17
- $d$$.sl_xuat).reduce(($a$$,$b$$)=>$a$$+$b$$,0)});$pxc$$.t_sl_da_nhap=$pnc_details$$.map($d$$=>$d$$.sl_xuat).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$callback$$()})},()=>{$fn$$(null,$items$$)})})}};
2
+ 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=async function($obj$$,$fn$$){$fn$$||($fn$$=function(){});$obj$$=$obj$$.toObject?$obj$$.toObject():{...$obj$$};$obj$$.details=$obj$$.details.map($d$$=>{$d$$.toObject&&($d$$=$d$$.toObject());return{...$d$$}});async.series({post_sokho:function($callback$jscomp$1$$){dmkho.findOne({id_app:$obj$$.id_app,
3
+ ma_kho:$obj$$.ma_kho_n}).lean().exec(($e$$,$khonhap$$)=>{if($e$$)return $callback$jscomp$1$$($e$$);const $details_kho$$=[];$obj$$.details.forEach(function($d$$){$d$$={...$d$$,nxt:2};$d$$.ma_kho=$obj$$.ma_kho_x;$details_kho$$.push($d$$)});$khonhap$$.kho_dc&&$obj$$.details.forEach(function($d$jscomp$2_detail$$){$d$jscomp$2_detail$$={...$d$jscomp$2_detail$$,nxt:1,pn_gia_tb:!0};$d$jscomp$2_detail$$.ma_kho=$obj$$.ma_kho_n;$d$jscomp$2_detail$$.tk_vt=$d$jscomp$2_detail$$.tk_du;$d$jscomp$2_detail$$.sl_nhap=
4
+ $d$jscomp$2_detail$$.sl_xuat;$d$jscomp$2_detail$$.tien_nhap=$d$jscomp$2_detail$$.tien_xuat;$d$jscomp$2_detail$$.tien_nhap_nt=$d$jscomp$2_detail$$.tien_xuat_nt;$d$jscomp$2_detail$$.sl_xuat=0;$d$jscomp$2_detail$$.sl_xuat_qd=0;$d$jscomp$2_detail$$.tien_xuat=0;$d$jscomp$2_detail$$.tien_xuat_nt=0;$details_kho$$.push($d$jscomp$2_detail$$)});async.series({khott:$callback$jscomp$0$$=>{(new PostBook($obj$$,[...$details_kho$$],Sokhott,async($_detail$$,$callback$$)=>{$callback$$({...$_detail$$})})).run(($e$$,
5
+ $rs$$)=>{$callback$jscomp$0$$($e$$,$rs$$)})},khokt:$callback$jscomp$0$$=>{(new PostBook($obj$$,[...$details_kho$$],Sokho,async($_detail$$,$callback$$)=>{$callback$$({...$_detail$$})})).run(function($e$jscomp$0$$){!$e$jscomp$0$$&&$khonhap$$.kho_dc?model.findOneAndUpdate({_id:$obj$$._id},{$set:{id_pn:$obj$$._id.toString()}},{new:!1},($e$$,$rs$$)=>{$obj$$.id_pn=$obj$$._id.toString();console.log("tu tao phieu nhap",$rs$$?$rs$$.id_pn:"");$callback$jscomp$0$$($e$$,$rs$$)}):model.findOneAndUpdate({_id:$obj$$._id,
6
+ id_pn:$obj$$._id.toString()},{$set:{id_pn:null}},{new:!1},($e$$,$rs$$)=>{$obj$$.id_pn=null;console.log("khong tu tao phieu nhap",$rs$$?$rs$$.id_pn:"");$callback$jscomp$0$$($e$$,$rs$$)})})}},($e$$,$rs$$)=>{$callback$jscomp$1$$($e$$,$rs$$)})})},post_socai:function($callback$jscomp$0$$){(new PostSocai($obj$$,[...$obj$$.details],function($_detail$jscomp$2_detail$$,$callback$$){$_detail$jscomp$2_detail$$={...$_detail$jscomp$2_detail$$};$_detail$jscomp$2_detail$$.tk_no=$_detail$jscomp$2_detail$$.tk_du;
7
+ $_detail$jscomp$2_detail$$.tk_co=$_detail$jscomp$2_detail$$.tk_vt;$_detail$jscomp$2_detail$$.tien_nt=$_detail$jscomp$2_detail$$.tien_xuat_nt;$_detail$jscomp$2_detail$$.tien=$_detail$jscomp$2_detail$$.tien_xuat;$callback$$($_detail$jscomp$2_detail$$)})).run(function($e$$,$rs$$){$callback$jscomp$0$$($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$$];
8
+ $detail$$.line=$i_user$$;"VND"==$obj$$.ma_nt&&($detail$$.tien_xuat=$detail$$.tien_xuat_nt)}$next$$(null,$obj$$)};$contr_router$$.creating=function($user$$,$obj$$,$next$$){if($user$$.current_app_info.options.phieu_pxc_phai_co_phieu_de_nghi&&!$obj$$.id_dn)return $next$$("Ch\u01b0a c\u00f3 phi\u1ebfu \u0111\u1ec1 ngh\u1ecb \u0111i\u1ec1u chuy\u1ec3n");$obj$$.id_pnc="";$obj$$.details||($obj$$.details=[]);$valid$$($user$$,$obj$$,function($error$$){if($error$$)return $next$$($error$$);$next$$(null,$obj$$)})};
9
+ $contr_router$$.updating=function($user$$,$data$$,$obj$$,$next$$){$valid$$($user$$,$data$$,function($error$$){if($error$$)return $next$$($error$$);$next$$(null,$data$$,$obj$$)})};$contr_router$$.on("saved",function($obj$$){$obj$$.id_dn&&pdn.updateMany({_id:$obj$$.id_dn},{id_pxc:$obj$$._id.toString(),trang_thai:"7"},($e$jscomp$1$$,$rs$$)=>{console.log("update pdn",$rs$$);pdn.findOne({_id:$obj$$.id_dn},($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PDN,$e$$=>{$e$$&&
10
+ console.error($e$$)})})})});$contr_router$$.on("deleted",function($obj$$){$obj$$.id_dn&&pdn.updateMany({_id:$obj$$.id_dn},{id_pxc:""},()=>{pdn.updateMany({_id:$obj$$.id_dn,trang_thai:"7"},{trang_thai:"5"},($e$jscomp$1$$,$rs$$)=>{console.log("update pdn",$rs$$);pdn.findOne({_id:$obj$$.id_dn},($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.PDN,$e$$=>{$e$$&&console.error($e$$)})})})})});$contr_router$$.view=function($user$$,$items$$,$fn$$){const $id_app$$=$user$$.current_id_app;
11
+ async.series({dv:function($callback$$){$items$$.joinModel($id_app$$,dvcs,[{akey:"ma_dvcs",bkey:"_id",fields:[{name:"ten_dvcs",value:"ten_dvcs"}]}],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$$()})},denghi:function($callback$$){$items$$.joinModel2($id_app$$,pdn,[{where:{id_dn:"_id"},fields:[{so_ct_dn:"so_ct"}],setFields:($a$jscomp$0$$,$b$jscomp$0$$)=>
12
+ {$a$jscomp$0$$&&$b$jscomp$0$$&&($a$jscomp$0$$.details.forEach($a_detail$$=>{$a_detail$$.sl_dn=$b$jscomp$0$$.details.filter($d$$=>$d$$.ma_vt===$a_detail$$.ma_vt).map($d$$=>$d$$.sl_xuat).reduce(($a$$,$b$$)=>$a$$+$b$$,0)}),$a$jscomp$0$$.t_sl_dn=$a$jscomp$0$$.details.map($d$$=>$d$$.sl_dn).reduce(($a$$,$b$$)=>$a$$+$b$$,0))}}],function(){$callback$$()})},t_tien:function($callback$$){$items$$.forEach(function($r$$){$r$$.details&&($r$$.t_sl=$r$$.details.csum("sl_xuat"),$r$$.t_tien_xuat=$r$$.details.csum("tien_xuat"),
13
+ $r$$.t_tien_xuat_nt=$r$$.details.csum("tien_xuat_nt"))});$callback$$()},ma_kho_x:$callback$$=>{$items$$.joinModel2($id_app$$,dmkho,[{where:{ma_kho_x:"ma_kho"},fields:[{name:"ten_kho_x",value:"ten_kho"},{name:"kho_dc_x",value:"kho_dc"}]}],function(){$callback$$()})},ma_kho_n:$callback$$=>{$items$$.joinModel2($id_app$$,dmkho,[{where:{ma_kho_n:"ma_kho"},fields:[{name:"ten_kho_n",value:"ten_kho"},{name:"kho_dc_n",value:"kho_dc"}]}],function(){$callback$$()})},details_tk:function($callback$$){async.mapSeries($items$$,
14
+ function($r$$,$callback1$$){$r$$.details.joinModel($id_app$$,account,[{akey:"tk_vt",bkey:"tk",fields:[{name:"ten_tk_vt",value:"ten_tk"}]},{akey:"tk_du",bkey:"tk",fields:[{name:"ten_tk_du",value:"ten_tk"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_vt:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.details.joinModel($id_app$$,dmvt,[{akey:"ma_vt",bkey:"ma_vt",fields:[{name:"ten_vt",value:"ten_vt"}]}],function(){$callback1$$()})},function(){$callback$$()})},
15
+ details_kho_n:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.details.joinModel($id_app$$,dmkho,[{akey:"ma_kho_n",bkey:"ma_kho",fields:[{name:"ten_kho_n",value:"ten_kho"},{name:"kho_dc_n",value:"kho_dc"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_kho_x:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.details.joinModel($id_app$$,dmkho,[{akey:"ma_kho_x",bkey:"ma_kho",fields:[{name:"ten_kho_x",value:"ten_kho"},{name:"kho_dc_x",
16
+ value:"kho_dc"}]}],function(){$callback1$$()})},function(){$callback$$()})}},function(){async.mapSeries($items$$,($pxc$$,$callback$$)=>{$pxc$$.kho_dc_n?($pxc$$.t_sl_da_nhap=$pxc$$.t_sl,$callback$$()):pnc.find({id_px:$pxc$$._id}).lean().exec(($e$$,$pncs$$)=>{if($e$$)return $callback$$($e$$);$pxc$$.ds_pnc=$pncs$$.map($p$$=>({_id:$p$$._id,so_ct:$p$$.so_ct,ngay_ct:$p$$.ngay_ct}));let $pnc_details$$=$pncs$$.map($p$$=>$p$$.details).reduce(($a$$,$b$$)=>$a$$.concat($b$$),[]);$pxc$$.details.forEach($pxc_detail$$=>
17
+ {$pxc_detail$$.sl_da_nhap=$pnc_details$$.filter($d$$=>$d$$.ma_vt===$pxc_detail$$.ma_vt).map($d$$=>$d$$.sl_xuat).reduce(($a$$,$b$$)=>$a$$+$b$$,0)});$pxc$$.t_sl_da_nhap=$pnc_details$$.map($d$$=>$d$$.sl_xuat).reduce(($a$$,$b$$)=>$a$$+$b$$,0);$callback$$()})},()=>{$fn$$(null,$items$$)})})}};
@@ -1,13 +1,15 @@
1
1
  'use strict';const dmkho=global.getModel("dmkho"),dvcs=global.getModel("dvcs"),dmvt=global.getModel("dmvt"),customer=global.getModel("customer"),dmdt=global.getModel("dmdt"),dmphi=global.getModel("dmphi"),contract=global.getModel("contract"),salecontract=global.getModel("sale_contract"),so1=global.getModel("so1"),model=global.getModel("pxh"),controller=require("../../controllers/controller"),trangthai=global.getModel("trangthai"),async=require("async"),ma_ct="PXH",Sokhott=global.getModel("sokhott"),
2
2
  Sokho=global.getModel("sokho"),Options=global.getModel("options"),PostBook=require("../../libs/post-book");
3
3
  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();const $valid$$=async($_so1_i_user$$,$obj$$,$next$$)=>{for($_so1_i_user$$=0;$_so1_i_user$$<$obj$$.details.length;$_so1_i_user$$++){const $detail$$=$obj$$.details[$_so1_i_user$$];$detail$$.line=$_so1_i_user$$;$detail$$.tien_hang_nt=$detail$$.tien_hang_nt?$detail$$.tien_hang_nt:$detail$$.sl_xuat*$detail$$.gia_von_nt;$detail$$.tien_hang=
4
- $detail$$.tien_hang?$detail$$.tien_hang:$detail$$.sl_xuat*$detail$$.gia_von;$detail$$.tien_xuat_nt=($detail$$.tien_hang_nt||0)+($detail$$.tien_phi_nt||0)-($detail$$.tien_ck_nt||0);$detail$$.tien_xuat=($detail$$.tien_hang||0)+($detail$$.tien_phi||0)-($detail$$.tien_ck||0);"VND"===$obj$$.ma_nt&&($detail$$.tien_hang=$detail$$.tien_hang_nt,$detail$$.tien_ck=$detail$$.tien_ck_nt,$detail$$.tien_phi=$detail$$.tien_phi_nt,$detail$$.tien_xuat=$detail$$.tien_xuat_nt);$obj$$.ma_kho&&($detail$$.ma_kho=$obj$$.ma_kho)}$obj$$.id_so1&&
5
- !$obj$$.id_contract&&($_so1_i_user$$=await so1.findOne({_id:$obj$$.id_so1}))&&($obj$$.id_contract=$_so1_i_user$$.id_contract);$obj$$.id_contract?salecontract.findOne({_id:$obj$$.id_contract}).lean().exec(($e$$,$c$$)=>{$c$$&&($obj$$.ma_hd=$c$$.ma_hd);$next$$(null,$obj$$)}):$next$$(null,$obj$$)};$contr_router$$.post=async function($obj$$,$fn$$){$fn$$||($fn$$=function(){});let $options$$;try{$options$$=await Options.getInfo($obj$$.id_app,{id_func:$obj$$.ma_ct.toLowerCase()},"option")}catch($e$$){console.log($e$$.message,
6
- {id_func:$obj$$.ma_ct})}$options$$||($options$$={});async.series({post_sokho:function($callback$jscomp$0$$){$options$$.post_sokho?(new PostBook($obj$$,$obj$$.details,Sokho,async($detail$$,$callback$$)=>{$detail$$={...$detail$$,nxt:2};$detail$$.tk_no=$obj$$.tk_no;$callback$$($detail$$)})).run(function(){$callback$jscomp$0$$()}):$callback$jscomp$0$$()},post_sokhott:function($callback$jscomp$0$$){$options$$.not_post_sokhott?$callback$jscomp$0$$():(new PostBook($obj$$,$obj$$.details,Sokhott,async($detail$$,
7
- $callback$$)=>{$detail$$={...$detail$$,nxt:2};$detail$$.tk_no=$obj$$.tk_no;$callback$$($detail$$)})).run(function(){$callback$jscomp$0$$()})}},function($e$$,$rs$$){$fn$$($e$$,$rs$$)})};$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$$){$valid$$($user$$,$data$$,function($error$$){if($error$$)return $next$$($error$$);
8
- $next$$(null,$data$$,$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$$()})},dt:function($callback$$){$items$$.filter($item$$=>$item$$.ma_dt).joinModel($id_app$$,dmdt,[{akey:"ma_dt",bkey:"ma_dt",fields:[{name:"ten_dt",value:"ten_dt"}]}],function(){$callback$$()})},kh:function($callback$$){$items$$.filter($item$$=>
9
- $item$$.ma_kh).joinModel($id_app$$,customer,[{akey:"ma_kh",bkey:"ma_kh",fields:[{name:"ten_kh",value:"ten_kh"}]}],function(){$callback$$()})},kho:function($callback$$){$items$$.filter($item$$=>$item$$.ma_kho).joinModel($id_app$$,dmkho,[{akey:"ma_kho",bkey:"ma_kho",fields:[{name:"ten_kho",value:"ten_kho"}]}],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$$()})},
10
- contract:function($callback$$){$items$$.filter($item$$=>$item$$.ma_hd).joinModel2($id_app$$,contract,[{where:{ma_hd:"so_hd"},fields:["ten_hd","ten_hd"]}],function(){$callback$$()})},t_tien:function($callback$$){$items$$.forEach(function($r$$){$r$$.t_thue_ra=0;$r$$.t_thue_ra_nt=0;$r$$.t_tien_xuat=0;$r$$.t_tien_xuat_nt=0;$r$$.details&&($r$$.t_sl=$r$$.details.csum("sl_xuat"),$r$$.t_tien_hang=$r$$.details.csum("tien_hang"),$r$$.t_tien_hang_nt=$r$$.details.csum("tien_hang_nt"),$r$$.t_ck=$r$$.details.csum("tien_ck"),
11
- $r$$.t_ck_nt=$r$$.details.csum("tien_ck_nt"),$r$$.t_cp=$r$$.details.csum("tien_phi"),$r$$.t_cp_nt=$r$$.details.csum("tien_phi_nt"),$r$$.t_tien_xuat=$r$$.details.csum("tien_xuat"),$r$$.t_tien_xuat_nt=$r$$.details.csum("tien_xuat_nt"));$r$$.t_tt=$r$$.t_tien_xuat+$r$$.t_thue_ra;$r$$.t_tt_nt=$r$$.t_tien_xuat_nt+$r$$.t_thue_ra_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",
12
- 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$$,
13
- 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$$()})}},function(){$fn$$(null,$items$$)})}};
4
+ $detail$$.tien_hang?$detail$$.tien_hang:$detail$$.sl_xuat*$detail$$.gia_von;$detail$$.tien_xuat_nt=($detail$$.tien_hang_nt||0)+($detail$$.tien_phi_nt||0)-($detail$$.tien_ck_nt||0);$detail$$.tien_xuat=($detail$$.tien_hang||0)+($detail$$.tien_phi||0)-($detail$$.tien_ck||0);"VND"===$obj$$.ma_nt&&($detail$$.tien_hang=$detail$$.tien_hang_nt,$detail$$.tien_ck=$detail$$.tien_ck_nt,$detail$$.tien_phi=$detail$$.tien_phi_nt,$detail$$.tien_xuat=$detail$$.tien_xuat_nt)}$obj$$.id_so1&&!$obj$$.id_contract&&($_so1_i_user$$=
5
+ await so1.findOne({_id:$obj$$.id_so1}))&&($obj$$.id_contract=$_so1_i_user$$.id_contract);$obj$$.id_contract?salecontract.findOne({_id:$obj$$.id_contract}).lean().exec(($e$$,$c$$)=>{$c$$&&($obj$$.ma_hd=$c$$.ma_hd);$next$$(null,$obj$$)}):$next$$(null,$obj$$)};$contr_router$$.post=async function($obj$$,$fn$$){$fn$$||($fn$$=function(){});let $options$$;try{$options$$=await Options.getInfo($obj$$.id_app,{id_func:$obj$$.ma_ct.toLowerCase()},"option")}catch($e$$){console.log($e$$.message,{id_func:$obj$$.ma_ct})}$options$$||
6
+ ($options$$={});async.series({post_sokho:function($callback$jscomp$0$$){$options$$.post_sokho?(new PostBook($obj$$,$obj$$.details,Sokho,async($detail$$,$callback$$)=>{$detail$$={...$detail$$,nxt:2};$detail$$.tk_no=$obj$$.tk_no;$detail$$.ma_kho=$detail$$.ma_kho||$obj$$.ma_kho;$callback$$($detail$$)})).run(function(){$callback$jscomp$0$$()}):$callback$jscomp$0$$()},post_sokhott:function($callback$jscomp$0$$){$options$$.not_post_sokhott?$callback$jscomp$0$$():(new PostBook($obj$$,$obj$$.details,Sokhott,
7
+ async($detail$$,$callback$$)=>{$detail$$={...$detail$$,nxt:2};$detail$$.tk_no=$obj$$.tk_no;$detail$$.ma_kho=$detail$$.ma_kho||$obj$$.ma_kho;$callback$$($detail$$)})).run(function(){$callback$jscomp$0$$()})}},function($e$$,$rs$$){$fn$$($e$$,$rs$$)})};$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$$,
8
+ $next$$){$valid$$($user$$,$data$$,function($error$$){if($error$$)return $next$$($error$$);$next$$(null,$data$$,$obj$$)})};$contr_router$$.on("saved",function($obj$$){$obj$$.id_dh2&&global.getModel("dh2").updateMany({_id:$obj$$.id_dh2,trang_thai:"3"},{id_pxh:$obj$$._id.toString(),trang_thai:"6"},()=>{global.getModel("dh2").findOne({_id:$obj$$.id_dh2},($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.DH2,$e$$=>{$e$$&&console.error($e$$)})})})});$contr_router$$.on("deleted",
9
+ function($obj$$){$obj$$.id_dh2&&global.getModel("dh2").updateMany({_id:$obj$$.id_dh2,trang_thai:"6"},{id_pxh:"",trang_thai:"3"},()=>{global.getModel("dh2").findOne({_id:$obj$$.id_dh2},($e$jscomp$0$$,$_obj$$)=>{$_obj$$&&controller.postData($_obj$$,global.controllers.DH2,$e$$=>{$e$$&&console.error($e$$)})})})});$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",
10
+ fields:[{name:"ten_dvcs",value:"ten_dvcs"}]}],function(){$callback$$()})},dt:function($callback$$){$items$$.filter($item$$=>$item$$.ma_dt).joinModel($id_app$$,dmdt,[{akey:"ma_dt",bkey:"ma_dt",fields:[{name:"ten_dt",value:"ten_dt"}]}],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$$()})},kho:function($callback$$){$items$$.filter($item$$=>
11
+ $item$$.ma_kho).joinModel($id_app$$,dmkho,[{akey:"ma_kho",bkey:"ma_kho",fields:[{name:"ten_kho",value:"ten_kho"}]}],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$$()})},contract:function($callback$$){$items$$.filter($item$$=>$item$$.ma_hd).joinModel2($id_app$$,contract,[{where:{ma_hd:"so_hd"},fields:["ten_hd","ten_hd"]}],function(){$callback$$()})},
12
+ t_tien:function($callback$$){$items$$.forEach(function($r$$){$r$$.t_thue_ra=0;$r$$.t_thue_ra_nt=0;$r$$.t_tien_xuat=0;$r$$.t_tien_xuat_nt=0;$r$$.details&&($r$$.t_sl=$r$$.details.csum("sl_xuat"),$r$$.t_tien_hang=$r$$.details.csum("tien_hang"),$r$$.t_tien_hang_nt=$r$$.details.csum("tien_hang_nt"),$r$$.t_ck=$r$$.details.csum("tien_ck"),$r$$.t_ck_nt=$r$$.details.csum("tien_ck_nt"),$r$$.t_cp=$r$$.details.csum("tien_phi"),$r$$.t_cp_nt=$r$$.details.csum("tien_phi_nt"),$r$$.t_tien_xuat=$r$$.details.csum("tien_xuat"),
13
+ $r$$.t_tien_xuat_nt=$r$$.details.csum("tien_xuat_nt"));$r$$.t_tt=$r$$.t_tien_xuat+$r$$.t_thue_ra;$r$$.t_tt_nt=$r$$.t_tien_xuat_nt+$r$$.t_thue_ra_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"}]}],function(){$callback1$$()})},function(){$callback$$()})},details_dt:function($callback$$){async.mapSeries($items$$,function($r$$,$callback1$$){$r$$.details.filter($item$$=>
14
+ $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$$,
15
+ 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$$()})}},function(){$fn$$(null,$items$$)})}};