Built motion from commit (unavailable).|2.5.18
[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 _0x68bd=['html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','moment','mustache','util','path','sox','ejs','lodash','squel','crypto','desk.js','papaparse','ioredis','../../components/auth/service','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','json','offset','limit','Content-Range','apply','save','update','then','error','stack','name','send','index','map','Migration','fieldName','type','key','model','query','keys','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','merge','VIRTUAL','options','count','includeAll','include','rows','catch'];(function(_0x5b644e,_0x2e5e07){var _0x49c6bf=function(_0x3032d9){while(--_0x3032d9){_0x5b644e['push'](_0x5b644e['shift']());}};_0x49c6bf(++_0x2e5e07);}(_0x68bd,0x14f));var _0xd68b=function(_0x326a2a,_0x4303a4){_0x326a2a=_0x326a2a-0x0;var _0x1e8f5f=_0x68bd[_0x326a2a];return _0x1e8f5f;};'use strict';var pdf=require(_0xd68b('0x0'));var emlformat=require(_0xd68b('0x1'));var rimraf=require(_0xd68b('0x2'));var zipdir=require(_0xd68b('0x3'));var jsonpatch=require(_0xd68b('0x4'));var rp=require('request-promise');var moment=require(_0xd68b('0x5'));var BPromise=require('bluebird');var Mustache=require(_0xd68b('0x6'));var util=require(_0xd68b('0x7'));var path=require(_0xd68b('0x8'));var sox=require(_0xd68b('0x9'));var csv=require('to-csv');var ejs=require(_0xd68b('0xa'));var fs=require('fs');var _=require(_0xd68b('0xb'));var squel=require(_0xd68b('0xc'));var crypto=require(_0xd68b('0xd'));var jsforce=require('jsforce');var deskjs=require(_0xd68b('0xe'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0xd68b('0xf'));var Redis=require(_0xd68b('0x10'));var authService=require(_0xd68b('0x11'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xd68b('0x12'))(_0xd68b('0x13'));var utils=require(_0xd68b('0x14'));var config=require(_0xd68b('0x15'));var licenseUtil=require(_0xd68b('0x16'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x52b85b,_0x1b5332){_0x1b5332=_0x1b5332||0xcc;return function(_0xaa38cc){if(_0xaa38cc){return _0x52b85b[_0xd68b('0x17')](_0x1b5332);}return _0x52b85b[_0xd68b('0x18')](_0x1b5332)[_0xd68b('0x19')]();};}function respondWithResult(_0x1791b6,_0x14e4da){_0x14e4da=_0x14e4da||0xc8;return function(_0x1851e0){if(_0x1851e0){return _0x1791b6[_0xd68b('0x18')](_0x14e4da)[_0xd68b('0x1a')](_0x1851e0);}};}function respondWithFilteredResult(_0xb91a6b,_0x24b091){return function(_0x54644f){if(_0x54644f){var _0x2cd9d9=_0x54644f['count'],_0x20dfc2=_0x24b091[_0xd68b('0x1b')],_0x22ed1f=_0x24b091[_0xd68b('0x1b')]+_0x24b091[_0xd68b('0x1c')],_0x1eb480;if(_0x22ed1f>=_0x2cd9d9){_0x22ed1f=_0x2cd9d9;_0x1eb480=0xc8;}else{_0x1eb480=0xce;}_0xb91a6b[_0xd68b('0x18')](_0x1eb480);return _0xb91a6b['set'](_0xd68b('0x1d'),_0x20dfc2+'-'+_0x22ed1f+'/'+_0x2cd9d9)[_0xd68b('0x1a')](_0x54644f);}return null;};}function patchUpdates(_0x12c75f){return function(_0x5c632a){try{jsonpatch[_0xd68b('0x1e')](_0x5c632a,_0x12c75f,!![]);}catch(_0x2b839a){return BPromise['reject'](_0x2b839a);}return _0x5c632a[_0xd68b('0x1f')]();};}function saveUpdates(_0xfb5745,_0x544d0d){return function(_0x49c94a){if(_0x49c94a){return _0x49c94a[_0xd68b('0x20')](_0xfb5745)[_0xd68b('0x21')](function(_0xfbbcf6){return _0xfbbcf6;});}return null;};}function removeEntity(_0x1873ad,_0x446a80){return function(_0x163bfd){if(_0x163bfd){return _0x163bfd['destroy']()[_0xd68b('0x21')](function(){_0x1873ad[_0xd68b('0x18')](0xcc)[_0xd68b('0x19')]();});}};}function handleEntityNotFound(_0x4ca0e8,_0x28ed9c){return function(_0x110b81){if(!_0x110b81){_0x4ca0e8[_0xd68b('0x17')](0x194);}return _0x110b81;};}function handleError(_0x2fdc88,_0xe35343){_0xe35343=_0xe35343||0x1f4;return function(_0x1ffa56){logger[_0xd68b('0x22')](_0x1ffa56[_0xd68b('0x23')]);if(_0x1ffa56[_0xd68b('0x24')]){delete _0x1ffa56[_0xd68b('0x24')];}_0x2fdc88['status'](_0xe35343)[_0xd68b('0x25')](_0x1ffa56);};}exports[_0xd68b('0x26')]=function(_0x7bca6c,_0x57e303){var _0x562cc0={},_0x5c5f94={},_0x183505={'count':0x0,'rows':[]};var _0x2699f3=_[_0xd68b('0x27')](db[_0xd68b('0x28')]['rawAttributes'],function(_0xc1ef14){return{'name':_0xc1ef14[_0xd68b('0x29')],'type':_0xc1ef14[_0xd68b('0x2a')][_0xd68b('0x2b')]};});_0x5c5f94[_0xd68b('0x2c')]=_[_0xd68b('0x27')](_0x2699f3,_0xd68b('0x24'));_0x5c5f94[_0xd68b('0x2d')]=_[_0xd68b('0x2e')](_0x7bca6c[_0xd68b('0x2d')]);_0x5c5f94['filters']=_[_0xd68b('0x2f')](_0x5c5f94[_0xd68b('0x2c')],_0x5c5f94['query']);_0x562cc0[_0xd68b('0x30')]=_['intersection'](_0x5c5f94[_0xd68b('0x2c')],qs['fields'](_0x7bca6c['query'][_0xd68b('0x31')]));_0x562cc0[_0xd68b('0x30')]=_0x562cc0[_0xd68b('0x30')][_0xd68b('0x32')]?_0x562cc0[_0xd68b('0x30')]:_0x5c5f94['model'];if(!_0x7bca6c[_0xd68b('0x2d')][_0xd68b('0x33')](_0xd68b('0x34'))){_0x562cc0[_0xd68b('0x1c')]=qs[_0xd68b('0x1c')](_0x7bca6c['query'][_0xd68b('0x1c')]);_0x562cc0[_0xd68b('0x1b')]=qs[_0xd68b('0x1b')](_0x7bca6c[_0xd68b('0x2d')][_0xd68b('0x1b')]);}_0x562cc0[_0xd68b('0x35')]=qs[_0xd68b('0x36')](_0x7bca6c[_0xd68b('0x2d')][_0xd68b('0x36')]);_0x562cc0[_0xd68b('0x37')]=qs[_0xd68b('0x38')](_[_0xd68b('0x39')](_0x7bca6c[_0xd68b('0x2d')],_0x5c5f94['filters']),_0x2699f3);if(_0x7bca6c[_0xd68b('0x2d')][_0xd68b('0x3a')]){_0x562cc0[_0xd68b('0x37')]=_[_0xd68b('0x3b')](_0x562cc0[_0xd68b('0x37')],{'$or':_['map'](_0x2699f3,function(_0x143db8){if(_0x143db8[_0xd68b('0x2a')]!==_0xd68b('0x3c')){var _0x17cbb8={};_0x17cbb8[_0x143db8[_0xd68b('0x24')]]={'$like':'%'+_0x7bca6c[_0xd68b('0x2d')][_0xd68b('0x3a')]+'%'};return _0x17cbb8;}})});}_0x562cc0=_[_0xd68b('0x3b')]({},_0x562cc0,_0x7bca6c[_0xd68b('0x3d')]);var _0x10961a={'where':_0x562cc0[_0xd68b('0x37')]};return db[_0xd68b('0x28')][_0xd68b('0x3e')](_0x10961a)['then'](function(_0xa70cc1){_0x183505[_0xd68b('0x3e')]=_0xa70cc1;if(_0x7bca6c[_0xd68b('0x2d')][_0xd68b('0x3f')]){_0x562cc0[_0xd68b('0x40')]=[{'all':!![]}];}return db[_0xd68b('0x28')]['findAll'](_0x562cc0);})[_0xd68b('0x21')](function(_0x398432){_0x183505[_0xd68b('0x41')]=_0x398432;return _0x183505;})[_0xd68b('0x21')](respondWithFilteredResult(_0x57e303,_0x562cc0))[_0xd68b('0x42')](handleError(_0x57e303,null));};