c88e7a9307f2a472518f3e60537acbf88cbb6a37
[motion2.git] / server / api / cmHopperBlack / cmHopperBlack.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 _0x5115=['findAll','params','keys','catch','update','body','find','describe','eml-format','fast-json-patch','request-promise','moment','mustache','util','path','sox','to-csv','lodash','squel','crypto','jsforce','papaparse','ioredis','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','offset','limit','undefined','count','set','Content-Range','json','apply','reject','save','then','destroy','error','stack','name','send','index','map','CmHopperBlack','rawAttributes','fieldName','type','key','query','filters','intersection','attributes','model','fields','length','nolimit','order','sort','filter','where','merge','VIRTUAL','options','includeAll','include'];(function(_0x44efae,_0x45b7fe){var _0x46b69d=function(_0x32e16b){while(--_0x32e16b){_0x44efae['push'](_0x44efae['shift']());}};_0x46b69d(++_0x45b7fe);}(_0x5115,0x9a));var _0x5511=function(_0x4495ca,_0x570651){_0x4495ca=_0x4495ca-0x0;var _0x4637c0=_0x5115[_0x4495ca];return _0x4637c0;};'use strict';var emlformat=require(_0x5511('0x0'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0x5511('0x1'));var rp=require(_0x5511('0x2'));var moment=require(_0x5511('0x3'));var BPromise=require('bluebird');var Mustache=require(_0x5511('0x4'));var util=require(_0x5511('0x5'));var path=require(_0x5511('0x6'));var sox=require(_0x5511('0x7'));var csv=require(_0x5511('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x5511('0x9'));var squel=require(_0x5511('0xa'));var crypto=require(_0x5511('0xb'));var jsforce=require(_0x5511('0xc'));var deskjs=require('desk.js');var toCsv=require(_0x5511('0x8'));var querystring=require('querystring');var Papa=require(_0x5511('0xd'));var Redis=require(_0x5511('0xe'));var authService=require('../../components/auth/service');var qs=require(_0x5511('0xf'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x5511('0x10'));var logger=require(_0x5511('0x11'))(_0x5511('0x12'));var utils=require(_0x5511('0x13'));var config=require(_0x5511('0x14'));var licenseUtil=require(_0x5511('0x15'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x382af8,_0x4ebc19){_0x4ebc19=_0x4ebc19||0xcc;return function(_0x133c35){if(_0x133c35){return _0x382af8[_0x5511('0x16')](_0x4ebc19);}return _0x382af8[_0x5511('0x17')](_0x4ebc19)[_0x5511('0x18')]();};}function respondWithResult(_0x4a259f,_0x598d99){_0x598d99=_0x598d99||0xc8;return function(_0x478fdc){if(_0x478fdc){return _0x4a259f[_0x5511('0x17')](_0x598d99)['json'](_0x478fdc);}};}function respondWithFilteredResult(_0x1dc353,_0x4964a3){return function(_0x57ef1c){if(_0x57ef1c){var _0x46d174=typeof _0x4964a3[_0x5511('0x19')]==='undefined'&&typeof _0x4964a3[_0x5511('0x1a')]===_0x5511('0x1b');var _0x23c98e=_0x57ef1c[_0x5511('0x1c')];var _0x13bdc5=_0x46d174?0x0:_0x4964a3[_0x5511('0x19')];var _0x535348=_0x46d174?_0x57ef1c[_0x5511('0x1c')]:_0x4964a3[_0x5511('0x19')]+_0x4964a3['limit'];var _0x2fa8b1;if(_0x535348>=_0x23c98e){_0x535348=_0x23c98e;_0x2fa8b1=0xc8;}else{_0x2fa8b1=0xce;}_0x1dc353[_0x5511('0x17')](_0x2fa8b1);return _0x1dc353[_0x5511('0x1d')](_0x5511('0x1e'),_0x13bdc5+'-'+_0x535348+'/'+_0x23c98e)[_0x5511('0x1f')](_0x57ef1c);}return null;};}function patchUpdates(_0x20deb2){return function(_0x7eaa95){try{jsonpatch[_0x5511('0x20')](_0x7eaa95,_0x20deb2,!![]);}catch(_0x48c31c){return BPromise[_0x5511('0x21')](_0x48c31c);}return _0x7eaa95[_0x5511('0x22')]();};}function saveUpdates(_0x296f55,_0xe56132){return function(_0x364061){if(_0x364061){return _0x364061['update'](_0x296f55)[_0x5511('0x23')](function(_0x1d6ae2){return _0x1d6ae2;});}return null;};}function removeEntity(_0x31f99e,_0x4f4f0e){return function(_0xd856b1){if(_0xd856b1){return _0xd856b1[_0x5511('0x24')]()['then'](function(){_0x31f99e[_0x5511('0x17')](0xcc)['end']();});}};}function handleEntityNotFound(_0x3d525d,_0xb22976){return function(_0x3de14a){if(!_0x3de14a){_0x3d525d['sendStatus'](0x194);}return _0x3de14a;};}function handleError(_0xe40986,_0x2a4d31){_0x2a4d31=_0x2a4d31||0x1f4;return function(_0x140e23){logger[_0x5511('0x25')](_0x140e23[_0x5511('0x26')]);if(_0x140e23['name']){delete _0x140e23[_0x5511('0x27')];}_0xe40986[_0x5511('0x17')](_0x2a4d31)[_0x5511('0x28')](_0x140e23);};}exports[_0x5511('0x29')]=function(_0x4e3797,_0x4d34e0){var _0x46bf23={},_0xb186d0={},_0x4806a5={'count':0x0,'rows':[]};var _0x5d53dc=_[_0x5511('0x2a')](db[_0x5511('0x2b')][_0x5511('0x2c')],function(_0xe37de0){return{'name':_0xe37de0[_0x5511('0x2d')],'type':_0xe37de0[_0x5511('0x2e')][_0x5511('0x2f')]};});_0xb186d0['model']=_['map'](_0x5d53dc,_0x5511('0x27'));_0xb186d0[_0x5511('0x30')]=_['keys'](_0x4e3797['query']);_0xb186d0[_0x5511('0x31')]=_[_0x5511('0x32')](_0xb186d0['model'],_0xb186d0['query']);_0x46bf23[_0x5511('0x33')]=_[_0x5511('0x32')](_0xb186d0[_0x5511('0x34')],qs[_0x5511('0x35')](_0x4e3797[_0x5511('0x30')][_0x5511('0x35')]));_0x46bf23[_0x5511('0x33')]=_0x46bf23[_0x5511('0x33')][_0x5511('0x36')]?_0x46bf23[_0x5511('0x33')]:_0xb186d0[_0x5511('0x34')];if(!_0x4e3797[_0x5511('0x30')]['hasOwnProperty'](_0x5511('0x37'))){_0x46bf23[_0x5511('0x1a')]=qs[_0x5511('0x1a')](_0x4e3797['query']['limit']);_0x46bf23['offset']=qs['offset'](_0x4e3797['query']['offset']);}_0x46bf23[_0x5511('0x38')]=qs[_0x5511('0x39')](_0x4e3797[_0x5511('0x30')][_0x5511('0x39')]);_0x46bf23['where']=qs[_0x5511('0x31')](_['pick'](_0x4e3797['query'],_0xb186d0[_0x5511('0x31')]),_0x5d53dc);if(_0x4e3797[_0x5511('0x30')][_0x5511('0x3a')]){_0x46bf23[_0x5511('0x3b')]=_[_0x5511('0x3c')](_0x46bf23[_0x5511('0x3b')],{'$or':_['map'](_0x5d53dc,function(_0x2877e6){if(_0x2877e6[_0x5511('0x2e')]!==_0x5511('0x3d')){var _0x33e133={};_0x33e133[_0x2877e6[_0x5511('0x27')]]={'$like':'%'+_0x4e3797['query'][_0x5511('0x3a')]+'%'};return _0x33e133;}})});}_0x46bf23=_[_0x5511('0x3c')]({},_0x46bf23,_0x4e3797[_0x5511('0x3e')]);var _0x2fffe7={'where':_0x46bf23[_0x5511('0x3b')]};return db[_0x5511('0x2b')]['count'](_0x2fffe7)['then'](function(_0x1dfa1b){_0x4806a5['count']=_0x1dfa1b;if(_0x4e3797[_0x5511('0x30')][_0x5511('0x3f')]){_0x46bf23[_0x5511('0x40')]=[{'all':!![]}];}return db[_0x5511('0x2b')][_0x5511('0x41')](_0x46bf23);})[_0x5511('0x23')](function(_0x5e4321){_0x4806a5['rows']=_0x5e4321;return _0x4806a5;})[_0x5511('0x23')](respondWithFilteredResult(_0x4d34e0,_0x46bf23))['catch'](handleError(_0x4d34e0,null));};exports['show']=function(_0xa9dea1,_0x47a9b6){var _0x150507={'raw':!![],'where':{'id':_0xa9dea1[_0x5511('0x42')]['id']}},_0x41bf8d={};_0x41bf8d['model']=_[_0x5511('0x43')](db[_0x5511('0x2b')][_0x5511('0x2c')]);_0x41bf8d['query']=_[_0x5511('0x43')](_0xa9dea1['query']);_0x41bf8d[_0x5511('0x31')]=_[_0x5511('0x32')](_0x41bf8d['model'],_0x41bf8d[_0x5511('0x30')]);_0x150507[_0x5511('0x33')]=_[_0x5511('0x32')](_0x41bf8d[_0x5511('0x34')],qs['fields'](_0xa9dea1[_0x5511('0x30')][_0x5511('0x35')]));_0x150507['attributes']=_0x150507['attributes']['length']?_0x150507[_0x5511('0x33')]:_0x41bf8d[_0x5511('0x34')];if(_0xa9dea1['query'][_0x5511('0x3f')]){_0x150507[_0x5511('0x40')]=[{'all':!![]}];}_0x150507=_[_0x5511('0x3c')]({},_0x150507,_0xa9dea1[_0x5511('0x3e')]);return db['CmHopperBlack']['find'](_0x150507)[_0x5511('0x23')](handleEntityNotFound(_0x47a9b6,null))[_0x5511('0x23')](respondWithResult(_0x47a9b6,null))[_0x5511('0x44')](handleError(_0x47a9b6,null));};exports[_0x5511('0x45')]=function(_0x5d5e88,_0xf35dfa){if(_0x5d5e88[_0x5511('0x46')]['id']){delete _0x5d5e88[_0x5511('0x46')]['id'];}return db[_0x5511('0x2b')]['find']({'where':{'id':_0x5d5e88[_0x5511('0x42')]['id']}})[_0x5511('0x23')](handleEntityNotFound(_0xf35dfa,null))[_0x5511('0x23')](saveUpdates(_0x5d5e88['body'],null))[_0x5511('0x23')](respondWithResult(_0xf35dfa,null))[_0x5511('0x44')](handleError(_0xf35dfa,null));};exports[_0x5511('0x24')]=function(_0xd4b2d7,_0x5d430a){return db[_0x5511('0x2b')][_0x5511('0x47')]({'where':{'id':_0xd4b2d7[_0x5511('0x42')]['id']}})['then'](handleEntityNotFound(_0x5d430a,null))[_0x5511('0x23')](removeEntity(_0x5d430a,null))[_0x5511('0x44')](handleError(_0x5d430a,null));};exports[_0x5511('0x48')]=function(_0x36a3a2,_0x11df2d){return db[_0x5511('0x2b')][_0x5511('0x48')]()['then'](respondWithResult(_0x11df2d,null))[_0x5511('0x44')](handleError(_0x11df2d,null));};