Built motion from commit (unavailable).|2.5.6
[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 _0x7349=['sendStatus','status','end','offset','limit','set','Content-Range','json','apply','update','error','stack','name','send','Migration','rawAttributes','type','model','query','keys','filters','attributes','fields','hasOwnProperty','order','sort','pick','filter','where','map','VIRTUAL','options','count','include','then','rows','catch','html-pdf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb'];(function(_0x4526be,_0x5ceb9b){var _0x57ce26=function(_0x491528){while(--_0x491528){_0x4526be['push'](_0x4526be['shift']());}};_0x57ce26(++_0x5ceb9b);}(_0x7349,0x160));var _0x9734=function(_0x353354,_0x378adc){_0x353354=_0x353354-0x0;var _0x2aa0a2=_0x7349[_0x353354];return _0x2aa0a2;};'use strict';var pdf=require(_0x9734('0x0'));var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0x9734('0x1'));var jsonpatch=require(_0x9734('0x2'));var rp=require(_0x9734('0x3'));var moment=require(_0x9734('0x4'));var BPromise=require(_0x9734('0x5'));var Mustache=require('mustache');var util=require(_0x9734('0x6'));var path=require('path');var sox=require(_0x9734('0x7'));var csv=require(_0x9734('0x8'));var ejs=require(_0x9734('0x9'));var fs=require('fs');var _=require(_0x9734('0xa'));var squel=require(_0x9734('0xb'));var crypto=require(_0x9734('0xc'));var jsforce=require(_0x9734('0xd'));var deskjs=require(_0x9734('0xe'));var toCsv=require(_0x9734('0x8'));var querystring=require('querystring');var Papa=require(_0x9734('0xf'));var Redis=require(_0x9734('0x10'));var authService=require(_0x9734('0x11'));var qs=require(_0x9734('0x12'));var as=require(_0x9734('0x13'));var hardwareService=require(_0x9734('0x14'));var logger=require(_0x9734('0x15'))(_0x9734('0x16'));var utils=require('../../config/utils');var config=require(_0x9734('0x17'));var licenseUtil=require(_0x9734('0x18'));var db=require(_0x9734('0x19'))['db'];function respondWithStatusCode(_0x2ebc1f,_0x27a4de){_0x27a4de=_0x27a4de||0xcc;return function(_0x304d0c){if(_0x304d0c){return _0x2ebc1f[_0x9734('0x1a')](_0x27a4de);}return _0x2ebc1f[_0x9734('0x1b')](_0x27a4de)[_0x9734('0x1c')]();};}function respondWithResult(_0x146908,_0x2bf99f){_0x2bf99f=_0x2bf99f||0xc8;return function(_0x557eac){if(_0x557eac){return _0x146908[_0x9734('0x1b')](_0x2bf99f)['json'](_0x557eac);}};}function respondWithFilteredResult(_0x16bce3,_0x576f40){return function(_0x4ce12a){if(_0x4ce12a){var _0x53a318=_0x4ce12a['count'],_0x16e891=_0x576f40[_0x9734('0x1d')],_0x5ade55=_0x576f40[_0x9734('0x1d')]+_0x576f40[_0x9734('0x1e')],_0x106824;if(_0x5ade55>=_0x53a318){_0x5ade55=_0x53a318;_0x106824=0xc8;}else{_0x106824=0xce;}_0x16bce3['status'](_0x106824);return _0x16bce3[_0x9734('0x1f')](_0x9734('0x20'),_0x16e891+'-'+_0x5ade55+'/'+_0x53a318)[_0x9734('0x21')](_0x4ce12a);}return null;};}function patchUpdates(_0x1d98c9){return function(_0xf4ad83){try{jsonpatch[_0x9734('0x22')](_0xf4ad83,_0x1d98c9,!![]);}catch(_0x2d6316){return BPromise['reject'](_0x2d6316);}return _0xf4ad83['save']();};}function saveUpdates(_0x108411,_0x4c1b26){return function(_0x203bae){if(_0x203bae){return _0x203bae[_0x9734('0x23')](_0x108411)['then'](function(_0x25937d){return _0x25937d;});}return null;};}function removeEntity(_0x59ae1d,_0xac7f59){return function(_0x1f49ba){if(_0x1f49ba){return _0x1f49ba['destroy']()['then'](function(){_0x59ae1d['status'](0xcc)[_0x9734('0x1c')]();});}};}function handleEntityNotFound(_0x57f3b5,_0x5db808){return function(_0x4cf533){if(!_0x4cf533){_0x57f3b5[_0x9734('0x1a')](0x194);}return _0x4cf533;};}function handleError(_0x5c2402,_0x1749d2){_0x1749d2=_0x1749d2||0x1f4;return function(_0x29110c){logger[_0x9734('0x24')](_0x29110c[_0x9734('0x25')]);if(_0x29110c[_0x9734('0x26')]){delete _0x29110c[_0x9734('0x26')];}_0x5c2402['status'](_0x1749d2)[_0x9734('0x27')](_0x29110c);};}exports['index']=function(_0x1cc5f9,_0x41a033){var _0x264139={},_0x370537={},_0x336755={'count':0x0,'rows':[]};var _0x41a147=_['map'](db[_0x9734('0x28')][_0x9734('0x29')],function(_0x4bcb6a){return{'name':_0x4bcb6a['fieldName'],'type':_0x4bcb6a[_0x9734('0x2a')]['key']};});_0x370537[_0x9734('0x2b')]=_['map'](_0x41a147,_0x9734('0x26'));_0x370537[_0x9734('0x2c')]=_[_0x9734('0x2d')](_0x1cc5f9[_0x9734('0x2c')]);_0x370537[_0x9734('0x2e')]=_['intersection'](_0x370537[_0x9734('0x2b')],_0x370537[_0x9734('0x2c')]);_0x264139[_0x9734('0x2f')]=_['intersection'](_0x370537[_0x9734('0x2b')],qs[_0x9734('0x30')](_0x1cc5f9[_0x9734('0x2c')][_0x9734('0x30')]));_0x264139[_0x9734('0x2f')]=_0x264139[_0x9734('0x2f')]['length']?_0x264139['attributes']:_0x370537['model'];if(!_0x1cc5f9[_0x9734('0x2c')][_0x9734('0x31')]('nolimit')){_0x264139[_0x9734('0x1e')]=qs['limit'](_0x1cc5f9[_0x9734('0x2c')][_0x9734('0x1e')]);_0x264139[_0x9734('0x1d')]=qs[_0x9734('0x1d')](_0x1cc5f9[_0x9734('0x2c')][_0x9734('0x1d')]);}_0x264139[_0x9734('0x32')]=qs[_0x9734('0x33')](_0x1cc5f9['query'][_0x9734('0x33')]);_0x264139['where']=qs['filters'](_[_0x9734('0x34')](_0x1cc5f9[_0x9734('0x2c')],_0x370537['filters']),_0x41a147);if(_0x1cc5f9[_0x9734('0x2c')][_0x9734('0x35')]){_0x264139[_0x9734('0x36')]=_['merge'](_0x264139['where'],{'$or':_[_0x9734('0x37')](_0x41a147,function(_0x2bb084){if(_0x2bb084[_0x9734('0x2a')]!==_0x9734('0x38')){var _0x519e8d={};_0x519e8d[_0x2bb084[_0x9734('0x26')]]={'$like':'%'+_0x1cc5f9['query'][_0x9734('0x35')]+'%'};return _0x519e8d;}})});}_0x264139=_['merge']({},_0x264139,_0x1cc5f9[_0x9734('0x39')]);var _0x2ae356={'where':_0x264139[_0x9734('0x36')]};return db[_0x9734('0x28')]['count'](_0x2ae356)['then'](function(_0x5a5c85){_0x336755[_0x9734('0x3a')]=_0x5a5c85;if(_0x1cc5f9[_0x9734('0x2c')]['includeAll']){_0x264139[_0x9734('0x3b')]=[{'all':!![]}];}return db[_0x9734('0x28')]['findAll'](_0x264139);})[_0x9734('0x3c')](function(_0x23c93e){_0x336755[_0x9734('0x3d')]=_0x23c93e;return _0x336755;})[_0x9734('0x3c')](respondWithFilteredResult(_0x41a033,_0x264139))[_0x9734('0x3e')](handleError(_0x41a033,null));};