Built motion from commit 10af8726.|2.6.34
[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 _0x321b=['hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','OpenchannelApplication','includeAll','findAll','rows','catch','show','params','fields','include','find','create','body','eml-format','fast-json-patch','request-promise','mustache','util','path','sox','fs-extra','lodash','crypto','jsforce','papaparse','ioredis','../../components/auth/service','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','offset','count','limit','set','Content-Range','reject','save','update','then','destroy','sendStatus','error','stack','name','send','index','map','rawAttributes','fieldName','key','model','keys','query','filters','intersection','attributes','length'];(function(_0x21a9d9,_0x4d5ac8){var _0x46adce=function(_0xfdd336){while(--_0xfdd336){_0x21a9d9['push'](_0x21a9d9['shift']());}};_0x46adce(++_0x4d5ac8);}(_0x321b,0x13a));var _0xb321=function(_0x88f53c,_0xd828f3){_0x88f53c=_0x88f53c-0x0;var _0x4ea922=_0x321b[_0x88f53c];return _0x4ea922;};'use strict';var emlformat=require(_0xb321('0x0'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0xb321('0x1'));var rp=require(_0xb321('0x2'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0xb321('0x3'));var util=require(_0xb321('0x4'));var path=require(_0xb321('0x5'));var sox=require(_0xb321('0x6'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xb321('0x7'));var _=require(_0xb321('0x8'));var squel=require('squel');var crypto=require(_0xb321('0x9'));var jsforce=require(_0xb321('0xa'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0xb321('0xb'));var Redis=require(_0xb321('0xc'));var authService=require(_0xb321('0xd'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xb321('0xe'));var logger=require(_0xb321('0xf'))(_0xb321('0x10'));var utils=require(_0xb321('0x11'));var config=require(_0xb321('0x12'));var licenseUtil=require(_0xb321('0x13'));var db=require(_0xb321('0x14'))['db'];function respondWithStatusCode(_0x388fc8,_0x3eb39c){_0x3eb39c=_0x3eb39c||0xcc;return function(_0x2f08ae){if(_0x2f08ae){return _0x388fc8['sendStatus'](_0x3eb39c);}return _0x388fc8[_0xb321('0x15')](_0x3eb39c)[_0xb321('0x16')]();};}function respondWithResult(_0x280822,_0x22cb65){_0x22cb65=_0x22cb65||0xc8;return function(_0x2a0c30){if(_0x2a0c30){return _0x280822[_0xb321('0x15')](_0x22cb65)[_0xb321('0x17')](_0x2a0c30);}};}function respondWithFilteredResult(_0x19f6f9,_0x45269a){return function(_0x553e66){if(_0x553e66){var _0x32c3f9=typeof _0x45269a[_0xb321('0x18')]==='undefined'&&typeof _0x45269a['limit']==='undefined';var _0x346927=_0x553e66[_0xb321('0x19')];var _0x2e0505=_0x32c3f9?0x0:_0x45269a[_0xb321('0x18')];var _0x5ddd15=_0x32c3f9?_0x553e66[_0xb321('0x19')]:_0x45269a['offset']+_0x45269a[_0xb321('0x1a')];var _0x41f364;if(_0x5ddd15>=_0x346927){_0x5ddd15=_0x346927;_0x41f364=0xc8;}else{_0x41f364=0xce;}_0x19f6f9[_0xb321('0x15')](_0x41f364);return _0x19f6f9[_0xb321('0x1b')](_0xb321('0x1c'),_0x2e0505+'-'+_0x5ddd15+'/'+_0x346927)[_0xb321('0x17')](_0x553e66);}return null;};}function patchUpdates(_0x245edc){return function(_0x3be547){try{jsonpatch['apply'](_0x3be547,_0x245edc,!![]);}catch(_0x6a91eb){return BPromise[_0xb321('0x1d')](_0x6a91eb);}return _0x3be547[_0xb321('0x1e')]();};}function saveUpdates(_0x57a37f,_0x1249c8){return function(_0xa9fed0){if(_0xa9fed0){return _0xa9fed0[_0xb321('0x1f')](_0x57a37f)[_0xb321('0x20')](function(_0x28134c){return _0x28134c;});}return null;};}function removeEntity(_0x3fb164,_0x3efae3){return function(_0x37c91e){if(_0x37c91e){return _0x37c91e[_0xb321('0x21')]()[_0xb321('0x20')](function(){_0x3fb164['status'](0xcc)[_0xb321('0x16')]();});}};}function handleEntityNotFound(_0x5ba52b,_0x584b8a){return function(_0x1a5549){if(!_0x1a5549){_0x5ba52b[_0xb321('0x22')](0x194);}return _0x1a5549;};}function handleError(_0x4b59d8,_0x3c34f3){_0x3c34f3=_0x3c34f3||0x1f4;return function(_0x3bfb46){logger[_0xb321('0x23')](_0x3bfb46[_0xb321('0x24')]);if(_0x3bfb46[_0xb321('0x25')]){delete _0x3bfb46[_0xb321('0x25')];}_0x4b59d8[_0xb321('0x15')](_0x3c34f3)[_0xb321('0x26')](_0x3bfb46);};}exports[_0xb321('0x27')]=function(_0x3fe449,_0x582d39){var _0x2313cb={},_0x85b3cf={},_0xfac7fe={'count':0x0,'rows':[]};var _0x3fb579=_[_0xb321('0x28')](db['OpenchannelApplication'][_0xb321('0x29')],function(_0x433faa){return{'name':_0x433faa[_0xb321('0x2a')],'type':_0x433faa['type'][_0xb321('0x2b')]};});_0x85b3cf[_0xb321('0x2c')]=_[_0xb321('0x28')](_0x3fb579,_0xb321('0x25'));_0x85b3cf['query']=_[_0xb321('0x2d')](_0x3fe449[_0xb321('0x2e')]);_0x85b3cf[_0xb321('0x2f')]=_[_0xb321('0x30')](_0x85b3cf[_0xb321('0x2c')],_0x85b3cf[_0xb321('0x2e')]);_0x2313cb['attributes']=_[_0xb321('0x30')](_0x85b3cf['model'],qs['fields'](_0x3fe449['query']['fields']));_0x2313cb[_0xb321('0x31')]=_0x2313cb[_0xb321('0x31')][_0xb321('0x32')]?_0x2313cb['attributes']:_0x85b3cf[_0xb321('0x2c')];if(!_0x3fe449[_0xb321('0x2e')][_0xb321('0x33')](_0xb321('0x34'))){_0x2313cb['limit']=qs['limit'](_0x3fe449[_0xb321('0x2e')][_0xb321('0x1a')]);_0x2313cb['offset']=qs['offset'](_0x3fe449['query'][_0xb321('0x18')]);}_0x2313cb[_0xb321('0x35')]=qs[_0xb321('0x36')](_0x3fe449[_0xb321('0x2e')]['sort']);_0x2313cb[_0xb321('0x37')]=qs['filters'](_[_0xb321('0x38')](_0x3fe449[_0xb321('0x2e')],_0x85b3cf[_0xb321('0x2f')]),_0x3fb579);if(_0x3fe449[_0xb321('0x2e')][_0xb321('0x39')]){_0x2313cb[_0xb321('0x37')]=_[_0xb321('0x3a')](_0x2313cb[_0xb321('0x37')],{'$or':_[_0xb321('0x28')](_0x3fb579,function(_0x2a06fb){if(_0x2a06fb['type']!==_0xb321('0x3b')){var _0x5a828c={};_0x5a828c[_0x2a06fb[_0xb321('0x25')]]={'$like':'%'+_0x3fe449[_0xb321('0x2e')][_0xb321('0x39')]+'%'};return _0x5a828c;}})});}_0x2313cb=_[_0xb321('0x3a')]({},_0x2313cb,_0x3fe449[_0xb321('0x3c')]);var _0x2e1e71={'where':_0x2313cb[_0xb321('0x37')]};return db[_0xb321('0x3d')][_0xb321('0x19')](_0x2e1e71)[_0xb321('0x20')](function(_0x5b0b41){_0xfac7fe['count']=_0x5b0b41;if(_0x3fe449[_0xb321('0x2e')][_0xb321('0x3e')]){_0x2313cb['include']=[{'all':!![]}];}return db[_0xb321('0x3d')][_0xb321('0x3f')](_0x2313cb);})[_0xb321('0x20')](function(_0x3afba2){_0xfac7fe[_0xb321('0x40')]=_0x3afba2;return _0xfac7fe;})[_0xb321('0x20')](respondWithFilteredResult(_0x582d39,_0x2313cb))[_0xb321('0x41')](handleError(_0x582d39,null));};exports[_0xb321('0x42')]=function(_0x2de31b,_0x2902bb){var _0x4ca0d8={'raw':!![],'where':{'id':_0x2de31b[_0xb321('0x43')]['id']}},_0x2ddc13={};_0x2ddc13['model']=_[_0xb321('0x2d')](db['OpenchannelApplication'][_0xb321('0x29')]);_0x2ddc13[_0xb321('0x2e')]=_['keys'](_0x2de31b[_0xb321('0x2e')]);_0x2ddc13[_0xb321('0x2f')]=_[_0xb321('0x30')](_0x2ddc13[_0xb321('0x2c')],_0x2ddc13[_0xb321('0x2e')]);_0x4ca0d8[_0xb321('0x31')]=_[_0xb321('0x30')](_0x2ddc13[_0xb321('0x2c')],qs[_0xb321('0x44')](_0x2de31b[_0xb321('0x2e')]['fields']));_0x4ca0d8[_0xb321('0x31')]=_0x4ca0d8['attributes']['length']?_0x4ca0d8[_0xb321('0x31')]:_0x2ddc13['model'];if(_0x2de31b[_0xb321('0x2e')]['includeAll']){_0x4ca0d8[_0xb321('0x45')]=[{'all':!![]}];}_0x4ca0d8=_[_0xb321('0x3a')]({},_0x4ca0d8,_0x2de31b[_0xb321('0x3c')]);return db['OpenchannelApplication'][_0xb321('0x46')](_0x4ca0d8)[_0xb321('0x20')](handleEntityNotFound(_0x2902bb,null))['then'](respondWithResult(_0x2902bb,null))['catch'](handleError(_0x2902bb,null));};exports[_0xb321('0x47')]=function(_0x3cbda3,_0x1df3e8){return db[_0xb321('0x3d')][_0xb321('0x47')](_0x3cbda3[_0xb321('0x48')],{})['then'](respondWithResult(_0x1df3e8,0xc9))['catch'](handleError(_0x1df3e8,null));};exports[_0xb321('0x1f')]=function(_0x316981,_0x424dc7){if(_0x316981[_0xb321('0x48')]['id']){delete _0x316981[_0xb321('0x48')]['id'];}return db[_0xb321('0x3d')][_0xb321('0x46')]({'where':{'id':_0x316981[_0xb321('0x43')]['id']}})['then'](handleEntityNotFound(_0x424dc7,null))['then'](saveUpdates(_0x316981[_0xb321('0x48')],null))['then'](respondWithResult(_0x424dc7,null))[_0xb321('0x41')](handleError(_0x424dc7,null));};exports['destroy']=function(_0x176bed,_0x12cb39){return db[_0xb321('0x3d')][_0xb321('0x46')]({'where':{'id':_0x176bed[_0xb321('0x43')]['id']}})['then'](handleEntityNotFound(_0x12cb39,null))[_0xb321('0x20')](removeEntity(_0x12cb39,null))[_0xb321('0x41')](handleError(_0x12cb39,null));};