Built motion from commit 753c950e.|2.5.42
[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 _0xe23b=['name','send','index','ChatTransferReport','rawAttributes','fieldName','key','model','map','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','catch','show','includeAll','find','create','body','params','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','sendStatus','json','offset','undefined','limit','count','status','set','Content-Range','apply','reject','save','update','destroy','then','end','stack'];(function(_0x1d6304,_0x36e3c9){var _0x283901=function(_0x3d0e4f){while(--_0x3d0e4f){_0x1d6304['push'](_0x1d6304['shift']());}};_0x283901(++_0x36e3c9);}(_0xe23b,0x1e4));var _0xbe23=function(_0x2c2d37,_0x59a1cf){_0x2c2d37=_0x2c2d37-0x0;var _0x2c8672=_0xe23b[_0x2c2d37];return _0x2c8672;};'use strict';var emlformat=require(_0xbe23('0x0'));var rimraf=require(_0xbe23('0x1'));var zipdir=require(_0xbe23('0x2'));var jsonpatch=require(_0xbe23('0x3'));var rp=require(_0xbe23('0x4'));var moment=require(_0xbe23('0x5'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require('util');var path=require(_0xbe23('0x6'));var sox=require(_0xbe23('0x7'));var csv=require(_0xbe23('0x8'));var ejs=require(_0xbe23('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xbe23('0xa'));var squel=require(_0xbe23('0xb'));var crypto=require(_0xbe23('0xc'));var jsforce=require(_0xbe23('0xd'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0xbe23('0xe'));var Papa=require(_0xbe23('0xf'));var Redis=require('ioredis');var authService=require(_0xbe23('0x10'));var qs=require(_0xbe23('0x11'));var as=require(_0xbe23('0x12'));var hardwareService=require(_0xbe23('0x13'));var logger=require(_0xbe23('0x14'))('api');var utils=require(_0xbe23('0x15'));var config=require(_0xbe23('0x16'));var licenseUtil=require(_0xbe23('0x17'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x2657fd,_0x1b62e2){_0x1b62e2=_0x1b62e2||0xcc;return function(_0x22ee29){if(_0x22ee29){return _0x2657fd[_0xbe23('0x18')](_0x1b62e2);}return _0x2657fd['status'](_0x1b62e2)['end']();};}function respondWithResult(_0x239845,_0x373fb8){_0x373fb8=_0x373fb8||0xc8;return function(_0x15560c){if(_0x15560c){return _0x239845['status'](_0x373fb8)[_0xbe23('0x19')](_0x15560c);}};}function respondWithFilteredResult(_0x104eca,_0x16bb1a){return function(_0x596d71){if(_0x596d71){var _0x587e7a=typeof _0x16bb1a[_0xbe23('0x1a')]===_0xbe23('0x1b')&&typeof _0x16bb1a[_0xbe23('0x1c')]==='undefined';var _0x9c4d0a=_0x596d71[_0xbe23('0x1d')];var _0x1ef8bc=_0x587e7a?0x0:_0x16bb1a[_0xbe23('0x1a')];var _0x1b14d6=_0x587e7a?_0x596d71[_0xbe23('0x1d')]:_0x16bb1a[_0xbe23('0x1a')]+_0x16bb1a[_0xbe23('0x1c')];var _0x1ae129;if(_0x1b14d6>=_0x9c4d0a){_0x1b14d6=_0x9c4d0a;_0x1ae129=0xc8;}else{_0x1ae129=0xce;}_0x104eca[_0xbe23('0x1e')](_0x1ae129);return _0x104eca[_0xbe23('0x1f')](_0xbe23('0x20'),_0x1ef8bc+'-'+_0x1b14d6+'/'+_0x9c4d0a)[_0xbe23('0x19')](_0x596d71);}return null;};}function patchUpdates(_0x400446){return function(_0x23713f){try{jsonpatch[_0xbe23('0x21')](_0x23713f,_0x400446,!![]);}catch(_0x5575af){return BPromise[_0xbe23('0x22')](_0x5575af);}return _0x23713f[_0xbe23('0x23')]();};}function saveUpdates(_0x94e85b,_0x2c027f){return function(_0x240790){if(_0x240790){return _0x240790[_0xbe23('0x24')](_0x94e85b)['then'](function(_0x2b30a2){return _0x2b30a2;});}return null;};}function removeEntity(_0x229259,_0x4044a5){return function(_0x3e0bae){if(_0x3e0bae){return _0x3e0bae[_0xbe23('0x25')]()[_0xbe23('0x26')](function(){_0x229259[_0xbe23('0x1e')](0xcc)[_0xbe23('0x27')]();});}};}function handleEntityNotFound(_0x4ff84d,_0x56a3ba){return function(_0x3e7095){if(!_0x3e7095){_0x4ff84d[_0xbe23('0x18')](0x194);}return _0x3e7095;};}function handleError(_0x5b7c44,_0x1ff95a){_0x1ff95a=_0x1ff95a||0x1f4;return function(_0x2ca43a){logger['error'](_0x2ca43a[_0xbe23('0x28')]);if(_0x2ca43a[_0xbe23('0x29')]){delete _0x2ca43a[_0xbe23('0x29')];}_0x5b7c44[_0xbe23('0x1e')](_0x1ff95a)[_0xbe23('0x2a')](_0x2ca43a);};}exports[_0xbe23('0x2b')]=function(_0x4e33f9,_0x167ece){var _0x1005ed={},_0x22f546={},_0x3751e9={'count':0x0,'rows':[]};var _0x1f3148=_['map'](db[_0xbe23('0x2c')][_0xbe23('0x2d')],function(_0x496c54){return{'name':_0x496c54[_0xbe23('0x2e')],'type':_0x496c54['type'][_0xbe23('0x2f')]};});_0x22f546[_0xbe23('0x30')]=_[_0xbe23('0x31')](_0x1f3148,_0xbe23('0x29'));_0x22f546[_0xbe23('0x32')]=_[_0xbe23('0x33')](_0x4e33f9[_0xbe23('0x32')]);_0x22f546[_0xbe23('0x34')]=_[_0xbe23('0x35')](_0x22f546[_0xbe23('0x30')],_0x22f546[_0xbe23('0x32')]);_0x1005ed['attributes']=_[_0xbe23('0x35')](_0x22f546[_0xbe23('0x30')],qs[_0xbe23('0x36')](_0x4e33f9[_0xbe23('0x32')][_0xbe23('0x36')]));_0x1005ed[_0xbe23('0x37')]=_0x1005ed[_0xbe23('0x37')][_0xbe23('0x38')]?_0x1005ed[_0xbe23('0x37')]:_0x22f546[_0xbe23('0x30')];if(!_0x4e33f9[_0xbe23('0x32')][_0xbe23('0x39')](_0xbe23('0x3a'))){_0x1005ed[_0xbe23('0x1c')]=qs['limit'](_0x4e33f9[_0xbe23('0x32')]['limit']);_0x1005ed[_0xbe23('0x1a')]=qs[_0xbe23('0x1a')](_0x4e33f9[_0xbe23('0x32')][_0xbe23('0x1a')]);}_0x1005ed[_0xbe23('0x3b')]=qs['sort'](_0x4e33f9[_0xbe23('0x32')][_0xbe23('0x3c')]);_0x1005ed[_0xbe23('0x3d')]=qs[_0xbe23('0x34')](_[_0xbe23('0x3e')](_0x4e33f9[_0xbe23('0x32')],_0x22f546[_0xbe23('0x34')]),_0x1f3148);if(_0x4e33f9[_0xbe23('0x32')][_0xbe23('0x3f')]){_0x1005ed[_0xbe23('0x3d')]=_[_0xbe23('0x40')](_0x1005ed['where'],{'$or':_['map'](_0x1f3148,function(_0x29cc17){if(_0x29cc17['type']!==_0xbe23('0x41')){var _0x59c75e={};_0x59c75e[_0x29cc17[_0xbe23('0x29')]]={'$like':'%'+_0x4e33f9[_0xbe23('0x32')][_0xbe23('0x3f')]+'%'};return _0x59c75e;}})});}_0x1005ed=_[_0xbe23('0x40')]({},_0x1005ed,_0x4e33f9[_0xbe23('0x42')]);var _0x2ed554={'where':_0x1005ed[_0xbe23('0x3d')]};return db[_0xbe23('0x2c')][_0xbe23('0x1d')](_0x2ed554)[_0xbe23('0x26')](function(_0x120af8){_0x3751e9[_0xbe23('0x1d')]=_0x120af8;if(_0x4e33f9['query']['includeAll']){_0x1005ed['include']=[{'all':!![]}];}return db[_0xbe23('0x2c')]['findAll'](_0x1005ed);})[_0xbe23('0x26')](function(_0x4cbba7){_0x3751e9['rows']=_0x4cbba7;return _0x3751e9;})[_0xbe23('0x26')](respondWithFilteredResult(_0x167ece,_0x1005ed))[_0xbe23('0x43')](handleError(_0x167ece,null));};exports[_0xbe23('0x44')]=function(_0x50be7d,_0x4faecd){var _0x323305={'raw':!![],'where':{'id':_0x50be7d['params']['id']}},_0x30c2aa={};_0x30c2aa[_0xbe23('0x30')]=_[_0xbe23('0x33')](db['ChatTransferReport'][_0xbe23('0x2d')]);_0x30c2aa[_0xbe23('0x32')]=_[_0xbe23('0x33')](_0x50be7d[_0xbe23('0x32')]);_0x30c2aa['filters']=_['intersection'](_0x30c2aa[_0xbe23('0x30')],_0x30c2aa['query']);_0x323305[_0xbe23('0x37')]=_[_0xbe23('0x35')](_0x30c2aa[_0xbe23('0x30')],qs['fields'](_0x50be7d['query'][_0xbe23('0x36')]));_0x323305[_0xbe23('0x37')]=_0x323305[_0xbe23('0x37')][_0xbe23('0x38')]?_0x323305[_0xbe23('0x37')]:_0x30c2aa['model'];if(_0x50be7d[_0xbe23('0x32')][_0xbe23('0x45')]){_0x323305['include']=[{'all':!![]}];}_0x323305=_[_0xbe23('0x40')]({},_0x323305,_0x50be7d[_0xbe23('0x42')]);return db[_0xbe23('0x2c')][_0xbe23('0x46')](_0x323305)[_0xbe23('0x26')](handleEntityNotFound(_0x4faecd,null))['then'](respondWithResult(_0x4faecd,null))['catch'](handleError(_0x4faecd,null));};exports['create']=function(_0x13115a,_0x10f9ff){return db[_0xbe23('0x2c')][_0xbe23('0x47')](_0x13115a[_0xbe23('0x48')],{})[_0xbe23('0x26')](respondWithResult(_0x10f9ff,0xc9))[_0xbe23('0x43')](handleError(_0x10f9ff,null));};exports['update']=function(_0x53795f,_0x502ee4){if(_0x53795f[_0xbe23('0x48')]['id']){delete _0x53795f[_0xbe23('0x48')]['id'];}return db[_0xbe23('0x2c')]['find']({'where':{'id':_0x53795f[_0xbe23('0x49')]['id']}})[_0xbe23('0x26')](handleEntityNotFound(_0x502ee4,null))[_0xbe23('0x26')](saveUpdates(_0x53795f[_0xbe23('0x48')],null))['then'](respondWithResult(_0x502ee4,null))[_0xbe23('0x43')](handleError(_0x502ee4,null));};exports[_0xbe23('0x25')]=function(_0x495ca6,_0x41e5f8){return db[_0xbe23('0x2c')]['find']({'where':{'id':_0x495ca6[_0xbe23('0x49')]['id']}})['then'](handleEntityNotFound(_0x41e5f8,null))['then'](removeEntity(_0x41e5f8,null))['catch'](handleError(_0x41e5f8,null));};exports[_0xbe23('0x4a')]=function(_0x46d9e4,_0x456ae6){return db['ChatTransferReport'][_0xbe23('0x4a')]()[_0xbe23('0x26')](respondWithResult(_0x456ae6,null))['catch'](handleError(_0x456ae6,null));};