Built motion from commit (unavailable).|2.2.3
[motion2.git] / server / api / migration / migration.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x6906=['merge','filter','map','type','key','field','options','includeAll','include','findAll','rows','catch','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','sox','to-csv','lodash','squel','crypto','desk.js','querystring','papaparse','../../components/parsers/qs','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','json','count','offset','limit','set','apply','save','update','then','destroy','error','name','index','Migration','rawAttributes','model','keys','query','dateStart','dateEnd','filters','intersection','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','add','day'];(function(_0x464e1f,_0x2aa86f){var _0x1c1ce2=function(_0x543c79){while(--_0x543c79){_0x464e1f['push'](_0x464e1f['shift']());}};_0x1c1ce2(++_0x2aa86f);}(_0x6906,0x1da));var _0x6690=function(_0x5b644e,_0x2e5e07){_0x5b644e=_0x5b644e-0x0;var _0x49c6bf=_0x6906[_0x5b644e];return _0x49c6bf;};'use strict';var pdf=require(_0x6690('0x0'));var emlformat=require(_0x6690('0x1'));var rimraf=require(_0x6690('0x2'));var zipdir=require(_0x6690('0x3'));var jsonpatch=require(_0x6690('0x4'));var rp=require(_0x6690('0x5'));var moment=require('moment');var BPromise=require(_0x6690('0x6'));var Mustache=require('mustache');var util=require('util');var path=require('path');var sox=require(_0x6690('0x7'));var csv=require(_0x6690('0x8'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x6690('0x9'));var squel=require(_0x6690('0xa'));var crypto=require(_0x6690('0xb'));var jsforce=require('jsforce');var deskjs=require(_0x6690('0xc'));var toCsv=require(_0x6690('0x8'));var querystring=require(_0x6690('0xd'));var Papa=require(_0x6690('0xe'));var Redis=require('ioredis');var qs=require(_0x6690('0xf'));var logger=require('../../config/logger')(_0x6690('0x10'));var utils=require(_0x6690('0x11'));var config=require(_0x6690('0x12'));var db=require(_0x6690('0x13'))['db'];function respondWithStatusCode(_0x85c646,_0x1e2976){_0x1e2976=_0x1e2976||0xcc;return function(_0x4abb9d){if(_0x4abb9d){return _0x85c646[_0x6690('0x14')](_0x1e2976);}return _0x85c646[_0x6690('0x15')](_0x1e2976)['end']();};}function respondWithResult(_0x558e75,_0x1c1654){_0x1c1654=_0x1c1654||0xc8;return function(_0x41e7e1){if(_0x41e7e1){return _0x558e75[_0x6690('0x15')](_0x1c1654)[_0x6690('0x16')](_0x41e7e1);}};}function respondWithFilteredResult(_0x5bc183,_0x4e7b97){return function(_0x30b924){if(_0x30b924){var _0x4716a4=_0x30b924[_0x6690('0x17')],_0xe50dcf=_0x4e7b97[_0x6690('0x18')],_0x560621=_0x4e7b97['offset']+_0x4e7b97[_0x6690('0x19')],_0x1d38ba;if(_0x560621>=_0x4716a4){_0x560621=_0x4716a4;_0x1d38ba=0xc8;}else{_0x1d38ba=0xce;}_0x5bc183[_0x6690('0x15')](_0x1d38ba);return _0x5bc183[_0x6690('0x1a')]('Content-Range',_0xe50dcf+'-'+_0x560621+'/'+_0x4716a4)[_0x6690('0x16')](_0x30b924);}return null;};}function patchUpdates(_0x5f127e){return function(_0x24eb3b){try{jsonpatch[_0x6690('0x1b')](_0x24eb3b,_0x5f127e,!![]);}catch(_0x334fdc){return BPromise['reject'](_0x334fdc);}return _0x24eb3b[_0x6690('0x1c')]();};}function saveUpdates(_0x3f9ab2,_0x100aa9){return function(_0x54fdaa){if(_0x54fdaa){return _0x54fdaa[_0x6690('0x1d')](_0x3f9ab2)[_0x6690('0x1e')](function(_0x48b4ee){return _0x48b4ee;});}return null;};}function removeEntity(_0x574186,_0x3ebeea){return function(_0x4e2a75){if(_0x4e2a75){return _0x4e2a75[_0x6690('0x1f')]()[_0x6690('0x1e')](function(){_0x574186[_0x6690('0x15')](0xcc)['end']();});}};}function handleEntityNotFound(_0x1e368f,_0x35e162){return function(_0x29970c){if(!_0x29970c){_0x1e368f['sendStatus'](0x194);}return _0x29970c;};}function handleError(_0x321468,_0x109f4d){_0x109f4d=_0x109f4d||0x1f4;return function(_0x567d56){logger[_0x6690('0x20')](_0x567d56['stack']);if(_0x567d56[_0x6690('0x21')]){delete _0x567d56[_0x6690('0x21')];}_0x321468[_0x6690('0x15')](_0x109f4d)['send'](_0x567d56);};}exports[_0x6690('0x22')]=function(_0x301236,_0x48b92f){var _0x282b27={},_0x33d60e={},_0x48f977={'count':0x0,'rows':[]};var _0x5274a3=db[_0x6690('0x23')][_0x6690('0x24')];_0x33d60e[_0x6690('0x25')]=_[_0x6690('0x26')](_0x5274a3);var _0x212e45={'dateStart':_0x301236[_0x6690('0x27')][_0x6690('0x28')],'dateEnd':_0x301236['query'][_0x6690('0x29')]};delete _0x301236[_0x6690('0x27')][_0x6690('0x28')];delete _0x301236[_0x6690('0x27')][_0x6690('0x29')];_0x33d60e[_0x6690('0x27')]=_[_0x6690('0x26')](_0x301236['query']);_0x33d60e[_0x6690('0x2a')]=_[_0x6690('0x2b')](_0x33d60e['model'],_0x33d60e[_0x6690('0x27')]);_0x282b27[_0x6690('0x2c')]=_['intersection'](_0x33d60e[_0x6690('0x25')],qs['fields'](_0x301236['query']['fields']));_0x282b27[_0x6690('0x2c')]=_0x282b27[_0x6690('0x2c')][_0x6690('0x2d')]?_0x282b27[_0x6690('0x2c')]:_0x33d60e['model'];if(!_0x301236[_0x6690('0x27')][_0x6690('0x2e')](_0x6690('0x2f'))){_0x282b27[_0x6690('0x19')]=qs['limit'](_0x301236['query'][_0x6690('0x19')]);_0x282b27[_0x6690('0x18')]=qs[_0x6690('0x18')](_0x301236[_0x6690('0x27')]['offset']);}_0x282b27[_0x6690('0x30')]=qs[_0x6690('0x31')](_0x301236[_0x6690('0x27')][_0x6690('0x31')]);_0x282b27[_0x6690('0x32')]=qs['filters'](_[_0x6690('0x33')](_0x301236[_0x6690('0x27')],_0x33d60e['filters']));if(_0x212e45[_0x6690('0x28')]){if(_0x212e45[_0x6690('0x29')]){_0x212e45[_0x6690('0x29')]=moment(_0x212e45['dateEnd'])[_0x6690('0x34')](0x1,_0x6690('0x35'));}else{_0x212e45[_0x6690('0x29')]=moment(_0x212e45['dateStart'])['add'](0x1,'day');}_[_0x6690('0x36')](_0x282b27[_0x6690('0x32')],{'createdAt':{'$gte':_0x212e45['dateStart'],'$lte':_0x212e45[_0x6690('0x29')]}});}if(_0x301236[_0x6690('0x27')][_0x6690('0x37')]){_0x282b27[_0x6690('0x32')]=_[_0x6690('0x36')](_0x282b27[_0x6690('0x32')],{'$or':_[_0x6690('0x38')](_0x5274a3,function(_0x5de6a0){if(_0x5de6a0[_0x6690('0x39')][_0x6690('0x3a')]!=='VIRTUAL'){var _0x171c5a={};_0x171c5a[_0x5de6a0[_0x6690('0x3b')]]={'$like':'%'+_0x301236['query'][_0x6690('0x37')]+'%'};return _0x171c5a;}})});}_0x282b27=_[_0x6690('0x36')]({},_0x282b27,_0x301236[_0x6690('0x3c')]);var _0x5e09c9={'where':_0x282b27[_0x6690('0x32')]};return db[_0x6690('0x23')][_0x6690('0x17')](_0x5e09c9)[_0x6690('0x1e')](function(_0x792664){_0x48f977['count']=_0x792664;if(_0x301236[_0x6690('0x27')][_0x6690('0x3d')]){_0x282b27[_0x6690('0x3e')]=[{'all':!![]}];}return db[_0x6690('0x23')][_0x6690('0x3f')](_0x282b27);})[_0x6690('0x1e')](function(_0x102f3e){_0x48f977[_0x6690('0x40')]=_0x102f3e;return _0x48f977;})[_0x6690('0x1e')](respondWithFilteredResult(_0x48b92f,_0x282b27))[_0x6690('0x41')](handleError(_0x48b92f,null));};