Built motion from commit 85328c08.|2.5.50
[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 _0x4936=['apply','reject','save','then','destroy','end','error','name','index','ChatTransferReport','rawAttributes','fieldName','type','key','model','map','query','keys','filters','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','pick','filter','where','merge','options','includeAll','rows','catch','show','length','create','body','find','params','describe','eml-format','rimraf','request-promise','moment','mustache','path','sox','ejs','fs-extra','lodash','squel','crypto','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','limit','undefined','offset','count','Content-Range'];(function(_0x11ba83,_0xd5611a){var _0x3f3925=function(_0x3d7cb0){while(--_0x3d7cb0){_0x11ba83['push'](_0x11ba83['shift']());}};_0x3f3925(++_0xd5611a);}(_0x4936,0x14d));var _0x6493=function(_0x5ae663,_0x42522a){_0x5ae663=_0x5ae663-0x0;var _0x366149=_0x4936[_0x5ae663];return _0x366149;};'use strict';var emlformat=require(_0x6493('0x0'));var rimraf=require(_0x6493('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x6493('0x2'));var moment=require(_0x6493('0x3'));var BPromise=require('bluebird');var Mustache=require(_0x6493('0x4'));var util=require('util');var path=require(_0x6493('0x5'));var sox=require(_0x6493('0x6'));var csv=require('to-csv');var ejs=require(_0x6493('0x7'));var fs=require('fs');var fs_extra=require(_0x6493('0x8'));var _=require(_0x6493('0x9'));var squel=require(_0x6493('0xa'));var crypto=require(_0x6493('0xb'));var jsforce=require('jsforce');var deskjs=require(_0x6493('0xc'));var toCsv=require(_0x6493('0xd'));var querystring=require(_0x6493('0xe'));var Papa=require(_0x6493('0xf'));var Redis=require(_0x6493('0x10'));var authService=require(_0x6493('0x11'));var qs=require(_0x6493('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0x6493('0x13'))(_0x6493('0x14'));var utils=require('../../config/utils');var config=require(_0x6493('0x15'));var licenseUtil=require(_0x6493('0x16'));var db=require(_0x6493('0x17'))['db'];function respondWithStatusCode(_0x3c5417,_0x334272){_0x334272=_0x334272||0xcc;return function(_0x227526){if(_0x227526){return _0x3c5417[_0x6493('0x18')](_0x334272);}return _0x3c5417['status'](_0x334272)['end']();};}function respondWithResult(_0x297d48,_0x75dba4){_0x75dba4=_0x75dba4||0xc8;return function(_0x894587){if(_0x894587){return _0x297d48[_0x6493('0x19')](_0x75dba4)[_0x6493('0x1a')](_0x894587);}};}function respondWithFilteredResult(_0x1a077e,_0x35c0c8){return function(_0x1a21f2){if(_0x1a21f2){var _0xaaa388=typeof _0x35c0c8['offset']==='undefined'&&typeof _0x35c0c8[_0x6493('0x1b')]===_0x6493('0x1c');var _0x1223ac=_0x1a21f2['count'];var _0xa38f4f=_0xaaa388?0x0:_0x35c0c8[_0x6493('0x1d')];var _0x50bbca=_0xaaa388?_0x1a21f2[_0x6493('0x1e')]:_0x35c0c8[_0x6493('0x1d')]+_0x35c0c8[_0x6493('0x1b')];var _0x291f88;if(_0x50bbca>=_0x1223ac){_0x50bbca=_0x1223ac;_0x291f88=0xc8;}else{_0x291f88=0xce;}_0x1a077e[_0x6493('0x19')](_0x291f88);return _0x1a077e['set'](_0x6493('0x1f'),_0xa38f4f+'-'+_0x50bbca+'/'+_0x1223ac)[_0x6493('0x1a')](_0x1a21f2);}return null;};}function patchUpdates(_0x55ff6f){return function(_0x5ef8bc){try{jsonpatch[_0x6493('0x20')](_0x5ef8bc,_0x55ff6f,!![]);}catch(_0x4990eb){return BPromise[_0x6493('0x21')](_0x4990eb);}return _0x5ef8bc[_0x6493('0x22')]();};}function saveUpdates(_0x3ce83a,_0x3974d0){return function(_0x585a02){if(_0x585a02){return _0x585a02['update'](_0x3ce83a)[_0x6493('0x23')](function(_0x3fdaaa){return _0x3fdaaa;});}return null;};}function removeEntity(_0x1487c1,_0xef93fc){return function(_0x546a38){if(_0x546a38){return _0x546a38[_0x6493('0x24')]()[_0x6493('0x23')](function(){_0x1487c1[_0x6493('0x19')](0xcc)[_0x6493('0x25')]();});}};}function handleEntityNotFound(_0x312129,_0x5a8a90){return function(_0x1cdee2){if(!_0x1cdee2){_0x312129[_0x6493('0x18')](0x194);}return _0x1cdee2;};}function handleError(_0x188433,_0x18820e){_0x18820e=_0x18820e||0x1f4;return function(_0x50af03){logger[_0x6493('0x26')](_0x50af03['stack']);if(_0x50af03['name']){delete _0x50af03[_0x6493('0x27')];}_0x188433[_0x6493('0x19')](_0x18820e)['send'](_0x50af03);};}exports[_0x6493('0x28')]=function(_0x44df9a,_0x43a3e0){var _0x57f81d={},_0x5936c2={},_0x5b0968={'count':0x0,'rows':[]};var _0x2ff711=_['map'](db[_0x6493('0x29')][_0x6493('0x2a')],function(_0x468368){return{'name':_0x468368[_0x6493('0x2b')],'type':_0x468368[_0x6493('0x2c')][_0x6493('0x2d')]};});_0x5936c2[_0x6493('0x2e')]=_[_0x6493('0x2f')](_0x2ff711,_0x6493('0x27'));_0x5936c2[_0x6493('0x30')]=_[_0x6493('0x31')](_0x44df9a[_0x6493('0x30')]);_0x5936c2[_0x6493('0x32')]=_[_0x6493('0x33')](_0x5936c2[_0x6493('0x2e')],_0x5936c2[_0x6493('0x30')]);_0x57f81d[_0x6493('0x34')]=_[_0x6493('0x33')](_0x5936c2[_0x6493('0x2e')],qs[_0x6493('0x35')](_0x44df9a[_0x6493('0x30')][_0x6493('0x35')]));_0x57f81d['attributes']=_0x57f81d[_0x6493('0x34')]['length']?_0x57f81d[_0x6493('0x34')]:_0x5936c2[_0x6493('0x2e')];if(!_0x44df9a[_0x6493('0x30')][_0x6493('0x36')](_0x6493('0x37'))){_0x57f81d[_0x6493('0x1b')]=qs[_0x6493('0x1b')](_0x44df9a[_0x6493('0x30')][_0x6493('0x1b')]);_0x57f81d[_0x6493('0x1d')]=qs[_0x6493('0x1d')](_0x44df9a['query'][_0x6493('0x1d')]);}_0x57f81d[_0x6493('0x38')]=qs[_0x6493('0x39')](_0x44df9a[_0x6493('0x30')]['sort']);_0x57f81d['where']=qs[_0x6493('0x32')](_[_0x6493('0x3a')](_0x44df9a['query'],_0x5936c2[_0x6493('0x32')]),_0x2ff711);if(_0x44df9a[_0x6493('0x30')][_0x6493('0x3b')]){_0x57f81d[_0x6493('0x3c')]=_[_0x6493('0x3d')](_0x57f81d[_0x6493('0x3c')],{'$or':_[_0x6493('0x2f')](_0x2ff711,function(_0x24cdba){if(_0x24cdba[_0x6493('0x2c')]!=='VIRTUAL'){var _0x3158b5={};_0x3158b5[_0x24cdba[_0x6493('0x27')]]={'$like':'%'+_0x44df9a[_0x6493('0x30')][_0x6493('0x3b')]+'%'};return _0x3158b5;}})});}_0x57f81d=_[_0x6493('0x3d')]({},_0x57f81d,_0x44df9a[_0x6493('0x3e')]);var _0xdf1465={'where':_0x57f81d[_0x6493('0x3c')]};return db[_0x6493('0x29')]['count'](_0xdf1465)['then'](function(_0x3cddd8){_0x5b0968[_0x6493('0x1e')]=_0x3cddd8;if(_0x44df9a['query'][_0x6493('0x3f')]){_0x57f81d['include']=[{'all':!![]}];}return db[_0x6493('0x29')]['findAll'](_0x57f81d);})[_0x6493('0x23')](function(_0x158678){_0x5b0968[_0x6493('0x40')]=_0x158678;return _0x5b0968;})['then'](respondWithFilteredResult(_0x43a3e0,_0x57f81d))[_0x6493('0x41')](handleError(_0x43a3e0,null));};exports[_0x6493('0x42')]=function(_0x15bc29,_0x24f0d6){var _0x183b62={'raw':!![],'where':{'id':_0x15bc29['params']['id']}},_0x16e6f6={};_0x16e6f6[_0x6493('0x2e')]=_[_0x6493('0x31')](db[_0x6493('0x29')][_0x6493('0x2a')]);_0x16e6f6['query']=_[_0x6493('0x31')](_0x15bc29[_0x6493('0x30')]);_0x16e6f6['filters']=_['intersection'](_0x16e6f6[_0x6493('0x2e')],_0x16e6f6[_0x6493('0x30')]);_0x183b62['attributes']=_[_0x6493('0x33')](_0x16e6f6[_0x6493('0x2e')],qs['fields'](_0x15bc29[_0x6493('0x30')]['fields']));_0x183b62[_0x6493('0x34')]=_0x183b62[_0x6493('0x34')][_0x6493('0x43')]?_0x183b62[_0x6493('0x34')]:_0x16e6f6[_0x6493('0x2e')];if(_0x15bc29[_0x6493('0x30')]['includeAll']){_0x183b62['include']=[{'all':!![]}];}_0x183b62=_[_0x6493('0x3d')]({},_0x183b62,_0x15bc29['options']);return db['ChatTransferReport']['find'](_0x183b62)[_0x6493('0x23')](handleEntityNotFound(_0x24f0d6,null))[_0x6493('0x23')](respondWithResult(_0x24f0d6,null))[_0x6493('0x41')](handleError(_0x24f0d6,null));};exports[_0x6493('0x44')]=function(_0x275874,_0x368e05){return db[_0x6493('0x29')][_0x6493('0x44')](_0x275874[_0x6493('0x45')],{})[_0x6493('0x23')](respondWithResult(_0x368e05,0xc9))[_0x6493('0x41')](handleError(_0x368e05,null));};exports['update']=function(_0x3dd7ce,_0x52b302){if(_0x3dd7ce[_0x6493('0x45')]['id']){delete _0x3dd7ce[_0x6493('0x45')]['id'];}return db[_0x6493('0x29')][_0x6493('0x46')]({'where':{'id':_0x3dd7ce[_0x6493('0x47')]['id']}})['then'](handleEntityNotFound(_0x52b302,null))[_0x6493('0x23')](saveUpdates(_0x3dd7ce['body'],null))[_0x6493('0x23')](respondWithResult(_0x52b302,null))[_0x6493('0x41')](handleError(_0x52b302,null));};exports[_0x6493('0x24')]=function(_0x422d59,_0x263abf){return db[_0x6493('0x29')][_0x6493('0x46')]({'where':{'id':_0x422d59['params']['id']}})['then'](handleEntityNotFound(_0x263abf,null))[_0x6493('0x23')](removeEntity(_0x263abf,null))[_0x6493('0x41')](handleError(_0x263abf,null));};exports[_0x6493('0x48')]=function(_0x4e7cb5,_0x3ea199){return db['ChatTransferReport']['describe']()[_0x6493('0x23')](respondWithResult(_0x3ea199,null))[_0x6493('0x41')](handleError(_0x3ea199,null));};