Built motion from commit (unavailable).|2.4.4
[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 _0xc682=['status','end','json','count','offset','limit','set','reject','then','stack','index','Migration','rawAttributes','model','keys','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','map','key','VIRTUAL','field','merge','options','includeAll','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','sox','to-csv','ejs','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/environment','../../mysqldb','sendStatus'];(function(_0x125a11,_0x305254){var _0x422646=function(_0x27efdc){while(--_0x27efdc){_0x125a11['push'](_0x125a11['shift']());}};_0x422646(++_0x305254);}(_0xc682,0x117));var _0x2c68=function(_0x549f5a,_0x3d16d2){_0x549f5a=_0x549f5a-0x0;var _0xbfc872=_0xc682[_0x549f5a];return _0xbfc872;};'use strict';var pdf=require('html-pdf');var emlformat=require('eml-format');var rimraf=require(_0x2c68('0x0'));var zipdir=require(_0x2c68('0x1'));var jsonpatch=require(_0x2c68('0x2'));var rp=require('request-promise');var moment=require(_0x2c68('0x3'));var BPromise=require(_0x2c68('0x4'));var Mustache=require(_0x2c68('0x5'));var util=require(_0x2c68('0x6'));var path=require(_0x2c68('0x7'));var sox=require(_0x2c68('0x8'));var csv=require(_0x2c68('0x9'));var ejs=require(_0x2c68('0xa'));var fs=require('fs');var _=require('lodash');var squel=require(_0x2c68('0xb'));var crypto=require(_0x2c68('0xc'));var jsforce=require(_0x2c68('0xd'));var deskjs=require(_0x2c68('0xe'));var toCsv=require(_0x2c68('0x9'));var querystring=require(_0x2c68('0xf'));var Papa=require(_0x2c68('0x10'));var Redis=require(_0x2c68('0x11'));var authService=require(_0x2c68('0x12'));var qs=require(_0x2c68('0x13'));var hardwareService=require(_0x2c68('0x14'));var logger=require(_0x2c68('0x15'))(_0x2c68('0x16'));var utils=require('../../config/utils');var config=require(_0x2c68('0x17'));var db=require(_0x2c68('0x18'))['db'];function respondWithStatusCode(_0x1cb30d,_0x16c8a7){_0x16c8a7=_0x16c8a7||0xcc;return function(_0x1c44df){if(_0x1c44df){return _0x1cb30d[_0x2c68('0x19')](_0x16c8a7);}return _0x1cb30d[_0x2c68('0x1a')](_0x16c8a7)[_0x2c68('0x1b')]();};}function respondWithResult(_0x4110a9,_0x4ffad9){_0x4ffad9=_0x4ffad9||0xc8;return function(_0x267879){if(_0x267879){return _0x4110a9[_0x2c68('0x1a')](_0x4ffad9)[_0x2c68('0x1c')](_0x267879);}};}function respondWithFilteredResult(_0x3a2537,_0x31d768){return function(_0x7dc124){if(_0x7dc124){var _0x2ec42a=_0x7dc124[_0x2c68('0x1d')],_0x3e13b8=_0x31d768[_0x2c68('0x1e')],_0x9c5658=_0x31d768['offset']+_0x31d768[_0x2c68('0x1f')],_0x1e0b23;if(_0x9c5658>=_0x2ec42a){_0x9c5658=_0x2ec42a;_0x1e0b23=0xc8;}else{_0x1e0b23=0xce;}_0x3a2537[_0x2c68('0x1a')](_0x1e0b23);return _0x3a2537[_0x2c68('0x20')]('Content-Range',_0x3e13b8+'-'+_0x9c5658+'/'+_0x2ec42a)[_0x2c68('0x1c')](_0x7dc124);}return null;};}function patchUpdates(_0x1ec672){return function(_0x47704e){try{jsonpatch['apply'](_0x47704e,_0x1ec672,!![]);}catch(_0x5e5e41){return BPromise[_0x2c68('0x21')](_0x5e5e41);}return _0x47704e['save']();};}function saveUpdates(_0xc1d0b,_0x57fea7){return function(_0x4fc74e){if(_0x4fc74e){return _0x4fc74e['update'](_0xc1d0b)['then'](function(_0x465034){return _0x465034;});}return null;};}function removeEntity(_0x359d6a,_0x3c9c66){return function(_0x472a69){if(_0x472a69){return _0x472a69['destroy']()[_0x2c68('0x22')](function(){_0x359d6a['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x231a3d,_0x261f37){return function(_0x24f2d9){if(!_0x24f2d9){_0x231a3d[_0x2c68('0x19')](0x194);}return _0x24f2d9;};}function handleError(_0x33bc5e,_0x24c1b6){_0x24c1b6=_0x24c1b6||0x1f4;return function(_0x58007a){logger['error'](_0x58007a[_0x2c68('0x23')]);if(_0x58007a['name']){delete _0x58007a['name'];}_0x33bc5e[_0x2c68('0x1a')](_0x24c1b6)['send'](_0x58007a);};}exports[_0x2c68('0x24')]=function(_0x52da42,_0x2213b4){var _0x1f6311={},_0x3ea83b={},_0x17d8b3={'count':0x0,'rows':[]};var _0x4cfbca=db[_0x2c68('0x25')][_0x2c68('0x26')];_0x3ea83b[_0x2c68('0x27')]=_[_0x2c68('0x28')](_0x4cfbca);_0x3ea83b[_0x2c68('0x29')]=_[_0x2c68('0x28')](_0x52da42[_0x2c68('0x29')]);_0x3ea83b[_0x2c68('0x2a')]=_[_0x2c68('0x2b')](_0x3ea83b['model'],_0x3ea83b[_0x2c68('0x29')]);_0x1f6311['attributes']=_['intersection'](_0x3ea83b['model'],qs['fields'](_0x52da42[_0x2c68('0x29')][_0x2c68('0x2c')]));_0x1f6311['attributes']=_0x1f6311[_0x2c68('0x2d')][_0x2c68('0x2e')]?_0x1f6311[_0x2c68('0x2d')]:_0x3ea83b[_0x2c68('0x27')];if(!_0x52da42[_0x2c68('0x29')][_0x2c68('0x2f')](_0x2c68('0x30'))){_0x1f6311['limit']=qs['limit'](_0x52da42['query'][_0x2c68('0x1f')]);_0x1f6311[_0x2c68('0x1e')]=qs[_0x2c68('0x1e')](_0x52da42[_0x2c68('0x29')]['offset']);}_0x1f6311[_0x2c68('0x31')]=qs[_0x2c68('0x32')](_0x52da42[_0x2c68('0x29')][_0x2c68('0x32')]);_0x1f6311[_0x2c68('0x33')]=qs[_0x2c68('0x2a')](_[_0x2c68('0x34')](_0x52da42[_0x2c68('0x29')],_0x3ea83b['filters']));if(_0x52da42['query'][_0x2c68('0x35')]){_0x1f6311['where']=_['merge'](_0x1f6311[_0x2c68('0x33')],{'$or':_[_0x2c68('0x36')](_0x4cfbca,function(_0x2041bd){if(_0x2041bd['type'][_0x2c68('0x37')]!==_0x2c68('0x38')){var _0x5f1e35={};_0x5f1e35[_0x2041bd[_0x2c68('0x39')]]={'$like':'%'+_0x52da42['query'][_0x2c68('0x35')]+'%'};return _0x5f1e35;}})});}_0x1f6311=_[_0x2c68('0x3a')]({},_0x1f6311,_0x52da42[_0x2c68('0x3b')]);var _0x352443={'where':_0x1f6311['where']};return db['Migration']['count'](_0x352443)[_0x2c68('0x22')](function(_0x5ec502){_0x17d8b3[_0x2c68('0x1d')]=_0x5ec502;if(_0x52da42[_0x2c68('0x29')][_0x2c68('0x3c')]){_0x1f6311['include']=[{'all':!![]}];}return db['Migration']['findAll'](_0x1f6311);})['then'](function(_0x7d61a6){_0x17d8b3['rows']=_0x7d61a6;return _0x17d8b3;})[_0x2c68('0x22')](respondWithFilteredResult(_0x2213b4,_0x1f6311))['catch'](handleError(_0x2213b4,null));};