dc938634194187a71dffe8cec4ee450163be3e56
[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 _0x266c=['../../mysqldb','sendStatus','status','json','count','offset','limit','set','Content-Range','apply','reject','save','update','then','end','error','stack','name','send','index','map','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','where','pick','merge','VIRTUAL','options','include','ChatTransferReport','findAll','rows','catch','params','rawAttributes','length','includeAll','create','body','find','describe','html-pdf','zip-dir','fast-json-patch','moment','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','querystring','papaparse','ioredis','../../components/parsers/qs','../../config/logger','api'];(function(_0x1139d0,_0x41e5f8){var _0xcc01a6=function(_0x504ffa){while(--_0x504ffa){_0x1139d0['push'](_0x1139d0['shift']());}};_0xcc01a6(++_0x41e5f8);}(_0x266c,0x155));var _0xc266=function(_0x20d15c,_0x2ca902){_0x20d15c=_0x20d15c-0x0;var _0x17d594=_0x266c[_0x20d15c];return _0x17d594;};'use strict';var pdf=require(_0xc266('0x0'));var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0xc266('0x1'));var jsonpatch=require(_0xc266('0x2'));var rp=require('request-promise');var moment=require(_0xc266('0x3'));var BPromise=require('bluebird');var Mustache=require(_0xc266('0x4'));var util=require(_0xc266('0x5'));var path=require(_0xc266('0x6'));var sox=require(_0xc266('0x7'));var csv=require(_0xc266('0x8'));var ejs=require(_0xc266('0x9'));var fs=require('fs');var _=require(_0xc266('0xa'));var squel=require(_0xc266('0xb'));var crypto=require(_0xc266('0xc'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0xc266('0x8'));var querystring=require(_0xc266('0xd'));var Papa=require(_0xc266('0xe'));var Redis=require(_0xc266('0xf'));var authService=require('../../components/auth/service');var qs=require(_0xc266('0x10'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xc266('0x11'))(_0xc266('0x12'));var utils=require('../../config/utils');var config=require('../../config/environment');var db=require(_0xc266('0x13'))['db'];function respondWithStatusCode(_0x186f4c,_0x5da987){_0x5da987=_0x5da987||0xcc;return function(_0x50af60){if(_0x50af60){return _0x186f4c[_0xc266('0x14')](_0x5da987);}return _0x186f4c['status'](_0x5da987)['end']();};}function respondWithResult(_0x2b4cbe,_0x14f78e){_0x14f78e=_0x14f78e||0xc8;return function(_0x10a869){if(_0x10a869){return _0x2b4cbe[_0xc266('0x15')](_0x14f78e)[_0xc266('0x16')](_0x10a869);}};}function respondWithFilteredResult(_0x3d47b7,_0x413d0e){return function(_0x841f40){if(_0x841f40){var _0x24872c=_0x841f40[_0xc266('0x17')],_0x41da79=_0x413d0e[_0xc266('0x18')],_0x56b584=_0x413d0e[_0xc266('0x18')]+_0x413d0e[_0xc266('0x19')],_0x5122e9;if(_0x56b584>=_0x24872c){_0x56b584=_0x24872c;_0x5122e9=0xc8;}else{_0x5122e9=0xce;}_0x3d47b7[_0xc266('0x15')](_0x5122e9);return _0x3d47b7[_0xc266('0x1a')](_0xc266('0x1b'),_0x41da79+'-'+_0x56b584+'/'+_0x24872c)['json'](_0x841f40);}return null;};}function patchUpdates(_0x3ea7d9){return function(_0x19bacb){try{jsonpatch[_0xc266('0x1c')](_0x19bacb,_0x3ea7d9,!![]);}catch(_0x255f32){return BPromise[_0xc266('0x1d')](_0x255f32);}return _0x19bacb[_0xc266('0x1e')]();};}function saveUpdates(_0x4ec57e,_0x4d2872){return function(_0x194cc7){if(_0x194cc7){return _0x194cc7[_0xc266('0x1f')](_0x4ec57e)[_0xc266('0x20')](function(_0x212847){return _0x212847;});}return null;};}function removeEntity(_0x29ee99,_0x5eeb63){return function(_0x35ea52){if(_0x35ea52){return _0x35ea52['destroy']()[_0xc266('0x20')](function(){_0x29ee99[_0xc266('0x15')](0xcc)[_0xc266('0x21')]();});}};}function handleEntityNotFound(_0x17746c,_0x247db8){return function(_0x58353c){if(!_0x58353c){_0x17746c[_0xc266('0x14')](0x194);}return _0x58353c;};}function handleError(_0x849bfe,_0x2d78c5){_0x2d78c5=_0x2d78c5||0x1f4;return function(_0x539505){logger[_0xc266('0x22')](_0x539505[_0xc266('0x23')]);if(_0x539505[_0xc266('0x24')]){delete _0x539505[_0xc266('0x24')];}_0x849bfe['status'](_0x2d78c5)[_0xc266('0x25')](_0x539505);};}exports[_0xc266('0x26')]=function(_0x207a30,_0x3a09ed){var _0x5af9b7={},_0x32171e={},_0x46f7c3={'count':0x0,'rows':[]};var _0x594ffe=_[_0xc266('0x27')](db['ChatTransferReport']['rawAttributes'],function(_0x422988){return{'name':_0x422988[_0xc266('0x28')],'type':_0x422988[_0xc266('0x29')][_0xc266('0x2a')]};});_0x32171e[_0xc266('0x2b')]=_[_0xc266('0x27')](_0x594ffe,_0xc266('0x24'));_0x32171e[_0xc266('0x2c')]=_[_0xc266('0x2d')](_0x207a30[_0xc266('0x2c')]);_0x32171e[_0xc266('0x2e')]=_[_0xc266('0x2f')](_0x32171e[_0xc266('0x2b')],_0x32171e['query']);_0x5af9b7[_0xc266('0x30')]=_[_0xc266('0x2f')](_0x32171e['model'],qs[_0xc266('0x31')](_0x207a30['query'][_0xc266('0x31')]));_0x5af9b7[_0xc266('0x30')]=_0x5af9b7[_0xc266('0x30')]['length']?_0x5af9b7[_0xc266('0x30')]:_0x32171e[_0xc266('0x2b')];if(!_0x207a30[_0xc266('0x2c')][_0xc266('0x32')](_0xc266('0x33'))){_0x5af9b7[_0xc266('0x19')]=qs['limit'](_0x207a30[_0xc266('0x2c')][_0xc266('0x19')]);_0x5af9b7['offset']=qs[_0xc266('0x18')](_0x207a30[_0xc266('0x2c')][_0xc266('0x18')]);}_0x5af9b7[_0xc266('0x34')]=qs[_0xc266('0x35')](_0x207a30[_0xc266('0x2c')][_0xc266('0x35')]);_0x5af9b7[_0xc266('0x36')]=qs[_0xc266('0x2e')](_[_0xc266('0x37')](_0x207a30[_0xc266('0x2c')],_0x32171e['filters']),_0x594ffe);if(_0x207a30['query']['filter']){_0x5af9b7['where']=_[_0xc266('0x38')](_0x5af9b7[_0xc266('0x36')],{'$or':_['map'](_0x594ffe,function(_0x4c893a){if(_0x4c893a[_0xc266('0x29')]!==_0xc266('0x39')){var _0x52ded8={};_0x52ded8[_0x4c893a[_0xc266('0x24')]]={'$like':'%'+_0x207a30['query']['filter']+'%'};return _0x52ded8;}})});}_0x5af9b7=_[_0xc266('0x38')]({},_0x5af9b7,_0x207a30[_0xc266('0x3a')]);var _0x31220c={'where':_0x5af9b7[_0xc266('0x36')]};return db['ChatTransferReport']['count'](_0x31220c)[_0xc266('0x20')](function(_0x2d43c1){_0x46f7c3[_0xc266('0x17')]=_0x2d43c1;if(_0x207a30[_0xc266('0x2c')]['includeAll']){_0x5af9b7[_0xc266('0x3b')]=[{'all':!![]}];}return db[_0xc266('0x3c')][_0xc266('0x3d')](_0x5af9b7);})[_0xc266('0x20')](function(_0x43b627){_0x46f7c3[_0xc266('0x3e')]=_0x43b627;return _0x46f7c3;})['then'](respondWithFilteredResult(_0x3a09ed,_0x5af9b7))[_0xc266('0x3f')](handleError(_0x3a09ed,null));};exports['show']=function(_0x15655a,_0x255129){var _0x355eac={'raw':!![],'where':{'id':_0x15655a[_0xc266('0x40')]['id']}},_0x31cf7a={};_0x31cf7a[_0xc266('0x2b')]=_['keys'](db[_0xc266('0x3c')][_0xc266('0x41')]);_0x31cf7a['query']=_[_0xc266('0x2d')](_0x15655a[_0xc266('0x2c')]);_0x31cf7a[_0xc266('0x2e')]=_[_0xc266('0x2f')](_0x31cf7a[_0xc266('0x2b')],_0x31cf7a[_0xc266('0x2c')]);_0x355eac['attributes']=_[_0xc266('0x2f')](_0x31cf7a[_0xc266('0x2b')],qs[_0xc266('0x31')](_0x15655a[_0xc266('0x2c')][_0xc266('0x31')]));_0x355eac[_0xc266('0x30')]=_0x355eac[_0xc266('0x30')][_0xc266('0x42')]?_0x355eac[_0xc266('0x30')]:_0x31cf7a['model'];if(_0x15655a['query'][_0xc266('0x43')]){_0x355eac['include']=[{'all':!![]}];}_0x355eac=_[_0xc266('0x38')]({},_0x355eac,_0x15655a['options']);return db[_0xc266('0x3c')]['find'](_0x355eac)[_0xc266('0x20')](handleEntityNotFound(_0x255129,null))[_0xc266('0x20')](respondWithResult(_0x255129,null))[_0xc266('0x3f')](handleError(_0x255129,null));};exports[_0xc266('0x44')]=function(_0xf6d18f,_0x55a71d){return db[_0xc266('0x3c')][_0xc266('0x44')](_0xf6d18f[_0xc266('0x45')],{})[_0xc266('0x20')](respondWithResult(_0x55a71d,0xc9))['catch'](handleError(_0x55a71d,null));};exports[_0xc266('0x1f')]=function(_0x1fd91b,_0xedab84){if(_0x1fd91b[_0xc266('0x45')]['id']){delete _0x1fd91b[_0xc266('0x45')]['id'];}return db[_0xc266('0x3c')][_0xc266('0x46')]({'where':{'id':_0x1fd91b['params']['id']}})[_0xc266('0x20')](handleEntityNotFound(_0xedab84,null))[_0xc266('0x20')](saveUpdates(_0x1fd91b[_0xc266('0x45')],null))[_0xc266('0x20')](respondWithResult(_0xedab84,null))[_0xc266('0x3f')](handleError(_0xedab84,null));};exports['destroy']=function(_0x25c3f4,_0x24f89d){return db[_0xc266('0x3c')]['find']({'where':{'id':_0x25c3f4[_0xc266('0x40')]['id']}})['then'](handleEntityNotFound(_0x24f89d,null))[_0xc266('0x20')](removeEntity(_0x24f89d,null))[_0xc266('0x3f')](handleError(_0x24f89d,null));};exports[_0xc266('0x47')]=function(_0x5cdec8,_0x417e4f){return db['ChatTransferReport'][_0xc266('0x47')]()[_0xc266('0x20')](respondWithResult(_0x417e4f,null))[_0xc266('0x3f')](handleError(_0x417e4f,null));};