UNPKG

flexbiz-server

Version:

Flexible Server

9 lines (8 loc) 2.84 kB
'use strict';const _global=require("../global"),async=require("async"),group=global.getModel("group"),{parentPort,workerData}=require("worker_threads"),prototypes=require("../libs/prototypes.js"),_=require("lodash"); let onImport=function($user$$,$data$$,$columns$$,$next$$){$data$$.groupBy("group_name",[],function($e$$,$gs$$){if($e$$)return $next$$($e$$);async.map($gs$$,($r$$,$callback$$)=>{if(!$r$$.group_name)return $callback$$();$r$$.group_name=$r$$.group_name.toString().trim();group.findOneAndUpdate({id_app:$user$$.current_id_app,group_type:"CUSTOMER",group_name:$r$$.group_name},{group_name:$r$$.group_name,group_type:"CUSTOMER",status:!0},{new:!0,upsert:!0},function($e$$,$n$$){if($e$$)return $callback$$($e$$); $r$$.nh_kh=$n$$._id.toString();$callback$$(null)})},$e$jscomp$0$$=>{if($e$jscomp$0$$)return $next$$($e$jscomp$0$$);async.map($data$$,function($r$$,$callback$jscomp$0$$){async.parallel({nhom:function($callback$$){$r$$.group_name&&!$r$$.nh_kh?($r$$.group_name=$r$$.group_name.toString().trim(),group.findOne({id_app:$user$$.current_id_app,group_type:"CUSTOMER",group_name:$r$$.group_name},function($e$$,$n$$){if($e$$)return $callback$$($e$$);$r$$.nh_kh=$n$$._id.toString();$callback$$(null)})):$callback$$()}}, function($e$$){$callback$jscomp$0$$($e$$)})},function($e$$){$next$$($e$$,$data$$)})})})},connect2Db=!1; parentPort.on("message",$msg$$=>{if($msg$$&&_.isString($msg$$))try{$msg$$=JSON.parse($msg$$)}catch($e$$){console.error($e$$);parentPort.postMessage({error:"msg is not valid"});return}if($msg$$&&$msg$$.user){console.log("worker handle data customer...");if($msg$$.configs&&_.isString($msg$$.configs))try{$msg$$.configs=JSON.parse($msg$$.configs)}catch($e$$){delete $msg$$.configs,console.info($e$$)}var $configs$$=$msg$$.configs||require("../configs");connect2Db||(mongoose.connect($configs$$.database.url, {useNewUrlParser:!0}),connect2Db=!0);onImport($msg$$.user,$msg$$.data,$msg$$.columns,function($e$$,$data$$){parentPort.postMessage({error:$e$$,data:$data$$,columns:$msg$$.columns,id_task:$msg$$.id_task})})}else parentPort.postMessage({error:"msg is not valid"})}); workerData&&(()=>{let $msg$$=workerData;if(_.isString($msg$$))try{$msg$$=JSON.parse($msg$$)}catch($e$$){console.error($e$$);parentPort.postMessage({error:"msg is not valid"});return}if($msg$$.data){console.log("worker handle data dmkh...");if($msg$$.configs&&_.isString($msg$$.configs))try{$msg$$.configs=JSON.parse($msg$$.configs)}catch($e$$){delete $msg$$.configs,console.info($e$$)}var $configs$$=$msg$$.configs||require("../configs");mongoose.connect($configs$$.database.url,{useNewUrlParser:!0}); onImport($msg$$.user,$msg$$.data,$msg$$.columns,function($e$$,$data$$){parentPort.postMessage({error:$e$$,data:$data$$,columns:$msg$$.columns,id_task:$msg$$.id_task})})}})();setInterval(()=>{parentPort.postMessage("pong")},5E3);