Built motion from commit (unavailable).|2.4.7
[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 _0xe0d7=['attributes','fields','hasOwnProperty','order','sort','pick','filter','where','key','VIRTUAL','field','merge','includeAll','rows','catch','html-pdf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','querystring','papaparse','ioredis','../../components/parsers/qs','../../config/license/hardware','../../config/logger','../../config/environment','../../mysqldb','sendStatus','end','json','count','offset','limit','apply','reject','then','status','error','stack','name','index','rawAttributes','model','keys','query','filters','intersection'];(function(_0x4fee08,_0x1eb07c){var _0x4a2ee2=function(_0x5080ca){while(--_0x5080ca){_0x4fee08['push'](_0x4fee08['shift']());}};_0x4a2ee2(++_0x1eb07c);}(_0xe0d7,0xba));var _0x7e0d=function(_0x1ab138,_0x217fd9){_0x1ab138=_0x1ab138-0x0;var _0x1c8593=_0xe0d7[_0x1ab138];return _0x1c8593;};'use strict';var pdf=require(_0x7e0d('0x0'));var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0x7e0d('0x1'));var jsonpatch=require(_0x7e0d('0x2'));var rp=require(_0x7e0d('0x3'));var moment=require('moment');var BPromise=require(_0x7e0d('0x4'));var Mustache=require(_0x7e0d('0x5'));var util=require(_0x7e0d('0x6'));var path=require(_0x7e0d('0x7'));var sox=require(_0x7e0d('0x8'));var csv=require(_0x7e0d('0x9'));var ejs=require(_0x7e0d('0xa'));var fs=require('fs');var _=require(_0x7e0d('0xb'));var squel=require(_0x7e0d('0xc'));var crypto=require(_0x7e0d('0xd'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x7e0d('0xe'));var Papa=require(_0x7e0d('0xf'));var Redis=require(_0x7e0d('0x10'));var authService=require('../../components/auth/service');var qs=require(_0x7e0d('0x11'));var hardwareService=require(_0x7e0d('0x12'));var logger=require(_0x7e0d('0x13'))('api');var utils=require('../../config/utils');var config=require(_0x7e0d('0x14'));var db=require(_0x7e0d('0x15'))['db'];function respondWithStatusCode(_0x101219,_0x807b54){_0x807b54=_0x807b54||0xcc;return function(_0x23b8f4){if(_0x23b8f4){return _0x101219[_0x7e0d('0x16')](_0x807b54);}return _0x101219['status'](_0x807b54)[_0x7e0d('0x17')]();};}function respondWithResult(_0x51e311,_0x3d3850){_0x3d3850=_0x3d3850||0xc8;return function(_0x114227){if(_0x114227){return _0x51e311['status'](_0x3d3850)[_0x7e0d('0x18')](_0x114227);}};}function respondWithFilteredResult(_0x1ebb22,_0x920162){return function(_0x1242ce){if(_0x1242ce){var _0x215a03=_0x1242ce[_0x7e0d('0x19')],_0x5d4db6=_0x920162[_0x7e0d('0x1a')],_0x502e0b=_0x920162[_0x7e0d('0x1a')]+_0x920162[_0x7e0d('0x1b')],_0xd2a33;if(_0x502e0b>=_0x215a03){_0x502e0b=_0x215a03;_0xd2a33=0xc8;}else{_0xd2a33=0xce;}_0x1ebb22['status'](_0xd2a33);return _0x1ebb22['set']('Content-Range',_0x5d4db6+'-'+_0x502e0b+'/'+_0x215a03)['json'](_0x1242ce);}return null;};}function patchUpdates(_0x346dc0){return function(_0x2c58ef){try{jsonpatch[_0x7e0d('0x1c')](_0x2c58ef,_0x346dc0,!![]);}catch(_0x1e5344){return BPromise[_0x7e0d('0x1d')](_0x1e5344);}return _0x2c58ef['save']();};}function saveUpdates(_0xc8b095,_0x3e2e94){return function(_0x242e3d){if(_0x242e3d){return _0x242e3d['update'](_0xc8b095)[_0x7e0d('0x1e')](function(_0x114f0f){return _0x114f0f;});}return null;};}function removeEntity(_0x8f57d4,_0x117aa2){return function(_0x4f7ccd){if(_0x4f7ccd){return _0x4f7ccd['destroy']()[_0x7e0d('0x1e')](function(){_0x8f57d4[_0x7e0d('0x1f')](0xcc)[_0x7e0d('0x17')]();});}};}function handleEntityNotFound(_0x2c7b29,_0x3e5b01){return function(_0x354ea4){if(!_0x354ea4){_0x2c7b29['sendStatus'](0x194);}return _0x354ea4;};}function handleError(_0x2d9b98,_0x4638ad){_0x4638ad=_0x4638ad||0x1f4;return function(_0x5b976a){logger[_0x7e0d('0x20')](_0x5b976a[_0x7e0d('0x21')]);if(_0x5b976a[_0x7e0d('0x22')]){delete _0x5b976a[_0x7e0d('0x22')];}_0x2d9b98[_0x7e0d('0x1f')](_0x4638ad)['send'](_0x5b976a);};}exports[_0x7e0d('0x23')]=function(_0xae85f2,_0x3aa8c2){var _0x5992aa={},_0x2dfd4a={},_0x2cd8cc={'count':0x0,'rows':[]};var _0x2bb3bc=db['Migration'][_0x7e0d('0x24')];_0x2dfd4a[_0x7e0d('0x25')]=_[_0x7e0d('0x26')](_0x2bb3bc);_0x2dfd4a[_0x7e0d('0x27')]=_[_0x7e0d('0x26')](_0xae85f2[_0x7e0d('0x27')]);_0x2dfd4a[_0x7e0d('0x28')]=_[_0x7e0d('0x29')](_0x2dfd4a[_0x7e0d('0x25')],_0x2dfd4a[_0x7e0d('0x27')]);_0x5992aa[_0x7e0d('0x2a')]=_[_0x7e0d('0x29')](_0x2dfd4a[_0x7e0d('0x25')],qs['fields'](_0xae85f2['query'][_0x7e0d('0x2b')]));_0x5992aa[_0x7e0d('0x2a')]=_0x5992aa[_0x7e0d('0x2a')]['length']?_0x5992aa[_0x7e0d('0x2a')]:_0x2dfd4a[_0x7e0d('0x25')];if(!_0xae85f2[_0x7e0d('0x27')][_0x7e0d('0x2c')]('nolimit')){_0x5992aa[_0x7e0d('0x1b')]=qs[_0x7e0d('0x1b')](_0xae85f2[_0x7e0d('0x27')]['limit']);_0x5992aa[_0x7e0d('0x1a')]=qs[_0x7e0d('0x1a')](_0xae85f2[_0x7e0d('0x27')]['offset']);}_0x5992aa[_0x7e0d('0x2d')]=qs['sort'](_0xae85f2[_0x7e0d('0x27')][_0x7e0d('0x2e')]);_0x5992aa['where']=qs[_0x7e0d('0x28')](_[_0x7e0d('0x2f')](_0xae85f2[_0x7e0d('0x27')],_0x2dfd4a[_0x7e0d('0x28')]));if(_0xae85f2[_0x7e0d('0x27')][_0x7e0d('0x30')]){_0x5992aa[_0x7e0d('0x31')]=_['merge'](_0x5992aa['where'],{'$or':_['map'](_0x2bb3bc,function(_0x2e93ff){if(_0x2e93ff['type'][_0x7e0d('0x32')]!==_0x7e0d('0x33')){var _0x19a46a={};_0x19a46a[_0x2e93ff[_0x7e0d('0x34')]]={'$like':'%'+_0xae85f2[_0x7e0d('0x27')]['filter']+'%'};return _0x19a46a;}})});}_0x5992aa=_[_0x7e0d('0x35')]({},_0x5992aa,_0xae85f2['options']);var _0x388754={'where':_0x5992aa[_0x7e0d('0x31')]};return db['Migration'][_0x7e0d('0x19')](_0x388754)[_0x7e0d('0x1e')](function(_0x3efcc8){_0x2cd8cc[_0x7e0d('0x19')]=_0x3efcc8;if(_0xae85f2[_0x7e0d('0x27')][_0x7e0d('0x36')]){_0x5992aa['include']=[{'all':!![]}];}return db['Migration']['findAll'](_0x5992aa);})[_0x7e0d('0x1e')](function(_0x45c93a){_0x2cd8cc[_0x7e0d('0x37')]=_0x45c93a;return _0x2cd8cc;})[_0x7e0d('0x1e')](respondWithFilteredResult(_0x3aa8c2,_0x5992aa))[_0x7e0d('0x38')](handleError(_0x3aa8c2,null));};