Built motion from commit 1fa89557.|2.6.10
[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 _0xd8d9=['hasOwnProperty','nolimit','sort','where','pick','filter','merge','map','VIRTUAL','options','OpenchannelApplication','count','includeAll','include','findAll','rows','params','rawAttributes','catch','create','body','update','find','destroy','rimraf','zip-dir','request-promise','moment','mustache','util','path','to-csv','fs-extra','lodash','squel','jsforce','desk.js','../../components/auth/service','../../components/parsers/qs','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','offset','undefined','limit','set','Content-Range','apply','reject','save','then','sendStatus','stack','name','index','fieldName','type','key','query','keys','filters','intersection','model','fields','attributes'];(function(_0x1af36a,_0x2c26d4){var _0x5551a7=function(_0xcafd31){while(--_0xcafd31){_0x1af36a['push'](_0x1af36a['shift']());}};_0x5551a7(++_0x2c26d4);}(_0xd8d9,0x17b));var _0x9d8d=function(_0x2d8fc2,_0x1c461d){_0x2d8fc2=_0x2d8fc2-0x0;var _0x3a9e53=_0xd8d9[_0x2d8fc2];return _0x3a9e53;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x9d8d('0x0'));var zipdir=require(_0x9d8d('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0x9d8d('0x2'));var moment=require(_0x9d8d('0x3'));var BPromise=require('bluebird');var Mustache=require(_0x9d8d('0x4'));var util=require(_0x9d8d('0x5'));var path=require(_0x9d8d('0x6'));var sox=require('sox');var csv=require(_0x9d8d('0x7'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x9d8d('0x8'));var _=require(_0x9d8d('0x9'));var squel=require(_0x9d8d('0xa'));var crypto=require('crypto');var jsforce=require(_0x9d8d('0xb'));var deskjs=require(_0x9d8d('0xc'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x9d8d('0xd'));var qs=require(_0x9d8d('0xe'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0x9d8d('0xf'))(_0x9d8d('0x10'));var utils=require(_0x9d8d('0x11'));var config=require(_0x9d8d('0x12'));var licenseUtil=require(_0x9d8d('0x13'));var db=require(_0x9d8d('0x14'))['db'];function respondWithStatusCode(_0x58200e,_0xfd9974){_0xfd9974=_0xfd9974||0xcc;return function(_0x53e633){if(_0x53e633){return _0x58200e['sendStatus'](_0xfd9974);}return _0x58200e[_0x9d8d('0x15')](_0xfd9974)[_0x9d8d('0x16')]();};}function respondWithResult(_0x51d4af,_0x30d401){_0x30d401=_0x30d401||0xc8;return function(_0x4f8d56){if(_0x4f8d56){return _0x51d4af[_0x9d8d('0x15')](_0x30d401)[_0x9d8d('0x17')](_0x4f8d56);}};}function respondWithFilteredResult(_0x22dbad,_0x128c43){return function(_0x339630){if(_0x339630){var _0xd4bf28=typeof _0x128c43[_0x9d8d('0x18')]===_0x9d8d('0x19')&&typeof _0x128c43[_0x9d8d('0x1a')]===_0x9d8d('0x19');var _0x33f1e0=_0x339630['count'];var _0x5268ab=_0xd4bf28?0x0:_0x128c43['offset'];var _0x42b1d1=_0xd4bf28?_0x339630['count']:_0x128c43[_0x9d8d('0x18')]+_0x128c43['limit'];var _0x4a6584;if(_0x42b1d1>=_0x33f1e0){_0x42b1d1=_0x33f1e0;_0x4a6584=0xc8;}else{_0x4a6584=0xce;}_0x22dbad[_0x9d8d('0x15')](_0x4a6584);return _0x22dbad[_0x9d8d('0x1b')](_0x9d8d('0x1c'),_0x5268ab+'-'+_0x42b1d1+'/'+_0x33f1e0)[_0x9d8d('0x17')](_0x339630);}return null;};}function patchUpdates(_0x3ea1f6){return function(_0x35ff3f){try{jsonpatch[_0x9d8d('0x1d')](_0x35ff3f,_0x3ea1f6,!![]);}catch(_0x2f45ec){return BPromise[_0x9d8d('0x1e')](_0x2f45ec);}return _0x35ff3f[_0x9d8d('0x1f')]();};}function saveUpdates(_0x2e6649,_0x3604e0){return function(_0x57fa26){if(_0x57fa26){return _0x57fa26['update'](_0x2e6649)[_0x9d8d('0x20')](function(_0x559739){return _0x559739;});}return null;};}function removeEntity(_0xf8ae9b,_0x3b8bf0){return function(_0x4b3f14){if(_0x4b3f14){return _0x4b3f14['destroy']()[_0x9d8d('0x20')](function(){_0xf8ae9b[_0x9d8d('0x15')](0xcc)[_0x9d8d('0x16')]();});}};}function handleEntityNotFound(_0x212a65,_0x16e7b9){return function(_0x399675){if(!_0x399675){_0x212a65[_0x9d8d('0x21')](0x194);}return _0x399675;};}function handleError(_0x180ed6,_0x11eb53){_0x11eb53=_0x11eb53||0x1f4;return function(_0x574d63){logger['error'](_0x574d63[_0x9d8d('0x22')]);if(_0x574d63[_0x9d8d('0x23')]){delete _0x574d63[_0x9d8d('0x23')];}_0x180ed6[_0x9d8d('0x15')](_0x11eb53)['send'](_0x574d63);};}exports[_0x9d8d('0x24')]=function(_0x4bf2f4,_0xd8832b){var _0xe5caf2={},_0x223360={},_0x2aa209={'count':0x0,'rows':[]};var _0x80fb21=_['map'](db['OpenchannelApplication']['rawAttributes'],function(_0x2dbbab){return{'name':_0x2dbbab[_0x9d8d('0x25')],'type':_0x2dbbab[_0x9d8d('0x26')][_0x9d8d('0x27')]};});_0x223360['model']=_['map'](_0x80fb21,'name');_0x223360[_0x9d8d('0x28')]=_[_0x9d8d('0x29')](_0x4bf2f4['query']);_0x223360[_0x9d8d('0x2a')]=_[_0x9d8d('0x2b')](_0x223360[_0x9d8d('0x2c')],_0x223360['query']);_0xe5caf2['attributes']=_['intersection'](_0x223360[_0x9d8d('0x2c')],qs[_0x9d8d('0x2d')](_0x4bf2f4[_0x9d8d('0x28')]['fields']));_0xe5caf2[_0x9d8d('0x2e')]=_0xe5caf2[_0x9d8d('0x2e')]['length']?_0xe5caf2[_0x9d8d('0x2e')]:_0x223360[_0x9d8d('0x2c')];if(!_0x4bf2f4[_0x9d8d('0x28')][_0x9d8d('0x2f')](_0x9d8d('0x30'))){_0xe5caf2[_0x9d8d('0x1a')]=qs[_0x9d8d('0x1a')](_0x4bf2f4['query'][_0x9d8d('0x1a')]);_0xe5caf2[_0x9d8d('0x18')]=qs['offset'](_0x4bf2f4[_0x9d8d('0x28')][_0x9d8d('0x18')]);}_0xe5caf2['order']=qs[_0x9d8d('0x31')](_0x4bf2f4[_0x9d8d('0x28')][_0x9d8d('0x31')]);_0xe5caf2[_0x9d8d('0x32')]=qs[_0x9d8d('0x2a')](_[_0x9d8d('0x33')](_0x4bf2f4['query'],_0x223360[_0x9d8d('0x2a')]),_0x80fb21);if(_0x4bf2f4[_0x9d8d('0x28')][_0x9d8d('0x34')]){_0xe5caf2['where']=_[_0x9d8d('0x35')](_0xe5caf2[_0x9d8d('0x32')],{'$or':_[_0x9d8d('0x36')](_0x80fb21,function(_0x4a77fe){if(_0x4a77fe[_0x9d8d('0x26')]!==_0x9d8d('0x37')){var _0x4863ed={};_0x4863ed[_0x4a77fe['name']]={'$like':'%'+_0x4bf2f4[_0x9d8d('0x28')][_0x9d8d('0x34')]+'%'};return _0x4863ed;}})});}_0xe5caf2=_[_0x9d8d('0x35')]({},_0xe5caf2,_0x4bf2f4[_0x9d8d('0x38')]);var _0x375547={'where':_0xe5caf2[_0x9d8d('0x32')]};return db[_0x9d8d('0x39')][_0x9d8d('0x3a')](_0x375547)[_0x9d8d('0x20')](function(_0x275905){_0x2aa209[_0x9d8d('0x3a')]=_0x275905;if(_0x4bf2f4[_0x9d8d('0x28')][_0x9d8d('0x3b')]){_0xe5caf2[_0x9d8d('0x3c')]=[{'all':!![]}];}return db[_0x9d8d('0x39')][_0x9d8d('0x3d')](_0xe5caf2);})[_0x9d8d('0x20')](function(_0xdd8c85){_0x2aa209[_0x9d8d('0x3e')]=_0xdd8c85;return _0x2aa209;})[_0x9d8d('0x20')](respondWithFilteredResult(_0xd8832b,_0xe5caf2))['catch'](handleError(_0xd8832b,null));};exports['show']=function(_0x1507ac,_0x4bc79c){var _0x4d6654={'raw':!![],'where':{'id':_0x1507ac[_0x9d8d('0x3f')]['id']}},_0x10cd54={};_0x10cd54[_0x9d8d('0x2c')]=_[_0x9d8d('0x29')](db['OpenchannelApplication'][_0x9d8d('0x40')]);_0x10cd54[_0x9d8d('0x28')]=_[_0x9d8d('0x29')](_0x1507ac[_0x9d8d('0x28')]);_0x10cd54[_0x9d8d('0x2a')]=_['intersection'](_0x10cd54[_0x9d8d('0x2c')],_0x10cd54[_0x9d8d('0x28')]);_0x4d6654[_0x9d8d('0x2e')]=_[_0x9d8d('0x2b')](_0x10cd54['model'],qs[_0x9d8d('0x2d')](_0x1507ac[_0x9d8d('0x28')][_0x9d8d('0x2d')]));_0x4d6654[_0x9d8d('0x2e')]=_0x4d6654[_0x9d8d('0x2e')]['length']?_0x4d6654[_0x9d8d('0x2e')]:_0x10cd54[_0x9d8d('0x2c')];if(_0x1507ac['query'][_0x9d8d('0x3b')]){_0x4d6654[_0x9d8d('0x3c')]=[{'all':!![]}];}_0x4d6654=_[_0x9d8d('0x35')]({},_0x4d6654,_0x1507ac[_0x9d8d('0x38')]);return db[_0x9d8d('0x39')]['find'](_0x4d6654)[_0x9d8d('0x20')](handleEntityNotFound(_0x4bc79c,null))[_0x9d8d('0x20')](respondWithResult(_0x4bc79c,null))[_0x9d8d('0x41')](handleError(_0x4bc79c,null));};exports[_0x9d8d('0x42')]=function(_0x147ea0,_0x4a2564){return db[_0x9d8d('0x39')]['create'](_0x147ea0[_0x9d8d('0x43')],{})[_0x9d8d('0x20')](respondWithResult(_0x4a2564,0xc9))[_0x9d8d('0x41')](handleError(_0x4a2564,null));};exports[_0x9d8d('0x44')]=function(_0x46edde,_0x78fe65){if(_0x46edde[_0x9d8d('0x43')]['id']){delete _0x46edde[_0x9d8d('0x43')]['id'];}return db['OpenchannelApplication'][_0x9d8d('0x45')]({'where':{'id':_0x46edde[_0x9d8d('0x3f')]['id']}})[_0x9d8d('0x20')](handleEntityNotFound(_0x78fe65,null))[_0x9d8d('0x20')](saveUpdates(_0x46edde[_0x9d8d('0x43')],null))[_0x9d8d('0x20')](respondWithResult(_0x78fe65,null))[_0x9d8d('0x41')](handleError(_0x78fe65,null));};exports[_0x9d8d('0x46')]=function(_0x460444,_0x3ee014){return db[_0x9d8d('0x39')][_0x9d8d('0x45')]({'where':{'id':_0x460444[_0x9d8d('0x3f')]['id']}})[_0x9d8d('0x20')](handleEntityNotFound(_0x3ee014,null))[_0x9d8d('0x20')](removeEntity(_0x3ee014,null))['catch'](handleError(_0x3ee014,null));};