Built motion from commit b0a9a629.|2.6.33
[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 _0x982a=['../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','status','offset','limit','set','Content-Range','json','apply','reject','save','update','then','destroy','end','sendStatus','error','stack','name','send','OpenchannelApplication','rawAttributes','key','model','map','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','pick','filter','merge','VIRTUAL','options','count','findAll','catch','show','params','includeAll','find','create','body','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','util','sox','to-csv','ejs','fs-extra','crypto','jsforce','desk.js','querystring','ioredis'];(function(_0x5056f7,_0x45b918){var _0x4bdbd8=function(_0x2bd367){while(--_0x2bd367){_0x5056f7['push'](_0x5056f7['shift']());}};_0x4bdbd8(++_0x45b918);}(_0x982a,0x1a0));var _0xa982=function(_0x103a9f,_0x2b90e3){_0x103a9f=_0x103a9f-0x0;var _0xdc15e7=_0x982a[_0x103a9f];return _0xdc15e7;};'use strict';var emlformat=require(_0xa982('0x0'));var rimraf=require(_0xa982('0x1'));var zipdir=require(_0xa982('0x2'));var jsonpatch=require(_0xa982('0x3'));var rp=require(_0xa982('0x4'));var moment=require('moment');var BPromise=require(_0xa982('0x5'));var Mustache=require('mustache');var util=require(_0xa982('0x6'));var path=require('path');var sox=require(_0xa982('0x7'));var csv=require(_0xa982('0x8'));var ejs=require(_0xa982('0x9'));var fs=require('fs');var fs_extra=require(_0xa982('0xa'));var _=require('lodash');var squel=require('squel');var crypto=require(_0xa982('0xb'));var jsforce=require(_0xa982('0xc'));var deskjs=require(_0xa982('0xd'));var toCsv=require(_0xa982('0x8'));var querystring=require(_0xa982('0xe'));var Papa=require('papaparse');var Redis=require(_0xa982('0xf'));var authService=require(_0xa982('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0xa982('0x11'));var hardwareService=require(_0xa982('0x12'));var logger=require(_0xa982('0x13'))(_0xa982('0x14'));var utils=require('../../config/utils');var config=require(_0xa982('0x15'));var licenseUtil=require(_0xa982('0x16'));var db=require(_0xa982('0x17'))['db'];function respondWithStatusCode(_0x5974f1,_0x1918c4){_0x1918c4=_0x1918c4||0xcc;return function(_0x135dd3){if(_0x135dd3){return _0x5974f1['sendStatus'](_0x1918c4);}return _0x5974f1['status'](_0x1918c4)['end']();};}function respondWithResult(_0x6c2648,_0xeb3b67){_0xeb3b67=_0xeb3b67||0xc8;return function(_0x75852d){if(_0x75852d){return _0x6c2648[_0xa982('0x18')](_0xeb3b67)['json'](_0x75852d);}};}function respondWithFilteredResult(_0x113ea0,_0x2f1564){return function(_0x34279c){if(_0x34279c){var _0xa151a7=typeof _0x2f1564[_0xa982('0x19')]==='undefined'&&typeof _0x2f1564[_0xa982('0x1a')]==='undefined';var _0x344233=_0x34279c['count'];var _0x50a4fa=_0xa151a7?0x0:_0x2f1564[_0xa982('0x19')];var _0x4db903=_0xa151a7?_0x34279c['count']:_0x2f1564[_0xa982('0x19')]+_0x2f1564['limit'];var _0x350b61;if(_0x4db903>=_0x344233){_0x4db903=_0x344233;_0x350b61=0xc8;}else{_0x350b61=0xce;}_0x113ea0[_0xa982('0x18')](_0x350b61);return _0x113ea0[_0xa982('0x1b')](_0xa982('0x1c'),_0x50a4fa+'-'+_0x4db903+'/'+_0x344233)[_0xa982('0x1d')](_0x34279c);}return null;};}function patchUpdates(_0x1df26b){return function(_0x228030){try{jsonpatch[_0xa982('0x1e')](_0x228030,_0x1df26b,!![]);}catch(_0x48f37c){return BPromise[_0xa982('0x1f')](_0x48f37c);}return _0x228030[_0xa982('0x20')]();};}function saveUpdates(_0x65b7c9,_0x56284d){return function(_0x43af60){if(_0x43af60){return _0x43af60[_0xa982('0x21')](_0x65b7c9)[_0xa982('0x22')](function(_0x1d68e3){return _0x1d68e3;});}return null;};}function removeEntity(_0x3c99e7,_0x47346d){return function(_0x3e8f4c){if(_0x3e8f4c){return _0x3e8f4c[_0xa982('0x23')]()[_0xa982('0x22')](function(){_0x3c99e7[_0xa982('0x18')](0xcc)[_0xa982('0x24')]();});}};}function handleEntityNotFound(_0x242634,_0x4c29f7){return function(_0xc7470c){if(!_0xc7470c){_0x242634[_0xa982('0x25')](0x194);}return _0xc7470c;};}function handleError(_0x176edd,_0x527897){_0x527897=_0x527897||0x1f4;return function(_0x1581ef){logger[_0xa982('0x26')](_0x1581ef[_0xa982('0x27')]);if(_0x1581ef[_0xa982('0x28')]){delete _0x1581ef[_0xa982('0x28')];}_0x176edd['status'](_0x527897)[_0xa982('0x29')](_0x1581ef);};}exports['index']=function(_0x3ce714,_0x273325){var _0x246ed4={},_0x5b7d71={},_0x6887b={'count':0x0,'rows':[]};var _0x15369c=_['map'](db[_0xa982('0x2a')][_0xa982('0x2b')],function(_0xa76d18){return{'name':_0xa76d18['fieldName'],'type':_0xa76d18['type'][_0xa982('0x2c')]};});_0x5b7d71[_0xa982('0x2d')]=_[_0xa982('0x2e')](_0x15369c,_0xa982('0x28'));_0x5b7d71[_0xa982('0x2f')]=_[_0xa982('0x30')](_0x3ce714[_0xa982('0x2f')]);_0x5b7d71[_0xa982('0x31')]=_[_0xa982('0x32')](_0x5b7d71[_0xa982('0x2d')],_0x5b7d71['query']);_0x246ed4[_0xa982('0x33')]=_['intersection'](_0x5b7d71[_0xa982('0x2d')],qs[_0xa982('0x34')](_0x3ce714[_0xa982('0x2f')][_0xa982('0x34')]));_0x246ed4[_0xa982('0x33')]=_0x246ed4[_0xa982('0x33')][_0xa982('0x35')]?_0x246ed4[_0xa982('0x33')]:_0x5b7d71[_0xa982('0x2d')];if(!_0x3ce714[_0xa982('0x2f')][_0xa982('0x36')](_0xa982('0x37'))){_0x246ed4[_0xa982('0x1a')]=qs[_0xa982('0x1a')](_0x3ce714[_0xa982('0x2f')][_0xa982('0x1a')]);_0x246ed4[_0xa982('0x19')]=qs[_0xa982('0x19')](_0x3ce714['query']['offset']);}_0x246ed4['order']=qs[_0xa982('0x38')](_0x3ce714[_0xa982('0x2f')][_0xa982('0x38')]);_0x246ed4[_0xa982('0x39')]=qs[_0xa982('0x31')](_[_0xa982('0x3a')](_0x3ce714[_0xa982('0x2f')],_0x5b7d71[_0xa982('0x31')]),_0x15369c);if(_0x3ce714[_0xa982('0x2f')][_0xa982('0x3b')]){_0x246ed4[_0xa982('0x39')]=_[_0xa982('0x3c')](_0x246ed4[_0xa982('0x39')],{'$or':_[_0xa982('0x2e')](_0x15369c,function(_0x4b4a53){if(_0x4b4a53['type']!==_0xa982('0x3d')){var _0x3c8261={};_0x3c8261[_0x4b4a53[_0xa982('0x28')]]={'$like':'%'+_0x3ce714[_0xa982('0x2f')][_0xa982('0x3b')]+'%'};return _0x3c8261;}})});}_0x246ed4=_[_0xa982('0x3c')]({},_0x246ed4,_0x3ce714[_0xa982('0x3e')]);var _0x167587={'where':_0x246ed4[_0xa982('0x39')]};return db[_0xa982('0x2a')][_0xa982('0x3f')](_0x167587)[_0xa982('0x22')](function(_0x3a6b00){_0x6887b[_0xa982('0x3f')]=_0x3a6b00;if(_0x3ce714[_0xa982('0x2f')]['includeAll']){_0x246ed4['include']=[{'all':!![]}];}return db[_0xa982('0x2a')][_0xa982('0x40')](_0x246ed4);})[_0xa982('0x22')](function(_0x29db4d){_0x6887b['rows']=_0x29db4d;return _0x6887b;})['then'](respondWithFilteredResult(_0x273325,_0x246ed4))[_0xa982('0x41')](handleError(_0x273325,null));};exports[_0xa982('0x42')]=function(_0x490848,_0x5536fc){var _0x83ba5f={'raw':!![],'where':{'id':_0x490848[_0xa982('0x43')]['id']}},_0x56eae1={};_0x56eae1[_0xa982('0x2d')]=_[_0xa982('0x30')](db[_0xa982('0x2a')][_0xa982('0x2b')]);_0x56eae1[_0xa982('0x2f')]=_[_0xa982('0x30')](_0x490848[_0xa982('0x2f')]);_0x56eae1[_0xa982('0x31')]=_[_0xa982('0x32')](_0x56eae1[_0xa982('0x2d')],_0x56eae1[_0xa982('0x2f')]);_0x83ba5f[_0xa982('0x33')]=_[_0xa982('0x32')](_0x56eae1[_0xa982('0x2d')],qs[_0xa982('0x34')](_0x490848[_0xa982('0x2f')][_0xa982('0x34')]));_0x83ba5f[_0xa982('0x33')]=_0x83ba5f[_0xa982('0x33')][_0xa982('0x35')]?_0x83ba5f[_0xa982('0x33')]:_0x56eae1[_0xa982('0x2d')];if(_0x490848[_0xa982('0x2f')][_0xa982('0x44')]){_0x83ba5f['include']=[{'all':!![]}];}_0x83ba5f=_[_0xa982('0x3c')]({},_0x83ba5f,_0x490848[_0xa982('0x3e')]);return db[_0xa982('0x2a')][_0xa982('0x45')](_0x83ba5f)['then'](handleEntityNotFound(_0x5536fc,null))[_0xa982('0x22')](respondWithResult(_0x5536fc,null))['catch'](handleError(_0x5536fc,null));};exports[_0xa982('0x46')]=function(_0x3f6b46,_0x286430){return db[_0xa982('0x2a')]['create'](_0x3f6b46[_0xa982('0x47')],{})[_0xa982('0x22')](respondWithResult(_0x286430,0xc9))[_0xa982('0x41')](handleError(_0x286430,null));};exports[_0xa982('0x21')]=function(_0x44d80d,_0x2f4671){if(_0x44d80d[_0xa982('0x47')]['id']){delete _0x44d80d[_0xa982('0x47')]['id'];}return db[_0xa982('0x2a')][_0xa982('0x45')]({'where':{'id':_0x44d80d[_0xa982('0x43')]['id']}})[_0xa982('0x22')](handleEntityNotFound(_0x2f4671,null))[_0xa982('0x22')](saveUpdates(_0x44d80d['body'],null))[_0xa982('0x22')](respondWithResult(_0x2f4671,null))[_0xa982('0x41')](handleError(_0x2f4671,null));};exports[_0xa982('0x23')]=function(_0x55b85a,_0x41f34d){return db['OpenchannelApplication']['find']({'where':{'id':_0x55b85a[_0xa982('0x43')]['id']}})[_0xa982('0x22')](handleEntityNotFound(_0x41f34d,null))[_0xa982('0x22')](removeEntity(_0x41f34d,null))[_0xa982('0x41')](handleError(_0x41f34d,null));};