Built motion from commit 953226e6.|2.6.32
[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 _0x14d8=['sox','to-csv','ejs','fs-extra','lodash','crypto','jsforce','querystring','papaparse','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','offset','limit','undefined','count','set','Content-Range','apply','reject','save','update','then','sendStatus','error','name','send','index','map','ChatTransferReport','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','nolimit','order','sort','where','pick','VIRTUAL','options','includeAll','rows','show','params','merge','find','create','body','catch','destroy','describe','eml-format','rimraf','zip-dir','request-promise','moment','mustache','util','path'];(function(_0x48e010,_0x40a23b){var _0x31b860=function(_0x93d102){while(--_0x93d102){_0x48e010['push'](_0x48e010['shift']());}};_0x31b860(++_0x40a23b);}(_0x14d8,0x174));var _0x814d=function(_0x432682,_0x253044){_0x432682=_0x432682-0x0;var _0x463d05=_0x14d8[_0x432682];return _0x463d05;};'use strict';var emlformat=require(_0x814d('0x0'));var rimraf=require(_0x814d('0x1'));var zipdir=require(_0x814d('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x814d('0x3'));var moment=require(_0x814d('0x4'));var BPromise=require('bluebird');var Mustache=require(_0x814d('0x5'));var util=require(_0x814d('0x6'));var path=require(_0x814d('0x7'));var sox=require(_0x814d('0x8'));var csv=require(_0x814d('0x9'));var ejs=require(_0x814d('0xa'));var fs=require('fs');var fs_extra=require(_0x814d('0xb'));var _=require(_0x814d('0xc'));var squel=require('squel');var crypto=require(_0x814d('0xd'));var jsforce=require(_0x814d('0xe'));var deskjs=require('desk.js');var toCsv=require(_0x814d('0x9'));var querystring=require(_0x814d('0xf'));var Papa=require(_0x814d('0x10'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x814d('0x11'));var as=require(_0x814d('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x814d('0x13'))(_0x814d('0x14'));var utils=require(_0x814d('0x15'));var config=require(_0x814d('0x16'));var licenseUtil=require(_0x814d('0x17'));var db=require(_0x814d('0x18'))['db'];function respondWithStatusCode(_0x56cb4d,_0x3d9c15){_0x3d9c15=_0x3d9c15||0xcc;return function(_0x38a714){if(_0x38a714){return _0x56cb4d['sendStatus'](_0x3d9c15);}return _0x56cb4d[_0x814d('0x19')](_0x3d9c15)[_0x814d('0x1a')]();};}function respondWithResult(_0x5c942b,_0x472818){_0x472818=_0x472818||0xc8;return function(_0x53d47f){if(_0x53d47f){return _0x5c942b[_0x814d('0x19')](_0x472818)[_0x814d('0x1b')](_0x53d47f);}};}function respondWithFilteredResult(_0x5c4e94,_0x39b4c1){return function(_0x3c2fa3){if(_0x3c2fa3){var _0x1de8a0=typeof _0x39b4c1[_0x814d('0x1c')]==='undefined'&&typeof _0x39b4c1[_0x814d('0x1d')]===_0x814d('0x1e');var _0x5f3bf1=_0x3c2fa3['count'];var _0x593e8a=_0x1de8a0?0x0:_0x39b4c1[_0x814d('0x1c')];var _0x53bf3e=_0x1de8a0?_0x3c2fa3[_0x814d('0x1f')]:_0x39b4c1[_0x814d('0x1c')]+_0x39b4c1[_0x814d('0x1d')];var _0x571b19;if(_0x53bf3e>=_0x5f3bf1){_0x53bf3e=_0x5f3bf1;_0x571b19=0xc8;}else{_0x571b19=0xce;}_0x5c4e94[_0x814d('0x19')](_0x571b19);return _0x5c4e94[_0x814d('0x20')](_0x814d('0x21'),_0x593e8a+'-'+_0x53bf3e+'/'+_0x5f3bf1)[_0x814d('0x1b')](_0x3c2fa3);}return null;};}function patchUpdates(_0x1996ac){return function(_0x207735){try{jsonpatch[_0x814d('0x22')](_0x207735,_0x1996ac,!![]);}catch(_0x437d56){return BPromise[_0x814d('0x23')](_0x437d56);}return _0x207735[_0x814d('0x24')]();};}function saveUpdates(_0xac33da,_0x468614){return function(_0x179967){if(_0x179967){return _0x179967[_0x814d('0x25')](_0xac33da)[_0x814d('0x26')](function(_0xeeb0ef){return _0xeeb0ef;});}return null;};}function removeEntity(_0x256b4f,_0x1749e7){return function(_0xf0e08){if(_0xf0e08){return _0xf0e08['destroy']()[_0x814d('0x26')](function(){_0x256b4f[_0x814d('0x19')](0xcc)[_0x814d('0x1a')]();});}};}function handleEntityNotFound(_0x30db3b,_0x8d6664){return function(_0x7dd2e2){if(!_0x7dd2e2){_0x30db3b[_0x814d('0x27')](0x194);}return _0x7dd2e2;};}function handleError(_0x4b998e,_0x2ad2f5){_0x2ad2f5=_0x2ad2f5||0x1f4;return function(_0x4fbd2e){logger[_0x814d('0x28')](_0x4fbd2e['stack']);if(_0x4fbd2e[_0x814d('0x29')]){delete _0x4fbd2e[_0x814d('0x29')];}_0x4b998e[_0x814d('0x19')](_0x2ad2f5)[_0x814d('0x2a')](_0x4fbd2e);};}exports[_0x814d('0x2b')]=function(_0x33d8d5,_0x2bc60f){var _0x4f0976={},_0x29dd43={},_0xaad096={'count':0x0,'rows':[]};var _0x4d8362=_[_0x814d('0x2c')](db[_0x814d('0x2d')][_0x814d('0x2e')],function(_0x33a97b){return{'name':_0x33a97b[_0x814d('0x2f')],'type':_0x33a97b[_0x814d('0x30')][_0x814d('0x31')]};});_0x29dd43[_0x814d('0x32')]=_[_0x814d('0x2c')](_0x4d8362,_0x814d('0x29'));_0x29dd43[_0x814d('0x33')]=_[_0x814d('0x34')](_0x33d8d5[_0x814d('0x33')]);_0x29dd43[_0x814d('0x35')]=_[_0x814d('0x36')](_0x29dd43['model'],_0x29dd43[_0x814d('0x33')]);_0x4f0976[_0x814d('0x37')]=_[_0x814d('0x36')](_0x29dd43['model'],qs[_0x814d('0x38')](_0x33d8d5[_0x814d('0x33')][_0x814d('0x38')]));_0x4f0976[_0x814d('0x37')]=_0x4f0976['attributes'][_0x814d('0x39')]?_0x4f0976['attributes']:_0x29dd43['model'];if(!_0x33d8d5[_0x814d('0x33')]['hasOwnProperty'](_0x814d('0x3a'))){_0x4f0976[_0x814d('0x1d')]=qs['limit'](_0x33d8d5['query'][_0x814d('0x1d')]);_0x4f0976[_0x814d('0x1c')]=qs[_0x814d('0x1c')](_0x33d8d5[_0x814d('0x33')][_0x814d('0x1c')]);}_0x4f0976[_0x814d('0x3b')]=qs['sort'](_0x33d8d5[_0x814d('0x33')][_0x814d('0x3c')]);_0x4f0976[_0x814d('0x3d')]=qs[_0x814d('0x35')](_[_0x814d('0x3e')](_0x33d8d5[_0x814d('0x33')],_0x29dd43['filters']),_0x4d8362);if(_0x33d8d5[_0x814d('0x33')]['filter']){_0x4f0976[_0x814d('0x3d')]=_['merge'](_0x4f0976[_0x814d('0x3d')],{'$or':_['map'](_0x4d8362,function(_0x59185f){if(_0x59185f[_0x814d('0x30')]!==_0x814d('0x3f')){var _0x5f25c4={};_0x5f25c4[_0x59185f[_0x814d('0x29')]]={'$like':'%'+_0x33d8d5[_0x814d('0x33')]['filter']+'%'};return _0x5f25c4;}})});}_0x4f0976=_['merge']({},_0x4f0976,_0x33d8d5[_0x814d('0x40')]);var _0x10226b={'where':_0x4f0976['where']};return db[_0x814d('0x2d')]['count'](_0x10226b)[_0x814d('0x26')](function(_0x551229){_0xaad096[_0x814d('0x1f')]=_0x551229;if(_0x33d8d5[_0x814d('0x33')][_0x814d('0x41')]){_0x4f0976['include']=[{'all':!![]}];}return db[_0x814d('0x2d')]['findAll'](_0x4f0976);})[_0x814d('0x26')](function(_0x4299ad){_0xaad096[_0x814d('0x42')]=_0x4299ad;return _0xaad096;})[_0x814d('0x26')](respondWithFilteredResult(_0x2bc60f,_0x4f0976))['catch'](handleError(_0x2bc60f,null));};exports[_0x814d('0x43')]=function(_0xc91361,_0x3d5768){var _0x5a80ec={'raw':!![],'where':{'id':_0xc91361[_0x814d('0x44')]['id']}},_0x558222={};_0x558222[_0x814d('0x32')]=_[_0x814d('0x34')](db[_0x814d('0x2d')]['rawAttributes']);_0x558222['query']=_[_0x814d('0x34')](_0xc91361[_0x814d('0x33')]);_0x558222[_0x814d('0x35')]=_['intersection'](_0x558222[_0x814d('0x32')],_0x558222[_0x814d('0x33')]);_0x5a80ec[_0x814d('0x37')]=_[_0x814d('0x36')](_0x558222[_0x814d('0x32')],qs['fields'](_0xc91361[_0x814d('0x33')][_0x814d('0x38')]));_0x5a80ec['attributes']=_0x5a80ec[_0x814d('0x37')]['length']?_0x5a80ec['attributes']:_0x558222['model'];if(_0xc91361['query']['includeAll']){_0x5a80ec['include']=[{'all':!![]}];}_0x5a80ec=_[_0x814d('0x45')]({},_0x5a80ec,_0xc91361['options']);return db[_0x814d('0x2d')][_0x814d('0x46')](_0x5a80ec)['then'](handleEntityNotFound(_0x3d5768,null))[_0x814d('0x26')](respondWithResult(_0x3d5768,null))['catch'](handleError(_0x3d5768,null));};exports[_0x814d('0x47')]=function(_0x5547d8,_0x59b087){return db[_0x814d('0x2d')][_0x814d('0x47')](_0x5547d8[_0x814d('0x48')],{})[_0x814d('0x26')](respondWithResult(_0x59b087,0xc9))[_0x814d('0x49')](handleError(_0x59b087,null));};exports[_0x814d('0x25')]=function(_0x5be9ae,_0x4670df){if(_0x5be9ae[_0x814d('0x48')]['id']){delete _0x5be9ae[_0x814d('0x48')]['id'];}return db[_0x814d('0x2d')][_0x814d('0x46')]({'where':{'id':_0x5be9ae[_0x814d('0x44')]['id']}})[_0x814d('0x26')](handleEntityNotFound(_0x4670df,null))['then'](saveUpdates(_0x5be9ae[_0x814d('0x48')],null))['then'](respondWithResult(_0x4670df,null))['catch'](handleError(_0x4670df,null));};exports[_0x814d('0x4a')]=function(_0x240c77,_0x43a39e){return db['ChatTransferReport'][_0x814d('0x46')]({'where':{'id':_0x240c77['params']['id']}})[_0x814d('0x26')](handleEntityNotFound(_0x43a39e,null))[_0x814d('0x26')](removeEntity(_0x43a39e,null))[_0x814d('0x49')](handleError(_0x43a39e,null));};exports['describe']=function(_0x23444e,_0x53fb92){return db['ChatTransferReport'][_0x814d('0x4b')]()['then'](respondWithResult(_0x53fb92,null))[_0x814d('0x49')](handleError(_0x53fb92,null));};