Built motion from commit (unavailable).|2.5.10
[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 _0x5730=['filter','merge','where','VIRTUAL','options','count','include','findAll','catch','html-pdf','fast-json-patch','request-promise','moment','util','path','sox','ejs','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','end','status','json','offset','limit','set','Content-Range','apply','reject','save','update','then','sendStatus','error','stack','name','send','map','Migration','rawAttributes','fieldName','type','key','query','keys','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','order','sort','pick'];(function(_0x263a74,_0xc31414){var _0x2aa86c=function(_0x382896){while(--_0x382896){_0x263a74['push'](_0x263a74['shift']());}};_0x2aa86c(++_0xc31414);}(_0x5730,0xd5));var _0x0573=function(_0x5ea6a5,_0x1190ce){_0x5ea6a5=_0x5ea6a5-0x0;var _0x4672df=_0x5730[_0x5ea6a5];return _0x4672df;};'use strict';var pdf=require(_0x0573('0x0'));var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0x0573('0x1'));var rp=require(_0x0573('0x2'));var moment=require(_0x0573('0x3'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x0573('0x4'));var path=require(_0x0573('0x5'));var sox=require(_0x0573('0x6'));var csv=require('to-csv');var ejs=require(_0x0573('0x7'));var fs=require('fs');var _=require('lodash');var squel=require(_0x0573('0x8'));var crypto=require(_0x0573('0x9'));var jsforce=require(_0x0573('0xa'));var deskjs=require(_0x0573('0xb'));var toCsv=require('to-csv');var querystring=require(_0x0573('0xc'));var Papa=require('papaparse');var Redis=require(_0x0573('0xd'));var authService=require(_0x0573('0xe'));var qs=require(_0x0573('0xf'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x0573('0x10'));var logger=require(_0x0573('0x11'))(_0x0573('0x12'));var utils=require(_0x0573('0x13'));var config=require(_0x0573('0x14'));var licenseUtil=require(_0x0573('0x15'));var db=require(_0x0573('0x16'))['db'];function respondWithStatusCode(_0x1686b2,_0x42405a){_0x42405a=_0x42405a||0xcc;return function(_0x1e70eb){if(_0x1e70eb){return _0x1686b2['sendStatus'](_0x42405a);}return _0x1686b2['status'](_0x42405a)[_0x0573('0x17')]();};}function respondWithResult(_0x3a24d4,_0x14e665){_0x14e665=_0x14e665||0xc8;return function(_0x44e836){if(_0x44e836){return _0x3a24d4[_0x0573('0x18')](_0x14e665)[_0x0573('0x19')](_0x44e836);}};}function respondWithFilteredResult(_0xe60717,_0x541ee2){return function(_0x1b9714){if(_0x1b9714){var _0x2629bf=_0x1b9714['count'],_0x3be14d=_0x541ee2[_0x0573('0x1a')],_0x34dc74=_0x541ee2[_0x0573('0x1a')]+_0x541ee2[_0x0573('0x1b')],_0x547f64;if(_0x34dc74>=_0x2629bf){_0x34dc74=_0x2629bf;_0x547f64=0xc8;}else{_0x547f64=0xce;}_0xe60717[_0x0573('0x18')](_0x547f64);return _0xe60717[_0x0573('0x1c')](_0x0573('0x1d'),_0x3be14d+'-'+_0x34dc74+'/'+_0x2629bf)[_0x0573('0x19')](_0x1b9714);}return null;};}function patchUpdates(_0x49d0c3){return function(_0x4e83f4){try{jsonpatch[_0x0573('0x1e')](_0x4e83f4,_0x49d0c3,!![]);}catch(_0x3378a7){return BPromise[_0x0573('0x1f')](_0x3378a7);}return _0x4e83f4[_0x0573('0x20')]();};}function saveUpdates(_0x13643f,_0x1ab8bd){return function(_0x1c1440){if(_0x1c1440){return _0x1c1440[_0x0573('0x21')](_0x13643f)[_0x0573('0x22')](function(_0x145ac6){return _0x145ac6;});}return null;};}function removeEntity(_0x135b37,_0x7f4340){return function(_0x725b71){if(_0x725b71){return _0x725b71['destroy']()[_0x0573('0x22')](function(){_0x135b37[_0x0573('0x18')](0xcc)[_0x0573('0x17')]();});}};}function handleEntityNotFound(_0x57a1b8,_0x197c57){return function(_0x6213f5){if(!_0x6213f5){_0x57a1b8[_0x0573('0x23')](0x194);}return _0x6213f5;};}function handleError(_0x3de446,_0x5dc96a){_0x5dc96a=_0x5dc96a||0x1f4;return function(_0x5465c0){logger[_0x0573('0x24')](_0x5465c0[_0x0573('0x25')]);if(_0x5465c0[_0x0573('0x26')]){delete _0x5465c0[_0x0573('0x26')];}_0x3de446['status'](_0x5dc96a)[_0x0573('0x27')](_0x5465c0);};}exports['index']=function(_0xecf4b2,_0x3c331d){var _0x3b01fe={},_0x4840d9={},_0x21599b={'count':0x0,'rows':[]};var _0x1ec269=_[_0x0573('0x28')](db[_0x0573('0x29')][_0x0573('0x2a')],function(_0x574486){return{'name':_0x574486[_0x0573('0x2b')],'type':_0x574486[_0x0573('0x2c')][_0x0573('0x2d')]};});_0x4840d9['model']=_[_0x0573('0x28')](_0x1ec269,'name');_0x4840d9[_0x0573('0x2e')]=_[_0x0573('0x2f')](_0xecf4b2[_0x0573('0x2e')]);_0x4840d9[_0x0573('0x30')]=_[_0x0573('0x31')](_0x4840d9[_0x0573('0x32')],_0x4840d9['query']);_0x3b01fe[_0x0573('0x33')]=_[_0x0573('0x31')](_0x4840d9[_0x0573('0x32')],qs['fields'](_0xecf4b2['query'][_0x0573('0x34')]));_0x3b01fe[_0x0573('0x33')]=_0x3b01fe[_0x0573('0x33')][_0x0573('0x35')]?_0x3b01fe['attributes']:_0x4840d9[_0x0573('0x32')];if(!_0xecf4b2['query'][_0x0573('0x36')](_0x0573('0x37'))){_0x3b01fe[_0x0573('0x1b')]=qs[_0x0573('0x1b')](_0xecf4b2[_0x0573('0x2e')][_0x0573('0x1b')]);_0x3b01fe[_0x0573('0x1a')]=qs[_0x0573('0x1a')](_0xecf4b2['query']['offset']);}_0x3b01fe[_0x0573('0x38')]=qs[_0x0573('0x39')](_0xecf4b2[_0x0573('0x2e')][_0x0573('0x39')]);_0x3b01fe['where']=qs[_0x0573('0x30')](_[_0x0573('0x3a')](_0xecf4b2[_0x0573('0x2e')],_0x4840d9[_0x0573('0x30')]),_0x1ec269);if(_0xecf4b2['query'][_0x0573('0x3b')]){_0x3b01fe['where']=_[_0x0573('0x3c')](_0x3b01fe[_0x0573('0x3d')],{'$or':_['map'](_0x1ec269,function(_0x28cc5e){if(_0x28cc5e[_0x0573('0x2c')]!==_0x0573('0x3e')){var _0x1b3a73={};_0x1b3a73[_0x28cc5e[_0x0573('0x26')]]={'$like':'%'+_0xecf4b2['query'][_0x0573('0x3b')]+'%'};return _0x1b3a73;}})});}_0x3b01fe=_[_0x0573('0x3c')]({},_0x3b01fe,_0xecf4b2[_0x0573('0x3f')]);var _0x3735f3={'where':_0x3b01fe[_0x0573('0x3d')]};return db[_0x0573('0x29')][_0x0573('0x40')](_0x3735f3)['then'](function(_0x5b6c06){_0x21599b['count']=_0x5b6c06;if(_0xecf4b2['query']['includeAll']){_0x3b01fe[_0x0573('0x41')]=[{'all':!![]}];}return db['Migration'][_0x0573('0x42')](_0x3b01fe);})[_0x0573('0x22')](function(_0x3d4087){_0x21599b['rows']=_0x3d4087;return _0x21599b;})[_0x0573('0x22')](respondWithFilteredResult(_0x3c331d,_0x3b01fe))[_0x0573('0x43')](handleError(_0x3c331d,null));};