Built motion from commit ddca4d0d.|2.5.47
[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 _0xf6b4=['fs-extra','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','limit','undefined','count','offset','set','Content-Range','reject','save','then','destroy','end','stack','name','index','map','ChatTransferReport','rawAttributes','type','key','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','pick','filter','where','merge','VIRTUAL','options','includeAll','findAll','rows','catch','show','params','keys','find','create','body','update','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs'];(function(_0x29ee40,_0x54671a){var _0x4a5faf=function(_0x3a2f11){while(--_0x3a2f11){_0x29ee40['push'](_0x29ee40['shift']());}};_0x4a5faf(++_0x54671a);}(_0xf6b4,0x1b6));var _0x4f6b=function(_0x597646,_0x3b7fa5){_0x597646=_0x597646-0x0;var _0x3d2ee8=_0xf6b4[_0x597646];return _0x3d2ee8;};'use strict';var emlformat=require(_0x4f6b('0x0'));var rimraf=require(_0x4f6b('0x1'));var zipdir=require(_0x4f6b('0x2'));var jsonpatch=require(_0x4f6b('0x3'));var rp=require(_0x4f6b('0x4'));var moment=require(_0x4f6b('0x5'));var BPromise=require(_0x4f6b('0x6'));var Mustache=require(_0x4f6b('0x7'));var util=require(_0x4f6b('0x8'));var path=require('path');var sox=require(_0x4f6b('0x9'));var csv=require(_0x4f6b('0xa'));var ejs=require(_0x4f6b('0xb'));var fs=require('fs');var fs_extra=require(_0x4f6b('0xc'));var _=require('lodash');var squel=require(_0x4f6b('0xd'));var crypto=require('crypto');var jsforce=require(_0x4f6b('0xe'));var deskjs=require(_0x4f6b('0xf'));var toCsv=require('to-csv');var querystring=require(_0x4f6b('0x10'));var Papa=require(_0x4f6b('0x11'));var Redis=require(_0x4f6b('0x12'));var authService=require(_0x4f6b('0x13'));var qs=require(_0x4f6b('0x14'));var as=require(_0x4f6b('0x15'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x4f6b('0x16'));var utils=require(_0x4f6b('0x17'));var config=require(_0x4f6b('0x18'));var licenseUtil=require(_0x4f6b('0x19'));var db=require(_0x4f6b('0x1a'))['db'];function respondWithStatusCode(_0x11f4a1,_0x4917f4){_0x4917f4=_0x4917f4||0xcc;return function(_0x358b36){if(_0x358b36){return _0x11f4a1['sendStatus'](_0x4917f4);}return _0x11f4a1[_0x4f6b('0x1b')](_0x4917f4)['end']();};}function respondWithResult(_0x58b19b,_0x30e3a9){_0x30e3a9=_0x30e3a9||0xc8;return function(_0xfcddca){if(_0xfcddca){return _0x58b19b[_0x4f6b('0x1b')](_0x30e3a9)['json'](_0xfcddca);}};}function respondWithFilteredResult(_0x4776e0,_0x49c6d2){return function(_0xa0843e){if(_0xa0843e){var _0x59be5b=typeof _0x49c6d2['offset']==='undefined'&&typeof _0x49c6d2[_0x4f6b('0x1c')]===_0x4f6b('0x1d');var _0xb19188=_0xa0843e[_0x4f6b('0x1e')];var _0x3bbd6b=_0x59be5b?0x0:_0x49c6d2[_0x4f6b('0x1f')];var _0x2393ac=_0x59be5b?_0xa0843e[_0x4f6b('0x1e')]:_0x49c6d2[_0x4f6b('0x1f')]+_0x49c6d2[_0x4f6b('0x1c')];var _0x173ed7;if(_0x2393ac>=_0xb19188){_0x2393ac=_0xb19188;_0x173ed7=0xc8;}else{_0x173ed7=0xce;}_0x4776e0[_0x4f6b('0x1b')](_0x173ed7);return _0x4776e0[_0x4f6b('0x20')](_0x4f6b('0x21'),_0x3bbd6b+'-'+_0x2393ac+'/'+_0xb19188)['json'](_0xa0843e);}return null;};}function patchUpdates(_0x1410a2){return function(_0x37015e){try{jsonpatch['apply'](_0x37015e,_0x1410a2,!![]);}catch(_0x247204){return BPromise[_0x4f6b('0x22')](_0x247204);}return _0x37015e[_0x4f6b('0x23')]();};}function saveUpdates(_0x27debc,_0x2a7dfb){return function(_0x304afc){if(_0x304afc){return _0x304afc['update'](_0x27debc)[_0x4f6b('0x24')](function(_0x5e99bf){return _0x5e99bf;});}return null;};}function removeEntity(_0x354540,_0x216fc9){return function(_0x2702c3){if(_0x2702c3){return _0x2702c3[_0x4f6b('0x25')]()[_0x4f6b('0x24')](function(){_0x354540[_0x4f6b('0x1b')](0xcc)[_0x4f6b('0x26')]();});}};}function handleEntityNotFound(_0x5dc35f,_0x31a101){return function(_0xc9b717){if(!_0xc9b717){_0x5dc35f['sendStatus'](0x194);}return _0xc9b717;};}function handleError(_0x266765,_0x374ff7){_0x374ff7=_0x374ff7||0x1f4;return function(_0x456294){logger['error'](_0x456294[_0x4f6b('0x27')]);if(_0x456294[_0x4f6b('0x28')]){delete _0x456294[_0x4f6b('0x28')];}_0x266765[_0x4f6b('0x1b')](_0x374ff7)['send'](_0x456294);};}exports[_0x4f6b('0x29')]=function(_0x11d9d1,_0x462fd2){var _0x13f45f={},_0x297912={},_0x2e10ab={'count':0x0,'rows':[]};var _0x139f22=_[_0x4f6b('0x2a')](db[_0x4f6b('0x2b')][_0x4f6b('0x2c')],function(_0x561fbc){return{'name':_0x561fbc['fieldName'],'type':_0x561fbc[_0x4f6b('0x2d')][_0x4f6b('0x2e')]};});_0x297912[_0x4f6b('0x2f')]=_[_0x4f6b('0x2a')](_0x139f22,_0x4f6b('0x28'));_0x297912[_0x4f6b('0x30')]=_['keys'](_0x11d9d1[_0x4f6b('0x30')]);_0x297912[_0x4f6b('0x31')]=_[_0x4f6b('0x32')](_0x297912[_0x4f6b('0x2f')],_0x297912[_0x4f6b('0x30')]);_0x13f45f[_0x4f6b('0x33')]=_[_0x4f6b('0x32')](_0x297912[_0x4f6b('0x2f')],qs[_0x4f6b('0x34')](_0x11d9d1[_0x4f6b('0x30')][_0x4f6b('0x34')]));_0x13f45f[_0x4f6b('0x33')]=_0x13f45f['attributes'][_0x4f6b('0x35')]?_0x13f45f['attributes']:_0x297912['model'];if(!_0x11d9d1[_0x4f6b('0x30')][_0x4f6b('0x36')]('nolimit')){_0x13f45f['limit']=qs[_0x4f6b('0x1c')](_0x11d9d1['query'][_0x4f6b('0x1c')]);_0x13f45f['offset']=qs[_0x4f6b('0x1f')](_0x11d9d1['query'][_0x4f6b('0x1f')]);}_0x13f45f[_0x4f6b('0x37')]=qs['sort'](_0x11d9d1[_0x4f6b('0x30')][_0x4f6b('0x38')]);_0x13f45f['where']=qs['filters'](_[_0x4f6b('0x39')](_0x11d9d1[_0x4f6b('0x30')],_0x297912[_0x4f6b('0x31')]),_0x139f22);if(_0x11d9d1[_0x4f6b('0x30')][_0x4f6b('0x3a')]){_0x13f45f[_0x4f6b('0x3b')]=_[_0x4f6b('0x3c')](_0x13f45f[_0x4f6b('0x3b')],{'$or':_[_0x4f6b('0x2a')](_0x139f22,function(_0x1e90b){if(_0x1e90b['type']!==_0x4f6b('0x3d')){var _0x333742={};_0x333742[_0x1e90b['name']]={'$like':'%'+_0x11d9d1[_0x4f6b('0x30')]['filter']+'%'};return _0x333742;}})});}_0x13f45f=_[_0x4f6b('0x3c')]({},_0x13f45f,_0x11d9d1[_0x4f6b('0x3e')]);var _0xb9020b={'where':_0x13f45f[_0x4f6b('0x3b')]};return db['ChatTransferReport'][_0x4f6b('0x1e')](_0xb9020b)[_0x4f6b('0x24')](function(_0xdcff97){_0x2e10ab[_0x4f6b('0x1e')]=_0xdcff97;if(_0x11d9d1[_0x4f6b('0x30')][_0x4f6b('0x3f')]){_0x13f45f['include']=[{'all':!![]}];}return db[_0x4f6b('0x2b')][_0x4f6b('0x40')](_0x13f45f);})[_0x4f6b('0x24')](function(_0x870da0){_0x2e10ab[_0x4f6b('0x41')]=_0x870da0;return _0x2e10ab;})[_0x4f6b('0x24')](respondWithFilteredResult(_0x462fd2,_0x13f45f))[_0x4f6b('0x42')](handleError(_0x462fd2,null));};exports[_0x4f6b('0x43')]=function(_0x352f0e,_0x4bb889){var _0x29ccb8={'raw':!![],'where':{'id':_0x352f0e[_0x4f6b('0x44')]['id']}},_0xc4852a={};_0xc4852a[_0x4f6b('0x2f')]=_[_0x4f6b('0x45')](db['ChatTransferReport']['rawAttributes']);_0xc4852a[_0x4f6b('0x30')]=_[_0x4f6b('0x45')](_0x352f0e[_0x4f6b('0x30')]);_0xc4852a[_0x4f6b('0x31')]=_[_0x4f6b('0x32')](_0xc4852a[_0x4f6b('0x2f')],_0xc4852a[_0x4f6b('0x30')]);_0x29ccb8['attributes']=_[_0x4f6b('0x32')](_0xc4852a[_0x4f6b('0x2f')],qs[_0x4f6b('0x34')](_0x352f0e[_0x4f6b('0x30')]['fields']));_0x29ccb8['attributes']=_0x29ccb8[_0x4f6b('0x33')][_0x4f6b('0x35')]?_0x29ccb8[_0x4f6b('0x33')]:_0xc4852a[_0x4f6b('0x2f')];if(_0x352f0e[_0x4f6b('0x30')][_0x4f6b('0x3f')]){_0x29ccb8['include']=[{'all':!![]}];}_0x29ccb8=_[_0x4f6b('0x3c')]({},_0x29ccb8,_0x352f0e[_0x4f6b('0x3e')]);return db[_0x4f6b('0x2b')][_0x4f6b('0x46')](_0x29ccb8)[_0x4f6b('0x24')](handleEntityNotFound(_0x4bb889,null))[_0x4f6b('0x24')](respondWithResult(_0x4bb889,null))[_0x4f6b('0x42')](handleError(_0x4bb889,null));};exports[_0x4f6b('0x47')]=function(_0x24d547,_0x3c7f54){return db[_0x4f6b('0x2b')]['create'](_0x24d547[_0x4f6b('0x48')],{})[_0x4f6b('0x24')](respondWithResult(_0x3c7f54,0xc9))['catch'](handleError(_0x3c7f54,null));};exports[_0x4f6b('0x49')]=function(_0x241690,_0x1190f3){if(_0x241690['body']['id']){delete _0x241690[_0x4f6b('0x48')]['id'];}return db['ChatTransferReport'][_0x4f6b('0x46')]({'where':{'id':_0x241690['params']['id']}})[_0x4f6b('0x24')](handleEntityNotFound(_0x1190f3,null))['then'](saveUpdates(_0x241690[_0x4f6b('0x48')],null))[_0x4f6b('0x24')](respondWithResult(_0x1190f3,null))['catch'](handleError(_0x1190f3,null));};exports[_0x4f6b('0x25')]=function(_0x5a152a,_0x4ddda1){return db[_0x4f6b('0x2b')][_0x4f6b('0x46')]({'where':{'id':_0x5a152a[_0x4f6b('0x44')]['id']}})[_0x4f6b('0x24')](handleEntityNotFound(_0x4ddda1,null))[_0x4f6b('0x24')](removeEntity(_0x4ddda1,null))['catch'](handleError(_0x4ddda1,null));};exports[_0x4f6b('0x4a')]=function(_0x1854e8,_0x3b06ad){return db[_0x4f6b('0x2b')][_0x4f6b('0x4a')]()[_0x4f6b('0x24')](respondWithResult(_0x3b06ad,null))['catch'](handleError(_0x3b06ad,null));};