Built motion from commit 3c2ce842.|2.6.31
[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 _0x550a=['json','undefined','limit','count','offset','set','Content-Range','apply','reject','save','then','sendStatus','error','name','send','index','map','OpenchannelApplication','fieldName','key','query','keys','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','options','includeAll','findAll','rows','show','params','rawAttributes','include','find','catch','create','update','body','rimraf','zip-dir','moment','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','end'];(function(_0x419d42,_0x3613dd){var _0x375fa5=function(_0x2ac540){while(--_0x2ac540){_0x419d42['push'](_0x419d42['shift']());}};_0x375fa5(++_0x3613dd);}(_0x550a,0x165));var _0xa550=function(_0x4f6827,_0x2a59e1){_0x4f6827=_0x4f6827-0x0;var _0x59cfd2=_0x550a[_0x4f6827];return _0x59cfd2;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xa550('0x0'));var zipdir=require(_0xa550('0x1'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0xa550('0x2'));var BPromise=require(_0xa550('0x3'));var Mustache=require(_0xa550('0x4'));var util=require(_0xa550('0x5'));var path=require(_0xa550('0x6'));var sox=require(_0xa550('0x7'));var csv=require(_0xa550('0x8'));var ejs=require(_0xa550('0x9'));var fs=require('fs');var fs_extra=require(_0xa550('0xa'));var _=require(_0xa550('0xb'));var squel=require(_0xa550('0xc'));var crypto=require('crypto');var jsforce=require(_0xa550('0xd'));var deskjs=require(_0xa550('0xe'));var toCsv=require('to-csv');var querystring=require(_0xa550('0xf'));var Papa=require(_0xa550('0x10'));var Redis=require(_0xa550('0x11'));var authService=require('../../components/auth/service');var qs=require(_0xa550('0x12'));var as=require(_0xa550('0x13'));var hardwareService=require(_0xa550('0x14'));var logger=require(_0xa550('0x15'))('api');var utils=require(_0xa550('0x16'));var config=require(_0xa550('0x17'));var licenseUtil=require(_0xa550('0x18'));var db=require(_0xa550('0x19'))['db'];function respondWithStatusCode(_0x279338,_0x43fd08){_0x43fd08=_0x43fd08||0xcc;return function(_0xa4946e){if(_0xa4946e){return _0x279338['sendStatus'](_0x43fd08);}return _0x279338[_0xa550('0x1a')](_0x43fd08)[_0xa550('0x1b')]();};}function respondWithResult(_0x4a7fbb,_0x407405){_0x407405=_0x407405||0xc8;return function(_0xe5f128){if(_0xe5f128){return _0x4a7fbb[_0xa550('0x1a')](_0x407405)[_0xa550('0x1c')](_0xe5f128);}};}function respondWithFilteredResult(_0x5a5303,_0x59fed5){return function(_0x2a39a9){if(_0x2a39a9){var _0x50265d=typeof _0x59fed5['offset']===_0xa550('0x1d')&&typeof _0x59fed5[_0xa550('0x1e')]===_0xa550('0x1d');var _0x4d8a12=_0x2a39a9[_0xa550('0x1f')];var _0x4b9a71=_0x50265d?0x0:_0x59fed5['offset'];var _0x5e452b=_0x50265d?_0x2a39a9[_0xa550('0x1f')]:_0x59fed5[_0xa550('0x20')]+_0x59fed5[_0xa550('0x1e')];var _0x514ec3;if(_0x5e452b>=_0x4d8a12){_0x5e452b=_0x4d8a12;_0x514ec3=0xc8;}else{_0x514ec3=0xce;}_0x5a5303['status'](_0x514ec3);return _0x5a5303[_0xa550('0x21')](_0xa550('0x22'),_0x4b9a71+'-'+_0x5e452b+'/'+_0x4d8a12)['json'](_0x2a39a9);}return null;};}function patchUpdates(_0x36bd8f){return function(_0x180561){try{jsonpatch[_0xa550('0x23')](_0x180561,_0x36bd8f,!![]);}catch(_0x2f42ab){return BPromise[_0xa550('0x24')](_0x2f42ab);}return _0x180561[_0xa550('0x25')]();};}function saveUpdates(_0x592fe5,_0x2cb2ac){return function(_0x3967c6){if(_0x3967c6){return _0x3967c6['update'](_0x592fe5)[_0xa550('0x26')](function(_0x443354){return _0x443354;});}return null;};}function removeEntity(_0x28360d,_0x19ef15){return function(_0x492252){if(_0x492252){return _0x492252['destroy']()[_0xa550('0x26')](function(){_0x28360d['status'](0xcc)[_0xa550('0x1b')]();});}};}function handleEntityNotFound(_0x2c22f3,_0x3f3be6){return function(_0x3539fc){if(!_0x3539fc){_0x2c22f3[_0xa550('0x27')](0x194);}return _0x3539fc;};}function handleError(_0x58af50,_0x56fb59){_0x56fb59=_0x56fb59||0x1f4;return function(_0x49d765){logger[_0xa550('0x28')](_0x49d765['stack']);if(_0x49d765[_0xa550('0x29')]){delete _0x49d765[_0xa550('0x29')];}_0x58af50['status'](_0x56fb59)[_0xa550('0x2a')](_0x49d765);};}exports[_0xa550('0x2b')]=function(_0x267d67,_0x71b688){var _0x269502={},_0x30b032={},_0x2e6290={'count':0x0,'rows':[]};var _0x1ac1c5=_[_0xa550('0x2c')](db[_0xa550('0x2d')]['rawAttributes'],function(_0xddcd0b){return{'name':_0xddcd0b[_0xa550('0x2e')],'type':_0xddcd0b['type'][_0xa550('0x2f')]};});_0x30b032['model']=_[_0xa550('0x2c')](_0x1ac1c5,_0xa550('0x29'));_0x30b032[_0xa550('0x30')]=_[_0xa550('0x31')](_0x267d67['query']);_0x30b032[_0xa550('0x32')]=_[_0xa550('0x33')](_0x30b032[_0xa550('0x34')],_0x30b032[_0xa550('0x30')]);_0x269502[_0xa550('0x35')]=_[_0xa550('0x33')](_0x30b032[_0xa550('0x34')],qs[_0xa550('0x36')](_0x267d67[_0xa550('0x30')]['fields']));_0x269502[_0xa550('0x35')]=_0x269502['attributes'][_0xa550('0x37')]?_0x269502['attributes']:_0x30b032[_0xa550('0x34')];if(!_0x267d67[_0xa550('0x30')][_0xa550('0x38')](_0xa550('0x39'))){_0x269502[_0xa550('0x1e')]=qs[_0xa550('0x1e')](_0x267d67[_0xa550('0x30')][_0xa550('0x1e')]);_0x269502[_0xa550('0x20')]=qs[_0xa550('0x20')](_0x267d67[_0xa550('0x30')][_0xa550('0x20')]);}_0x269502[_0xa550('0x3a')]=qs['sort'](_0x267d67[_0xa550('0x30')][_0xa550('0x3b')]);_0x269502[_0xa550('0x3c')]=qs[_0xa550('0x32')](_[_0xa550('0x3d')](_0x267d67['query'],_0x30b032[_0xa550('0x32')]),_0x1ac1c5);if(_0x267d67[_0xa550('0x30')][_0xa550('0x3e')]){_0x269502[_0xa550('0x3c')]=_[_0xa550('0x3f')](_0x269502['where'],{'$or':_[_0xa550('0x2c')](_0x1ac1c5,function(_0xb24100){if(_0xb24100['type']!=='VIRTUAL'){var _0x2599ae={};_0x2599ae[_0xb24100[_0xa550('0x29')]]={'$like':'%'+_0x267d67[_0xa550('0x30')][_0xa550('0x3e')]+'%'};return _0x2599ae;}})});}_0x269502=_[_0xa550('0x3f')]({},_0x269502,_0x267d67[_0xa550('0x40')]);var _0x3f8d19={'where':_0x269502[_0xa550('0x3c')]};return db[_0xa550('0x2d')][_0xa550('0x1f')](_0x3f8d19)[_0xa550('0x26')](function(_0x11ac62){_0x2e6290[_0xa550('0x1f')]=_0x11ac62;if(_0x267d67[_0xa550('0x30')][_0xa550('0x41')]){_0x269502['include']=[{'all':!![]}];}return db['OpenchannelApplication'][_0xa550('0x42')](_0x269502);})['then'](function(_0x3cd9b8){_0x2e6290[_0xa550('0x43')]=_0x3cd9b8;return _0x2e6290;})[_0xa550('0x26')](respondWithFilteredResult(_0x71b688,_0x269502))['catch'](handleError(_0x71b688,null));};exports[_0xa550('0x44')]=function(_0x52bc1c,_0x8547a7){var _0x5e347b={'raw':!![],'where':{'id':_0x52bc1c[_0xa550('0x45')]['id']}},_0x2c5ebb={};_0x2c5ebb[_0xa550('0x34')]=_[_0xa550('0x31')](db[_0xa550('0x2d')][_0xa550('0x46')]);_0x2c5ebb['query']=_[_0xa550('0x31')](_0x52bc1c[_0xa550('0x30')]);_0x2c5ebb['filters']=_[_0xa550('0x33')](_0x2c5ebb[_0xa550('0x34')],_0x2c5ebb['query']);_0x5e347b[_0xa550('0x35')]=_['intersection'](_0x2c5ebb[_0xa550('0x34')],qs['fields'](_0x52bc1c['query'][_0xa550('0x36')]));_0x5e347b[_0xa550('0x35')]=_0x5e347b['attributes']['length']?_0x5e347b[_0xa550('0x35')]:_0x2c5ebb[_0xa550('0x34')];if(_0x52bc1c[_0xa550('0x30')][_0xa550('0x41')]){_0x5e347b[_0xa550('0x47')]=[{'all':!![]}];}_0x5e347b=_[_0xa550('0x3f')]({},_0x5e347b,_0x52bc1c['options']);return db[_0xa550('0x2d')][_0xa550('0x48')](_0x5e347b)[_0xa550('0x26')](handleEntityNotFound(_0x8547a7,null))[_0xa550('0x26')](respondWithResult(_0x8547a7,null))[_0xa550('0x49')](handleError(_0x8547a7,null));};exports[_0xa550('0x4a')]=function(_0x26597c,_0x53e7f9){return db[_0xa550('0x2d')][_0xa550('0x4a')](_0x26597c['body'],{})['then'](respondWithResult(_0x53e7f9,0xc9))[_0xa550('0x49')](handleError(_0x53e7f9,null));};exports[_0xa550('0x4b')]=function(_0x8e0f4e,_0x590021){if(_0x8e0f4e['body']['id']){delete _0x8e0f4e[_0xa550('0x4c')]['id'];}return db[_0xa550('0x2d')][_0xa550('0x48')]({'where':{'id':_0x8e0f4e[_0xa550('0x45')]['id']}})['then'](handleEntityNotFound(_0x590021,null))[_0xa550('0x26')](saveUpdates(_0x8e0f4e[_0xa550('0x4c')],null))[_0xa550('0x26')](respondWithResult(_0x590021,null))['catch'](handleError(_0x590021,null));};exports['destroy']=function(_0x37418f,_0x1968f3){return db[_0xa550('0x2d')]['find']({'where':{'id':_0x37418f['params']['id']}})['then'](handleEntityNotFound(_0x1968f3,null))[_0xa550('0x26')](removeEntity(_0x1968f3,null))[_0xa550('0x49')](handleError(_0x1968f3,null));};