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 _0x0b2e=['pick','filter','merge','options','includeAll','findAll','show','length','include','find','create','body','catch','params','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','sox','to-csv','ejs','fs-extra','squel','crypto','jsforce','desk.js','querystring','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/environment','../../config/license/util','sendStatus','status','end','json','undefined','limit','count','offset','set','apply','reject','update','then','destroy','error','stack','name','send','index','map','OpenchannelApplication','rawAttributes','fieldName','type','query','keys','filters','intersection','attributes','model','fields','hasOwnProperty','nolimit','sort','where'];(function(_0xe708f0,_0x58be78){var _0x5284b8=function(_0x28e49c){while(--_0x28e49c){_0xe708f0['push'](_0xe708f0['shift']());}};_0x5284b8(++_0x58be78);}(_0x0b2e,0x132));var _0xe0b2=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x0b2e[_0x3dd15e];return _0x231fd0;};'use strict';var emlformat=require(_0xe0b2('0x0'));var rimraf=require(_0xe0b2('0x1'));var zipdir=require(_0xe0b2('0x2'));var jsonpatch=require(_0xe0b2('0x3'));var rp=require(_0xe0b2('0x4'));var moment=require(_0xe0b2('0x5'));var BPromise=require('bluebird');var Mustache=require(_0xe0b2('0x6'));var util=require(_0xe0b2('0x7'));var path=require('path');var sox=require(_0xe0b2('0x8'));var csv=require(_0xe0b2('0x9'));var ejs=require(_0xe0b2('0xa'));var fs=require('fs');var fs_extra=require(_0xe0b2('0xb'));var _=require('lodash');var squel=require(_0xe0b2('0xc'));var crypto=require(_0xe0b2('0xd'));var jsforce=require(_0xe0b2('0xe'));var deskjs=require(_0xe0b2('0xf'));var toCsv=require(_0xe0b2('0x9'));var querystring=require(_0xe0b2('0x10'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0xe0b2('0x11'));var qs=require(_0xe0b2('0x12'));var as=require(_0xe0b2('0x13'));var hardwareService=require(_0xe0b2('0x14'));var logger=require(_0xe0b2('0x15'))('api');var utils=require('../../config/utils');var config=require(_0xe0b2('0x16'));var licenseUtil=require(_0xe0b2('0x17'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x3ef18a,_0x3f1040){_0x3f1040=_0x3f1040||0xcc;return function(_0x565489){if(_0x565489){return _0x3ef18a[_0xe0b2('0x18')](_0x3f1040);}return _0x3ef18a[_0xe0b2('0x19')](_0x3f1040)[_0xe0b2('0x1a')]();};}function respondWithResult(_0x3af4c0,_0x4f565d){_0x4f565d=_0x4f565d||0xc8;return function(_0x58b050){if(_0x58b050){return _0x3af4c0[_0xe0b2('0x19')](_0x4f565d)[_0xe0b2('0x1b')](_0x58b050);}};}function respondWithFilteredResult(_0x324654,_0x4ad0fe){return function(_0x2d78d2){if(_0x2d78d2){var _0x517a2a=typeof _0x4ad0fe['offset']===_0xe0b2('0x1c')&&typeof _0x4ad0fe[_0xe0b2('0x1d')]==='undefined';var _0x48fd88=_0x2d78d2[_0xe0b2('0x1e')];var _0x1a711e=_0x517a2a?0x0:_0x4ad0fe[_0xe0b2('0x1f')];var _0x3ec32f=_0x517a2a?_0x2d78d2[_0xe0b2('0x1e')]:_0x4ad0fe[_0xe0b2('0x1f')]+_0x4ad0fe['limit'];var _0x3650a;if(_0x3ec32f>=_0x48fd88){_0x3ec32f=_0x48fd88;_0x3650a=0xc8;}else{_0x3650a=0xce;}_0x324654[_0xe0b2('0x19')](_0x3650a);return _0x324654[_0xe0b2('0x20')]('Content-Range',_0x1a711e+'-'+_0x3ec32f+'/'+_0x48fd88)[_0xe0b2('0x1b')](_0x2d78d2);}return null;};}function patchUpdates(_0x101fd9){return function(_0x43d859){try{jsonpatch[_0xe0b2('0x21')](_0x43d859,_0x101fd9,!![]);}catch(_0x5dd239){return BPromise[_0xe0b2('0x22')](_0x5dd239);}return _0x43d859['save']();};}function saveUpdates(_0x5e062e,_0x117d02){return function(_0xb9a491){if(_0xb9a491){return _0xb9a491[_0xe0b2('0x23')](_0x5e062e)[_0xe0b2('0x24')](function(_0x3488e3){return _0x3488e3;});}return null;};}function removeEntity(_0x147287,_0x4ea020){return function(_0x3e50ea){if(_0x3e50ea){return _0x3e50ea[_0xe0b2('0x25')]()[_0xe0b2('0x24')](function(){_0x147287['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x30d890,_0x517423){return function(_0x4a5795){if(!_0x4a5795){_0x30d890['sendStatus'](0x194);}return _0x4a5795;};}function handleError(_0x512f6d,_0x3c58f){_0x3c58f=_0x3c58f||0x1f4;return function(_0x3e3969){logger[_0xe0b2('0x26')](_0x3e3969[_0xe0b2('0x27')]);if(_0x3e3969[_0xe0b2('0x28')]){delete _0x3e3969[_0xe0b2('0x28')];}_0x512f6d['status'](_0x3c58f)[_0xe0b2('0x29')](_0x3e3969);};}exports[_0xe0b2('0x2a')]=function(_0x18a361,_0x27df75){var _0x2eaa26={},_0x4af83d={},_0x219336={'count':0x0,'rows':[]};var _0x5b683d=_[_0xe0b2('0x2b')](db[_0xe0b2('0x2c')][_0xe0b2('0x2d')],function(_0x4f30b3){return{'name':_0x4f30b3[_0xe0b2('0x2e')],'type':_0x4f30b3[_0xe0b2('0x2f')]['key']};});_0x4af83d['model']=_['map'](_0x5b683d,_0xe0b2('0x28'));_0x4af83d[_0xe0b2('0x30')]=_[_0xe0b2('0x31')](_0x18a361[_0xe0b2('0x30')]);_0x4af83d[_0xe0b2('0x32')]=_[_0xe0b2('0x33')](_0x4af83d['model'],_0x4af83d[_0xe0b2('0x30')]);_0x2eaa26[_0xe0b2('0x34')]=_[_0xe0b2('0x33')](_0x4af83d[_0xe0b2('0x35')],qs[_0xe0b2('0x36')](_0x18a361['query'][_0xe0b2('0x36')]));_0x2eaa26[_0xe0b2('0x34')]=_0x2eaa26[_0xe0b2('0x34')]['length']?_0x2eaa26[_0xe0b2('0x34')]:_0x4af83d[_0xe0b2('0x35')];if(!_0x18a361[_0xe0b2('0x30')][_0xe0b2('0x37')](_0xe0b2('0x38'))){_0x2eaa26[_0xe0b2('0x1d')]=qs[_0xe0b2('0x1d')](_0x18a361[_0xe0b2('0x30')][_0xe0b2('0x1d')]);_0x2eaa26[_0xe0b2('0x1f')]=qs[_0xe0b2('0x1f')](_0x18a361[_0xe0b2('0x30')][_0xe0b2('0x1f')]);}_0x2eaa26['order']=qs[_0xe0b2('0x39')](_0x18a361['query'][_0xe0b2('0x39')]);_0x2eaa26[_0xe0b2('0x3a')]=qs['filters'](_[_0xe0b2('0x3b')](_0x18a361[_0xe0b2('0x30')],_0x4af83d[_0xe0b2('0x32')]),_0x5b683d);if(_0x18a361[_0xe0b2('0x30')][_0xe0b2('0x3c')]){_0x2eaa26[_0xe0b2('0x3a')]=_[_0xe0b2('0x3d')](_0x2eaa26[_0xe0b2('0x3a')],{'$or':_[_0xe0b2('0x2b')](_0x5b683d,function(_0x1d64e4){if(_0x1d64e4[_0xe0b2('0x2f')]!=='VIRTUAL'){var _0x1142c9={};_0x1142c9[_0x1d64e4['name']]={'$like':'%'+_0x18a361[_0xe0b2('0x30')][_0xe0b2('0x3c')]+'%'};return _0x1142c9;}})});}_0x2eaa26=_[_0xe0b2('0x3d')]({},_0x2eaa26,_0x18a361[_0xe0b2('0x3e')]);var _0x5728f7={'where':_0x2eaa26[_0xe0b2('0x3a')]};return db[_0xe0b2('0x2c')][_0xe0b2('0x1e')](_0x5728f7)[_0xe0b2('0x24')](function(_0x55f50a){_0x219336[_0xe0b2('0x1e')]=_0x55f50a;if(_0x18a361[_0xe0b2('0x30')][_0xe0b2('0x3f')]){_0x2eaa26['include']=[{'all':!![]}];}return db['OpenchannelApplication'][_0xe0b2('0x40')](_0x2eaa26);})[_0xe0b2('0x24')](function(_0x18756d){_0x219336['rows']=_0x18756d;return _0x219336;})['then'](respondWithFilteredResult(_0x27df75,_0x2eaa26))['catch'](handleError(_0x27df75,null));};exports[_0xe0b2('0x41')]=function(_0x36a117,_0x15fec3){var _0x432fcf={'raw':!![],'where':{'id':_0x36a117['params']['id']}},_0x304b56={};_0x304b56[_0xe0b2('0x35')]=_[_0xe0b2('0x31')](db['OpenchannelApplication'][_0xe0b2('0x2d')]);_0x304b56[_0xe0b2('0x30')]=_[_0xe0b2('0x31')](_0x36a117[_0xe0b2('0x30')]);_0x304b56[_0xe0b2('0x32')]=_[_0xe0b2('0x33')](_0x304b56['model'],_0x304b56[_0xe0b2('0x30')]);_0x432fcf['attributes']=_[_0xe0b2('0x33')](_0x304b56[_0xe0b2('0x35')],qs[_0xe0b2('0x36')](_0x36a117[_0xe0b2('0x30')][_0xe0b2('0x36')]));_0x432fcf[_0xe0b2('0x34')]=_0x432fcf[_0xe0b2('0x34')][_0xe0b2('0x42')]?_0x432fcf[_0xe0b2('0x34')]:_0x304b56[_0xe0b2('0x35')];if(_0x36a117[_0xe0b2('0x30')][_0xe0b2('0x3f')]){_0x432fcf[_0xe0b2('0x43')]=[{'all':!![]}];}_0x432fcf=_[_0xe0b2('0x3d')]({},_0x432fcf,_0x36a117['options']);return db[_0xe0b2('0x2c')][_0xe0b2('0x44')](_0x432fcf)[_0xe0b2('0x24')](handleEntityNotFound(_0x15fec3,null))[_0xe0b2('0x24')](respondWithResult(_0x15fec3,null))['catch'](handleError(_0x15fec3,null));};exports[_0xe0b2('0x45')]=function(_0x5b0b44,_0x18618f){return db[_0xe0b2('0x2c')][_0xe0b2('0x45')](_0x5b0b44[_0xe0b2('0x46')],{})['then'](respondWithResult(_0x18618f,0xc9))[_0xe0b2('0x47')](handleError(_0x18618f,null));};exports[_0xe0b2('0x23')]=function(_0x4c496b,_0x4044d1){if(_0x4c496b[_0xe0b2('0x46')]['id']){delete _0x4c496b[_0xe0b2('0x46')]['id'];}return db[_0xe0b2('0x2c')][_0xe0b2('0x44')]({'where':{'id':_0x4c496b[_0xe0b2('0x48')]['id']}})['then'](handleEntityNotFound(_0x4044d1,null))[_0xe0b2('0x24')](saveUpdates(_0x4c496b[_0xe0b2('0x46')],null))[_0xe0b2('0x24')](respondWithResult(_0x4044d1,null))[_0xe0b2('0x47')](handleError(_0x4044d1,null));};exports[_0xe0b2('0x25')]=function(_0x5df881,_0x494788){return db[_0xe0b2('0x2c')][_0xe0b2('0x44')]({'where':{'id':_0x5df881['params']['id']}})[_0xe0b2('0x24')](handleEntityNotFound(_0x494788,null))[_0xe0b2('0x24')](removeEntity(_0x494788,null))[_0xe0b2('0x47')](handleError(_0x494788,null));};