1a75b19c79ce0b131534d577b7acf1ff8f426958
[motion2.git] / server / api / chatTransferReport / chatTransferReport.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 _0xcb04=['../../mysqldb','end','status','json','offset','limit','Content-Range','reject','save','update','destroy','then','sendStatus','stack','name','index','map','ChatTransferReport','rawAttributes','fieldName','key','model','query','filters','intersection','attributes','fields','length','nolimit','order','sort','where','pick','filter','merge','type','VIRTUAL','options','count','include','findAll','catch','show','keys','includeAll','find','create','body','params','describe','html-pdf','eml-format','fast-json-patch','request-promise','moment','util','path','sox','ejs','lodash','squel','crypto','jsforce','desk.js','to-csv','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment'];(function(_0x24371e,_0x43c47b){var _0x581a8e=function(_0x488019){while(--_0x488019){_0x24371e['push'](_0x24371e['shift']());}};_0x581a8e(++_0x43c47b);}(_0xcb04,0x10a));var _0x4cb0=function(_0x14add3,_0x13ce8d){_0x14add3=_0x14add3-0x0;var _0x4a174f=_0xcb04[_0x14add3];return _0x4a174f;};'use strict';var pdf=require(_0x4cb0('0x0'));var emlformat=require(_0x4cb0('0x1'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0x4cb0('0x2'));var rp=require(_0x4cb0('0x3'));var moment=require(_0x4cb0('0x4'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x4cb0('0x5'));var path=require(_0x4cb0('0x6'));var sox=require(_0x4cb0('0x7'));var csv=require('to-csv');var ejs=require(_0x4cb0('0x8'));var fs=require('fs');var _=require(_0x4cb0('0x9'));var squel=require(_0x4cb0('0xa'));var crypto=require(_0x4cb0('0xb'));var jsforce=require(_0x4cb0('0xc'));var deskjs=require(_0x4cb0('0xd'));var toCsv=require(_0x4cb0('0xe'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x4cb0('0xf'));var authService=require(_0x4cb0('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0x4cb0('0x11'));var hardwareService=require(_0x4cb0('0x12'));var logger=require('../../config/logger')(_0x4cb0('0x13'));var utils=require(_0x4cb0('0x14'));var config=require(_0x4cb0('0x15'));var licenseUtil=require('../../config/license/util');var db=require(_0x4cb0('0x16'))['db'];function respondWithStatusCode(_0x3fef62,_0x4ca8f6){_0x4ca8f6=_0x4ca8f6||0xcc;return function(_0x3cfbb5){if(_0x3cfbb5){return _0x3fef62['sendStatus'](_0x4ca8f6);}return _0x3fef62['status'](_0x4ca8f6)[_0x4cb0('0x17')]();};}function respondWithResult(_0x4f93a7,_0x2702b2){_0x2702b2=_0x2702b2||0xc8;return function(_0x1ae23d){if(_0x1ae23d){return _0x4f93a7[_0x4cb0('0x18')](_0x2702b2)[_0x4cb0('0x19')](_0x1ae23d);}};}function respondWithFilteredResult(_0x276980,_0x4e82e4){return function(_0x1d50ae){if(_0x1d50ae){var _0x47202d=_0x1d50ae['count'],_0x4ae82b=_0x4e82e4[_0x4cb0('0x1a')],_0x55627e=_0x4e82e4[_0x4cb0('0x1a')]+_0x4e82e4[_0x4cb0('0x1b')],_0x5bc488;if(_0x55627e>=_0x47202d){_0x55627e=_0x47202d;_0x5bc488=0xc8;}else{_0x5bc488=0xce;}_0x276980[_0x4cb0('0x18')](_0x5bc488);return _0x276980['set'](_0x4cb0('0x1c'),_0x4ae82b+'-'+_0x55627e+'/'+_0x47202d)[_0x4cb0('0x19')](_0x1d50ae);}return null;};}function patchUpdates(_0x37ede4){return function(_0x149cef){try{jsonpatch['apply'](_0x149cef,_0x37ede4,!![]);}catch(_0x430c3a){return BPromise[_0x4cb0('0x1d')](_0x430c3a);}return _0x149cef[_0x4cb0('0x1e')]();};}function saveUpdates(_0x3985d5,_0x5611b5){return function(_0x414b2d){if(_0x414b2d){return _0x414b2d[_0x4cb0('0x1f')](_0x3985d5)['then'](function(_0x93db54){return _0x93db54;});}return null;};}function removeEntity(_0x3b8452,_0x4c49d3){return function(_0x1b3dbb){if(_0x1b3dbb){return _0x1b3dbb[_0x4cb0('0x20')]()[_0x4cb0('0x21')](function(){_0x3b8452[_0x4cb0('0x18')](0xcc)['end']();});}};}function handleEntityNotFound(_0x1b04a6,_0x2debd7){return function(_0x5807ed){if(!_0x5807ed){_0x1b04a6[_0x4cb0('0x22')](0x194);}return _0x5807ed;};}function handleError(_0x2861fa,_0x5a5b0d){_0x5a5b0d=_0x5a5b0d||0x1f4;return function(_0x5c1918){logger['error'](_0x5c1918[_0x4cb0('0x23')]);if(_0x5c1918[_0x4cb0('0x24')]){delete _0x5c1918[_0x4cb0('0x24')];}_0x2861fa[_0x4cb0('0x18')](_0x5a5b0d)['send'](_0x5c1918);};}exports[_0x4cb0('0x25')]=function(_0x13f6f4,_0x13a1c3){var _0x3b1d7f={},_0x33c4c0={},_0x276639={'count':0x0,'rows':[]};var _0x2ba279=_[_0x4cb0('0x26')](db[_0x4cb0('0x27')][_0x4cb0('0x28')],function(_0x32f3bc){return{'name':_0x32f3bc[_0x4cb0('0x29')],'type':_0x32f3bc['type'][_0x4cb0('0x2a')]};});_0x33c4c0[_0x4cb0('0x2b')]=_[_0x4cb0('0x26')](_0x2ba279,_0x4cb0('0x24'));_0x33c4c0[_0x4cb0('0x2c')]=_['keys'](_0x13f6f4[_0x4cb0('0x2c')]);_0x33c4c0[_0x4cb0('0x2d')]=_[_0x4cb0('0x2e')](_0x33c4c0['model'],_0x33c4c0[_0x4cb0('0x2c')]);_0x3b1d7f[_0x4cb0('0x2f')]=_[_0x4cb0('0x2e')](_0x33c4c0[_0x4cb0('0x2b')],qs[_0x4cb0('0x30')](_0x13f6f4[_0x4cb0('0x2c')]['fields']));_0x3b1d7f[_0x4cb0('0x2f')]=_0x3b1d7f[_0x4cb0('0x2f')][_0x4cb0('0x31')]?_0x3b1d7f[_0x4cb0('0x2f')]:_0x33c4c0[_0x4cb0('0x2b')];if(!_0x13f6f4['query']['hasOwnProperty'](_0x4cb0('0x32'))){_0x3b1d7f['limit']=qs[_0x4cb0('0x1b')](_0x13f6f4[_0x4cb0('0x2c')][_0x4cb0('0x1b')]);_0x3b1d7f[_0x4cb0('0x1a')]=qs[_0x4cb0('0x1a')](_0x13f6f4[_0x4cb0('0x2c')][_0x4cb0('0x1a')]);}_0x3b1d7f[_0x4cb0('0x33')]=qs[_0x4cb0('0x34')](_0x13f6f4[_0x4cb0('0x2c')][_0x4cb0('0x34')]);_0x3b1d7f[_0x4cb0('0x35')]=qs[_0x4cb0('0x2d')](_[_0x4cb0('0x36')](_0x13f6f4['query'],_0x33c4c0[_0x4cb0('0x2d')]),_0x2ba279);if(_0x13f6f4[_0x4cb0('0x2c')][_0x4cb0('0x37')]){_0x3b1d7f[_0x4cb0('0x35')]=_[_0x4cb0('0x38')](_0x3b1d7f[_0x4cb0('0x35')],{'$or':_[_0x4cb0('0x26')](_0x2ba279,function(_0x5bd393){if(_0x5bd393[_0x4cb0('0x39')]!==_0x4cb0('0x3a')){var _0x238f0f={};_0x238f0f[_0x5bd393['name']]={'$like':'%'+_0x13f6f4[_0x4cb0('0x2c')][_0x4cb0('0x37')]+'%'};return _0x238f0f;}})});}_0x3b1d7f=_[_0x4cb0('0x38')]({},_0x3b1d7f,_0x13f6f4[_0x4cb0('0x3b')]);var _0x115cad={'where':_0x3b1d7f[_0x4cb0('0x35')]};return db[_0x4cb0('0x27')][_0x4cb0('0x3c')](_0x115cad)[_0x4cb0('0x21')](function(_0x17a67b){_0x276639['count']=_0x17a67b;if(_0x13f6f4['query']['includeAll']){_0x3b1d7f[_0x4cb0('0x3d')]=[{'all':!![]}];}return db['ChatTransferReport'][_0x4cb0('0x3e')](_0x3b1d7f);})['then'](function(_0x4e4f94){_0x276639['rows']=_0x4e4f94;return _0x276639;})[_0x4cb0('0x21')](respondWithFilteredResult(_0x13a1c3,_0x3b1d7f))[_0x4cb0('0x3f')](handleError(_0x13a1c3,null));};exports[_0x4cb0('0x40')]=function(_0xa67d,_0x21df99){var _0x21d25b={'raw':!![],'where':{'id':_0xa67d['params']['id']}},_0x1b5b79={};_0x1b5b79[_0x4cb0('0x2b')]=_[_0x4cb0('0x41')](db[_0x4cb0('0x27')][_0x4cb0('0x28')]);_0x1b5b79[_0x4cb0('0x2c')]=_[_0x4cb0('0x41')](_0xa67d['query']);_0x1b5b79[_0x4cb0('0x2d')]=_[_0x4cb0('0x2e')](_0x1b5b79[_0x4cb0('0x2b')],_0x1b5b79[_0x4cb0('0x2c')]);_0x21d25b[_0x4cb0('0x2f')]=_[_0x4cb0('0x2e')](_0x1b5b79[_0x4cb0('0x2b')],qs[_0x4cb0('0x30')](_0xa67d[_0x4cb0('0x2c')][_0x4cb0('0x30')]));_0x21d25b[_0x4cb0('0x2f')]=_0x21d25b[_0x4cb0('0x2f')]['length']?_0x21d25b[_0x4cb0('0x2f')]:_0x1b5b79['model'];if(_0xa67d[_0x4cb0('0x2c')][_0x4cb0('0x42')]){_0x21d25b['include']=[{'all':!![]}];}_0x21d25b=_[_0x4cb0('0x38')]({},_0x21d25b,_0xa67d[_0x4cb0('0x3b')]);return db[_0x4cb0('0x27')][_0x4cb0('0x43')](_0x21d25b)[_0x4cb0('0x21')](handleEntityNotFound(_0x21df99,null))[_0x4cb0('0x21')](respondWithResult(_0x21df99,null))[_0x4cb0('0x3f')](handleError(_0x21df99,null));};exports['create']=function(_0x5e1cdf,_0x452566){return db[_0x4cb0('0x27')][_0x4cb0('0x44')](_0x5e1cdf[_0x4cb0('0x45')],{})[_0x4cb0('0x21')](respondWithResult(_0x452566,0xc9))['catch'](handleError(_0x452566,null));};exports['update']=function(_0x45a31e,_0x3bdf10){if(_0x45a31e[_0x4cb0('0x45')]['id']){delete _0x45a31e['body']['id'];}return db[_0x4cb0('0x27')][_0x4cb0('0x43')]({'where':{'id':_0x45a31e[_0x4cb0('0x46')]['id']}})[_0x4cb0('0x21')](handleEntityNotFound(_0x3bdf10,null))['then'](saveUpdates(_0x45a31e[_0x4cb0('0x45')],null))[_0x4cb0('0x21')](respondWithResult(_0x3bdf10,null))[_0x4cb0('0x3f')](handleError(_0x3bdf10,null));};exports[_0x4cb0('0x20')]=function(_0x4b08f1,_0x545666){return db[_0x4cb0('0x27')][_0x4cb0('0x43')]({'where':{'id':_0x4b08f1[_0x4cb0('0x46')]['id']}})[_0x4cb0('0x21')](handleEntityNotFound(_0x545666,null))[_0x4cb0('0x21')](removeEntity(_0x545666,null))[_0x4cb0('0x3f')](handleError(_0x545666,null));};exports[_0x4cb0('0x47')]=function(_0x42b2c7,_0x57bfa9){return db['ChatTransferReport'][_0x4cb0('0x47')]()[_0x4cb0('0x21')](respondWithResult(_0x57bfa9,null))[_0x4cb0('0x3f')](handleError(_0x57bfa9,null));};