cbe321f80e41b353c24017a4dfba87b847a6a908
[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 _0x7a6a=['length','hasOwnProperty','order','sort','pick','filter','where','merge','type','VIRTUAL','includeAll','findAll','rows','catch','params','options','find','create','body','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../config/logger','api','../../config/utils','../../mysqldb','sendStatus','status','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','then','destroy','end','error','stack','name','send','index','map','ChatTransferReport','rawAttributes','key','query','keys','filters','intersection','model','attributes','fields'];(function(_0x1b8997,_0x331887){var _0x5862d1=function(_0x37a1c5){while(--_0x37a1c5){_0x1b8997['push'](_0x1b8997['shift']());}};_0x5862d1(++_0x331887);}(_0x7a6a,0xf8));var _0xa7a6=function(_0x5932b1,_0x460f37){_0x5932b1=_0x5932b1-0x0;var _0x16070c=_0x7a6a[_0x5932b1];return _0x16070c;};'use strict';var emlformat=require(_0xa7a6('0x0'));var rimraf=require(_0xa7a6('0x1'));var zipdir=require(_0xa7a6('0x2'));var jsonpatch=require(_0xa7a6('0x3'));var rp=require(_0xa7a6('0x4'));var moment=require(_0xa7a6('0x5'));var BPromise=require(_0xa7a6('0x6'));var Mustache=require('mustache');var util=require('util');var path=require(_0xa7a6('0x7'));var sox=require(_0xa7a6('0x8'));var csv=require(_0xa7a6('0x9'));var ejs=require(_0xa7a6('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xa7a6('0xb'));var squel=require(_0xa7a6('0xc'));var crypto=require(_0xa7a6('0xd'));var jsforce=require(_0xa7a6('0xe'));var deskjs=require(_0xa7a6('0xf'));var toCsv=require(_0xa7a6('0x9'));var querystring=require(_0xa7a6('0x10'));var Papa=require(_0xa7a6('0x11'));var Redis=require(_0xa7a6('0x12'));var authService=require('../../components/auth/service');var qs=require(_0xa7a6('0x13'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xa7a6('0x14'))(_0xa7a6('0x15'));var utils=require(_0xa7a6('0x16'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0xa7a6('0x17'))['db'];function respondWithStatusCode(_0x15cfbd,_0x1640b4){_0x1640b4=_0x1640b4||0xcc;return function(_0x14a54e){if(_0x14a54e){return _0x15cfbd[_0xa7a6('0x18')](_0x1640b4);}return _0x15cfbd['status'](_0x1640b4)['end']();};}function respondWithResult(_0xb46223,_0x3cf8cc){_0x3cf8cc=_0x3cf8cc||0xc8;return function(_0x78a1f8){if(_0x78a1f8){return _0xb46223[_0xa7a6('0x19')](_0x3cf8cc)[_0xa7a6('0x1a')](_0x78a1f8);}};}function respondWithFilteredResult(_0x3a2c02,_0x44b115){return function(_0x71d7cf){if(_0x71d7cf){var _0x4feca6=typeof _0x44b115[_0xa7a6('0x1b')]===_0xa7a6('0x1c')&&typeof _0x44b115[_0xa7a6('0x1d')]===_0xa7a6('0x1c');var _0xc13938=_0x71d7cf[_0xa7a6('0x1e')];var _0x221753=_0x4feca6?0x0:_0x44b115[_0xa7a6('0x1b')];var _0x2ae3b4=_0x4feca6?_0x71d7cf['count']:_0x44b115[_0xa7a6('0x1b')]+_0x44b115[_0xa7a6('0x1d')];var _0x4aacc1;if(_0x2ae3b4>=_0xc13938){_0x2ae3b4=_0xc13938;_0x4aacc1=0xc8;}else{_0x4aacc1=0xce;}_0x3a2c02['status'](_0x4aacc1);return _0x3a2c02[_0xa7a6('0x1f')](_0xa7a6('0x20'),_0x221753+'-'+_0x2ae3b4+'/'+_0xc13938)[_0xa7a6('0x1a')](_0x71d7cf);}return null;};}function patchUpdates(_0x209085){return function(_0xd2f81b){try{jsonpatch[_0xa7a6('0x21')](_0xd2f81b,_0x209085,!![]);}catch(_0x11261d){return BPromise[_0xa7a6('0x22')](_0x11261d);}return _0xd2f81b[_0xa7a6('0x23')]();};}function saveUpdates(_0x1d07b3,_0x2c6307){return function(_0x1389e1){if(_0x1389e1){return _0x1389e1[_0xa7a6('0x24')](_0x1d07b3)[_0xa7a6('0x25')](function(_0x37bd13){return _0x37bd13;});}return null;};}function removeEntity(_0x22e27d,_0x126aad){return function(_0x5e76f6){if(_0x5e76f6){return _0x5e76f6[_0xa7a6('0x26')]()[_0xa7a6('0x25')](function(){_0x22e27d[_0xa7a6('0x19')](0xcc)[_0xa7a6('0x27')]();});}};}function handleEntityNotFound(_0x298df7,_0x10d567){return function(_0x1d7ac2){if(!_0x1d7ac2){_0x298df7[_0xa7a6('0x18')](0x194);}return _0x1d7ac2;};}function handleError(_0x5062e3,_0x103867){_0x103867=_0x103867||0x1f4;return function(_0x1ff315){logger[_0xa7a6('0x28')](_0x1ff315[_0xa7a6('0x29')]);if(_0x1ff315[_0xa7a6('0x2a')]){delete _0x1ff315[_0xa7a6('0x2a')];}_0x5062e3[_0xa7a6('0x19')](_0x103867)[_0xa7a6('0x2b')](_0x1ff315);};}exports[_0xa7a6('0x2c')]=function(_0x9602f7,_0x22b2db){var _0x115821={},_0x5c54e2={},_0x351135={'count':0x0,'rows':[]};var _0xd32738=_[_0xa7a6('0x2d')](db[_0xa7a6('0x2e')][_0xa7a6('0x2f')],function(_0x25f909){return{'name':_0x25f909['fieldName'],'type':_0x25f909['type'][_0xa7a6('0x30')]};});_0x5c54e2['model']=_[_0xa7a6('0x2d')](_0xd32738,_0xa7a6('0x2a'));_0x5c54e2[_0xa7a6('0x31')]=_[_0xa7a6('0x32')](_0x9602f7[_0xa7a6('0x31')]);_0x5c54e2[_0xa7a6('0x33')]=_[_0xa7a6('0x34')](_0x5c54e2[_0xa7a6('0x35')],_0x5c54e2['query']);_0x115821[_0xa7a6('0x36')]=_[_0xa7a6('0x34')](_0x5c54e2[_0xa7a6('0x35')],qs[_0xa7a6('0x37')](_0x9602f7[_0xa7a6('0x31')][_0xa7a6('0x37')]));_0x115821[_0xa7a6('0x36')]=_0x115821[_0xa7a6('0x36')][_0xa7a6('0x38')]?_0x115821[_0xa7a6('0x36')]:_0x5c54e2[_0xa7a6('0x35')];if(!_0x9602f7[_0xa7a6('0x31')][_0xa7a6('0x39')]('nolimit')){_0x115821[_0xa7a6('0x1d')]=qs['limit'](_0x9602f7[_0xa7a6('0x31')][_0xa7a6('0x1d')]);_0x115821['offset']=qs[_0xa7a6('0x1b')](_0x9602f7[_0xa7a6('0x31')][_0xa7a6('0x1b')]);}_0x115821[_0xa7a6('0x3a')]=qs[_0xa7a6('0x3b')](_0x9602f7[_0xa7a6('0x31')][_0xa7a6('0x3b')]);_0x115821['where']=qs[_0xa7a6('0x33')](_[_0xa7a6('0x3c')](_0x9602f7['query'],_0x5c54e2[_0xa7a6('0x33')]),_0xd32738);if(_0x9602f7[_0xa7a6('0x31')][_0xa7a6('0x3d')]){_0x115821[_0xa7a6('0x3e')]=_[_0xa7a6('0x3f')](_0x115821[_0xa7a6('0x3e')],{'$or':_[_0xa7a6('0x2d')](_0xd32738,function(_0x41f20b){if(_0x41f20b[_0xa7a6('0x40')]!==_0xa7a6('0x41')){var _0x2a94ac={};_0x2a94ac[_0x41f20b[_0xa7a6('0x2a')]]={'$like':'%'+_0x9602f7[_0xa7a6('0x31')][_0xa7a6('0x3d')]+'%'};return _0x2a94ac;}})});}_0x115821=_['merge']({},_0x115821,_0x9602f7['options']);var _0x531892={'where':_0x115821[_0xa7a6('0x3e')]};return db[_0xa7a6('0x2e')][_0xa7a6('0x1e')](_0x531892)[_0xa7a6('0x25')](function(_0x141960){_0x351135['count']=_0x141960;if(_0x9602f7[_0xa7a6('0x31')][_0xa7a6('0x42')]){_0x115821['include']=[{'all':!![]}];}return db['ChatTransferReport'][_0xa7a6('0x43')](_0x115821);})[_0xa7a6('0x25')](function(_0x56be6b){_0x351135[_0xa7a6('0x44')]=_0x56be6b;return _0x351135;})[_0xa7a6('0x25')](respondWithFilteredResult(_0x22b2db,_0x115821))[_0xa7a6('0x45')](handleError(_0x22b2db,null));};exports['show']=function(_0x31c559,_0x5de4d7){var _0xff1478={'raw':!![],'where':{'id':_0x31c559[_0xa7a6('0x46')]['id']}},_0x1fe0ac={};_0x1fe0ac[_0xa7a6('0x35')]=_[_0xa7a6('0x32')](db[_0xa7a6('0x2e')][_0xa7a6('0x2f')]);_0x1fe0ac['query']=_[_0xa7a6('0x32')](_0x31c559['query']);_0x1fe0ac['filters']=_[_0xa7a6('0x34')](_0x1fe0ac[_0xa7a6('0x35')],_0x1fe0ac[_0xa7a6('0x31')]);_0xff1478['attributes']=_[_0xa7a6('0x34')](_0x1fe0ac[_0xa7a6('0x35')],qs[_0xa7a6('0x37')](_0x31c559[_0xa7a6('0x31')]['fields']));_0xff1478['attributes']=_0xff1478[_0xa7a6('0x36')][_0xa7a6('0x38')]?_0xff1478[_0xa7a6('0x36')]:_0x1fe0ac['model'];if(_0x31c559[_0xa7a6('0x31')][_0xa7a6('0x42')]){_0xff1478['include']=[{'all':!![]}];}_0xff1478=_[_0xa7a6('0x3f')]({},_0xff1478,_0x31c559[_0xa7a6('0x47')]);return db[_0xa7a6('0x2e')][_0xa7a6('0x48')](_0xff1478)['then'](handleEntityNotFound(_0x5de4d7,null))[_0xa7a6('0x25')](respondWithResult(_0x5de4d7,null))[_0xa7a6('0x45')](handleError(_0x5de4d7,null));};exports['create']=function(_0x361b31,_0x9b9e70){return db[_0xa7a6('0x2e')][_0xa7a6('0x49')](_0x361b31[_0xa7a6('0x4a')],{})[_0xa7a6('0x25')](respondWithResult(_0x9b9e70,0xc9))[_0xa7a6('0x45')](handleError(_0x9b9e70,null));};exports[_0xa7a6('0x24')]=function(_0x11fd9e,_0x2e3fe5){if(_0x11fd9e[_0xa7a6('0x4a')]['id']){delete _0x11fd9e[_0xa7a6('0x4a')]['id'];}return db[_0xa7a6('0x2e')]['find']({'where':{'id':_0x11fd9e[_0xa7a6('0x46')]['id']}})[_0xa7a6('0x25')](handleEntityNotFound(_0x2e3fe5,null))[_0xa7a6('0x25')](saveUpdates(_0x11fd9e['body'],null))['then'](respondWithResult(_0x2e3fe5,null))[_0xa7a6('0x45')](handleError(_0x2e3fe5,null));};exports[_0xa7a6('0x26')]=function(_0x3ad1b8,_0x6da14c){return db[_0xa7a6('0x2e')][_0xa7a6('0x48')]({'where':{'id':_0x3ad1b8['params']['id']}})[_0xa7a6('0x25')](handleEntityNotFound(_0x6da14c,null))[_0xa7a6('0x25')](removeEntity(_0x6da14c,null))[_0xa7a6('0x45')](handleError(_0x6da14c,null));};exports[_0xa7a6('0x4b')]=function(_0x33cef4,_0x105711){return db[_0xa7a6('0x2e')][_0xa7a6('0x4b')]()[_0xa7a6('0x25')](respondWithResult(_0x105711,null))['catch'](handleError(_0x105711,null));};