3f71e793af148520aad5145333763ff98a113553
[motion2.git] / server / api / cmHopperHistory / cmHopperHistory.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 _0xe364=['papaparse','ioredis','../../components/parsers/qs','../../config/license/hardware','api','../../config/utils','../../config/environment','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','save','update','then','destroy','error','stack','name','send','index','map','fieldName','type','key','model','keys','query','filters','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','CmHopperHistory','includeAll','include','findAll','catch','show','params','rawAttributes','length','options','find','create','body','describe','uniqueid','eml-format','zip-dir','fast-json-patch','request-promise','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring'];(function(_0x30ae5e,_0x391fc4){var _0x1f2e93=function(_0x60307d){while(--_0x60307d){_0x30ae5e['push'](_0x30ae5e['shift']());}};_0x1f2e93(++_0x391fc4);}(_0xe364,0x121));var _0x4e36=function(_0x10df1e,_0xf56f85){_0x10df1e=_0x10df1e-0x0;var _0x3e24fb=_0xe364[_0x10df1e];return _0x3e24fb;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x4e36('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x4e36('0x1'));var jsonpatch=require(_0x4e36('0x2'));var rp=require(_0x4e36('0x3'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x4e36('0x4'));var path=require(_0x4e36('0x5'));var sox=require(_0x4e36('0x6'));var csv=require(_0x4e36('0x7'));var ejs=require(_0x4e36('0x8'));var fs=require('fs');var _=require(_0x4e36('0x9'));var squel=require(_0x4e36('0xa'));var crypto=require(_0x4e36('0xb'));var jsforce=require(_0x4e36('0xc'));var deskjs=require(_0x4e36('0xd'));var toCsv=require(_0x4e36('0x7'));var querystring=require(_0x4e36('0xe'));var Papa=require(_0x4e36('0xf'));var Redis=require(_0x4e36('0x10'));var authService=require('../../components/auth/service');var qs=require(_0x4e36('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x4e36('0x12'));var logger=require('../../config/logger')(_0x4e36('0x13'));var utils=require(_0x4e36('0x14'));var config=require(_0x4e36('0x15'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x555937,_0x4c4b2c){_0x4c4b2c=_0x4c4b2c||0xcc;return function(_0x29636c){if(_0x29636c){return _0x555937[_0x4e36('0x16')](_0x4c4b2c);}return _0x555937[_0x4e36('0x17')](_0x4c4b2c)[_0x4e36('0x18')]();};}function respondWithResult(_0x18b226,_0x562dfd){_0x562dfd=_0x562dfd||0xc8;return function(_0x1cf81b){if(_0x1cf81b){return _0x18b226[_0x4e36('0x17')](_0x562dfd)[_0x4e36('0x19')](_0x1cf81b);}};}function respondWithFilteredResult(_0x4f20d8,_0x4bcd39){return function(_0x3430ba){if(_0x3430ba){var _0x24f03c=_0x3430ba[_0x4e36('0x1a')],_0xb73dba=_0x4bcd39[_0x4e36('0x1b')],_0x464763=_0x4bcd39[_0x4e36('0x1b')]+_0x4bcd39[_0x4e36('0x1c')],_0x1059da;if(_0x464763>=_0x24f03c){_0x464763=_0x24f03c;_0x1059da=0xc8;}else{_0x1059da=0xce;}_0x4f20d8['status'](_0x1059da);return _0x4f20d8[_0x4e36('0x1d')](_0x4e36('0x1e'),_0xb73dba+'-'+_0x464763+'/'+_0x24f03c)['json'](_0x3430ba);}return null;};}function patchUpdates(_0x3bc1df){return function(_0x11258b){try{jsonpatch[_0x4e36('0x1f')](_0x11258b,_0x3bc1df,!![]);}catch(_0x1c7cc7){return BPromise[_0x4e36('0x20')](_0x1c7cc7);}return _0x11258b[_0x4e36('0x21')]();};}function saveUpdates(_0x16c344,_0x57e71b){return function(_0x4fa6fc){if(_0x4fa6fc){return _0x4fa6fc[_0x4e36('0x22')](_0x16c344)[_0x4e36('0x23')](function(_0xc947fb){return _0xc947fb;});}return null;};}function removeEntity(_0x4c6625,_0x20bd18){return function(_0x274513){if(_0x274513){return _0x274513[_0x4e36('0x24')]()[_0x4e36('0x23')](function(){_0x4c6625['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x508d90,_0x5bc2c9){return function(_0x339522){if(!_0x339522){_0x508d90[_0x4e36('0x16')](0x194);}return _0x339522;};}function handleError(_0x5cf2ee,_0x741f62){_0x741f62=_0x741f62||0x1f4;return function(_0x55b802){logger[_0x4e36('0x25')](_0x55b802[_0x4e36('0x26')]);if(_0x55b802[_0x4e36('0x27')]){delete _0x55b802['name'];}_0x5cf2ee[_0x4e36('0x17')](_0x741f62)[_0x4e36('0x28')](_0x55b802);};}exports[_0x4e36('0x29')]=function(_0x5c69c5,_0x10759c){var _0x5e57ff={},_0x4b9d35={},_0xcc292={'count':0x0,'rows':[]};var _0x1ea31e=_[_0x4e36('0x2a')](db['CmHopperHistory']['rawAttributes'],function(_0x59e984){return{'name':_0x59e984[_0x4e36('0x2b')],'type':_0x59e984[_0x4e36('0x2c')][_0x4e36('0x2d')]};});_0x4b9d35[_0x4e36('0x2e')]=_[_0x4e36('0x2a')](_0x1ea31e,'name');_0x4b9d35['query']=_[_0x4e36('0x2f')](_0x5c69c5[_0x4e36('0x30')]);_0x4b9d35[_0x4e36('0x31')]=_[_0x4e36('0x32')](_0x4b9d35[_0x4e36('0x2e')],_0x4b9d35['query']);_0x5e57ff[_0x4e36('0x33')]=_[_0x4e36('0x32')](_0x4b9d35[_0x4e36('0x2e')],qs['fields'](_0x5c69c5[_0x4e36('0x30')][_0x4e36('0x34')]));_0x5e57ff['attributes']=_0x5e57ff['attributes']['length']?_0x5e57ff[_0x4e36('0x33')]:_0x4b9d35[_0x4e36('0x2e')];if(!_0x5c69c5['query'][_0x4e36('0x35')](_0x4e36('0x36'))){_0x5e57ff[_0x4e36('0x1c')]=qs[_0x4e36('0x1c')](_0x5c69c5[_0x4e36('0x30')][_0x4e36('0x1c')]);_0x5e57ff[_0x4e36('0x1b')]=qs[_0x4e36('0x1b')](_0x5c69c5[_0x4e36('0x30')][_0x4e36('0x1b')]);}_0x5e57ff[_0x4e36('0x37')]=qs['sort'](_0x5c69c5['query'][_0x4e36('0x38')]);_0x5e57ff[_0x4e36('0x39')]=qs[_0x4e36('0x31')](_[_0x4e36('0x3a')](_0x5c69c5['query'],_0x4b9d35[_0x4e36('0x31')]));if(_0x5c69c5[_0x4e36('0x30')][_0x4e36('0x3b')]){_0x5e57ff['where']=_[_0x4e36('0x3c')](_0x5e57ff[_0x4e36('0x39')],{'$or':_['map'](_0x1ea31e,function(_0x31083b){if(_0x31083b['type']!=='VIRTUAL'){var _0xe5cee3={};_0xe5cee3[_0x31083b[_0x4e36('0x27')]]={'$like':'%'+_0x5c69c5[_0x4e36('0x30')][_0x4e36('0x3b')]+'%'};return _0xe5cee3;}})});}_0x5e57ff=_[_0x4e36('0x3c')]({},_0x5e57ff,_0x5c69c5['options']);var _0x10e54c={'where':_0x5e57ff[_0x4e36('0x39')]};return db[_0x4e36('0x3d')][_0x4e36('0x1a')](_0x10e54c)['then'](function(_0x5c4324){_0xcc292[_0x4e36('0x1a')]=_0x5c4324;if(_0x5c69c5[_0x4e36('0x30')][_0x4e36('0x3e')]){_0x5e57ff[_0x4e36('0x3f')]=[{'all':!![]}];}return db[_0x4e36('0x3d')][_0x4e36('0x40')](_0x5e57ff);})[_0x4e36('0x23')](function(_0x359056){_0xcc292['rows']=_0x359056;return _0xcc292;})[_0x4e36('0x23')](respondWithFilteredResult(_0x10759c,_0x5e57ff))[_0x4e36('0x41')](handleError(_0x10759c,null));};exports[_0x4e36('0x42')]=function(_0x4daa3a,_0xf9dd2d){var _0x50c43c={'raw':!![],'where':{'id':_0x4daa3a[_0x4e36('0x43')]['id']}},_0x57251e={};_0x57251e[_0x4e36('0x2e')]=_[_0x4e36('0x2f')](db[_0x4e36('0x3d')][_0x4e36('0x44')]);_0x57251e[_0x4e36('0x30')]=_['keys'](_0x4daa3a[_0x4e36('0x30')]);_0x57251e[_0x4e36('0x31')]=_['intersection'](_0x57251e['model'],_0x57251e[_0x4e36('0x30')]);_0x50c43c[_0x4e36('0x33')]=_[_0x4e36('0x32')](_0x57251e[_0x4e36('0x2e')],qs[_0x4e36('0x34')](_0x4daa3a[_0x4e36('0x30')][_0x4e36('0x34')]));_0x50c43c[_0x4e36('0x33')]=_0x50c43c[_0x4e36('0x33')][_0x4e36('0x45')]?_0x50c43c[_0x4e36('0x33')]:_0x57251e[_0x4e36('0x2e')];if(_0x4daa3a[_0x4e36('0x30')][_0x4e36('0x3e')]){_0x50c43c[_0x4e36('0x3f')]=[{'all':!![]}];}_0x50c43c=_[_0x4e36('0x3c')]({},_0x50c43c,_0x4daa3a[_0x4e36('0x46')]);return db[_0x4e36('0x3d')][_0x4e36('0x47')](_0x50c43c)[_0x4e36('0x23')](handleEntityNotFound(_0xf9dd2d,null))['then'](respondWithResult(_0xf9dd2d,null))[_0x4e36('0x41')](handleError(_0xf9dd2d,null));};exports[_0x4e36('0x48')]=function(_0x5e1ba8,_0x801939){return db[_0x4e36('0x3d')]['create'](_0x5e1ba8[_0x4e36('0x49')],{})[_0x4e36('0x23')](respondWithResult(_0x801939,0xc9))['catch'](handleError(_0x801939,null));};exports[_0x4e36('0x4a')]=function(_0x243368,_0x561750){return db[_0x4e36('0x3d')]['describe']()['then'](respondWithResult(_0x561750,null))[_0x4e36('0x41')](handleError(_0x561750,null));};exports[_0x4e36('0x22')]=function(_0x2e3f87,_0x4f4cd9){if(_0x2e3f87[_0x4e36('0x49')]['uniqueid']){delete _0x2e3f87[_0x4e36('0x49')][_0x4e36('0x4b')];}return db[_0x4e36('0x3d')]['find']({'where':{'uniqueid':_0x2e3f87[_0x4e36('0x43')]['id']}})[_0x4e36('0x23')](handleEntityNotFound(_0x4f4cd9,null))['then'](saveUpdates(_0x2e3f87[_0x4e36('0x49')],null))[_0x4e36('0x23')](respondWithResult(_0x4f4cd9,null))[_0x4e36('0x41')](handleError(_0x4f4cd9,null));};