a7c3eb56588a83b42064d60e5e72e600ecd7a4c2
[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 _0x8363=['reject','save','then','destroy','error','name','send','index','map','ChatTransferReport','rawAttributes','fieldName','type','key','query','filters','model','attributes','fields','length','sort','where','pick','filter','merge','VIRTUAL','options','findAll','rows','catch','show','params','keys','intersection','includeAll','find','create','body','update','describe','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','count','offset','limit','Content-Range','apply'];(function(_0x2ddf19,_0x263811){var _0xfb3528=function(_0x40585c){while(--_0x40585c){_0x2ddf19['push'](_0x2ddf19['shift']());}};_0xfb3528(++_0x263811);}(_0x8363,0x1f0));var _0x3836=function(_0x56d663,_0x46e4aa){_0x56d663=_0x56d663-0x0;var _0x3d2281=_0x8363[_0x56d663];return _0x3d2281;};'use strict';var pdf=require(_0x3836('0x0'));var emlformat=require(_0x3836('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x3836('0x2'));var jsonpatch=require(_0x3836('0x3'));var rp=require(_0x3836('0x4'));var moment=require(_0x3836('0x5'));var BPromise=require(_0x3836('0x6'));var Mustache=require(_0x3836('0x7'));var util=require(_0x3836('0x8'));var path=require(_0x3836('0x9'));var sox=require(_0x3836('0xa'));var csv=require(_0x3836('0xb'));var ejs=require(_0x3836('0xc'));var fs=require('fs');var _=require(_0x3836('0xd'));var squel=require('squel');var crypto=require(_0x3836('0xe'));var jsforce=require(_0x3836('0xf'));var deskjs=require(_0x3836('0x10'));var toCsv=require(_0x3836('0xb'));var querystring=require(_0x3836('0x11'));var Papa=require('papaparse');var Redis=require(_0x3836('0x12'));var authService=require(_0x3836('0x13'));var qs=require('../../components/parsers/qs');var as=require(_0x3836('0x14'));var hardwareService=require(_0x3836('0x15'));var logger=require('../../config/logger')(_0x3836('0x16'));var utils=require(_0x3836('0x17'));var config=require(_0x3836('0x18'));var licenseUtil=require(_0x3836('0x19'));var db=require(_0x3836('0x1a'))['db'];function respondWithStatusCode(_0x4393f0,_0x8d130e){_0x8d130e=_0x8d130e||0xcc;return function(_0x199c37){if(_0x199c37){return _0x4393f0[_0x3836('0x1b')](_0x8d130e);}return _0x4393f0[_0x3836('0x1c')](_0x8d130e)[_0x3836('0x1d')]();};}function respondWithResult(_0xf68e42,_0x51a73f){_0x51a73f=_0x51a73f||0xc8;return function(_0x2fa30e){if(_0x2fa30e){return _0xf68e42['status'](_0x51a73f)[_0x3836('0x1e')](_0x2fa30e);}};}function respondWithFilteredResult(_0x5a9c1e,_0x2d5123){return function(_0x152f9b){if(_0x152f9b){var _0x5304c3=_0x152f9b[_0x3836('0x1f')],_0xeb61b1=_0x2d5123[_0x3836('0x20')],_0x3acf12=_0x2d5123['offset']+_0x2d5123[_0x3836('0x21')],_0x5b8015;if(_0x3acf12>=_0x5304c3){_0x3acf12=_0x5304c3;_0x5b8015=0xc8;}else{_0x5b8015=0xce;}_0x5a9c1e[_0x3836('0x1c')](_0x5b8015);return _0x5a9c1e['set'](_0x3836('0x22'),_0xeb61b1+'-'+_0x3acf12+'/'+_0x5304c3)['json'](_0x152f9b);}return null;};}function patchUpdates(_0x1da9ea){return function(_0x179671){try{jsonpatch[_0x3836('0x23')](_0x179671,_0x1da9ea,!![]);}catch(_0x3deda6){return BPromise[_0x3836('0x24')](_0x3deda6);}return _0x179671[_0x3836('0x25')]();};}function saveUpdates(_0x12e04e,_0x3e2578){return function(_0x49a0c1){if(_0x49a0c1){return _0x49a0c1['update'](_0x12e04e)[_0x3836('0x26')](function(_0xe45b29){return _0xe45b29;});}return null;};}function removeEntity(_0x5ccbf9,_0x413531){return function(_0x18e83a){if(_0x18e83a){return _0x18e83a[_0x3836('0x27')]()['then'](function(){_0x5ccbf9[_0x3836('0x1c')](0xcc)['end']();});}};}function handleEntityNotFound(_0x23c6bf,_0x35771f){return function(_0x2e8f2d){if(!_0x2e8f2d){_0x23c6bf[_0x3836('0x1b')](0x194);}return _0x2e8f2d;};}function handleError(_0x2819b5,_0x2e6b7e){_0x2e6b7e=_0x2e6b7e||0x1f4;return function(_0x307b74){logger[_0x3836('0x28')](_0x307b74['stack']);if(_0x307b74[_0x3836('0x29')]){delete _0x307b74[_0x3836('0x29')];}_0x2819b5[_0x3836('0x1c')](_0x2e6b7e)[_0x3836('0x2a')](_0x307b74);};}exports[_0x3836('0x2b')]=function(_0x276a7a,_0x5865f0){var _0x44b2a7={},_0x5dd247={},_0x49d9e8={'count':0x0,'rows':[]};var _0x15247a=_[_0x3836('0x2c')](db[_0x3836('0x2d')][_0x3836('0x2e')],function(_0x155edb){return{'name':_0x155edb[_0x3836('0x2f')],'type':_0x155edb[_0x3836('0x30')][_0x3836('0x31')]};});_0x5dd247['model']=_[_0x3836('0x2c')](_0x15247a,'name');_0x5dd247[_0x3836('0x32')]=_['keys'](_0x276a7a['query']);_0x5dd247[_0x3836('0x33')]=_['intersection'](_0x5dd247[_0x3836('0x34')],_0x5dd247[_0x3836('0x32')]);_0x44b2a7[_0x3836('0x35')]=_['intersection'](_0x5dd247[_0x3836('0x34')],qs[_0x3836('0x36')](_0x276a7a[_0x3836('0x32')][_0x3836('0x36')]));_0x44b2a7[_0x3836('0x35')]=_0x44b2a7['attributes'][_0x3836('0x37')]?_0x44b2a7[_0x3836('0x35')]:_0x5dd247[_0x3836('0x34')];if(!_0x276a7a[_0x3836('0x32')]['hasOwnProperty']('nolimit')){_0x44b2a7['limit']=qs[_0x3836('0x21')](_0x276a7a[_0x3836('0x32')][_0x3836('0x21')]);_0x44b2a7['offset']=qs['offset'](_0x276a7a[_0x3836('0x32')][_0x3836('0x20')]);}_0x44b2a7['order']=qs[_0x3836('0x38')](_0x276a7a[_0x3836('0x32')][_0x3836('0x38')]);_0x44b2a7[_0x3836('0x39')]=qs[_0x3836('0x33')](_[_0x3836('0x3a')](_0x276a7a[_0x3836('0x32')],_0x5dd247[_0x3836('0x33')]),_0x15247a);if(_0x276a7a[_0x3836('0x32')][_0x3836('0x3b')]){_0x44b2a7[_0x3836('0x39')]=_[_0x3836('0x3c')](_0x44b2a7[_0x3836('0x39')],{'$or':_[_0x3836('0x2c')](_0x15247a,function(_0x24a457){if(_0x24a457[_0x3836('0x30')]!==_0x3836('0x3d')){var _0x174677={};_0x174677[_0x24a457[_0x3836('0x29')]]={'$like':'%'+_0x276a7a[_0x3836('0x32')][_0x3836('0x3b')]+'%'};return _0x174677;}})});}_0x44b2a7=_['merge']({},_0x44b2a7,_0x276a7a[_0x3836('0x3e')]);var _0x3b51a6={'where':_0x44b2a7['where']};return db[_0x3836('0x2d')][_0x3836('0x1f')](_0x3b51a6)[_0x3836('0x26')](function(_0x56fa22){_0x49d9e8['count']=_0x56fa22;if(_0x276a7a[_0x3836('0x32')]['includeAll']){_0x44b2a7['include']=[{'all':!![]}];}return db[_0x3836('0x2d')][_0x3836('0x3f')](_0x44b2a7);})[_0x3836('0x26')](function(_0x59b5d9){_0x49d9e8[_0x3836('0x40')]=_0x59b5d9;return _0x49d9e8;})[_0x3836('0x26')](respondWithFilteredResult(_0x5865f0,_0x44b2a7))[_0x3836('0x41')](handleError(_0x5865f0,null));};exports[_0x3836('0x42')]=function(_0x3d9582,_0x44ef92){var _0x372e32={'raw':!![],'where':{'id':_0x3d9582[_0x3836('0x43')]['id']}},_0x1071a1={};_0x1071a1[_0x3836('0x34')]=_[_0x3836('0x44')](db[_0x3836('0x2d')][_0x3836('0x2e')]);_0x1071a1[_0x3836('0x32')]=_[_0x3836('0x44')](_0x3d9582['query']);_0x1071a1[_0x3836('0x33')]=_[_0x3836('0x45')](_0x1071a1['model'],_0x1071a1[_0x3836('0x32')]);_0x372e32[_0x3836('0x35')]=_[_0x3836('0x45')](_0x1071a1[_0x3836('0x34')],qs[_0x3836('0x36')](_0x3d9582['query'][_0x3836('0x36')]));_0x372e32[_0x3836('0x35')]=_0x372e32[_0x3836('0x35')][_0x3836('0x37')]?_0x372e32['attributes']:_0x1071a1[_0x3836('0x34')];if(_0x3d9582['query'][_0x3836('0x46')]){_0x372e32['include']=[{'all':!![]}];}_0x372e32=_['merge']({},_0x372e32,_0x3d9582[_0x3836('0x3e')]);return db[_0x3836('0x2d')][_0x3836('0x47')](_0x372e32)['then'](handleEntityNotFound(_0x44ef92,null))['then'](respondWithResult(_0x44ef92,null))[_0x3836('0x41')](handleError(_0x44ef92,null));};exports[_0x3836('0x48')]=function(_0x5c99cd,_0xc4364f){return db[_0x3836('0x2d')][_0x3836('0x48')](_0x5c99cd[_0x3836('0x49')],{})['then'](respondWithResult(_0xc4364f,0xc9))[_0x3836('0x41')](handleError(_0xc4364f,null));};exports[_0x3836('0x4a')]=function(_0x542417,_0x3351dd){if(_0x542417[_0x3836('0x49')]['id']){delete _0x542417[_0x3836('0x49')]['id'];}return db['ChatTransferReport']['find']({'where':{'id':_0x542417[_0x3836('0x43')]['id']}})[_0x3836('0x26')](handleEntityNotFound(_0x3351dd,null))[_0x3836('0x26')](saveUpdates(_0x542417[_0x3836('0x49')],null))['then'](respondWithResult(_0x3351dd,null))[_0x3836('0x41')](handleError(_0x3351dd,null));};exports[_0x3836('0x27')]=function(_0x1021b,_0x3f4f6f){return db['ChatTransferReport'][_0x3836('0x47')]({'where':{'id':_0x1021b['params']['id']}})['then'](handleEntityNotFound(_0x3f4f6f,null))[_0x3836('0x26')](removeEntity(_0x3f4f6f,null))['catch'](handleError(_0x3f4f6f,null));};exports[_0x3836('0x4b')]=function(_0x7d2af5,_0x2de30d){return db[_0x3836('0x2d')][_0x3836('0x4b')]()[_0x3836('0x26')](respondWithResult(_0x2de30d,null))[_0x3836('0x41')](handleError(_0x2de30d,null));};