kpiplus
Version:
KPI+
1 lines • 1.5 kB
JavaScript
var fs=require("fs"),path=require("path"),async=require("async"),parameter_model=require("../models/parameter"),rpt_model=require("../models/rpt"),app=require("../models/app"),parameter=require("../data/parameter"),rpt=require("../data/rpt");exports.init=function(e,n){var r=fs.readdirSync(path.dirname(__dirname)+"/data");async.map(r,function(n,r){if(".js"==n.substr(-3)){var i=require("../data/"+n).data,t=require("../models/"+n);async.map(i,function(n,r){n.id_app=e,n._id&&delete n._id,t.create(n,function(e){if(e)return r(e);r()})},function(e,n){r(e,n)})}else r()},function(r){if(r)return n(r);rpt_model.find({id_app:e}).lean().exec(function(n,r){n&&console.log(n),r.forEach(function(n){parameter_model.update({id_rpt:n._id_o,id_app:e},{id_rpt:n._id},{multi:!0},function(e,n){e&&console.log(e)})})}),n()})},exports.initRpt=function(){app.find({}).lean().exec(function(e,n){if(e)return console.log(e);n.forEach(function(e){async.parallel({r:function(n){async.map(rpt.data,function(n,r){n.id_app=e._id,rpt_model.create(n,function(e){if(e)return r(e);r()})},function(e,r){n(e,r)})},p:function(n){async.map(parameter.data,function(n,r){n.id_app=e._id,parameter_model.create(n,function(e){if(e)return r(e);r()})},function(e,r){n(e,r)})}},function(n,r){if(n)return console.log(n);rpt_model.find({id_app:e._id}).lean().exec(function(n,r){n&&console.log(n),r.forEach(function(n){parameter_model.update({id_rpt:n._id_o,id_app:e._id},{id_rpt:n._id},{multi:!0},function(e,n){e&&console.log(e)})})})})})})};