8196c5a701e0d09c035b8b381911aca2ee39c284
[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 _0x6b68=['ioredis','../../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','update','then','destroy','error','stack','name','send','index','map','CmHopperHistory','rawAttributes','fieldName','key','model','keys','query','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','filters','pick','where','type','VIRTUAL','merge','includeAll','include','findAll','rows','catch','show','params','options','create','body','describe','uniqueid','find','eml-format','rimraf','zip-dir','request-promise','bluebird','util','path','sox','to-csv','fs-extra','lodash','squel','querystring','papaparse'];(function(_0x58f44d,_0x491289){var _0x18216a=function(_0x3e7566){while(--_0x3e7566){_0x58f44d['push'](_0x58f44d['shift']());}};_0x18216a(++_0x491289);}(_0x6b68,0x90));var _0x86b6=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x6b68[_0x3dd15e];return _0x231fd0;};'use strict';var emlformat=require(_0x86b6('0x0'));var rimraf=require(_0x86b6('0x1'));var zipdir=require(_0x86b6('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x86b6('0x3'));var moment=require('moment');var BPromise=require(_0x86b6('0x4'));var Mustache=require('mustache');var util=require(_0x86b6('0x5'));var path=require(_0x86b6('0x6'));var sox=require(_0x86b6('0x7'));var csv=require(_0x86b6('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x86b6('0x9'));var _=require(_0x86b6('0xa'));var squel=require(_0x86b6('0xb'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x86b6('0x8'));var querystring=require(_0x86b6('0xc'));var Papa=require(_0x86b6('0xd'));var Redis=require(_0x86b6('0xe'));var authService=require(_0x86b6('0xf'));var qs=require(_0x86b6('0x10'));var as=require(_0x86b6('0x11'));var hardwareService=require(_0x86b6('0x12'));var logger=require(_0x86b6('0x13'))(_0x86b6('0x14'));var utils=require(_0x86b6('0x15'));var config=require(_0x86b6('0x16'));var licenseUtil=require(_0x86b6('0x17'));var db=require(_0x86b6('0x18'))['db'];function respondWithStatusCode(_0x4c2d38,_0x222f9b){_0x222f9b=_0x222f9b||0xcc;return function(_0x221c70){if(_0x221c70){return _0x4c2d38[_0x86b6('0x19')](_0x222f9b);}return _0x4c2d38[_0x86b6('0x1a')](_0x222f9b)[_0x86b6('0x1b')]();};}function respondWithResult(_0x4efb69,_0x28b39a){_0x28b39a=_0x28b39a||0xc8;return function(_0x2b96ed){if(_0x2b96ed){return _0x4efb69[_0x86b6('0x1a')](_0x28b39a)[_0x86b6('0x1c')](_0x2b96ed);}};}function respondWithFilteredResult(_0xe2296b,_0x1cc5d3){return function(_0x319588){if(_0x319588){var _0x2c910a=typeof _0x1cc5d3['offset']===_0x86b6('0x1d')&&typeof _0x1cc5d3[_0x86b6('0x1e')]===_0x86b6('0x1d');var _0x5087f6=_0x319588[_0x86b6('0x1f')];var _0x4d0fcc=_0x2c910a?0x0:_0x1cc5d3['offset'];var _0x345ebc=_0x2c910a?_0x319588[_0x86b6('0x1f')]:_0x1cc5d3[_0x86b6('0x20')]+_0x1cc5d3[_0x86b6('0x1e')];var _0x1646d6;if(_0x345ebc>=_0x5087f6){_0x345ebc=_0x5087f6;_0x1646d6=0xc8;}else{_0x1646d6=0xce;}_0xe2296b[_0x86b6('0x1a')](_0x1646d6);return _0xe2296b[_0x86b6('0x21')](_0x86b6('0x22'),_0x4d0fcc+'-'+_0x345ebc+'/'+_0x5087f6)[_0x86b6('0x1c')](_0x319588);}return null;};}function patchUpdates(_0x5c205f){return function(_0x25858e){try{jsonpatch[_0x86b6('0x23')](_0x25858e,_0x5c205f,!![]);}catch(_0x559037){return BPromise['reject'](_0x559037);}return _0x25858e['save']();};}function saveUpdates(_0x1a1f58,_0x5248d4){return function(_0x4f0690){if(_0x4f0690){return _0x4f0690[_0x86b6('0x24')](_0x1a1f58)[_0x86b6('0x25')](function(_0x4c0fe6){return _0x4c0fe6;});}return null;};}function removeEntity(_0x448721,_0x3b0c5d){return function(_0x6fa34a){if(_0x6fa34a){return _0x6fa34a[_0x86b6('0x26')]()[_0x86b6('0x25')](function(){_0x448721[_0x86b6('0x1a')](0xcc)[_0x86b6('0x1b')]();});}};}function handleEntityNotFound(_0xe92fbf,_0x54dc0e){return function(_0x480d26){if(!_0x480d26){_0xe92fbf[_0x86b6('0x19')](0x194);}return _0x480d26;};}function handleError(_0x465626,_0xb4c926){_0xb4c926=_0xb4c926||0x1f4;return function(_0x5d5d3e){logger[_0x86b6('0x27')](_0x5d5d3e[_0x86b6('0x28')]);if(_0x5d5d3e[_0x86b6('0x29')]){delete _0x5d5d3e['name'];}_0x465626[_0x86b6('0x1a')](_0xb4c926)[_0x86b6('0x2a')](_0x5d5d3e);};}exports[_0x86b6('0x2b')]=function(_0x16396b,_0x3f5bb5){var _0x3fedbd={},_0x3b4b1d={},_0x10480f={'count':0x0,'rows':[]};var _0x454795=_[_0x86b6('0x2c')](db[_0x86b6('0x2d')][_0x86b6('0x2e')],function(_0x2cbb5f){return{'name':_0x2cbb5f[_0x86b6('0x2f')],'type':_0x2cbb5f['type'][_0x86b6('0x30')]};});_0x3b4b1d[_0x86b6('0x31')]=_[_0x86b6('0x2c')](_0x454795,_0x86b6('0x29'));_0x3b4b1d['query']=_[_0x86b6('0x32')](_0x16396b[_0x86b6('0x33')]);_0x3b4b1d['filters']=_[_0x86b6('0x34')](_0x3b4b1d['model'],_0x3b4b1d[_0x86b6('0x33')]);_0x3fedbd['attributes']=_[_0x86b6('0x34')](_0x3b4b1d[_0x86b6('0x31')],qs[_0x86b6('0x35')](_0x16396b['query'][_0x86b6('0x35')]));_0x3fedbd['attributes']=_0x3fedbd[_0x86b6('0x36')][_0x86b6('0x37')]?_0x3fedbd[_0x86b6('0x36')]:_0x3b4b1d['model'];if(!_0x16396b[_0x86b6('0x33')][_0x86b6('0x38')](_0x86b6('0x39'))){_0x3fedbd[_0x86b6('0x1e')]=qs[_0x86b6('0x1e')](_0x16396b[_0x86b6('0x33')]['limit']);_0x3fedbd[_0x86b6('0x20')]=qs['offset'](_0x16396b['query'][_0x86b6('0x20')]);}_0x3fedbd[_0x86b6('0x3a')]=qs[_0x86b6('0x3b')](_0x16396b[_0x86b6('0x33')]['sort']);_0x3fedbd['where']=qs[_0x86b6('0x3c')](_[_0x86b6('0x3d')](_0x16396b[_0x86b6('0x33')],_0x3b4b1d[_0x86b6('0x3c')]),_0x454795);if(_0x16396b[_0x86b6('0x33')]['filter']){_0x3fedbd[_0x86b6('0x3e')]=_['merge'](_0x3fedbd[_0x86b6('0x3e')],{'$or':_[_0x86b6('0x2c')](_0x454795,function(_0x79f9d6){if(_0x79f9d6[_0x86b6('0x3f')]!==_0x86b6('0x40')){var _0x1517a8={};_0x1517a8[_0x79f9d6[_0x86b6('0x29')]]={'$like':'%'+_0x16396b['query']['filter']+'%'};return _0x1517a8;}})});}_0x3fedbd=_[_0x86b6('0x41')]({},_0x3fedbd,_0x16396b['options']);var _0x3dc958={'where':_0x3fedbd[_0x86b6('0x3e')]};return db[_0x86b6('0x2d')]['count'](_0x3dc958)[_0x86b6('0x25')](function(_0x573fc7){_0x10480f[_0x86b6('0x1f')]=_0x573fc7;if(_0x16396b['query'][_0x86b6('0x42')]){_0x3fedbd[_0x86b6('0x43')]=[{'all':!![]}];}return db[_0x86b6('0x2d')][_0x86b6('0x44')](_0x3fedbd);})[_0x86b6('0x25')](function(_0x273ca5){_0x10480f[_0x86b6('0x45')]=_0x273ca5;return _0x10480f;})[_0x86b6('0x25')](respondWithFilteredResult(_0x3f5bb5,_0x3fedbd))[_0x86b6('0x46')](handleError(_0x3f5bb5,null));};exports[_0x86b6('0x47')]=function(_0x88fcbf,_0x3d6f94){var _0x50dae9={'raw':!![],'where':{'id':_0x88fcbf[_0x86b6('0x48')]['id']}},_0xeaabdf={};_0xeaabdf[_0x86b6('0x31')]=_[_0x86b6('0x32')](db[_0x86b6('0x2d')][_0x86b6('0x2e')]);_0xeaabdf[_0x86b6('0x33')]=_[_0x86b6('0x32')](_0x88fcbf[_0x86b6('0x33')]);_0xeaabdf[_0x86b6('0x3c')]=_[_0x86b6('0x34')](_0xeaabdf['model'],_0xeaabdf[_0x86b6('0x33')]);_0x50dae9[_0x86b6('0x36')]=_[_0x86b6('0x34')](_0xeaabdf[_0x86b6('0x31')],qs[_0x86b6('0x35')](_0x88fcbf[_0x86b6('0x33')][_0x86b6('0x35')]));_0x50dae9['attributes']=_0x50dae9[_0x86b6('0x36')][_0x86b6('0x37')]?_0x50dae9[_0x86b6('0x36')]:_0xeaabdf['model'];if(_0x88fcbf[_0x86b6('0x33')]['includeAll']){_0x50dae9['include']=[{'all':!![]}];}_0x50dae9=_[_0x86b6('0x41')]({},_0x50dae9,_0x88fcbf[_0x86b6('0x49')]);return db[_0x86b6('0x2d')]['find'](_0x50dae9)[_0x86b6('0x25')](handleEntityNotFound(_0x3d6f94,null))[_0x86b6('0x25')](respondWithResult(_0x3d6f94,null))[_0x86b6('0x46')](handleError(_0x3d6f94,null));};exports['create']=function(_0x175f91,_0x2339e4){return db['CmHopperHistory'][_0x86b6('0x4a')](_0x175f91[_0x86b6('0x4b')],{})[_0x86b6('0x25')](respondWithResult(_0x2339e4,0xc9))[_0x86b6('0x46')](handleError(_0x2339e4,null));};exports[_0x86b6('0x4c')]=function(_0x529849,_0x336237){return db[_0x86b6('0x2d')][_0x86b6('0x4c')]()[_0x86b6('0x25')](respondWithResult(_0x336237,null))[_0x86b6('0x46')](handleError(_0x336237,null));};exports[_0x86b6('0x24')]=function(_0x2d459d,_0x22ccda){if(_0x2d459d['body']['uniqueid']){delete _0x2d459d[_0x86b6('0x4b')][_0x86b6('0x4d')];}return db[_0x86b6('0x2d')][_0x86b6('0x4e')]({'where':{'uniqueid':_0x2d459d[_0x86b6('0x48')]['id']}})['then'](handleEntityNotFound(_0x22ccda,null))['then'](saveUpdates(_0x2d459d[_0x86b6('0x4b')],null))[_0x86b6('0x25')](respondWithResult(_0x22ccda,null))[_0x86b6('0x46')](handleError(_0x22ccda,null));};