Built motion from commit da617fac.|2.6.6
[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 _0x121a=['attributes','fields','nolimit','sort','where','pick','filter','VIRTUAL','merge','options','OpenchannelApplication','rows','catch','show','rawAttributes','filters','length','includeAll','find','create','body','update','params','rimraf','zip-dir','request-promise','moment','bluebird','mustache','util','path','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','papaparse','ioredis','../../components/parsers/qs','../../config/license/hardware','../../config/utils','../../config/environment','../../config/license/util','sendStatus','end','status','json','undefined','limit','count','offset','set','reject','then','destroy','stack','name','send','map','type','model','query','keys','intersection'];(function(_0x5e31f3,_0x26086d){var _0xe8f38b=function(_0x35d1c2){while(--_0x35d1c2){_0x5e31f3['push'](_0x5e31f3['shift']());}};_0xe8f38b(++_0x26086d);}(_0x121a,0x166));var _0xa121=function(_0xcfe2f6,_0x27effa){_0xcfe2f6=_0xcfe2f6-0x0;var _0x47bc9f=_0x121a[_0xcfe2f6];return _0x47bc9f;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xa121('0x0'));var zipdir=require(_0xa121('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0xa121('0x2'));var moment=require(_0xa121('0x3'));var BPromise=require(_0xa121('0x4'));var Mustache=require(_0xa121('0x5'));var util=require(_0xa121('0x6'));var path=require(_0xa121('0x7'));var sox=require('sox');var csv=require(_0xa121('0x8'));var ejs=require(_0xa121('0x9'));var fs=require('fs');var fs_extra=require(_0xa121('0xa'));var _=require(_0xa121('0xb'));var squel=require(_0xa121('0xc'));var crypto=require(_0xa121('0xd'));var jsforce=require(_0xa121('0xe'));var deskjs=require(_0xa121('0xf'));var toCsv=require(_0xa121('0x8'));var querystring=require('querystring');var Papa=require(_0xa121('0x10'));var Redis=require(_0xa121('0x11'));var authService=require('../../components/auth/service');var qs=require(_0xa121('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xa121('0x13'));var logger=require('../../config/logger')('api');var utils=require(_0xa121('0x14'));var config=require(_0xa121('0x15'));var licenseUtil=require(_0xa121('0x16'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x2751a0,_0x1e5e40){_0x1e5e40=_0x1e5e40||0xcc;return function(_0x46ff52){if(_0x46ff52){return _0x2751a0[_0xa121('0x17')](_0x1e5e40);}return _0x2751a0['status'](_0x1e5e40)[_0xa121('0x18')]();};}function respondWithResult(_0x361135,_0x3b5bd3){_0x3b5bd3=_0x3b5bd3||0xc8;return function(_0x5cb183){if(_0x5cb183){return _0x361135[_0xa121('0x19')](_0x3b5bd3)[_0xa121('0x1a')](_0x5cb183);}};}function respondWithFilteredResult(_0x12389a,_0x3cf001){return function(_0x4e50f9){if(_0x4e50f9){var _0xd9d0ea=typeof _0x3cf001['offset']===_0xa121('0x1b')&&typeof _0x3cf001[_0xa121('0x1c')]==='undefined';var _0xcc22cc=_0x4e50f9[_0xa121('0x1d')];var _0x123930=_0xd9d0ea?0x0:_0x3cf001[_0xa121('0x1e')];var _0x2dd78c=_0xd9d0ea?_0x4e50f9[_0xa121('0x1d')]:_0x3cf001[_0xa121('0x1e')]+_0x3cf001[_0xa121('0x1c')];var _0xe6329d;if(_0x2dd78c>=_0xcc22cc){_0x2dd78c=_0xcc22cc;_0xe6329d=0xc8;}else{_0xe6329d=0xce;}_0x12389a['status'](_0xe6329d);return _0x12389a[_0xa121('0x1f')]('Content-Range',_0x123930+'-'+_0x2dd78c+'/'+_0xcc22cc)[_0xa121('0x1a')](_0x4e50f9);}return null;};}function patchUpdates(_0xad6ee9){return function(_0x957e62){try{jsonpatch['apply'](_0x957e62,_0xad6ee9,!![]);}catch(_0x2d8291){return BPromise[_0xa121('0x20')](_0x2d8291);}return _0x957e62['save']();};}function saveUpdates(_0x17d1a3,_0x499121){return function(_0x36d596){if(_0x36d596){return _0x36d596['update'](_0x17d1a3)[_0xa121('0x21')](function(_0x2e2cb0){return _0x2e2cb0;});}return null;};}function removeEntity(_0x2866ad,_0x5222f6){return function(_0x28fb74){if(_0x28fb74){return _0x28fb74[_0xa121('0x22')]()[_0xa121('0x21')](function(){_0x2866ad[_0xa121('0x19')](0xcc)[_0xa121('0x18')]();});}};}function handleEntityNotFound(_0x241bc8,_0x5d9293){return function(_0x2fceba){if(!_0x2fceba){_0x241bc8[_0xa121('0x17')](0x194);}return _0x2fceba;};}function handleError(_0x265131,_0x3378fe){_0x3378fe=_0x3378fe||0x1f4;return function(_0x10d394){logger['error'](_0x10d394[_0xa121('0x23')]);if(_0x10d394[_0xa121('0x24')]){delete _0x10d394[_0xa121('0x24')];}_0x265131[_0xa121('0x19')](_0x3378fe)[_0xa121('0x25')](_0x10d394);};}exports['index']=function(_0x2a5e14,_0x3f5fe3){var _0x17a4a7={},_0x5ab38e={},_0x5e8db2={'count':0x0,'rows':[]};var _0x563a41=_[_0xa121('0x26')](db['OpenchannelApplication']['rawAttributes'],function(_0x5b96e6){return{'name':_0x5b96e6['fieldName'],'type':_0x5b96e6[_0xa121('0x27')]['key']};});_0x5ab38e[_0xa121('0x28')]=_[_0xa121('0x26')](_0x563a41,_0xa121('0x24'));_0x5ab38e[_0xa121('0x29')]=_[_0xa121('0x2a')](_0x2a5e14[_0xa121('0x29')]);_0x5ab38e['filters']=_[_0xa121('0x2b')](_0x5ab38e[_0xa121('0x28')],_0x5ab38e['query']);_0x17a4a7[_0xa121('0x2c')]=_[_0xa121('0x2b')](_0x5ab38e[_0xa121('0x28')],qs[_0xa121('0x2d')](_0x2a5e14['query'][_0xa121('0x2d')]));_0x17a4a7[_0xa121('0x2c')]=_0x17a4a7['attributes']['length']?_0x17a4a7[_0xa121('0x2c')]:_0x5ab38e[_0xa121('0x28')];if(!_0x2a5e14[_0xa121('0x29')]['hasOwnProperty'](_0xa121('0x2e'))){_0x17a4a7[_0xa121('0x1c')]=qs[_0xa121('0x1c')](_0x2a5e14[_0xa121('0x29')][_0xa121('0x1c')]);_0x17a4a7[_0xa121('0x1e')]=qs['offset'](_0x2a5e14[_0xa121('0x29')][_0xa121('0x1e')]);}_0x17a4a7['order']=qs[_0xa121('0x2f')](_0x2a5e14[_0xa121('0x29')]['sort']);_0x17a4a7[_0xa121('0x30')]=qs['filters'](_[_0xa121('0x31')](_0x2a5e14['query'],_0x5ab38e['filters']),_0x563a41);if(_0x2a5e14['query'][_0xa121('0x32')]){_0x17a4a7[_0xa121('0x30')]=_['merge'](_0x17a4a7[_0xa121('0x30')],{'$or':_[_0xa121('0x26')](_0x563a41,function(_0x58769c){if(_0x58769c[_0xa121('0x27')]!==_0xa121('0x33')){var _0x289ce9={};_0x289ce9[_0x58769c[_0xa121('0x24')]]={'$like':'%'+_0x2a5e14[_0xa121('0x29')][_0xa121('0x32')]+'%'};return _0x289ce9;}})});}_0x17a4a7=_[_0xa121('0x34')]({},_0x17a4a7,_0x2a5e14[_0xa121('0x35')]);var _0x4d91df={'where':_0x17a4a7[_0xa121('0x30')]};return db[_0xa121('0x36')]['count'](_0x4d91df)['then'](function(_0x338e57){_0x5e8db2[_0xa121('0x1d')]=_0x338e57;if(_0x2a5e14[_0xa121('0x29')]['includeAll']){_0x17a4a7['include']=[{'all':!![]}];}return db[_0xa121('0x36')]['findAll'](_0x17a4a7);})[_0xa121('0x21')](function(_0x297be7){_0x5e8db2[_0xa121('0x37')]=_0x297be7;return _0x5e8db2;})['then'](respondWithFilteredResult(_0x3f5fe3,_0x17a4a7))[_0xa121('0x38')](handleError(_0x3f5fe3,null));};exports[_0xa121('0x39')]=function(_0x200bb7,_0x302d62){var _0x59de34={'raw':!![],'where':{'id':_0x200bb7['params']['id']}},_0x23bb3f={};_0x23bb3f['model']=_[_0xa121('0x2a')](db['OpenchannelApplication'][_0xa121('0x3a')]);_0x23bb3f[_0xa121('0x29')]=_[_0xa121('0x2a')](_0x200bb7[_0xa121('0x29')]);_0x23bb3f[_0xa121('0x3b')]=_[_0xa121('0x2b')](_0x23bb3f[_0xa121('0x28')],_0x23bb3f[_0xa121('0x29')]);_0x59de34[_0xa121('0x2c')]=_[_0xa121('0x2b')](_0x23bb3f[_0xa121('0x28')],qs[_0xa121('0x2d')](_0x200bb7[_0xa121('0x29')][_0xa121('0x2d')]));_0x59de34[_0xa121('0x2c')]=_0x59de34['attributes'][_0xa121('0x3c')]?_0x59de34[_0xa121('0x2c')]:_0x23bb3f[_0xa121('0x28')];if(_0x200bb7['query'][_0xa121('0x3d')]){_0x59de34['include']=[{'all':!![]}];}_0x59de34=_[_0xa121('0x34')]({},_0x59de34,_0x200bb7[_0xa121('0x35')]);return db['OpenchannelApplication'][_0xa121('0x3e')](_0x59de34)[_0xa121('0x21')](handleEntityNotFound(_0x302d62,null))[_0xa121('0x21')](respondWithResult(_0x302d62,null))[_0xa121('0x38')](handleError(_0x302d62,null));};exports[_0xa121('0x3f')]=function(_0x23e93b,_0x2f5f8c){return db['OpenchannelApplication'][_0xa121('0x3f')](_0x23e93b[_0xa121('0x40')],{})[_0xa121('0x21')](respondWithResult(_0x2f5f8c,0xc9))['catch'](handleError(_0x2f5f8c,null));};exports[_0xa121('0x41')]=function(_0x35cadf,_0x4152fe){if(_0x35cadf[_0xa121('0x40')]['id']){delete _0x35cadf[_0xa121('0x40')]['id'];}return db['OpenchannelApplication'][_0xa121('0x3e')]({'where':{'id':_0x35cadf[_0xa121('0x42')]['id']}})[_0xa121('0x21')](handleEntityNotFound(_0x4152fe,null))['then'](saveUpdates(_0x35cadf[_0xa121('0x40')],null))['then'](respondWithResult(_0x4152fe,null))['catch'](handleError(_0x4152fe,null));};exports[_0xa121('0x22')]=function(_0x3b4517,_0x4f4dab){return db[_0xa121('0x36')]['find']({'where':{'id':_0x3b4517['params']['id']}})[_0xa121('0x21')](handleEntityNotFound(_0x4f4dab,null))['then'](removeEntity(_0x4f4dab,null))['catch'](handleError(_0x4f4dab,null));};