flexbiz-server 12.0.21 → 12.0.24
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.
- package/package.json +3 -3
- package/server/controllers/controller.js +16 -16
- package/server/libs/blockchainconnect.js +18 -19
- package/server/libs/post-book.js +3 -2
- package/server/libs/post-socai.js +4 -3
- package/server/libs/tinhgiatb.js +15 -16
- package/server/models/approve.js +3 -3
- package/server/models/area.js +3 -3
- package/server/models/assbuy.js +2 -2
- package/server/models/asscashwithdraw.js +2 -2
- package/server/models/assinvestment.js +4 -4
- package/server/models/asskey.js +1 -1
- package/server/models/assneedtobuy.js +3 -3
- package/server/models/assperiod.js +4 -4
- package/server/models/assproduct.js +3 -3
- package/server/models/assprofitsharing.js +3 -3
- package/server/models/assreceiver.js +1 -1
- package/server/models/assrequest.js +3 -3
- package/server/models/asssell.js +4 -4
- package/server/models/asstransfer.js +4 -4
- package/server/models/asswithdraw.js +2 -2
- package/server/models/bangtinhluong.js +1 -1
- package/server/models/bg1.js +8 -8
- package/server/models/bg2.js +7 -7
- package/server/models/cart.js +4 -4
- package/server/models/cddiem.js +1 -1
- package/server/models/cddt.js +2 -2
- package/server/models/cdtk.js +2 -2
- package/server/models/cdvt.js +3 -3
- package/server/models/chamcong.js +2 -2
- package/server/models/checkin.js +3 -2
- package/server/models/dmdt.js +4 -4
- package/server/models/dmdvt.js +1 -1
- package/server/models/dmgiaban.js +5 -5
- package/server/models/dmgiamua.js +4 -4
- package/server/models/dmkho.js +4 -4
- package/server/models/dmkhuyenmai.js +3 -3
- package/server/models/dmkhuyenmaihd.js +2 -2
- package/server/models/dmlo.js +2 -2
- package/server/models/dmloaicong.js +1 -1
- package/server/models/dmloaitask.js +1 -1
- package/server/models/dmloaits.js +1 -1
- package/server/models/dmnghiepvu.js +2 -2
- package/server/models/dmnguonvon.js +1 -1
- package/server/models/dmnhnv.js +3 -3
- package/server/models/dmnv.js +3 -3
- package/server/models/dmphi.js +2 -2
- package/server/models/dmqct.js +3 -3
- package/server/models/dmqddvt.js +1 -1
- package/server/models/dmtanggiamts.js +1 -1
- package/server/models/dmto.js +3 -3
- package/server/models/dmtt.js +2 -2
- package/server/models/dmvt.js +6 -6
- package/server/models/dmyt.js +3 -3
- package/server/models/file.js +2 -2
- package/server/models/listinfo.js +43 -38
- package/server/models/moduleinfo.js +3 -3
- package/server/models/otp.js +1 -1
- package/server/models/pbl.js +11 -11
- package/server/models/pdn.js +8 -8
- package/server/models/pkk.js +2 -2
- package/server/models/pnc.js +8 -8
- package/server/models/pnk.js +6 -6
- package/server/models/po1.js +10 -10
- package/server/models/pxc.js +8 -8
- package/server/models/pxk.js +6 -6
- package/server/models/quanhuyen.js +1 -1
- package/server/models/reportinfo.js +4 -4
- package/server/models/right.js +2 -2
- package/server/models/rpt.js +1 -1
- package/server/models/rptobject.js +2 -2
- package/server/models/socai.js +8 -7
- package/server/models/socaitmp.js +11 -11
- package/server/models/sodiemthuong.js +2 -2
- package/server/models/sokho.js +9 -8
- package/server/models/sokhocapphat.js +9 -8
- package/server/models/sokhokhongton.js +9 -9
- package/server/models/sokhott.js +9 -8
- package/server/models/sophanbokh.js +3 -3
- package/server/models/sosanxuat.js +4 -4
- package/server/models/sotinhkh.js +1 -1
- package/server/models/tableinfo.js +3 -3
- package/server/models/templaterpt.js +1 -1
- package/server/models/templatestore.js +2 -2
- package/server/models/templatevoucher.js +1 -1
- package/server/models/tinhthanh.js +1 -1
- package/server/models/tokens.js +1 -1
- package/server/models/trangthai.js +2 -2
- package/server/models/usergroup.js +1 -1
- package/server/models/vat.js +2 -2
- package/server/models/xaphuong.js +1 -1
- package/server/modules/lists/ls-file.js +16 -14
- package/server/modules/lists/ls-participant.js +5 -4
- package/server/modules/reports/rp-assinterest.js +3 -2
- package/server/modules/reports/rp-thgt.js +2 -2
- package/server/modules/systems/sys-user.js +19 -16
- package/server/modules/vouchers/vo-pkk.js +4 -7
- package/server/route.js +3 -5
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
'use strict';const sodiemthuongSchema=new global.Schema({id_app:{type:String,required:!0,maxlength:1024},id_ct:{type:String,required:!0,maxlength:1024},ma_dvcs:{type:String,required:!0,maxlength:1024},ma_ct:{type:String,required:!0,uppercase:!0,maxlength:32},so_ct:{type:String,required:!0,uppercase:!0,trim:!0,maxlength:32},ngay_ct:{type:Date,default:Date.now,required:!0},ma_kh:{type:String,maxlength:32},sl_nhan:{type:Number,default:0},sl_dung:{type:Number,default:0},dien_giai:{type:String,
|
|
2
|
-
maxlength:1024},exfields:global.Schema.Types.Mixed,trang_thai:{type:String,maxlength:32},status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""},visible_to:{type:Number,default:0},visible_to_users:[String]});sodiemthuongSchema.index({id_app:1,ma_dvcs:1,so_ct:-1,ngay_ct:-1});sodiemthuongSchema.index({ma_ct:1});sodiemthuongSchema.index({trang_thai:1});sodiemthuongSchema.index({ma_kh:1});
|
|
1
|
+
'use strict';const sodiemthuongSchema=new global.Schema({id_app:{type:String,required:!0,maxlength:1024},id_ct:{type:String,required:!0,maxlength:1024},ma_dvcs:{type:String,required:!0,maxlength:1024},ma_ct:{type:String,required:!0,uppercase:!0,maxlength:32,trim:!0},so_ct:{type:String,required:!0,uppercase:!0,trim:!0,maxlength:32},ngay_ct:{type:Date,default:Date.now,required:!0},ma_kh:{type:String,maxlength:32,trim:!0},sl_nhan:{type:Number,default:0},sl_dung:{type:Number,default:0},dien_giai:{type:String,
|
|
2
|
+
default:"",maxlength:1024},exfields:global.Schema.Types.Mixed,trang_thai:{type:String,maxlength:32},status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""},visible_to:{type:Number,default:0},visible_to_users:[String]});sodiemthuongSchema.index({id_app:1,ma_dvcs:1,so_ct:-1,ngay_ct:-1});sodiemthuongSchema.index({ma_ct:1});sodiemthuongSchema.index({trang_thai:1});sodiemthuongSchema.index({ma_kh:1});
|
|
3
3
|
sodiemthuongSchema.index({user_created:1,date_created:-1});sodiemthuongSchema.index({date_updated:-1});sodiemthuongSchema.index({status:1});sodiemthuongSchema.index({user_created:1,visible_to:1,visible_to_users:1});const model=global.mongoose.models.sodiemthuong||global.mongoose.model("sodiemthuong",sodiemthuongSchema);model.getBalance=async($id_app$$,$ma_kh$$)=>(await model.find({id_app:$id_app$$,ma_kh:$ma_kh$$})).map($s$$=>($s$$.sl_nhan||0)-($s$$.sl_dung||0)).reduce(($a$$,$b$$)=>$a$$+$b$$,0);
|
|
4
4
|
module.exports=model;
|
package/server/models/sokho.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
'use strict';const moment=require("moment"),sokhoSchema=new Schema({id_app:{type:String,required:!0,maxlength:1024},ma_dvcs:{type:String,required:!0,maxlength:1024},id_ct:{type:String,required:!0,maxlength:1024},ma_ct:{type:String,required:!0,uppercase:!0,maxlength:32},ma_gd:{type:String,default:"0",maxlength:32},ngay_ct:{type:Date,required:!0},so_ct:{type:String,required:!0,uppercase:!0,maxlength:32},nxt:{type:Number,required:!0},ma_nt:{type:String,default:"VND",required:!0,
|
|
2
|
-
ty_gia:{type:Number,default:1},ma_vt:{type:String,required:!0,uppercase:!0,maxlength:1024},ma_dvt:{type:String,maxlength:32},ma_kho:{type:String,required:!0,uppercase:!0,maxlength:32},sl_nhap:{type:Number,default:0},sl_xuat:{type:Number,default:0},he_so_qd:{type:Number,default:1},sl_nhap_qd:{type:Number,default:0},sl_xuat_qd:{type:Number,default:0},pn_gia_tb:{type:Boolean,default:!1},px_gia_dd:{type:Boolean,default:!1},gia_von_nt:{type:Number,
|
|
3
|
-
default:0},
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
'use strict';const moment=require("moment"),sokhoSchema=new Schema({id_app:{type:String,required:!0,maxlength:1024},ma_dvcs:{type:String,required:!0,maxlength:1024},id_ct:{type:String,required:!0,maxlength:1024},ma_ct:{type:String,required:!0,uppercase:!0,maxlength:32,trim:!0},ma_gd:{type:String,default:"0",maxlength:32,trim:!0},ngay_ct:{type:Date,required:!0},so_ct:{type:String,required:!0,uppercase:!0,maxlength:32,trim:!0},nxt:{type:Number,required:!0},ma_nt:{type:String,default:"VND",required:!0,
|
|
2
|
+
uppercase:!0,maxlength:32,trim:!0},ty_gia:{type:Number,default:1},ma_vt:{type:String,required:!0,uppercase:!0,maxlength:1024,trim:!0},ma_dvt:{type:String,maxlength:32,trim:!0},ma_kho:{type:String,required:!0,uppercase:!0,maxlength:32,trim:!0},sl_nhap:{type:Number,default:0},sl_xuat:{type:Number,default:0},he_so_qd:{type:Number,default:1},sl_nhap_qd:{type:Number,default:0},sl_xuat_qd:{type:Number,default:0},pn_gia_tb:{type:Boolean,default:!1},px_gia_dd:{type:Boolean,default:!1},gia_von_nt:{type:Number,
|
|
3
|
+
default:0},gia_von:{type:Number,default:0},tien_hang_nt:{type:Number,default:0},tien_hang:{type:Number,default:0},ty_le_ck:{type:Number,default:0},tien_ck_nt:{type:Number,default:0},tien_ck:{type:Number,default:0},tien_phi_nt:{type:Number,default:0},tien_phi:{type:Number,default:0},tien_cp_nt:{type:Number,default:0},tien_cp:{type:Number,default:0},tien_hang_nk:{type:Number,default:0},tien_hang_nk_nt:{type:Number,default:0},thue_suat_nk:{type:Number,default:0},tien_thue_nk:{type:Number,default:0},
|
|
4
|
+
tien_thue_nk_nt:{type:Number,default:0},tien_nhap_nt:{type:Number,default:0},tien_nhap:{type:Number,default:0},tien_xuat:{type:Number,default:0},tien_xuat_nt:{type:Number,default:0},gia_ban:{type:Number,default:0},gia_ban_nt:{type:Number,default:0},tien:{type:Number,default:0},tien_nt:{type:Number,default:0},tk_vt:{type:String,uppercase:!0,maxlength:32,trim:!0},tk_gv:{type:String,uppercase:!0,maxlength:32,trim:!0},tk_du:{type:String,uppercase:!0,maxlength:32,trim:!0},tk_tl:{type:String,uppercase:!0,
|
|
5
|
+
maxlength:32,trim:!0},tk_dt:{type:String,uppercase:!0,maxlength:32,trim:!0},tk_ck:{type:String,uppercase:!0,maxlength:32,trim:!0},ma_kh:{type:String,uppercase:!0,default:"",maxlength:32,trim:!0},dien_giai:{type:String,default:"",maxlength:1024},ma_bp:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_phi:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_hd:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_dt:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},
|
|
6
|
+
ma_nv:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_lo:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},han_sd:{type:Date},ma_vt2:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_tt1:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_tt2:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_tt3:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_sp:{type:String,default:"",uppercase:!0,maxlength:1024,trim:!0},ma_dvt_sp:{type:String,
|
|
7
|
+
maxlength:32,trim:!0},ma_tt1_sp:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_tt2_sp:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_tt3_sp:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},gio:Number,ngay:Number,thang:Number,quy:Number,nam:Number,ma_kenh:String,ma_td1:String,ma_td2:String,ma_td3:String,ma_td4:String,ma_td5:String,ma_td6:String,ma_td7:String,ma_td8:String,ma_td9:String,pt_thanh_toan:String,pt_thanh_toan2:String,tien_paymentByPoints:Number,tien_evoucher:Number,
|
|
8
|
+
cashier:String,ma_cum_chi_tiet:{type:String,uppercase:!0,default:"",maxlength:32,trim:!0},ten_cum_chi_tiet:{type:String,default:"",maxlength:1024},ma_cong_doan:{type:String,uppercase:!0,default:"",maxlength:32,trim:!0},id_lenhsx:{type:String,maxlength:1024},id_dinhmucsx:{type:String,maxlength:1024},id_lenhcapphat:{type:String,maxlength:1024},id_cs:{type:String,maxlength:1024},ma_ca:{type:String,uppercase:!0,maxlength:32,trim:!0},trang_thai:{type:String,maxlength:32},id_reason:{type:String,maxlength:1024},
|
|
9
|
+
exfields:Schema.Types.Mixed,exfields_detail:Schema.Types.Mixed,line:Number,status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}},{toJSON:{virtuals:!0}});
|
|
9
10
|
sokhoSchema.pre("save",function($next$$){"VND"===this.ma_nt?(this.tien_nhap_nt=Math.round(this.tien_nhap_nt,0),this.tien_xuat_nt=Math.round(this.tien_xuat_nt,0),this.tien_nhap=this.tien_nhap_nt,this.tien_xuat=this.tien_xuat_nt):(this.tien_nhap=Math.round(this.tien_nhap,0),this.tien_xuat=Math.round(this.tien_xuat,0));let $ngay_ct$$=moment(this.ngay_ct);this.gio=$ngay_ct$$.get("hours");this.ngay=$ngay_ct$$.get("dates");this.quy=$ngay_ct$$.get("quarters");this.thang=$ngay_ct$$.get("months")+1;this.nam=
|
|
10
11
|
$ngay_ct$$.get("year");$next$$()});sokhoSchema.index({id_app:1});sokhoSchema.index({ma_dvcs:1});sokhoSchema.index({ngay_ct:-1});sokhoSchema.index({so_ct:-1});sokhoSchema.index({ma_ct:1});sokhoSchema.index({ma_vt:1});sokhoSchema.index({ma_kho:1});sokhoSchema.index({ma_kh:1});sokhoSchema.index({ma_bp:1});sokhoSchema.index({ma_phi:1});sokhoSchema.index({ma_sp:1});sokhoSchema.index({ma_nv:1});sokhoSchema.index({ma_dt:1});sokhoSchema.index({ma_lo:1});sokhoSchema.index({han_sd:-1});sokhoSchema.index({ma_tt1:1});
|
|
11
12
|
sokhoSchema.index({ma_tt2:1});sokhoSchema.index({ma_tt3:1});sokhoSchema.index({id_ct:1});sokhoSchema.index({id_ct:1,line:1},{unique:!0});sokhoSchema.index({id_cs:1});sokhoSchema.index({id_lenhsx:1});sokhoSchema.index({id_dinhmucsx:1});sokhoSchema.index({cashier:1});sokhoSchema.index({gio:1});sokhoSchema.index({ngay:1});sokhoSchema.index({thang:1});sokhoSchema.index({quy:1});sokhoSchema.index({nam:-1});sokhoSchema.index({ma_kenh:1});sokhoSchema.index({ma_td1:1});sokhoSchema.index({ma_td2:1});sokhoSchema.index({ma_td3:1});
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
'use strict';const moment=require("moment"),sokhocapphatSchema=new Schema({id_app:{type:String,required:!0,maxlength:1024},ma_dvcs:{type:String,required:!0,maxlength:1024},id_ct:{type:String,required:!0,maxlength:1024},ma_ct:{type:String,required:!0,uppercase:!0,maxlength:32},ma_gd:{type:String,default:"0",maxlength:32},ngay_ct:{type:Date,required:!0},so_ct:{type:String,required:!0,uppercase:!0,maxlength:32},nxt:{type:Number,required:!0},ma_nt:{type:String,default:"VND",required:!0,
|
|
2
|
-
ty_gia:{type:Number,default:1},ma_vt:{type:String,required:!0,uppercase:!0,maxlength:1024},ma_dvt:{type:String,maxlength:32},ma_kho:{type:String,required:!0,uppercase:!0,maxlength:32},sl_nhap:{type:Number,default:0},sl_xuat:{type:Number,default:0},he_so_qd:{type:Number,default:1},sl_nhap_qd:{type:Number,default:0},sl_xuat_qd:{type:Number,default:0},pn_gia_tb:{type:Boolean,default:!1},px_gia_dd:{type:Boolean,default:!1},gia_von_nt:{type:Number,
|
|
3
|
-
default:0},
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
tien_paymentByPoints:Number,tien_evoucher:Number,id_reason:{type:String,maxlength:1024},id_cs:{type:String,maxlength:1024},exfields:Schema.Types.Mixed,exfields_detail:Schema.Types.Mixed,line:Number,status:{type:Boolean,default:!0},
|
|
1
|
+
'use strict';const moment=require("moment"),sokhocapphatSchema=new Schema({id_app:{type:String,required:!0,maxlength:1024},ma_dvcs:{type:String,required:!0,maxlength:1024},id_ct:{type:String,required:!0,maxlength:1024},ma_ct:{type:String,required:!0,uppercase:!0,maxlength:32,trim:!0},ma_gd:{type:String,default:"0",maxlength:32,trim:!0},ngay_ct:{type:Date,required:!0},so_ct:{type:String,required:!0,uppercase:!0,maxlength:32,trim:!0},nxt:{type:Number,required:!0},ma_nt:{type:String,default:"VND",required:!0,
|
|
2
|
+
uppercase:!0,maxlength:32,trim:!0},ty_gia:{type:Number,default:1},ma_vt:{type:String,required:!0,uppercase:!0,maxlength:1024,trim:!0},ma_dvt:{type:String,maxlength:32,trim:!0},ma_kho:{type:String,required:!0,uppercase:!0,maxlength:32,trim:!0},sl_nhap:{type:Number,default:0},sl_xuat:{type:Number,default:0},he_so_qd:{type:Number,default:1},sl_nhap_qd:{type:Number,default:0},sl_xuat_qd:{type:Number,default:0},pn_gia_tb:{type:Boolean,default:!1},px_gia_dd:{type:Boolean,default:!1},gia_von_nt:{type:Number,
|
|
3
|
+
default:0},gia_von:{type:Number,default:0},tien_hang_nt:{type:Number,default:0},tien_hang:{type:Number,default:0},ty_le_ck:{type:Number,default:0},tien_ck_nt:{type:Number,default:0},tien_ck:{type:Number,default:0},tien_phi_nt:{type:Number,default:0},tien_phi:{type:Number,default:0},tien_hang_nk:{type:Number,default:0},tien_hang_nk_nt:{type:Number,default:0},thue_suat_nk:{type:Number,default:0},tien_thue_nk:{type:Number,default:0},tien_thue_nk_nt:{type:Number,default:0},tien_nhap_nt:{type:Number,default:0},
|
|
4
|
+
tien_nhap:{type:Number,default:0},tien_xuat:{type:Number,default:0},tien_xuat_nt:{type:Number,default:0},gia_ban:{type:Number,default:0},gia_ban_nt:{type:Number,default:0},tien:{type:Number,default:0},tien_nt:{type:Number,default:0},tk_vt:{type:String,uppercase:!0,maxlength:32,trim:!0},tk_gv:{type:String,uppercase:!0,maxlength:32,trim:!0},tk_du:{type:String,uppercase:!0,maxlength:32,trim:!0},tk_tl:{type:String,uppercase:!0,maxlength:32,trim:!0},tk_dt:{type:String,uppercase:!0,maxlength:32,trim:!0},
|
|
5
|
+
tk_ck:{type:String,uppercase:!0,maxlength:32,trim:!0},ma_kh:{type:String,uppercase:!0,default:"",maxlength:32,trim:!0},dien_giai:{type:String,default:"",maxlength:1024},ma_bp:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_phi:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_hd:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_dt:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_nv:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_lo:{type:String,
|
|
6
|
+
default:"",uppercase:!0,maxlength:32,trim:!0},han_sd:{type:Date},ma_vt2:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_tt1:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_tt2:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_tt3:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_sp:{type:String,default:"",uppercase:!0,maxlength:1024,trim:!0},ma_dvt_sp:{type:String,maxlength:32,trim:!0},ma_tt1_sp:{type:String,default:"",uppercase:!0,maxlength:32,
|
|
7
|
+
trim:!0},ma_tt2_sp:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_tt3_sp:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_cum_chi_tiet:{type:String,uppercase:!0,default:"",maxlength:32,trim:!0},ten_cum_chi_tiet:{type:String,default:"",maxlength:1024},ma_cong_doan:{type:String,uppercase:!0,default:"",maxlength:32,trim:!0},id_lenhsx:{type:String,maxlength:1024},id_lenhcapphat:{type:String,maxlength:1024},id_dinhmucsx:{type:String,maxlength:1024},ma_ca:{type:String,uppercase:!0,
|
|
8
|
+
maxlength:32,trim:!0},cashier:String,gio:Number,ngay:Number,thang:Number,quy:Number,nam:Number,ma_kenh:String,ma_td1:String,ma_td2:String,ma_td3:String,ma_td4:String,ma_td5:String,ma_td6:String,ma_td7:String,ma_td8:String,ma_td9:String,pt_thanh_toan:String,pt_thanh_toan2:String,tien_paymentByPoints:Number,tien_evoucher:Number,id_reason:{type:String,maxlength:1024},id_cs:{type:String,maxlength:1024},exfields:Schema.Types.Mixed,exfields_detail:Schema.Types.Mixed,line:Number,status:{type:Boolean,default:!0},
|
|
9
|
+
date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}});
|
|
9
10
|
sokhocapphatSchema.pre("save",function($next$$){"VND"==this.ma_nt?(this.tien_nhap_nt=Math.round(this.tien_nhap_nt,0),this.tien_xuat_nt=Math.round(this.tien_xuat_nt,0),this.tien_nhap=this.tien_nhap_nt,this.tien_xuat=this.tien_xuat_nt):(this.tien_nhap=Math.round(this.tien_nhap,0),this.tien_xuat=Math.round(this.tien_xuat,0));let $ngay_ct$$=moment(this.ngay_ct);this.gio=$ngay_ct$$.get("hours");this.ngay=$ngay_ct$$.get("dates");this.quy=$ngay_ct$$.get("quarters");this.thang=$ngay_ct$$.get("months")+1;
|
|
10
11
|
this.nam=$ngay_ct$$.get("year");$next$$()});sokhocapphatSchema.index({id_app:1});sokhocapphatSchema.index({ma_dvcs:1});sokhocapphatSchema.index({ngay_ct:-1});sokhocapphatSchema.index({so_ct:-1});sokhocapphatSchema.index({ma_ct:1});sokhocapphatSchema.index({ma_vt:1});sokhocapphatSchema.index({ma_kho:1});sokhocapphatSchema.index({ma_kh:1});sokhocapphatSchema.index({ma_bp:1});sokhocapphatSchema.index({ma_phi:1});sokhocapphatSchema.index({ma_sp:1});sokhocapphatSchema.index({ma_nv:1});sokhocapphatSchema.index({ma_dt:1});
|
|
11
12
|
sokhocapphatSchema.index({ma_lo:1});sokhocapphatSchema.index({han_sd:-1});sokhocapphatSchema.index({ma_tt1:1});sokhocapphatSchema.index({ma_tt2:1});sokhocapphatSchema.index({ma_tt3:1});sokhocapphatSchema.index({id_ct:1});sokhocapphatSchema.index({id_lenhsx:1});sokhocapphatSchema.index({id_ct:1,line:1},{unique:!0});sokhocapphatSchema.index({id_cs:1});sokhocapphatSchema.index({gio:1});sokhocapphatSchema.index({ngay:1});sokhocapphatSchema.index({thang:1});sokhocapphatSchema.index({quy:1});sokhocapphatSchema.index({nam:-1});
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
'use strict';const moment=require("moment"),sokhokhongtonSchema=new Schema({id_app:{type:String,required:!0,maxlength:1024},ma_dvcs:{type:String,required:!0,maxlength:1024},id_ct:{type:String,required:!0,maxlength:1024},ma_ct:{type:String,required:!0,uppercase:!0,maxlength:32},ma_gd:{type:String,default:"0",maxlength:32},ngay_ct:{type:Date,required:!0},so_ct:{type:String,required:!0,uppercase:!0,maxlength:32},nxt:{type:Number,required:!0},ma_nt:{type:String,default:"VND",required:!0,
|
|
2
|
-
maxlength:32},ty_gia:{type:Number,default:1},ma_vt:{type:String,required:!0,uppercase:!0,maxlength:1024},ma_dvt:{type:String,maxlength:32},ma_kho:{type:String,required:!0,uppercase:!0,maxlength:32},sl_nhap:{type:Number,default:0},sl_xuat:{type:Number,default:0},he_so_qd:{type:Number,default:1},sl_nhap_qd:{type:Number,default:0},sl_xuat_qd:{type:Number,default:0},pn_gia_tb:{type:Boolean,default:!1},px_gia_dd:{type:Boolean,default:!1},gia_von_nt:{type:Number,
|
|
3
|
-
tien_hang_nt:{type:Number,default:0},tien_hang:{type:Number,default:0},ty_le_ck:{type:Number,default:0},tien_ck_nt:{type:Number,default:0},tien_ck:{type:Number,default:0},tien_phi_nt:{type:Number,default:0},tien_phi:{type:Number,default:0},tien_cp_nt:{type:Number,default:0},tien_cp:{type:Number,default:0},tien_hang_nk:{type:Number,default:0},tien_hang_nk_nt:{type:Number,default:0},thue_suat_nk:{type:Number,default:0},tien_thue_nk:{type:Number,default:0},
|
|
4
|
-
default:0},tien_nhap:{type:Number,default:0},tien_xuat:{type:Number,default:0},tien_xuat_nt:{type:Number,default:0},gia_ban:{type:Number,default:0},gia_ban_nt:{type:Number,default:0},tien:{type:Number,default:0},tien_nt:{type:Number,default:0},tk_vt:{type:String,uppercase:!0,maxlength:32},tk_gv:{type:String,uppercase:!0,maxlength:32
|
|
5
|
-
maxlength:32},
|
|
6
|
-
|
|
7
|
-
ngay:Number,thang:Number,quy:Number,nam:Number,ma_kenh:String,ma_td1:String,ma_td2:String,ma_td3:String,ma_td4:String,ma_td5:String,ma_td6:String,ma_td7:String,ma_td8:String,ma_td9:String,pt_thanh_toan:String,pt_thanh_toan2:String,tien_paymentByPoints:Number,tien_evoucher:Number,
|
|
8
|
-
|
|
9
|
-
default:""}},{toJSON:{virtuals:!0}});
|
|
1
|
+
'use strict';const moment=require("moment"),sokhokhongtonSchema=new Schema({id_app:{type:String,required:!0,maxlength:1024},ma_dvcs:{type:String,required:!0,maxlength:1024},id_ct:{type:String,required:!0,maxlength:1024},ma_ct:{type:String,required:!0,uppercase:!0,maxlength:32,trim:!0},ma_gd:{type:String,default:"0",maxlength:32},ngay_ct:{type:Date,required:!0},so_ct:{type:String,required:!0,uppercase:!0,maxlength:32,trim:!0},nxt:{type:Number,required:!0},ma_nt:{type:String,default:"VND",required:!0,
|
|
2
|
+
uppercase:!0,maxlength:32,trim:!0},ty_gia:{type:Number,default:1},ma_vt:{type:String,required:!0,uppercase:!0,maxlength:1024,trim:!0},ma_dvt:{type:String,maxlength:32,trim:!0},ma_kho:{type:String,required:!0,uppercase:!0,maxlength:32,trim:!0},sl_nhap:{type:Number,default:0},sl_xuat:{type:Number,default:0},he_so_qd:{type:Number,default:1},sl_nhap_qd:{type:Number,default:0},sl_xuat_qd:{type:Number,default:0},pn_gia_tb:{type:Boolean,default:!1},px_gia_dd:{type:Boolean,default:!1},gia_von_nt:{type:Number,
|
|
3
|
+
default:0},gia_von:{type:Number,default:0},tien_hang_nt:{type:Number,default:0},tien_hang:{type:Number,default:0},ty_le_ck:{type:Number,default:0},tien_ck_nt:{type:Number,default:0},tien_ck:{type:Number,default:0},tien_phi_nt:{type:Number,default:0},tien_phi:{type:Number,default:0},tien_cp_nt:{type:Number,default:0},tien_cp:{type:Number,default:0},tien_hang_nk:{type:Number,default:0},tien_hang_nk_nt:{type:Number,default:0},thue_suat_nk:{type:Number,default:0},tien_thue_nk:{type:Number,default:0},
|
|
4
|
+
tien_thue_nk_nt:{type:Number,default:0},tien_nhap_nt:{type:Number,default:0},tien_nhap:{type:Number,default:0},tien_xuat:{type:Number,default:0},tien_xuat_nt:{type:Number,default:0},gia_ban:{type:Number,default:0},gia_ban_nt:{type:Number,default:0},tien:{type:Number,default:0},tien_nt:{type:Number,default:0},tk_vt:{type:String,uppercase:!0,maxlength:32,trim:!0},tk_gv:{type:String,uppercase:!0,maxlength:32,trim:!0},tk_du:{type:String,uppercase:!0,maxlength:32,trim:!0},tk_tl:{type:String,uppercase:!0,
|
|
5
|
+
maxlength:32,trim:!0},tk_dt:{type:String,uppercase:!0,maxlength:32,trim:!0},tk_ck:{type:String,uppercase:!0,maxlength:32,trim:!0},ma_kh:{type:String,uppercase:!0,default:"",maxlength:32,trim:!0},dien_giai:{type:String,default:"",maxlength:1024},ma_bp:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_phi:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_hd:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_dt:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},
|
|
6
|
+
ma_nv:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_lo:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},han_sd:{type:Date},ma_vt2:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_tt1:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_tt2:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_tt3:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_sp:{type:String,default:"",uppercase:!0,maxlength:1024,trim:!0},ma_dvt_sp:{type:String,
|
|
7
|
+
maxlength:32,trim:!0},ma_tt1_sp:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_tt2_sp:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_tt3_sp:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},gio:Number,ngay:Number,thang:Number,quy:Number,nam:Number,ma_kenh:String,ma_td1:String,ma_td2:String,ma_td3:String,ma_td4:String,ma_td5:String,ma_td6:String,ma_td7:String,ma_td8:String,ma_td9:String,pt_thanh_toan:String,pt_thanh_toan2:String,tien_paymentByPoints:Number,tien_evoucher:Number,
|
|
8
|
+
cashier:String,ma_cum_chi_tiet:{type:String,uppercase:!0,default:"",maxlength:32,trim:!0},ten_cum_chi_tiet:{type:String,default:"",maxlength:1024},ma_cong_doan:{type:String,uppercase:!0,default:"",maxlength:32,trim:!0},id_lenhsx:{type:String,maxlength:1024},id_lenhcapphat:{type:String,maxlength:1024},id_dinhmucsx:{type:String,maxlength:1024},id_cs:{type:String,maxlength:1024},ma_ca:{type:String,uppercase:!0,maxlength:32,trim:!0},trang_thai:{type:String,maxlength:32},id_reason:{type:String,maxlength:1024,
|
|
9
|
+
trim:!0},exfields:Schema.Types.Mixed,exfields_detail:Schema.Types.Mixed,line:Number,status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}},{toJSON:{virtuals:!0}});
|
|
10
10
|
sokhokhongtonSchema.pre("save",function($next$$){"VND"===this.ma_nt?(this.tien_nhap_nt=Math.round(this.tien_nhap_nt,0),this.tien_xuat_nt=Math.round(this.tien_xuat_nt,0),this.tien_nhap=this.tien_nhap_nt,this.tien_xuat=this.tien_xuat_nt):(this.tien_nhap=Math.round(this.tien_nhap,0),this.tien_xuat=Math.round(this.tien_xuat,0));let $ngay_ct$$=moment(this.ngay_ct);this.gio=$ngay_ct$$.get("hours");this.ngay=$ngay_ct$$.get("dates");this.quy=$ngay_ct$$.get("quarters");this.thang=$ngay_ct$$.get("months")+
|
|
11
11
|
1;this.nam=$ngay_ct$$.get("year");$next$$()});sokhokhongtonSchema.index({id_app:1});sokhokhongtonSchema.index({ma_dvcs:1});sokhokhongtonSchema.index({ngay_ct:-1});sokhokhongtonSchema.index({so_ct:-1});sokhokhongtonSchema.index({ma_ct:1});sokhokhongtonSchema.index({ma_vt:1});sokhokhongtonSchema.index({ma_kho:1});sokhokhongtonSchema.index({ma_kh:1});sokhokhongtonSchema.index({ma_bp:1});sokhokhongtonSchema.index({ma_phi:1});sokhokhongtonSchema.index({ma_sp:1});sokhokhongtonSchema.index({ma_nv:1});sokhokhongtonSchema.index({ma_dt:1});
|
|
12
12
|
sokhokhongtonSchema.index({ma_lo:1});sokhokhongtonSchema.index({han_sd:-1});sokhokhongtonSchema.index({ma_tt1:1});sokhokhongtonSchema.index({ma_tt2:1});sokhokhongtonSchema.index({ma_tt3:1});sokhokhongtonSchema.index({id_ct:1});sokhokhongtonSchema.index({id_lenhsx:1});sokhokhongtonSchema.index({id_dinhmucsx:1});sokhokhongtonSchema.index({id_cs:1});sokhokhongtonSchema.index({id_ct:1,line:1},{unique:!0});sokhokhongtonSchema.index({gio:1});sokhokhongtonSchema.index({ngay:1});sokhokhongtonSchema.index({thang:1});
|
package/server/models/sokhott.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
'use strict';const moment=require("moment"),sokhottSchema=new Schema({id_app:{type:String,required:!0,maxlength:1024},ma_dvcs:{type:String,required:!0,maxlength:1024},id_ct:{type:String,required:!0,maxlength:1024},ma_ct:{type:String,required:!0,uppercase:!0,maxlength:32},ma_gd:{type:String,default:"0",maxlength:32},ngay_ct:{type:Date,required:!0},so_ct:{type:String,required:!0,uppercase:!0,maxlength:32},nxt:{type:Number,required:!0},ma_nt:{type:String,default:"VND",required:!0,
|
|
2
|
-
ty_gia:{type:Number,default:1},ma_vt:{type:String,required:!0,uppercase:!0,maxlength:1024},ma_dvt:{type:String,maxlength:32},ma_kho:{type:String,required:!0,uppercase:!0,maxlength:32},sl_nhap:{type:Number,default:0},sl_xuat:{type:Number,default:0},he_so_qd:{type:Number,default:1},sl_nhap_qd:{type:Number,default:0},sl_xuat_qd:{type:Number,default:0},pn_gia_tb:{type:Boolean,default:!1},px_gia_dd:{type:Boolean,default:!1},gia_von_nt:{type:Number,
|
|
3
|
-
default:0},
|
|
4
|
-
tien_nhap:{type:Number,default:0},tien_xuat:{type:Number,default:0},tien_xuat_nt:{type:Number,default:0},gia_ban:{type:Number,default:0},gia_ban_nt:{type:Number,default:0},tien:{type:Number,default:0},tien_nt:{type:Number,default:0},tk_vt:{type:String,uppercase:!0,maxlength:32},tk_gv:{type:String,uppercase:!0,maxlength:32},tk_du:{type:String,uppercase:!0,maxlength:32},tk_tl:{type:String,uppercase:!0,maxlength:32},tk_dt:{type:String,
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
quy:Number,nam:Number,ma_kenh:String,ma_td1:String,ma_td2:String,ma_td3:String,ma_td4:String,ma_td5:String,ma_td6:String,ma_td7:String,ma_td8:String,ma_td9:String,pt_thanh_toan:String,pt_thanh_toan2:String,tien_paymentByPoints:Number,tien_evoucher:Number,cashier:String,ma_cum_chi_tiet:{type:String,
|
|
8
|
-
|
|
1
|
+
'use strict';const moment=require("moment"),sokhottSchema=new Schema({id_app:{type:String,required:!0,maxlength:1024},ma_dvcs:{type:String,required:!0,maxlength:1024},id_ct:{type:String,required:!0,maxlength:1024},ma_ct:{type:String,required:!0,uppercase:!0,maxlength:32,trim:!0},ma_gd:{type:String,default:"0",maxlength:32,trim:!0},ngay_ct:{type:Date,required:!0},so_ct:{type:String,required:!0,uppercase:!0,maxlength:32,trim:!0},nxt:{type:Number,required:!0},ma_nt:{type:String,default:"VND",required:!0,
|
|
2
|
+
uppercase:!0,maxlength:32,trim:!0},ty_gia:{type:Number,default:1},ma_vt:{type:String,required:!0,uppercase:!0,maxlength:1024,trim:!0},ma_dvt:{type:String,maxlength:32,trim:!0},ma_kho:{type:String,required:!0,uppercase:!0,maxlength:32,trim:!0},sl_nhap:{type:Number,default:0},sl_xuat:{type:Number,default:0},he_so_qd:{type:Number,default:1},sl_nhap_qd:{type:Number,default:0},sl_xuat_qd:{type:Number,default:0},pn_gia_tb:{type:Boolean,default:!1},px_gia_dd:{type:Boolean,default:!1},gia_von_nt:{type:Number,
|
|
3
|
+
default:0},gia_von:{type:Number,default:0},tien_hang_nt:{type:Number,default:0},tien_hang:{type:Number,default:0},ty_le_ck:{type:Number,default:0},tien_ck_nt:{type:Number,default:0},tien_ck:{type:Number,default:0},tien_phi_nt:{type:Number,default:0},tien_phi:{type:Number,default:0},tien_cp_nt:{type:Number,default:0},tien_cp:{type:Number,default:0},tien_hang_nk:{type:Number,default:0},tien_hang_nk_nt:{type:Number,default:0},thue_suat_nk:{type:Number,default:0},tien_thue_nk:{type:Number,default:0},
|
|
4
|
+
tien_thue_nk_nt:{type:Number,default:0},tien_nhap_nt:{type:Number,default:0},tien_nhap:{type:Number,default:0},tien_xuat:{type:Number,default:0},tien_xuat_nt:{type:Number,default:0},gia_ban:{type:Number,default:0},gia_ban_nt:{type:Number,default:0},tien:{type:Number,default:0},tien_nt:{type:Number,default:0},tk_vt:{type:String,uppercase:!0,maxlength:32},tk_gv:{type:String,uppercase:!0,maxlength:32},tk_du:{type:String,uppercase:!0,maxlength:32},tk_tl:{type:String,uppercase:!0,maxlength:32},tk_dt:{type:String,
|
|
5
|
+
uppercase:!0,maxlength:32},tk_ck:{type:String,uppercase:!0,maxlength:32},ma_kh:{type:String,uppercase:!0,default:"",maxlength:32,trim:!0},dien_giai:{type:String,default:"",maxlength:1024},ma_bp:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_phi:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_hd:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_dt:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_nv:{type:String,default:"",uppercase:!0,maxlength:32,
|
|
6
|
+
trim:!0},ma_lo:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},han_sd:{type:Date},ma_vt2:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_tt1:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_tt2:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_tt3:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_sp:{type:String,default:"",uppercase:!0,maxlength:1024,trim:!0},ma_dvt_sp:{type:String,maxlength:32,trim:!0},ma_tt1_sp:{type:String,default:"",
|
|
7
|
+
uppercase:!0,maxlength:32,trim:!0},ma_tt2_sp:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},ma_tt3_sp:{type:String,default:"",uppercase:!0,maxlength:32,trim:!0},gio:Number,ngay:Number,thang:Number,quy:Number,nam:Number,ma_kenh:String,ma_td1:String,ma_td2:String,ma_td3:String,ma_td4:String,ma_td5:String,ma_td6:String,ma_td7:String,ma_td8:String,ma_td9:String,pt_thanh_toan:String,pt_thanh_toan2:String,tien_paymentByPoints:Number,tien_evoucher:Number,cashier:String,ma_cum_chi_tiet:{type:String,
|
|
8
|
+
uppercase:!0,default:"",maxlength:32,trim:!0},ten_cum_chi_tiet:{type:String,default:"",maxlength:1024},ma_cong_doan:{type:String,uppercase:!0,default:"",maxlength:32,trim:!0},id_lenhsx:{type:String,maxlength:1024},id_lenhcapphat:{type:String,maxlength:1024},id_dinhmucsx:{type:String,maxlength:1024},id_cs:{type:String,maxlength:1024},ma_ca:{type:String,uppercase:!0,maxlength:32,trim:!0},trang_thai:{type:String,maxlength:32},id_reason:{type:String,maxlength:1024,trim:!0},exfields:Schema.Types.Mixed,
|
|
9
|
+
exfields_detail:Schema.Types.Mixed,line:Number,status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}},{toJSON:{virtuals:!0}});
|
|
9
10
|
sokhottSchema.pre("save",function($next$$){"VND"===this.ma_nt?(this.tien_nhap_nt=Math.round(this.tien_nhap_nt,0),this.tien_xuat_nt=Math.round(this.tien_xuat_nt,0),this.tien_nhap=this.tien_nhap_nt,this.tien_xuat=this.tien_xuat_nt):(this.tien_nhap=Math.round(this.tien_nhap,0),this.tien_xuat=Math.round(this.tien_xuat,0));let $ngay_ct$$=moment(this.ngay_ct);this.gio=$ngay_ct$$.get("hours");this.ngay=$ngay_ct$$.get("dates");this.quy=$ngay_ct$$.get("quarters");this.thang=$ngay_ct$$.get("months")+1;this.nam=
|
|
10
11
|
$ngay_ct$$.get("year");$next$$()});sokhottSchema.index({id_app:1});sokhottSchema.index({ma_dvcs:1});sokhottSchema.index({ngay_ct:-1});sokhottSchema.index({so_ct:-1});sokhottSchema.index({ma_ct:1});sokhottSchema.index({ma_vt:1});sokhottSchema.index({ma_kho:1});sokhottSchema.index({ma_kh:1});sokhottSchema.index({ma_bp:1});sokhottSchema.index({ma_phi:1});sokhottSchema.index({ma_sp:1});sokhottSchema.index({ma_nv:1});sokhottSchema.index({ma_dt:1});sokhottSchema.index({ma_lo:1});sokhottSchema.index({han_sd:-1});
|
|
11
12
|
sokhottSchema.index({ma_tt1:1});sokhottSchema.index({ma_tt2:1});sokhottSchema.index({ma_tt3:1});sokhottSchema.index({id_ct:1});sokhottSchema.index({id_lenhsx:1});sokhottSchema.index({id_dinhmucsx:1});sokhottSchema.index({id_ct:1,line:1},{unique:!0});sokhottSchema.index({id_cs:1});sokhottSchema.index({cashier:1});sokhottSchema.index({id_app:1,id_ct:1,so_ct:-1,ngay_ct:-1,ma_vt:1,ma_kho:1});sokhottSchema.index({dien_giai:"text"});sokhottSchema.index({status:1});
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
'use strict';const sophanbokhScheam=new Schema({id_app:{type:String,required:!0,maxlength:1024},nam:{type:Number,required:!0},thang:{type:Number,required:!0},id_ts:{type:String,maxlength:1024},nguyen_gia:{type:Number,default:0},gia_tri_da_kh:{type:Number,default:0},gia_tri_con_lai:{type:Number,default:0},gia_tri_kh_ky:{type:Number,default:0},tk_kh:{type:String,uppercase:!0,maxlength:32},tk_cp:{type:String,uppercase:!0,maxlength:32},ma_bp:{type:String,uppercase:!0,maxlength:32
|
|
2
|
-
uppercase:!0,maxlength:32},ma_hd:{type:String,uppercase:!0,maxlength:32},ma_dt:{type:String,uppercase:!0,maxlength:32},ma_nv:{type:String,uppercase:!0,maxlength:32},ma_sp:{type:String,uppercase:!0,maxlength:1024},ngay_dau_thang:Date,ngay_cuoi_thang:Date,so_ngay_kh:Number,sua_kh:{type:Boolean,default:!1},status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,
|
|
3
|
-
sophanbokhScheam.index({user_created:1,visible_to:1,visible_to_users:1});module.exports=mongoose.models.sophanbokh||mongoose.model("sophanbokh",sophanbokhScheam);
|
|
1
|
+
'use strict';const sophanbokhScheam=new Schema({id_app:{type:String,required:!0,maxlength:1024},nam:{type:Number,required:!0},thang:{type:Number,required:!0},id_ts:{type:String,maxlength:1024,trim:!0},nguyen_gia:{type:Number,default:0},gia_tri_da_kh:{type:Number,default:0},gia_tri_con_lai:{type:Number,default:0},gia_tri_kh_ky:{type:Number,default:0},tk_kh:{type:String,uppercase:!0,maxlength:32,trim:!0},tk_cp:{type:String,uppercase:!0,maxlength:32,trim:!0},ma_bp:{type:String,uppercase:!0,maxlength:32,
|
|
2
|
+
trim:!0},ma_phi:{type:String,uppercase:!0,maxlength:32,trim:!0},ma_hd:{type:String,uppercase:!0,maxlength:32,trim:!0},ma_dt:{type:String,uppercase:!0,maxlength:32,trim:!0},ma_nv:{type:String,uppercase:!0,maxlength:32,trim:!0},ma_sp:{type:String,uppercase:!0,maxlength:1024,trim:!0},ngay_dau_thang:Date,ngay_cuoi_thang:Date,so_ngay_kh:Number,sua_kh:{type:Boolean,default:!1},status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,
|
|
3
|
+
default:""},user_updated:{type:String,default:""}});sophanbokhScheam.index({status:1});sophanbokhScheam.index({user_created:1,visible_to:1,visible_to_users:1});module.exports=mongoose.models.sophanbokh||mongoose.model("sophanbokh",sophanbokhScheam);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
'use strict';const sosanxuatSchema=new global.Schema({id_app:{type:String,required:!0,maxlength:1024},id_ct:{type:String,maxlength:1024},ma_dvcs:{type:String,required:!0,maxlength:1024},ma_ct:{type:String,uppercase:!0,maxlength:32},ma_gd:{type:String,default:"0",maxlength:32},so_ct:{type:String,required:!0,uppercase:!0,trim:!0,maxlength:32},ngay_ct:{type:Date,default:Date.now,required:!0},id_lenhsx:{type:String,maxlength:1024},id_contract:{type:String,maxlength:1024
|
|
2
|
-
ma_sp:{type:String,maxlength:1024},ma_dvt_sp:{type:String,maxlength:32},ma_cong_doan:{type:String,maxlength:32},stt:Number,ma_bp:String,sl_yc:Number,sl_ht:Number,dien_giai:{type:String,default:"",maxlength:1024},exfields:global.Schema.Types.Mixed,trang_thai:{type:String,maxlength:32},status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},
|
|
3
|
-
default:0},visible_to_users:[String]});sosanxuatSchema.index({id_app:1,ma_dvcs:1,so_ct:-1,ngay_ct:-1});sosanxuatSchema.index({ma_ct:1});sosanxuatSchema.index({id_ct:1});sosanxuatSchema.index({trang_thai:1});sosanxuatSchema.index({id_lenhsx:1});sosanxuatSchema.index({id_contract:1});sosanxuatSchema.index({ma_kh:1});sosanxuatSchema.index({ma_sp:1});sosanxuatSchema.index({ma_cong_doan:1});sosanxuatSchema.index({ma_bp:1});
|
|
4
|
-
sosanxuatSchema.index({status:1});sosanxuatSchema.index({user_created:1,visible_to:1,visible_to_users:1});module.exports=global.mongoose.models.sosanxuat||global.mongoose.model("sosanxuat",sosanxuatSchema);
|
|
1
|
+
'use strict';const sosanxuatSchema=new global.Schema({id_app:{type:String,required:!0,maxlength:1024},id_ct:{type:String,maxlength:1024},ma_dvcs:{type:String,required:!0,maxlength:1024},ma_ct:{type:String,uppercase:!0,maxlength:32,trim:!0},ma_gd:{type:String,default:"0",maxlength:32,trim:!0},so_ct:{type:String,required:!0,uppercase:!0,trim:!0,maxlength:32},ngay_ct:{type:Date,default:Date.now,required:!0},id_lenhsx:{type:String,maxlength:1024,trim:!0},id_contract:{type:String,maxlength:1024,trim:!0},
|
|
2
|
+
ma_kh:{type:String,maxlength:32,trim:!0},ma_sp:{type:String,maxlength:1024,trim:!0},ma_dvt_sp:{type:String,maxlength:32,trim:!0},ma_cong_doan:{type:String,maxlength:32,trim:!0},stt:Number,ma_bp:String,sl_yc:Number,sl_ht:Number,dien_giai:{type:String,default:"",maxlength:1024},exfields:global.Schema.Types.Mixed,trang_thai:{type:String,maxlength:32},status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},
|
|
3
|
+
user_updated:{type:String,default:""},visible_to:{type:Number,default:0},visible_to_users:[String]});sosanxuatSchema.index({id_app:1,ma_dvcs:1,so_ct:-1,ngay_ct:-1});sosanxuatSchema.index({ma_ct:1});sosanxuatSchema.index({id_ct:1});sosanxuatSchema.index({trang_thai:1});sosanxuatSchema.index({id_lenhsx:1});sosanxuatSchema.index({id_contract:1});sosanxuatSchema.index({ma_kh:1});sosanxuatSchema.index({ma_sp:1});sosanxuatSchema.index({ma_cong_doan:1});sosanxuatSchema.index({ma_bp:1});
|
|
4
|
+
sosanxuatSchema.index({user_created:1,date_created:-1});sosanxuatSchema.index({date_updated:-1});sosanxuatSchema.index({status:1});sosanxuatSchema.index({user_created:1,visible_to:1,visible_to_users:1});module.exports=global.mongoose.models.sosanxuat||global.mongoose.model("sosanxuat",sosanxuatSchema);
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use strict';const sotinhkhScheam=new Schema({id_app:{type:String,required:!0,maxlength:1024},nam:{type:Number,required:!0},thang:{type:Number,required:!0},id_ts:{type:String,maxlength:1024},nguyen_gia:{type:Number,default:0},gia_tri_da_kh:{type:Number,default:0},gia_tri_con_lai:{type:Number,default:0},gia_tri_kh_ky:{type:Number,default:0},ngay_dau_thang:Date,ngay_cuoi_thang:Date,so_ngay_kh:Number,sua_kh:{type:Boolean,default:!1},dieuchinh:{type:Boolean,default:!1},status:{type:Boolean,default:!0},
|
|
1
|
+
'use strict';const sotinhkhScheam=new Schema({id_app:{type:String,required:!0,maxlength:1024},nam:{type:Number,required:!0},thang:{type:Number,required:!0},id_ts:{type:String,maxlength:1024,trim:!0},nguyen_gia:{type:Number,default:0},gia_tri_da_kh:{type:Number,default:0},gia_tri_con_lai:{type:Number,default:0},gia_tri_kh_ky:{type:Number,default:0},ngay_dau_thang:Date,ngay_cuoi_thang:Date,so_ngay_kh:Number,sua_kh:{type:Boolean,default:!1},dieuchinh:{type:Boolean,default:!1},status:{type:Boolean,default:!0},
|
|
2
2
|
date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}});sotinhkhScheam.index({nam:1,thang:1,id_ts:1});sotinhkhScheam.index({status:1});sotinhkhScheam.index({user_created:1,visible_to:1,visible_to_users:1});module.exports=mongoose.models.sotinhkh||mongoose.model("sotinhkh",sotinhkhScheam);
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
'use strict';const tableinfoSchema=new global.Schema({code:{type:String,uppercase:!0,required:!0},title:{type:String,uppercase:!0,required:!0},headers:[{line:Number,hide:String,cells:[{header:String,field:String,rowSpan:Number,colSpan:Number,textAlign:String,index:Number,dataType:String,readOnly:Boolean,hide:Boolean,hide_when:String,width:Number,color:String,bold:Boolean,italic:Boolean,small:Boolean,label:String,maximumFractionDigits:Number,style:String}]}],rows:[{line:Number,hide:String,
|
|
2
|
-
rowSpan:Number,colSpan:Number,textAlign:String,index:Number,dataType:String,readOnly:Boolean,hide:Boolean,hide_when:String,width:Number,color:String,bold:Boolean,italic:Boolean,small:Boolean,label:String,maximumFractionDigits:Number,style:String}]}],description:String,status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}});
|
|
3
|
-
tableinfoSchema.index({code:1});tableinfoSchema.index({title:1});tableinfoSchema.index({status:1});tableinfoSchema.index({user_created:1,visible_to:1,visible_to_users:1});var model=global.mongoose.models.tableinfo||global.mongoose.model("tableinfo",tableinfoSchema);module.exports=model;
|
|
1
|
+
'use strict';const tableinfoSchema=new global.Schema({code:{type:String,uppercase:!0,required:!0,trim:!0},title:{type:String,uppercase:!0,required:!0},headers:[{line:Number,hide:String,cells:[{header:String,field:String,rowSpan:Number,colSpan:Number,textAlign:String,index:Number,dataType:String,readOnly:Boolean,hide:Boolean,hide_when:String,width:Number,color:String,bold:Boolean,italic:Boolean,small:Boolean,label:String,maximumFractionDigits:Number,style:String}]}],rows:[{line:Number,hide:String,
|
|
2
|
+
cells:[{field:String,rowSpan:Number,colSpan:Number,textAlign:String,index:Number,dataType:String,readOnly:Boolean,hide:Boolean,hide_when:String,width:Number,color:String,bold:Boolean,italic:Boolean,small:Boolean,label:String,maximumFractionDigits:Number,style:String}]}],description:String,status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}});
|
|
3
|
+
tableinfoSchema.index({code:"text",title:"text"});tableinfoSchema.index({code:1});tableinfoSchema.index({title:1});tableinfoSchema.index({status:1});tableinfoSchema.index({user_created:1,visible_to:1,visible_to_users:1});var model=global.mongoose.models.tableinfo||global.mongoose.model("tableinfo",tableinfoSchema);module.exports=model;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use strict';const templaterptSchema=new Schema({_id_o:{type:String,maxlength:1024},id_app:{type:String,required:!0,maxlength:1024},ma_cn:{type:String,required:!0,uppercase:!0,maxlength:32},ten_mau_in:{type:String,required:!0,maxlength:1024},html_code:{type:String},exfields:Schema.Types.Mixed,status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}});
|
|
1
|
+
'use strict';const templaterptSchema=new Schema({_id_o:{type:String,maxlength:1024},id_app:{type:String,required:!0,maxlength:1024},ma_cn:{type:String,required:!0,uppercase:!0,maxlength:32,trim:!0},ten_mau_in:{type:String,required:!0,maxlength:1024},html_code:{type:String,trim:!0},exfields:Schema.Types.Mixed,status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}});
|
|
2
2
|
templaterptSchema.index({id_app:1,ma_cn:1,ten_mau_in:1});templaterptSchema.index({ma_cn:"text",ten_mau_in:"text"});templaterptSchema.index({status:1});templaterptSchema.index({user_created:1,visible_to:1,visible_to_users:1});const model=mongoose.models.templaterpt||mongoose.model("templaterpt",templaterptSchema);module.exports=model;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
'use strict';const templatestoreSchema=new Schema({func_code:{type:String,required:!0,lowercase:!0,maxlength:32},func_ref:{type:String,lowercase:!0,maxlength:32},code:{type:String,required:!0},title:{type:String,required:!0,maxlength:1024},description:{type:String,maxlength:4E3},picture:{type:String},data:Schema.Types.Mixed,price:{type:Number,default:0},currency:{type:String,default:"VND"},default_when_create_app:{type:Boolean,default:!1},exfields:Schema.Types.Mixed,status:{type:Boolean,
|
|
2
|
-
date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""},visible_to:{type:Number,default:1},visible_to_users:[String]});templatestoreSchema.index({code:1,title:1});templatestoreSchema.index({func_code:1});templatestoreSchema.index({func_ref:1});templatestoreSchema.index({title:"text"},{name:"templateevoucher_index_text"});templatestoreSchema.index({status:1});
|
|
1
|
+
'use strict';const templatestoreSchema=new Schema({func_code:{type:String,required:!0,lowercase:!0,maxlength:32,trim:!0},func_ref:{type:String,lowercase:!0,maxlength:32,trim:!0},code:{type:String,required:!0,trim:!0},title:{type:String,required:!0,maxlength:1024},description:{type:String,maxlength:4E3},picture:{type:String},data:Schema.Types.Mixed,price:{type:Number,default:0},currency:{type:String,default:"VND"},default_when_create_app:{type:Boolean,default:!1},exfields:Schema.Types.Mixed,status:{type:Boolean,
|
|
2
|
+
default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""},visible_to:{type:Number,default:1},visible_to_users:[String]});templatestoreSchema.index({code:1,title:1});templatestoreSchema.index({func_code:1});templatestoreSchema.index({func_ref:1});templatestoreSchema.index({title:"text"},{name:"templateevoucher_index_text"});templatestoreSchema.index({status:1});
|
|
3
3
|
templatestoreSchema.index({user_created:1,visible_to:1,visible_to_users:1});const model=mongoose.models.templatestore||mongoose.model("templatestore",templatestoreSchema);module.exports=model;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
'use strict';const templatevoucherSchema=new Schema({id_app:{type:String,required:!0,maxlength:1024},voucher_code:{type:String,required:!0,uppercase:!0,maxlength:32},code:{type:String,required:!0,uppercase:!0,maxlength:32},title:{type:String,required:!0,maxlength:1024},data:Schema.Types.Mixed,exfields:Schema.Types.Mixed,status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,
|
|
1
|
+
'use strict';const templatevoucherSchema=new Schema({id_app:{type:String,required:!0,maxlength:1024},voucher_code:{type:String,required:!0,uppercase:!0,maxlength:32,trim:!0},code:{type:String,required:!0,uppercase:!0,maxlength:32,trim:!0},title:{type:String,required:!0,maxlength:1024},data:Schema.Types.Mixed,exfields:Schema.Types.Mixed,status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,
|
|
2
2
|
default:""},visible_to:{type:Number,default:1},visible_to_users:[String],dataview_to:{type:Number,default:0},dataview_to_users:[String]});templatevoucherSchema.index({id_app:1,voucher_code:1,code:1,title:1});templatevoucherSchema.index({voucher_code:"text",code:"text",title:"text"},{name:"templateevoucher_index_text"});templatevoucherSchema.index({status:1});templatevoucherSchema.index({user_created:1,visible_to:1,visible_to_users:1});
|
|
3
3
|
const model=mongoose.models.templatevoucher||mongoose.model("templatevoucher",templatevoucherSchema);module.exports=model;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use strict';const tinhthanhSchema=new Schema({ten_tinh_thanh:{type:String,required:!0,maxlength:1024},description:String,stt:{type:Number,default:0},status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}});tinhthanhSchema.index({ten_tinh_thanh:"text"});tinhthanhSchema.index({ten_tinh_thanh:1});tinhthanhSchema.index({status:1});
|
|
1
|
+
'use strict';const tinhthanhSchema=new Schema({ten_tinh_thanh:{type:String,required:!0,maxlength:1024,trim:!0},description:String,stt:{type:Number,default:0},status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}});tinhthanhSchema.index({ten_tinh_thanh:"text"});tinhthanhSchema.index({ten_tinh_thanh:1});tinhthanhSchema.index({status:1});
|
|
2
2
|
tinhthanhSchema.index({user_created:1,visible_to:1,visible_to_users:1});const model=mongoose.models.tinhthanh||mongoose.model("tinhthanh",tinhthanhSchema);module.exports=model;
|
package/server/models/tokens.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use strict';const tokenSchema=new Schema({email:{type:String,lowercase:!0,maxlength:128},token:String,refreshToken:String,agent:String,ip:String,service:String,once:Boolean,used:Boolean,note:String,status:{type:Boolean,default:!0},last_access:{type:Date,default:Date.now},date_created:{type:Date,default:Date.now}});tokenSchema.index({email:1});tokenSchema.index({token:"text"});tokenSchema.index({ip:1});tokenSchema.index({date_created:-1});tokenSchema.index({status:1});
|
|
1
|
+
'use strict';const tokenSchema=new Schema({email:{type:String,lowercase:!0,maxlength:128,trim:!0},token:String,refreshToken:String,agent:String,ip:String,service:String,once:Boolean,used:Boolean,note:String,status:{type:Boolean,default:!0},last_access:{type:Date,default:Date.now},date_created:{type:Date,default:Date.now}});tokenSchema.index({email:1});tokenSchema.index({token:"text"});tokenSchema.index({ip:1});tokenSchema.index({date_created:-1});tokenSchema.index({status:1});
|
|
2
2
|
module.exports=mongoose.models.token||mongoose.model("token",tokenSchema);
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
'use strict';const trangthaiSchema=new Schema({ma_ct:{type:String,uppercase:!0,required:!0,maxlength:32},ma_trang_thai:{type:String,uppercase:!0,required:!0,maxlength:32},ten_trang_thai:{type:String,required:!0,maxlength:1024},ten_trang_thai_en:{type:String,maxlength:1024},post:{type:Boolean,default:!1},post_sokho:{type:Boolean,default:!1},post_socai:{type:Boolean,default:!1},allow_delete:{type:Boolean,default:!1},allow_update:{type:Boolean,default:!1},lock_data:{type:Boolean,default:!1},
|
|
2
|
-
default:!0},not_need_right:{type:Boolean,default:!0},description:String,stt:{type:Number,default:0},color:String,status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}});trangthaiSchema.index({ma_ct:1});trangthaiSchema.index({ma_trang_thai:1});trangthaiSchema.index({ten_trang_thai:1});
|
|
1
|
+
'use strict';const trangthaiSchema=new Schema({ma_ct:{type:String,uppercase:!0,required:!0,maxlength:32,trim:!0},ma_trang_thai:{type:String,uppercase:!0,required:!0,maxlength:32,trim:!0},ten_trang_thai:{type:String,required:!0,maxlength:1024},ten_trang_thai_en:{type:String,maxlength:1024},post:{type:Boolean,default:!1},post_sokho:{type:Boolean,default:!1},post_socai:{type:Boolean,default:!1},allow_delete:{type:Boolean,default:!1},allow_update:{type:Boolean,default:!1},lock_data:{type:Boolean,default:!1},
|
|
2
|
+
check_data:{type:Boolean,default:!0},not_need_right:{type:Boolean,default:!0},description:String,stt:{type:Number,default:0},color:String,status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}});trangthaiSchema.index({ma_ct:1});trangthaiSchema.index({ma_trang_thai:1});trangthaiSchema.index({ten_trang_thai:1});
|
|
3
3
|
trangthaiSchema.index({ma_trang_thai:"text",ten_trang_thai:"text",ma_ct:"text"},{name:"trangthai_index_text"});trangthaiSchema.index({status:1});trangthaiSchema.index({user_created:1,visible_to:1,visible_to_users:1});const model=mongoose.models.trangthai||mongoose.model("trangthai",trangthaiSchema);module.exports=model;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
'use strict';const usergroupSchema=new Schema({id_app:{type:String,required:!0,maxlength:1024},group_name:{type:String,required:!0,maxlength:1024},phu_trach:{type:String,maxlength:1024},is_customer_group:{type:Boolean,default:!1},is_employee_group:{type:Boolean,default:!1},is_partner_group:{type:Boolean,default:!1},tang_duoc_gioi_thieu:Number,tang_gioi_thieu:Number,ty_le_hoa_hong:Number,tang_gioi_thieu_pt:Number,ty_le_hoa_hong_pt:Number,tang_gioi_thieu_denom:String,group_mother:String,status:{type:Boolean,
|
|
1
|
+
'use strict';const usergroupSchema=new Schema({id_app:{type:String,required:!0,maxlength:1024},group_name:{type:String,required:!0,maxlength:1024},phu_trach:{type:String,maxlength:1024,trim:!0},is_customer_group:{type:Boolean,default:!1},is_employee_group:{type:Boolean,default:!1},is_partner_group:{type:Boolean,default:!1},tang_duoc_gioi_thieu:Number,tang_gioi_thieu:Number,ty_le_hoa_hong:Number,tang_gioi_thieu_pt:Number,ty_le_hoa_hong_pt:Number,tang_gioi_thieu_denom:String,group_mother:String,status:{type:Boolean,
|
|
2
2
|
default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""},visible_to:{type:Number,default:0},visible_to_users:[String],dataview_to:{type:Number,default:0},dataview_to_users:[String]});usergroupSchema.index({id_app:1,is_customer_group:1});usergroupSchema.index({id_app:1,is_employee_group:1});usergroupSchema.index({phu_trach:1});usergroupSchema.index({group_name:1});usergroupSchema.index({group_mother:1});
|
|
3
3
|
usergroupSchema.index({status:1});usergroupSchema.index({user_created:1,visible_to:1,visible_to_users:1});usergroupSchema.index({group_name:"text"});const model=mongoose.models.usergroup||mongoose.model("usergroup",usergroupSchema);model.referenceKeys={_id:[{model:"participant",key:"group_id",error:"Kh\u00f4ng th\u1ec3 x\u00f3a nh\u00f3m n\u00e0y."}]};
|
|
4
4
|
model.getInfo=async($id_app$$,$condition$$,$fields$$)=>{$condition$$.id_app=$id_app$$;return new Promise(($resolve$$,$reject$$)=>{model.findOne($condition$$).lean().exec(($e$$,$rs$$)=>{if($e$$||!$rs$$)return $reject$$(Error($e$$?$e$$.message:`Can't find user group:${$condition$$}`));$resolve$$($fields$$?$rs$$[$fields$$]:$rs$$)})})};
|
package/server/models/vat.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
'use strict';const validAccount=require("../libs/validator-account"),vatSchema=new Schema({id_app:{type:String,required:!0,maxlength:1024},ma_thue:{type:String,uppercase:!0,required:!0,maxlength:32},ten_thue:{type:String,required:!0,maxlength:1024},thue_suat:{type:Number,default:0},stt_in:{type:Number,default:0},tk_thue_no:{type:String,default:"",required:!0,maxlength:32},tk_thue_co:{type:String,default:"",required:!0,maxlength:32},tk_thue_no_treo:{type:String,default:"",maxlength:32
|
|
2
|
-
default:"",maxlength:32},status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}});vatSchema.validate={tk_thue_co:validAccount.existsTk,tk_thue_no:validAccount.existsTk};vatSchema.index({id_app:1,ma_thue:1,ten_thue:1,thue_suat:1,tk_thue_co:1,tk_thue_no:1});vatSchema.index({ma_thue:"text",ten_thue:"text"});vatSchema.index({status:1});
|
|
1
|
+
'use strict';const validAccount=require("../libs/validator-account"),vatSchema=new Schema({id_app:{type:String,required:!0,maxlength:1024},ma_thue:{type:String,uppercase:!0,required:!0,maxlength:32,trim:!0},ten_thue:{type:String,required:!0,maxlength:1024},thue_suat:{type:Number,default:0},stt_in:{type:Number,default:0},tk_thue_no:{type:String,default:"",required:!0,maxlength:32,trim:!0},tk_thue_co:{type:String,default:"",required:!0,maxlength:32,trim:!0},tk_thue_no_treo:{type:String,default:"",maxlength:32,
|
|
2
|
+
trim:!0},tk_thue_co_treo:{type:String,default:"",maxlength:32,trim:!0},status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}});vatSchema.validate={tk_thue_co:validAccount.existsTk,tk_thue_no:validAccount.existsTk};vatSchema.index({id_app:1,ma_thue:1,ten_thue:1,thue_suat:1,tk_thue_co:1,tk_thue_no:1});vatSchema.index({ma_thue:"text",ten_thue:"text"});vatSchema.index({status:1});
|
|
3
3
|
vatSchema.index({user_created:1,visible_to:1,visible_to_users:1});module.exports=mongoose.models.vat||mongoose.model("vat",vatSchema);
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use strict';const xaphuongSchema=new Schema({ten_tinh_thanh:{type:String,required:!0,maxlength:1024},ten_quan_huyen:{type:String,required:!0,maxlength:1024},ten_xa_phuong:{type:String,required:!0,maxlength:1024},description:String,stt:{type:Number,default:0},status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}});
|
|
1
|
+
'use strict';const xaphuongSchema=new Schema({ten_tinh_thanh:{type:String,required:!0,maxlength:1024,trim:!0},ten_quan_huyen:{type:String,required:!0,maxlength:1024,trim:!0},ten_xa_phuong:{type:String,required:!0,maxlength:1024,trim:!0},description:String,stt:{type:Number,default:0},status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}});
|
|
2
2
|
xaphuongSchema.index({ten_tinh_thanh:1,ten_quan_huyen:1,ten_xa_phuong:1});xaphuongSchema.index({ten_tinh_thanh:"text",ten_quan_huyen:"text",ten_xa_phuong:"text"});xaphuongSchema.index({status:1});xaphuongSchema.index({user_created:1,visible_to:1,visible_to_users:1});const model=mongoose.models.xaphuong||mongoose.model("xaphuong",xaphuongSchema);module.exports=model;
|
|
@@ -5,17 +5,19 @@ $extension_root$$=configs.paths.images;$extension_root$$||($extension_root$$=__d
|
|
|
5
5
|
$error$$=10*$value$$.width/100;watermark.embed({type:"image",source:$file_name$$,logo:$file_logo$$,destination:$file_name_watermark$$,position:{logoX:$value$$.width-$error$$-10,logoY:10,logoHeight:$error$$,logoWidth:$error$$}},function($status$$){1===$status$$.status?$resolve$$($file_name_watermark$$):(console.log("status set watermark",$status$$),$resolve$$($file_name$$))})})}):(console.log("file logo watermark is not exists",$file_logo$$),$file_name$$)},configResizeImage=async($_size_file_name_resize$$,
|
|
6
6
|
$file_name$$,$extension$$,$recache$$)=>{let $size$$,$cache$$;if($_size_file_name_resize$$)switch($_size_file_name_resize$$.toString().toUpperCase()){case "64":case "X":$size$$=64;$cache$$=!0;break;case "256":$size$$=256;$cache$$=!0;break;case "S":case "320":$size$$=320;$cache$$=!0;break;case "512":case "M":$size$$=512;$cache$$=!0;break;case "1024":case "L":$size$$=1024;$cache$$=!0;break;case "1080":case "FULLHD":$size$$=1080;$cache$$=!0;break;case "1440":case "2K":$size$$=1440;$cache$$=!0;break;default:try{$size$$=
|
|
7
7
|
Number($_size_file_name_resize$$)}catch($e$$){console.log("size param must be X or S or M or L or a number")}}return $size$$?($_size_file_name_resize$$=`${$file_name$$}.${$size$$}.${$extension$$}`,!$recache$$&&fs.existsSync($_size_file_name_resize$$)?{file_name_resize:$_size_file_name_resize$$,exist:!0}:{cache:$cache$$,size:$size$$,file_name_resize:$_size_file_name_resize$$}):{file_name_resize:$file_name$$}};
|
|
8
|
-
module.exports=function($contr_router$$){$contr_router$$=new controller($contr_router$$,model,"file",{sort:{ten_file:1},onView:($user$$,$items$$,$next$$)=>{$items$$.forEach($item$$=>{$item$$.file&&(delete $item$$.file.encoding,delete $item$$.file.mimetype,delete $item$$.file.path,$item$$.id_app&&configs.api_url&&($item$$.download_link=`${configs.api_url||""}/${$item$$.id_app}/file/download/${$item$$._id.toString()}`))});$next$$(null,$items$$)}});$contr_router$$.creating=function($
|
|
9
|
-
$obj
|
|
10
|
-
path.
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
$
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
$
|
|
21
|
-
$
|
|
8
|
+
module.exports=function($contr_router$$){$contr_router$$=new controller($contr_router$$,model,"file",{sort:{ten_file:1},onView:($user$$,$items$$,$next$$)=>{$items$$.forEach($item$$=>{$item$$.file&&(delete $item$$.file.encoding,delete $item$$.file.mimetype,delete $item$$.file.path,$item$$.id_app&&configs.api_url&&($item$$.download_link=`${configs.api_url||""}/${$item$$.id_app}/file/download/${$item$$._id.toString()}`))});$next$$(null,$items$$)}});$contr_router$$.creating=async function($file_name$jscomp$2_input_user$$,
|
|
9
|
+
$obj$$,$fn$$){if($obj$$.file&&$obj$$.read_image){$file_name$jscomp$2_input_user$$=$obj$$.file.name;var $extension$jscomp$2_root$$=$obj$$.file.extension.toLowerCase();if(0<=["png","jpg"].indexOf($extension$jscomp$2_root$$)&&($extension$jscomp$2_root$$=configs.paths.uploads,$extension$jscomp$2_root$$||($extension$jscomp$2_root$$=__dirname,$extension$jscomp$2_root$$=path.dirname($extension$jscomp$2_root$$),$extension$jscomp$2_root$$=path.dirname($extension$jscomp$2_root$$),$extension$jscomp$2_root$$=
|
|
10
|
+
path.join($extension$jscomp$2_root$$,"uploads")),$file_name$jscomp$2_input_user$$=path.join($extension$jscomp$2_root$$,$file_name$jscomp$2_input_user$$),fs.existsSync($file_name$jscomp$2_input_user$$))){$extension$jscomp$2_root$$=require("node-tesseract-ocr");const $config$$={lang:"vie+eng"};try{const $text$$=await $extension$jscomp$2_root$$.recognize($file_name$jscomp$2_input_user$$,$config$$);$obj$$.text_from_image=$text$$}catch($error$$){return console.error($error$$),$fn$$($error$$.message)}}}$fn$$(null,
|
|
11
|
+
$obj$$)};$contr_router$$.created=function($file_name$jscomp$3_user$$,$obj$$,$fn$$){if($obj$$.file){$file_name$jscomp$3_user$$=$obj$$.file.name;var $extension$jscomp$3_input$jscomp$1_root$$=$obj$$.file.extension.toLowerCase();if(0<=["mp4","mov","avi"].indexOf($extension$jscomp$3_input$jscomp$1_root$$)){$extension$jscomp$3_input$jscomp$1_root$$=configs.paths.uploads;$extension$jscomp$3_input$jscomp$1_root$$||($extension$jscomp$3_input$jscomp$1_root$$=__dirname,$extension$jscomp$3_input$jscomp$1_root$$=
|
|
12
|
+
path.dirname($extension$jscomp$3_input$jscomp$1_root$$),$extension$jscomp$3_input$jscomp$1_root$$=path.dirname($extension$jscomp$3_input$jscomp$1_root$$),$extension$jscomp$3_input$jscomp$1_root$$=path.join($extension$jscomp$3_input$jscomp$1_root$$,"uploads"));$extension$jscomp$3_input$jscomp$1_root$$=path.join($extension$jscomp$3_input$jscomp$1_root$$,$file_name$jscomp$3_user$$);let $output$$=configs.paths.videos;$output$$||($output$$=__dirname,$output$$=path.dirname($output$$),$output$$=path.dirname($output$$),
|
|
13
|
+
$output$$=path.join($output$$,"videos"));fs.existsSync($output$$)||fs.mkdirSync($output$$);$output$$=path.join($output$$,$obj$$._id.toString());fs.existsSync($output$$)||fs.mkdirSync($output$$);$output$$=path.join($output$$,$file_name$jscomp$3_user$$);convertVideo($extension$jscomp$3_input$jscomp$1_root$$,$output$$).catch($e$$=>{console.error("Can't convert video. Error:",$e$$)})}}else console.log("file not exists",$obj$$);$fn$$(null,$obj$$)};$contr_router$$.deleted=function($extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$,
|
|
14
|
+
$rs$$,$next$$){if($rs$$.file){$extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$=$rs$$.file.name;let $root$$=configs.paths.uploads;$root$$||($root$$=__dirname,$root$$=path.dirname($root$$),$root$$=path.dirname($root$$),$root$$=path.join($root$$,"uploads"));$extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$=path.join($root$$,$extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$);fs.existsSync($extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$)&&fs.unlink($extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$,
|
|
15
|
+
function($e$$){$e$$&&console.error($e$$)});$extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$=$rs$$.file.extension.toLowerCase();0<=["mp4","mov","avi"].indexOf($extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$)&&($extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$=configs.paths.videos,$extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$||($extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$=__dirname,$extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$=
|
|
16
|
+
path.dirname($extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$),$extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$=path.dirname($extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$),$extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$=path.join($extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$,"videos")),$extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$=path.join($extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$,$rs$$._id.toString()),
|
|
17
|
+
fs.existsSync($extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$)&&deleteFolderRecursive($extension$jscomp$4_file_name$jscomp$4_output$jscomp$1_user$$))}else console.log("file not exists",$rs$$);$next$$(null,$rs$$)};$contr_router$$.route(function($router$$){$router$$.route("/:id_app/file/download/:id").get(function($req$$,$res$$){let $id$$=$req$$.params.id,$size$$=$req$$.query.size||$req$$.query.resize||"FULLHD";app.findOne({_id:$req$$.user.current_id_app}).lean().exec(function($e$$,$app_info$$){if($e$$||
|
|
18
|
+
!$app_info$$)return $res$$.status(400).send("Kh\u00f4ng th\u1ec3 t\u1ea3i file n\u00e0y");model.findOne({_id:$id$$}).lean().exec(async($e$jscomp$4_file_name$$,$rs$$)=>{if($e$jscomp$4_file_name$$)return $res$$.status(400).send($e$jscomp$4_file_name$$);if($rs$$){$e$jscomp$4_file_name$$=$rs$$.file.name;let $extension$$=$rs$$.file.extension,$root$$=configs.paths.uploads;$root$$||($root$$=__dirname,$root$$=path.dirname($root$$),$root$$=path.dirname($root$$),$root$$=path.join($root$$,"uploads"));$e$jscomp$4_file_name$$=
|
|
19
|
+
path.join($root$$,$e$jscomp$4_file_name$$);if(fs.existsSync($e$jscomp$4_file_name$$))if(0<=["png","jpg","jpeg"].indexOf($extension$$)){let $_new_file$$=await setWaterMark4Image($app_info$$,$e$jscomp$4_file_name$$,$extension$$,$req$$.query.recache),$_resize_conf$$=await configResizeImage($size$$,$_new_file$$,$extension$$,$req$$.query.recache);if($_resize_conf$$.exist)return gm($_resize_conf$$.file_name_resize).stream(function($err$$,$stdout$$){$stdout$$.pipe($res$$)});let $_gm$$=gm($_new_file$$);$_gm$$.size(function($error$jscomp$0$$,
|
|
20
|
+
$orgin_file_size$$){$orgin_file_size$$&&$_resize_conf$$.size&&$_resize_conf$$.size<$orgin_file_size$$.width&&$_resize_conf$$.size<$orgin_file_size$$.height&&($_gm$$=$_gm$$.resize($_resize_conf$$.size));$_resize_conf$$.cache?setImmediate(()=>{$_gm$$.write($_resize_conf$$.file_name_resize,function($error$$){if($error$$)console.error("save resize image:",$error$$.message),setImmediate(()=>{$res$$.sendFile($_new_file$$)});else return gm($_resize_conf$$.file_name_resize).stream(function($err$$,$stdout$$){$stdout$$.pipe($res$$)})})}):
|
|
21
|
+
$_gm$$.stream(function($err$$,$stdout$$){$stdout$$.pipe($res$$)})})}else $res$$.download($e$jscomp$4_file_name$$,$rs$$.file.originalname);else $res$$.status(400).send("File n\u00e0y kh\u00f4ng t\u1ed3n t\u1ea1i")}else $res$$.status(400).send("Kh\u00f4ng t\u00ecm th\u1ea5y file n\u00e0y")})})});$router$$.route("/:id_app/file/stream/:id/:file").get(function($req$$,$res$$){let $id$$=$req$$.params.id;app.findOne({_id:$req$$.user.current_id_app}).lean().exec(function($e$$,$app_info$$){if($e$$||!$app_info$$)return $res$$.status(400).send("Kh\u00f4ng th\u1ec3 stream file n\u00e0y");
|
|
22
|
+
model.findOne({_id:$id$$}).lean().exec(async($e$jscomp$6_file_name$$,$output$jscomp$2_rs$$)=>{if($e$jscomp$6_file_name$$)return $res$$.status(400).send($e$jscomp$6_file_name$$);if($output$jscomp$2_rs$$){$e$jscomp$6_file_name$$=$output$jscomp$2_rs$$.file.name;var $file$jscomp$1_root$$=$req$$.params.file;".ts"==$file$jscomp$1_root$$.substr(-3)&&($e$jscomp$6_file_name$$=$file$jscomp$1_root$$);$file$jscomp$1_root$$=configs.paths.videos;$file$jscomp$1_root$$||($file$jscomp$1_root$$=__dirname,$file$jscomp$1_root$$=
|
|
23
|
+
path.dirname($file$jscomp$1_root$$),$file$jscomp$1_root$$=path.dirname($file$jscomp$1_root$$),$file$jscomp$1_root$$=path.join($file$jscomp$1_root$$,"videos"));$output$jscomp$2_rs$$=path.join($file$jscomp$1_root$$,$output$jscomp$2_rs$$._id.toString(),$e$jscomp$6_file_name$$);if(fs.existsSync($output$jscomp$2_rs$$)){const $readStream$$=fs.createReadStream($output$jscomp$2_rs$$);$readStream$$.on("open",function(){$readStream$$.pipe($res$$)});$readStream$$.on("error",function($err$$){$res$$.end($err$$)})}else $res$$.status(400).send("File n\u00e0y kh\u00f4ng t\u1ed3n t\u1ea1i")}else $res$$.status(400).send("Kh\u00f4ng t\u00ecm th\u1ea5y file n\u00e0y")})})})})};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
'use strict';const model=global.getModel("participant"),User=global.getModel("user"),usergroup=global.getModel("usergroup"),controller=require("../../controllers/controller"),async=require("async"),permission=require("../../libs/permission");
|
|
2
2
|
module.exports=function($router$$){(new controller($router$$,model,"participant",{sort:{date_created:1},unique:["id_app","email"],onFinding:async($user$$,$condition$$,$next$$)=>{if($condition$$.groups&&!$condition$$.group_id)try{let $groups$$=(await usergroup.getList($user$$.current_id_app,$condition$$.groups)).map($g$$=>$g$$._id);delete $condition$$.groups;$groups$$=$groups$$.concat([null,"",void 0]);$condition$$.group_id={$in:$groups$$};$next$$(null,$condition$$)}catch($e$$){$next$$($e$$.message)}else $next$$(null,
|
|
3
|
-
$condition$$)},onFound:($user$$,$condition$$,$items$$,$next$$)=>{$next$$(null,$items$$)},onView:($user$$,$items$$,$next$$)=>{async.parallel({u:$callback$$=>{$items$$.joinModel2(null,User,[{where:{email:"email"},fields:[{picture:"picture"}]}],function(){$callback$$()})},group:$callback$$=>{$items$$.joinModel2($user$$.current_id_app,usergroup,[{where:{group_id:"_id"},fields:["group_name","is_customer_group","is_employee_group"]}],
|
|
4
|
-
($
|
|
5
|
-
|
|
6
|
-
$next$$(
|
|
3
|
+
$condition$$)},onFound:($user$$,$condition$$,$items$$,$next$$)=>{$next$$(null,$items$$)},onView:($user$$,$items$$,$next$$)=>{async.parallel({u:$callback$$=>{$items$$.joinModel2(null,User,[{where:{email:"email"},fields:[{picture:"picture"}],setFields:($item$$,$ref$$)=>{$item$$.name||($item$$.name=$ref$$.name)}}],function(){$callback$$()})},group:$callback$$=>{$items$$.joinModel2($user$$.current_id_app,usergroup,[{where:{group_id:"_id"},fields:["group_name","is_customer_group","is_employee_group"]}],
|
|
4
|
+
function(){$callback$$()})},verified:$callback$$=>{$items$$.joinModel2($user$$.current_id_app,global.getModel("assuser_identity"),[{where:{email:"user_created"},fields:[{trang_thai_xac_thuc:"trang_thai"}],setFields:($item$$,$ref$$)=>{$item$$.name||($item$$.name=$ref$$.name)}}],function(){$items$$.filter($i$$=>$i$$.trang_thai_xac_thuc).joinModel2(null,global.getModel("trangthai"),[{where:$item$$=>({ma_trang_thai:$item$$.trang_thai_xac_thuc,ma_ct:"ASSUSER_IDENTITY"}),fields:[{ten_trang_thai_xac_thuc:"ten_trang_thai"},
|
|
5
|
+
"color"]}],function(){$callback$$()})})}},()=>{$items$$.forEach($item$$=>{$item$$.real_name&&($item$$.name=$item$$.real_name)});$next$$(null,$items$$)})},onUpdating:async($user$$,$data$$,$obj$$,$next$$)=>{$data$$.admin&&!$obj$$.admin?permission.isAdmin($user$$.current_id_app,$user$$.email,function($e$$,$admin$$){if($e$$)return $next$$($e$$);if(!$admin$$)return $next$$("B\u1ea1n kh\u00f4ng c\u00f3 quy\u1ec1n \u0111\u1eb7t ng\u01b0\u1eddi n\u00e0y l\u00e0 ng\u01b0\u1eddi qu\u1ea3n tr\u1ecb");$next$$(null,
|
|
6
|
+
$data$$,$obj$$)}):$next$$(null,$data$$,$obj$$)},onCreated:($user$$,$obj$$,$next$$)=>{$obj$$.auto_create_user&&$obj$$.password?User.findOne({email:$obj$$.email},($e$jscomp$0$$,$rs$$)=>{if($e$jscomp$0$$||$rs$$)return $next$$(null,$obj$$),console.log($e$jscomp$0$$||`User ${$obj$$.email} \u0111\u00e3 t\u1ed3n t\u1ea1i`);$e$jscomp$0$$=new User;$e$jscomp$0$$.email=$obj$$.email;$e$jscomp$0$$.name=$obj$$.name;$e$jscomp$0$$.local={};$e$jscomp$0$$.local.email=$obj$$.email;$e$jscomp$0$$.local.name=$obj$$.name;
|
|
7
|
+
$e$jscomp$0$$.local.password=$e$jscomp$0$$.generateHash($obj$$.password);$e$jscomp$0$$.save($e$$=>{if($e$$)return model.remove({_id:$obj$$._id}),$next$$(`Kh\u00f4ng th\u1ec3 t\u1ea1o ng\u01b0\u1eddi d\u00f9ng ${$obj$$.email}, L\u1ed7i: ${$e$$.message}`);$next$$(null,$obj$$)})}):$next$$(null,$obj$$)}})).route()};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
'use strict';const controller=require("../../controllers/controllerRPT"),{bcQuery}=require("../../libs/blockchainconnect"),moment=require("moment");
|
|
2
2
|
module.exports=function($router$$){new controller($router$$,"assinterest",async function($condition_req$$,$callback$$){$condition_req$$=$condition_req$$.query;let $obj$$="all-";$condition_req$$.id_period?$obj$$="period-"+$condition_req$$.id_period+"-":$condition_req$$.id_product&&($obj$$="product-"+$condition_req$$.id_period+"-");if(Number($condition_req$$.nam||0)&&($obj$$=$obj$$+$condition_req$$.nam+"-",Number($condition_req$$.quy)&&($obj$$=$obj$$+$condition_req$$.quy+"-"),Number($condition_req$$.thang))){if(!Number($condition_req$$.quy)){const $quy$$=
|
|
3
3
|
moment([Number($condition_req$$.nam),Number($condition_req$$.thang)-1,1]).quarter();$obj$$=$obj$$+$quy$$+"-"}$obj$$=$obj$$+$condition_req$$.thang+"-";$condition_req$$.ngay&&($obj$$+=$condition_req$$.ngay)}try{let $rs$$=(await bcQuery(`transferlogs/action-interest/${$obj$$}`)).TransferLog||[];await $rs$$.asyncJoinModel2($condition_req$$.id_app,"assproduct",{where:{idProduct:"id"},fields:"ten_san_pham"});await $rs$$.asyncJoinModel2($condition_req$$.id_app,"assperiod",{where:{idPeriod:"id"},fields:["ten_ky_han",
|
|
4
|
-
"lai_suat_cam_ket","lai_suat_truoc_han","lai_suat_thoi_gian_con_lai","lai_suat_tang_them_so_huu_token"]});await $rs$$.asyncJoinModel2($condition_req$$.id_app,"asskey",{where:{receiver:"address"},fields:["name","username"]});$rs$$.forEach($r$$=>{$r$$.date=new Date(1E3*Number($r$$.date));$r$$.bold=!1;$r$$.amount=
|
|
5
|
-
break;case "truochan":$r$$.lai_suat=$r$$.lai_suat_truoc_han;break;case "ngtoken":$r$$.lai_suat=$r$$.lai_suat_tang_them_so_huu_token;break;case "cdttttruochan":$r$$.lai_suat=$r$$.lai_suat_thoi_gian_con_lai}});$rs$$.push({memo:"T\u1ed5ng c\u1ed9ng",bold:!0,amount:$rs$$.map($r$$=>$r$$.amount).reduce(($a$$,$b$$)
|
|
4
|
+
"lai_suat_cam_ket","lai_suat_truoc_han","lai_suat_thoi_gian_con_lai","lai_suat_tang_them_so_huu_token"]});await $rs$$.asyncJoinModel2($condition_req$$.id_app,"asskey",{where:{receiver:"address"},fields:["username"]});await $rs$$.asyncJoinModel2(null,"user",{where:{username:"email"},fields:["name"]});await $rs$$.asyncJoinModel2($condition_req$$.id_app,"customer",{where:{username:"of_user"},fields:["ma_kh","ten_kh"]});$rs$$.forEach($r$$=>{$r$$.date=new Date(1E3*Number($r$$.date));$r$$.bold=!1;$r$$.amount=
|
|
5
|
+
Number($r$$.amount);$r$$.tokenAmount=Number($r$$.tokenAmount);$r$$.tokenValue=Number($r$$.tokenValue);$r$$.lai_suat=0;switch($r$$.subAction){case "camket":$r$$.lai_suat=$r$$.lai_suat_cam_ket;break;case "truochan":$r$$.lai_suat=$r$$.lai_suat_truoc_han;break;case "ngtoken":$r$$.lai_suat=$r$$.lai_suat_tang_them_so_huu_token;break;case "cdttttruochan":$r$$.lai_suat=$r$$.lai_suat_thoi_gian_con_lai}});$rs$$.push({memo:"T\u1ed5ng c\u1ed9ng",bold:!0,amount:$rs$$.map($r$$=>$r$$.amount).reduce(($a$$,$b$$)=>
|
|
6
|
+
$a$$+$b$$,0)});$callback$$(null,$rs$$)}catch($e$$){$callback$$($e$$)}})};
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
module.exports=function($router$$){new controller($router$$,"thgt",function($req$$,$callback$jscomp$0$$){const $condition$$=$req$$.query;if(!$condition$$.nam||!$condition$$.thang)return $callback$jscomp$0$$("Ch\u1ee9c n\u0103ng n\u00e0y y\u00eau c\u1ea7u c\u00e1c tham s\u1ed1: nam,thang");$condition$$.nam=Number($condition$$.nam);$condition$$.thang=Number($condition$$.thang);(new Promise(($resolve$$,$reject$$)=>{let $cond$$={id_app:$condition$$.id_app,nam:$condition$$.nam,thang:$condition$$.thang,
|
|
3
3
|
yt_trung_gian:{$ne:!0}};$condition$$.ma_bp&&($cond$$.ma_bp=$condition$$.ma_bp.toUpperCase());$condition$$.id_lenhsx&&mongoose.Types.ObjectId.isValid($condition$$.id_lenhsx)&&($cond$$.id_lenhsx=$condition$$.id_lenhsx);console.log("dieu kien lay chi tiet gia thanh",$cond$$);gt_ctgt.find($cond$$).lean().exec(($e$$,$rs$$)=>{if($e$$)return $reject$$($e$$);$rs$$.forEach($r$$=>{"2"==$r$$.cong_tru&&($r$$.gt=-$r$$.gt,$r$$.gt_nt=-$r$$.gt_nt,$r$$.t_gt=-$r$$.t_gt,$r$$.t_gt_nt=-$r$$.t_gt_nt)});$resolve$$($rs$$)})})).then($ctgt$$=>
|
|
4
4
|
new Promise(($resolve$$,$reject$$)=>{async.parallel({dsyt:$callback$$=>{$ctgt$$.groupBy(["ma_yt"],["gt"],($e$$,$yts$$)=>{$callback$$(null,$yts$$)})},thgt:$callback$$=>{$ctgt$$.groupBy(["ma_sp","ma_bp","id_lenhsx"],["gt","gt_nt","t_gt","t_gt_nt"],($e$$,$rs$$)=>{$callback$$(null,$rs$$)},{fieldmaxs:["sl_dd_dk","sl_nk_tk","sl_sx_tk","sl_dd_ck"]})}},($e$$,$rs$$)=>{if($e$$)return $reject$$($e$$);const $report$$=$rs$$.thgt;$ctgt$$.forEach($ytgt$$=>{const $r$$=underscore.find($report$$,$re$$=>$re$$.ma_sp==
|
|
5
|
-
$ytgt$$.ma_sp&&$re$$.ma_bp==$ytgt$$.ma_bp&&$re$$.id_lenhsx==$ytgt$$.id_lenhsx);$r$$&&($r$$[$ytgt$$.ma_yt]=$ytgt$$.t_gt,$r$$[$ytgt$$.ma_yt+"_nt"]=$ytgt$$.t_gt_nt)});$resolve$$({report:$report$$,dsyt:$rs$$.dsyt})})})).then($rs$$=>{$rs$$.report.
|
|
6
|
-
$sum$$,($e$$,$tc$$)=>{$tc$$.forEach($r$$=>{$r$$.bold=!0;$r$$.ten_sp="T\u1ed5ng c\u1ed9ng";$rs$$.report.push($r$$)})});console.log("tong hop gia thanh",$rs$$);$callback$jscomp$0$$(null,$rs$$)})}).catch($e$$=>{console.log("error",$e$$);$callback$jscomp$0$$($e$$)})})};
|
|
5
|
+
$ytgt$$.ma_sp&&$re$$.ma_bp==$ytgt$$.ma_bp&&$re$$.id_lenhsx==$ytgt$$.id_lenhsx);$r$$&&($r$$[$ytgt$$.ma_yt]=$ytgt$$.t_gt,$r$$[$ytgt$$.ma_yt+"_nt"]=$ytgt$$.t_gt_nt)});$resolve$$({report:$report$$,dsyt:$rs$$.dsyt})})})).then(async $rs$$=>{await $rs$$.report.filter($r$$=>$r$$.id_lenhsx).asyncJoinModel2($condition$$.id_app,"lenhsx",[{where:{id_lenhsx:"_id"},fields:[{name:"so_lenhsx",value:"so_ct"}]}]);$rs$$.report.joinModel2($condition$$.id_app,dmvt,[{where:{ma_sp:"ma_vt"},fields:[{name:"ten_sp",value:"ten_vt"}]}],
|
|
6
|
+
()=>{const $sum$$="sl_dd_dk sl_sx_tk sl_nk_tk sl_dd_ck t_gt t_gt_nt".split(" ");$rs$$.dsyt.forEach($yt$$=>{$sum$$.push($yt$$.ma_yt)});$rs$$.report.groupBy([],$sum$$,($e$$,$tc$$)=>{$tc$$.forEach($r$$=>{$r$$.bold=!0;$r$$.ten_sp="T\u1ed5ng c\u1ed9ng";$rs$$.report.push($r$$)})});console.log("tong hop gia thanh",$rs$$);$callback$jscomp$0$$(null,$rs$$)})}).catch($e$$=>{console.log("error",$e$$);$callback$jscomp$0$$($e$$)})})};
|