Built motion from commit b5413ace.|2.6.9
[motion2.git] / server / api / openchannelApplication / openchannelApplication.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 _0x01d9=['merge','options','OpenchannelApplication','includeAll','include','findAll','rows','catch','params','length','create','body','destroy','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','sox','to-csv','ejs','fs-extra','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','then','end','error','stack','name','send','index','map','query','keys','intersection','model','attributes','fields','hasOwnProperty','nolimit','sort','where','pick','filters','filter','type','VIRTUAL'];(function(_0x49ca18,_0x5e6d05){var _0x145d54=function(_0x30b9be){while(--_0x30b9be){_0x49ca18['push'](_0x49ca18['shift']());}};_0x145d54(++_0x5e6d05);}(_0x01d9,0xeb));var _0x901d=function(_0x20a584,_0xe384a5){_0x20a584=_0x20a584-0x0;var _0x4b41a8=_0x01d9[_0x20a584];return _0x4b41a8;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0x901d('0x0'));var jsonpatch=require(_0x901d('0x1'));var rp=require(_0x901d('0x2'));var moment=require(_0x901d('0x3'));var BPromise=require(_0x901d('0x4'));var Mustache=require(_0x901d('0x5'));var util=require('util');var path=require('path');var sox=require(_0x901d('0x6'));var csv=require(_0x901d('0x7'));var ejs=require(_0x901d('0x8'));var fs=require('fs');var fs_extra=require(_0x901d('0x9'));var _=require('lodash');var squel=require(_0x901d('0xa'));var crypto=require('crypto');var jsforce=require(_0x901d('0xb'));var deskjs=require(_0x901d('0xc'));var toCsv=require(_0x901d('0x7'));var querystring=require(_0x901d('0xd'));var Papa=require(_0x901d('0xe'));var Redis=require(_0x901d('0xf'));var authService=require(_0x901d('0x10'));var qs=require(_0x901d('0x11'));var as=require(_0x901d('0x12'));var hardwareService=require(_0x901d('0x13'));var logger=require(_0x901d('0x14'))(_0x901d('0x15'));var utils=require(_0x901d('0x16'));var config=require(_0x901d('0x17'));var licenseUtil=require('../../config/license/util');var db=require(_0x901d('0x18'))['db'];function respondWithStatusCode(_0x347393,_0x33b99b){_0x33b99b=_0x33b99b||0xcc;return function(_0x484e8e){if(_0x484e8e){return _0x347393[_0x901d('0x19')](_0x33b99b);}return _0x347393[_0x901d('0x1a')](_0x33b99b)['end']();};}function respondWithResult(_0x4b27bf,_0x2370eb){_0x2370eb=_0x2370eb||0xc8;return function(_0x1d186d){if(_0x1d186d){return _0x4b27bf[_0x901d('0x1a')](_0x2370eb)[_0x901d('0x1b')](_0x1d186d);}};}function respondWithFilteredResult(_0x258d07,_0x369dac){return function(_0x5494c4){if(_0x5494c4){var _0x463514=typeof _0x369dac[_0x901d('0x1c')]===_0x901d('0x1d')&&typeof _0x369dac[_0x901d('0x1e')]===_0x901d('0x1d');var _0x4c8739=_0x5494c4[_0x901d('0x1f')];var _0x55eb20=_0x463514?0x0:_0x369dac[_0x901d('0x1c')];var _0x15217f=_0x463514?_0x5494c4[_0x901d('0x1f')]:_0x369dac[_0x901d('0x1c')]+_0x369dac['limit'];var _0x52e53f;if(_0x15217f>=_0x4c8739){_0x15217f=_0x4c8739;_0x52e53f=0xc8;}else{_0x52e53f=0xce;}_0x258d07[_0x901d('0x1a')](_0x52e53f);return _0x258d07[_0x901d('0x20')](_0x901d('0x21'),_0x55eb20+'-'+_0x15217f+'/'+_0x4c8739)[_0x901d('0x1b')](_0x5494c4);}return null;};}function patchUpdates(_0x51ba66){return function(_0x3ce647){try{jsonpatch[_0x901d('0x22')](_0x3ce647,_0x51ba66,!![]);}catch(_0x51d234){return BPromise[_0x901d('0x23')](_0x51d234);}return _0x3ce647[_0x901d('0x24')]();};}function saveUpdates(_0x201c4d,_0x172e73){return function(_0x4f8bc6){if(_0x4f8bc6){return _0x4f8bc6[_0x901d('0x25')](_0x201c4d)[_0x901d('0x26')](function(_0x5dcba8){return _0x5dcba8;});}return null;};}function removeEntity(_0xb7f39d,_0x433904){return function(_0x365158){if(_0x365158){return _0x365158['destroy']()['then'](function(){_0xb7f39d[_0x901d('0x1a')](0xcc)[_0x901d('0x27')]();});}};}function handleEntityNotFound(_0x5e7b5d,_0x3f243c){return function(_0x5d3964){if(!_0x5d3964){_0x5e7b5d[_0x901d('0x19')](0x194);}return _0x5d3964;};}function handleError(_0x3120f7,_0x4a942b){_0x4a942b=_0x4a942b||0x1f4;return function(_0x3e14fb){logger[_0x901d('0x28')](_0x3e14fb[_0x901d('0x29')]);if(_0x3e14fb['name']){delete _0x3e14fb[_0x901d('0x2a')];}_0x3120f7[_0x901d('0x1a')](_0x4a942b)[_0x901d('0x2b')](_0x3e14fb);};}exports[_0x901d('0x2c')]=function(_0x250b97,_0x2b9852){var _0x1f1c52={},_0x2b9fc3={},_0x2e6939={'count':0x0,'rows':[]};var _0x52dd90=_[_0x901d('0x2d')](db['OpenchannelApplication']['rawAttributes'],function(_0x3cf868){return{'name':_0x3cf868['fieldName'],'type':_0x3cf868['type']['key']};});_0x2b9fc3['model']=_[_0x901d('0x2d')](_0x52dd90,_0x901d('0x2a'));_0x2b9fc3[_0x901d('0x2e')]=_[_0x901d('0x2f')](_0x250b97['query']);_0x2b9fc3['filters']=_[_0x901d('0x30')](_0x2b9fc3[_0x901d('0x31')],_0x2b9fc3[_0x901d('0x2e')]);_0x1f1c52[_0x901d('0x32')]=_[_0x901d('0x30')](_0x2b9fc3[_0x901d('0x31')],qs[_0x901d('0x33')](_0x250b97['query'][_0x901d('0x33')]));_0x1f1c52[_0x901d('0x32')]=_0x1f1c52[_0x901d('0x32')]['length']?_0x1f1c52[_0x901d('0x32')]:_0x2b9fc3[_0x901d('0x31')];if(!_0x250b97[_0x901d('0x2e')][_0x901d('0x34')](_0x901d('0x35'))){_0x1f1c52[_0x901d('0x1e')]=qs[_0x901d('0x1e')](_0x250b97[_0x901d('0x2e')]['limit']);_0x1f1c52[_0x901d('0x1c')]=qs['offset'](_0x250b97[_0x901d('0x2e')][_0x901d('0x1c')]);}_0x1f1c52['order']=qs[_0x901d('0x36')](_0x250b97[_0x901d('0x2e')][_0x901d('0x36')]);_0x1f1c52[_0x901d('0x37')]=qs['filters'](_[_0x901d('0x38')](_0x250b97[_0x901d('0x2e')],_0x2b9fc3[_0x901d('0x39')]),_0x52dd90);if(_0x250b97[_0x901d('0x2e')][_0x901d('0x3a')]){_0x1f1c52[_0x901d('0x37')]=_['merge'](_0x1f1c52[_0x901d('0x37')],{'$or':_[_0x901d('0x2d')](_0x52dd90,function(_0x279a31){if(_0x279a31[_0x901d('0x3b')]!==_0x901d('0x3c')){var _0xa1393={};_0xa1393[_0x279a31[_0x901d('0x2a')]]={'$like':'%'+_0x250b97[_0x901d('0x2e')][_0x901d('0x3a')]+'%'};return _0xa1393;}})});}_0x1f1c52=_[_0x901d('0x3d')]({},_0x1f1c52,_0x250b97[_0x901d('0x3e')]);var _0x52d1ae={'where':_0x1f1c52[_0x901d('0x37')]};return db[_0x901d('0x3f')][_0x901d('0x1f')](_0x52d1ae)[_0x901d('0x26')](function(_0x31dd23){_0x2e6939[_0x901d('0x1f')]=_0x31dd23;if(_0x250b97['query'][_0x901d('0x40')]){_0x1f1c52[_0x901d('0x41')]=[{'all':!![]}];}return db[_0x901d('0x3f')][_0x901d('0x42')](_0x1f1c52);})[_0x901d('0x26')](function(_0x561176){_0x2e6939[_0x901d('0x43')]=_0x561176;return _0x2e6939;})[_0x901d('0x26')](respondWithFilteredResult(_0x2b9852,_0x1f1c52))[_0x901d('0x44')](handleError(_0x2b9852,null));};exports['show']=function(_0x2aa217,_0x54dc57){var _0x31fdc3={'raw':!![],'where':{'id':_0x2aa217[_0x901d('0x45')]['id']}},_0x239c83={};_0x239c83['model']=_['keys'](db[_0x901d('0x3f')]['rawAttributes']);_0x239c83[_0x901d('0x2e')]=_[_0x901d('0x2f')](_0x2aa217[_0x901d('0x2e')]);_0x239c83[_0x901d('0x39')]=_[_0x901d('0x30')](_0x239c83[_0x901d('0x31')],_0x239c83[_0x901d('0x2e')]);_0x31fdc3[_0x901d('0x32')]=_[_0x901d('0x30')](_0x239c83['model'],qs[_0x901d('0x33')](_0x2aa217['query']['fields']));_0x31fdc3[_0x901d('0x32')]=_0x31fdc3['attributes'][_0x901d('0x46')]?_0x31fdc3[_0x901d('0x32')]:_0x239c83['model'];if(_0x2aa217['query'][_0x901d('0x40')]){_0x31fdc3['include']=[{'all':!![]}];}_0x31fdc3=_[_0x901d('0x3d')]({},_0x31fdc3,_0x2aa217['options']);return db[_0x901d('0x3f')]['find'](_0x31fdc3)[_0x901d('0x26')](handleEntityNotFound(_0x54dc57,null))['then'](respondWithResult(_0x54dc57,null))['catch'](handleError(_0x54dc57,null));};exports['create']=function(_0x2a8f8c,_0x121fc4){return db[_0x901d('0x3f')][_0x901d('0x47')](_0x2a8f8c[_0x901d('0x48')],{})['then'](respondWithResult(_0x121fc4,0xc9))[_0x901d('0x44')](handleError(_0x121fc4,null));};exports[_0x901d('0x25')]=function(_0x51c1c4,_0x4c7810){if(_0x51c1c4['body']['id']){delete _0x51c1c4[_0x901d('0x48')]['id'];}return db[_0x901d('0x3f')]['find']({'where':{'id':_0x51c1c4[_0x901d('0x45')]['id']}})[_0x901d('0x26')](handleEntityNotFound(_0x4c7810,null))[_0x901d('0x26')](saveUpdates(_0x51c1c4[_0x901d('0x48')],null))['then'](respondWithResult(_0x4c7810,null))[_0x901d('0x44')](handleError(_0x4c7810,null));};exports[_0x901d('0x49')]=function(_0x782258,_0x2595be){return db['OpenchannelApplication']['find']({'where':{'id':_0x782258[_0x901d('0x45')]['id']}})[_0x901d('0x26')](handleEntityNotFound(_0x2595be,null))['then'](removeEntity(_0x2595be,null))['catch'](handleError(_0x2595be,null));};