Built motion from commit 9d0783e6.|2.6.13
[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 _0xe92a=['../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','undefined','limit','count','offset','set','Content-Range','apply','reject','update','then','destroy','error','stack','name','index','map','OpenchannelApplication','rawAttributes','key','query','filters','intersection','model','attributes','hasOwnProperty','nolimit','order','sort','where','merge','type','VIRTUAL','filter','options','includeAll','include','rows','catch','show','params','keys','fields','find','create','body','rimraf','fast-json-patch','request-promise','moment','bluebird','util','sox','to-csv','ejs','lodash','squel','jsforce','desk.js','querystring','papaparse'];(function(_0x4ddbcf,_0xd822b0){var _0x45da65=function(_0x362027){while(--_0x362027){_0x4ddbcf['push'](_0x4ddbcf['shift']());}};_0x45da65(++_0xd822b0);}(_0xe92a,0x85));var _0xae92=function(_0x398c23,_0x294a30){_0x398c23=_0x398c23-0x0;var _0x5392c0=_0xe92a[_0x398c23];return _0x5392c0;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xae92('0x0'));var zipdir=require('zip-dir');var jsonpatch=require(_0xae92('0x1'));var rp=require(_0xae92('0x2'));var moment=require(_0xae92('0x3'));var BPromise=require(_0xae92('0x4'));var Mustache=require('mustache');var util=require(_0xae92('0x5'));var path=require('path');var sox=require(_0xae92('0x6'));var csv=require(_0xae92('0x7'));var ejs=require(_0xae92('0x8'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xae92('0x9'));var squel=require(_0xae92('0xa'));var crypto=require('crypto');var jsforce=require(_0xae92('0xb'));var deskjs=require(_0xae92('0xc'));var toCsv=require('to-csv');var querystring=require(_0xae92('0xd'));var Papa=require(_0xae92('0xe'));var Redis=require('ioredis');var authService=require(_0xae92('0xf'));var qs=require(_0xae92('0x10'));var as=require(_0xae92('0x11'));var hardwareService=require(_0xae92('0x12'));var logger=require(_0xae92('0x13'))(_0xae92('0x14'));var utils=require(_0xae92('0x15'));var config=require(_0xae92('0x16'));var licenseUtil=require(_0xae92('0x17'));var db=require(_0xae92('0x18'))['db'];function respondWithStatusCode(_0x5ba226,_0x51e4ea){_0x51e4ea=_0x51e4ea||0xcc;return function(_0x57332b){if(_0x57332b){return _0x5ba226[_0xae92('0x19')](_0x51e4ea);}return _0x5ba226[_0xae92('0x1a')](_0x51e4ea)[_0xae92('0x1b')]();};}function respondWithResult(_0x4aafdf,_0x1de825){_0x1de825=_0x1de825||0xc8;return function(_0x534e91){if(_0x534e91){return _0x4aafdf['status'](_0x1de825)[_0xae92('0x1c')](_0x534e91);}};}function respondWithFilteredResult(_0x116806,_0x13ae2c){return function(_0x5157d9){if(_0x5157d9){var _0x5f0414=typeof _0x13ae2c['offset']===_0xae92('0x1d')&&typeof _0x13ae2c[_0xae92('0x1e')]===_0xae92('0x1d');var _0xf12372=_0x5157d9[_0xae92('0x1f')];var _0x5443df=_0x5f0414?0x0:_0x13ae2c['offset'];var _0x116898=_0x5f0414?_0x5157d9['count']:_0x13ae2c[_0xae92('0x20')]+_0x13ae2c['limit'];var _0x2842d7;if(_0x116898>=_0xf12372){_0x116898=_0xf12372;_0x2842d7=0xc8;}else{_0x2842d7=0xce;}_0x116806[_0xae92('0x1a')](_0x2842d7);return _0x116806[_0xae92('0x21')](_0xae92('0x22'),_0x5443df+'-'+_0x116898+'/'+_0xf12372)['json'](_0x5157d9);}return null;};}function patchUpdates(_0x186297){return function(_0x5738b1){try{jsonpatch[_0xae92('0x23')](_0x5738b1,_0x186297,!![]);}catch(_0x3d6c5d){return BPromise[_0xae92('0x24')](_0x3d6c5d);}return _0x5738b1['save']();};}function saveUpdates(_0x29fd3d,_0x5c637c){return function(_0x4ca592){if(_0x4ca592){return _0x4ca592[_0xae92('0x25')](_0x29fd3d)[_0xae92('0x26')](function(_0x1878be){return _0x1878be;});}return null;};}function removeEntity(_0x55267a,_0x3c44a1){return function(_0x4d38d0){if(_0x4d38d0){return _0x4d38d0[_0xae92('0x27')]()[_0xae92('0x26')](function(){_0x55267a[_0xae92('0x1a')](0xcc)['end']();});}};}function handleEntityNotFound(_0x183ede,_0x1c88b2){return function(_0x255e34){if(!_0x255e34){_0x183ede[_0xae92('0x19')](0x194);}return _0x255e34;};}function handleError(_0x5973b9,_0x15d716){_0x15d716=_0x15d716||0x1f4;return function(_0x5a1022){logger[_0xae92('0x28')](_0x5a1022[_0xae92('0x29')]);if(_0x5a1022[_0xae92('0x2a')]){delete _0x5a1022[_0xae92('0x2a')];}_0x5973b9[_0xae92('0x1a')](_0x15d716)['send'](_0x5a1022);};}exports[_0xae92('0x2b')]=function(_0x3fc74e,_0x1eec51){var _0x2a9bd2={},_0x454aeb={},_0xc05e83={'count':0x0,'rows':[]};var _0x530efd=_[_0xae92('0x2c')](db[_0xae92('0x2d')][_0xae92('0x2e')],function(_0x10ef52){return{'name':_0x10ef52['fieldName'],'type':_0x10ef52['type'][_0xae92('0x2f')]};});_0x454aeb['model']=_[_0xae92('0x2c')](_0x530efd,_0xae92('0x2a'));_0x454aeb[_0xae92('0x30')]=_['keys'](_0x3fc74e['query']);_0x454aeb[_0xae92('0x31')]=_[_0xae92('0x32')](_0x454aeb[_0xae92('0x33')],_0x454aeb['query']);_0x2a9bd2['attributes']=_[_0xae92('0x32')](_0x454aeb[_0xae92('0x33')],qs['fields'](_0x3fc74e[_0xae92('0x30')]['fields']));_0x2a9bd2[_0xae92('0x34')]=_0x2a9bd2[_0xae92('0x34')]['length']?_0x2a9bd2[_0xae92('0x34')]:_0x454aeb['model'];if(!_0x3fc74e['query'][_0xae92('0x35')](_0xae92('0x36'))){_0x2a9bd2[_0xae92('0x1e')]=qs[_0xae92('0x1e')](_0x3fc74e[_0xae92('0x30')]['limit']);_0x2a9bd2[_0xae92('0x20')]=qs[_0xae92('0x20')](_0x3fc74e[_0xae92('0x30')][_0xae92('0x20')]);}_0x2a9bd2[_0xae92('0x37')]=qs[_0xae92('0x38')](_0x3fc74e['query'][_0xae92('0x38')]);_0x2a9bd2[_0xae92('0x39')]=qs['filters'](_['pick'](_0x3fc74e['query'],_0x454aeb[_0xae92('0x31')]),_0x530efd);if(_0x3fc74e[_0xae92('0x30')]['filter']){_0x2a9bd2[_0xae92('0x39')]=_[_0xae92('0x3a')](_0x2a9bd2[_0xae92('0x39')],{'$or':_[_0xae92('0x2c')](_0x530efd,function(_0x411e77){if(_0x411e77[_0xae92('0x3b')]!==_0xae92('0x3c')){var _0x41dfbf={};_0x41dfbf[_0x411e77[_0xae92('0x2a')]]={'$like':'%'+_0x3fc74e['query'][_0xae92('0x3d')]+'%'};return _0x41dfbf;}})});}_0x2a9bd2=_['merge']({},_0x2a9bd2,_0x3fc74e[_0xae92('0x3e')]);var _0x46b16e={'where':_0x2a9bd2[_0xae92('0x39')]};return db['OpenchannelApplication']['count'](_0x46b16e)[_0xae92('0x26')](function(_0x274526){_0xc05e83[_0xae92('0x1f')]=_0x274526;if(_0x3fc74e[_0xae92('0x30')][_0xae92('0x3f')]){_0x2a9bd2[_0xae92('0x40')]=[{'all':!![]}];}return db[_0xae92('0x2d')]['findAll'](_0x2a9bd2);})[_0xae92('0x26')](function(_0x3b4f8f){_0xc05e83[_0xae92('0x41')]=_0x3b4f8f;return _0xc05e83;})[_0xae92('0x26')](respondWithFilteredResult(_0x1eec51,_0x2a9bd2))[_0xae92('0x42')](handleError(_0x1eec51,null));};exports[_0xae92('0x43')]=function(_0x30070a,_0x15324f){var _0x40c099={'raw':!![],'where':{'id':_0x30070a[_0xae92('0x44')]['id']}},_0x1003bb={};_0x1003bb[_0xae92('0x33')]=_[_0xae92('0x45')](db[_0xae92('0x2d')][_0xae92('0x2e')]);_0x1003bb[_0xae92('0x30')]=_['keys'](_0x30070a[_0xae92('0x30')]);_0x1003bb[_0xae92('0x31')]=_[_0xae92('0x32')](_0x1003bb['model'],_0x1003bb['query']);_0x40c099[_0xae92('0x34')]=_['intersection'](_0x1003bb[_0xae92('0x33')],qs[_0xae92('0x46')](_0x30070a[_0xae92('0x30')][_0xae92('0x46')]));_0x40c099['attributes']=_0x40c099[_0xae92('0x34')]['length']?_0x40c099[_0xae92('0x34')]:_0x1003bb[_0xae92('0x33')];if(_0x30070a[_0xae92('0x30')][_0xae92('0x3f')]){_0x40c099[_0xae92('0x40')]=[{'all':!![]}];}_0x40c099=_[_0xae92('0x3a')]({},_0x40c099,_0x30070a[_0xae92('0x3e')]);return db[_0xae92('0x2d')][_0xae92('0x47')](_0x40c099)[_0xae92('0x26')](handleEntityNotFound(_0x15324f,null))[_0xae92('0x26')](respondWithResult(_0x15324f,null))[_0xae92('0x42')](handleError(_0x15324f,null));};exports[_0xae92('0x48')]=function(_0x1cd941,_0x3ac312){return db[_0xae92('0x2d')][_0xae92('0x48')](_0x1cd941[_0xae92('0x49')],{})['then'](respondWithResult(_0x3ac312,0xc9))[_0xae92('0x42')](handleError(_0x3ac312,null));};exports[_0xae92('0x25')]=function(_0x5ded12,_0x4f084e){if(_0x5ded12[_0xae92('0x49')]['id']){delete _0x5ded12['body']['id'];}return db[_0xae92('0x2d')]['find']({'where':{'id':_0x5ded12[_0xae92('0x44')]['id']}})[_0xae92('0x26')](handleEntityNotFound(_0x4f084e,null))['then'](saveUpdates(_0x5ded12[_0xae92('0x49')],null))['then'](respondWithResult(_0x4f084e,null))[_0xae92('0x42')](handleError(_0x4f084e,null));};exports[_0xae92('0x27')]=function(_0x1e3d89,_0x4911b2){return db[_0xae92('0x2d')]['find']({'where':{'id':_0x1e3d89[_0xae92('0x44')]['id']}})[_0xae92('0x26')](handleEntityNotFound(_0x4911b2,null))['then'](removeEntity(_0x4911b2,null))[_0xae92('0x42')](handleError(_0x4911b2,null));};