Built motion from commit 20b39a97.|2.6.29
[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 _0xe88f=['fast-json-patch','request-promise','bluebird','mustache','path','sox','to-csv','ejs','fs-extra','lodash','squel','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','end','offset','undefined','count','limit','set','Content-Range','apply','reject','save','update','then','destroy','sendStatus','error','stack','name','send','index','map','ChatTransferReport','fieldName','type','key','model','query','keys','intersection','fields','length','attributes','hasOwnProperty','nolimit','order','sort','where','filters','pick','merge','VIRTUAL','filter','options','includeAll','rows','catch','params','rawAttributes','include','find','create','body','eml-format','rimraf'];(function(_0x3e1f51,_0x5bc2d8){var _0x5a541f=function(_0x38e78c){while(--_0x38e78c){_0x3e1f51['push'](_0x3e1f51['shift']());}};_0x5a541f(++_0x5bc2d8);}(_0xe88f,0xe5));var _0xfe88=function(_0x42bc91,_0x41f40a){_0x42bc91=_0x42bc91-0x0;var _0x3f5507=_0xe88f[_0x42bc91];return _0x3f5507;};'use strict';var emlformat=require(_0xfe88('0x0'));var rimraf=require(_0xfe88('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xfe88('0x2'));var rp=require(_0xfe88('0x3'));var moment=require('moment');var BPromise=require(_0xfe88('0x4'));var Mustache=require(_0xfe88('0x5'));var util=require('util');var path=require(_0xfe88('0x6'));var sox=require(_0xfe88('0x7'));var csv=require(_0xfe88('0x8'));var ejs=require(_0xfe88('0x9'));var fs=require('fs');var fs_extra=require(_0xfe88('0xa'));var _=require(_0xfe88('0xb'));var squel=require(_0xfe88('0xc'));var crypto=require('crypto');var jsforce=require(_0xfe88('0xd'));var deskjs=require('desk.js');var toCsv=require(_0xfe88('0x8'));var querystring=require(_0xfe88('0xe'));var Papa=require(_0xfe88('0xf'));var Redis=require(_0xfe88('0x10'));var authService=require(_0xfe88('0x11'));var qs=require(_0xfe88('0x12'));var as=require(_0xfe88('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0xfe88('0x14'));var utils=require(_0xfe88('0x15'));var config=require(_0xfe88('0x16'));var licenseUtil=require(_0xfe88('0x17'));var db=require(_0xfe88('0x18'))['db'];function respondWithStatusCode(_0x17fa0c,_0x2b6562){_0x2b6562=_0x2b6562||0xcc;return function(_0x2e4aa1){if(_0x2e4aa1){return _0x17fa0c['sendStatus'](_0x2b6562);}return _0x17fa0c[_0xfe88('0x19')](_0x2b6562)[_0xfe88('0x1a')]();};}function respondWithResult(_0x2f90fa,_0x211296){_0x211296=_0x211296||0xc8;return function(_0x4ac4e8){if(_0x4ac4e8){return _0x2f90fa['status'](_0x211296)['json'](_0x4ac4e8);}};}function respondWithFilteredResult(_0x56b23a,_0x3e2427){return function(_0x4ef49b){if(_0x4ef49b){var _0x3c9e44=typeof _0x3e2427[_0xfe88('0x1b')]===_0xfe88('0x1c')&&typeof _0x3e2427['limit']===_0xfe88('0x1c');var _0x47b4c3=_0x4ef49b[_0xfe88('0x1d')];var _0x35d290=_0x3c9e44?0x0:_0x3e2427[_0xfe88('0x1b')];var _0x24d2de=_0x3c9e44?_0x4ef49b[_0xfe88('0x1d')]:_0x3e2427[_0xfe88('0x1b')]+_0x3e2427[_0xfe88('0x1e')];var _0x1dcb33;if(_0x24d2de>=_0x47b4c3){_0x24d2de=_0x47b4c3;_0x1dcb33=0xc8;}else{_0x1dcb33=0xce;}_0x56b23a[_0xfe88('0x19')](_0x1dcb33);return _0x56b23a[_0xfe88('0x1f')](_0xfe88('0x20'),_0x35d290+'-'+_0x24d2de+'/'+_0x47b4c3)['json'](_0x4ef49b);}return null;};}function patchUpdates(_0x1406e){return function(_0x2d2624){try{jsonpatch[_0xfe88('0x21')](_0x2d2624,_0x1406e,!![]);}catch(_0x10e7b7){return BPromise[_0xfe88('0x22')](_0x10e7b7);}return _0x2d2624[_0xfe88('0x23')]();};}function saveUpdates(_0x2afcc6,_0x1248f4){return function(_0x42ba39){if(_0x42ba39){return _0x42ba39[_0xfe88('0x24')](_0x2afcc6)[_0xfe88('0x25')](function(_0x48a08d){return _0x48a08d;});}return null;};}function removeEntity(_0x2f209b,_0x388d87){return function(_0x239a2d){if(_0x239a2d){return _0x239a2d[_0xfe88('0x26')]()['then'](function(){_0x2f209b[_0xfe88('0x19')](0xcc)[_0xfe88('0x1a')]();});}};}function handleEntityNotFound(_0x435cc2,_0x3cceae){return function(_0x439718){if(!_0x439718){_0x435cc2[_0xfe88('0x27')](0x194);}return _0x439718;};}function handleError(_0x105a46,_0x177d68){_0x177d68=_0x177d68||0x1f4;return function(_0x711cd0){logger[_0xfe88('0x28')](_0x711cd0[_0xfe88('0x29')]);if(_0x711cd0['name']){delete _0x711cd0[_0xfe88('0x2a')];}_0x105a46[_0xfe88('0x19')](_0x177d68)[_0xfe88('0x2b')](_0x711cd0);};}exports[_0xfe88('0x2c')]=function(_0x474455,_0x3ceb8e){var _0xc8f6b6={},_0x390897={},_0x3ce4f8={'count':0x0,'rows':[]};var _0x2c7211=_[_0xfe88('0x2d')](db[_0xfe88('0x2e')]['rawAttributes'],function(_0xc3ec23){return{'name':_0xc3ec23[_0xfe88('0x2f')],'type':_0xc3ec23[_0xfe88('0x30')][_0xfe88('0x31')]};});_0x390897[_0xfe88('0x32')]=_[_0xfe88('0x2d')](_0x2c7211,'name');_0x390897[_0xfe88('0x33')]=_[_0xfe88('0x34')](_0x474455[_0xfe88('0x33')]);_0x390897['filters']=_[_0xfe88('0x35')](_0x390897[_0xfe88('0x32')],_0x390897[_0xfe88('0x33')]);_0xc8f6b6['attributes']=_[_0xfe88('0x35')](_0x390897[_0xfe88('0x32')],qs[_0xfe88('0x36')](_0x474455[_0xfe88('0x33')][_0xfe88('0x36')]));_0xc8f6b6['attributes']=_0xc8f6b6['attributes'][_0xfe88('0x37')]?_0xc8f6b6[_0xfe88('0x38')]:_0x390897[_0xfe88('0x32')];if(!_0x474455[_0xfe88('0x33')][_0xfe88('0x39')](_0xfe88('0x3a'))){_0xc8f6b6[_0xfe88('0x1e')]=qs[_0xfe88('0x1e')](_0x474455['query']['limit']);_0xc8f6b6[_0xfe88('0x1b')]=qs[_0xfe88('0x1b')](_0x474455['query']['offset']);}_0xc8f6b6[_0xfe88('0x3b')]=qs[_0xfe88('0x3c')](_0x474455[_0xfe88('0x33')]['sort']);_0xc8f6b6[_0xfe88('0x3d')]=qs[_0xfe88('0x3e')](_[_0xfe88('0x3f')](_0x474455[_0xfe88('0x33')],_0x390897[_0xfe88('0x3e')]),_0x2c7211);if(_0x474455[_0xfe88('0x33')]['filter']){_0xc8f6b6[_0xfe88('0x3d')]=_[_0xfe88('0x40')](_0xc8f6b6[_0xfe88('0x3d')],{'$or':_['map'](_0x2c7211,function(_0x547e1f){if(_0x547e1f['type']!==_0xfe88('0x41')){var _0x5750e8={};_0x5750e8[_0x547e1f[_0xfe88('0x2a')]]={'$like':'%'+_0x474455['query'][_0xfe88('0x42')]+'%'};return _0x5750e8;}})});}_0xc8f6b6=_[_0xfe88('0x40')]({},_0xc8f6b6,_0x474455[_0xfe88('0x43')]);var _0x27ef56={'where':_0xc8f6b6['where']};return db['ChatTransferReport'][_0xfe88('0x1d')](_0x27ef56)[_0xfe88('0x25')](function(_0x31cb33){_0x3ce4f8[_0xfe88('0x1d')]=_0x31cb33;if(_0x474455[_0xfe88('0x33')][_0xfe88('0x44')]){_0xc8f6b6['include']=[{'all':!![]}];}return db[_0xfe88('0x2e')]['findAll'](_0xc8f6b6);})[_0xfe88('0x25')](function(_0x5bdc76){_0x3ce4f8[_0xfe88('0x45')]=_0x5bdc76;return _0x3ce4f8;})[_0xfe88('0x25')](respondWithFilteredResult(_0x3ceb8e,_0xc8f6b6))[_0xfe88('0x46')](handleError(_0x3ceb8e,null));};exports['show']=function(_0x9e8821,_0x9baa75){var _0x459648={'raw':!![],'where':{'id':_0x9e8821[_0xfe88('0x47')]['id']}},_0x3f9a2c={};_0x3f9a2c[_0xfe88('0x32')]=_['keys'](db[_0xfe88('0x2e')][_0xfe88('0x48')]);_0x3f9a2c[_0xfe88('0x33')]=_[_0xfe88('0x34')](_0x9e8821[_0xfe88('0x33')]);_0x3f9a2c[_0xfe88('0x3e')]=_[_0xfe88('0x35')](_0x3f9a2c[_0xfe88('0x32')],_0x3f9a2c[_0xfe88('0x33')]);_0x459648[_0xfe88('0x38')]=_[_0xfe88('0x35')](_0x3f9a2c[_0xfe88('0x32')],qs[_0xfe88('0x36')](_0x9e8821[_0xfe88('0x33')][_0xfe88('0x36')]));_0x459648['attributes']=_0x459648[_0xfe88('0x38')][_0xfe88('0x37')]?_0x459648['attributes']:_0x3f9a2c['model'];if(_0x9e8821[_0xfe88('0x33')][_0xfe88('0x44')]){_0x459648[_0xfe88('0x49')]=[{'all':!![]}];}_0x459648=_['merge']({},_0x459648,_0x9e8821[_0xfe88('0x43')]);return db[_0xfe88('0x2e')][_0xfe88('0x4a')](_0x459648)[_0xfe88('0x25')](handleEntityNotFound(_0x9baa75,null))['then'](respondWithResult(_0x9baa75,null))['catch'](handleError(_0x9baa75,null));};exports[_0xfe88('0x4b')]=function(_0x57e8b9,_0x645229){return db[_0xfe88('0x2e')][_0xfe88('0x4b')](_0x57e8b9['body'],{})[_0xfe88('0x25')](respondWithResult(_0x645229,0xc9))['catch'](handleError(_0x645229,null));};exports[_0xfe88('0x24')]=function(_0x187f07,_0x55177d){if(_0x187f07['body']['id']){delete _0x187f07['body']['id'];}return db[_0xfe88('0x2e')][_0xfe88('0x4a')]({'where':{'id':_0x187f07[_0xfe88('0x47')]['id']}})[_0xfe88('0x25')](handleEntityNotFound(_0x55177d,null))[_0xfe88('0x25')](saveUpdates(_0x187f07[_0xfe88('0x4c')],null))[_0xfe88('0x25')](respondWithResult(_0x55177d,null))[_0xfe88('0x46')](handleError(_0x55177d,null));};exports[_0xfe88('0x26')]=function(_0x205e19,_0xd8982a){return db['ChatTransferReport'][_0xfe88('0x4a')]({'where':{'id':_0x205e19[_0xfe88('0x47')]['id']}})[_0xfe88('0x25')](handleEntityNotFound(_0xd8982a,null))[_0xfe88('0x25')](removeEntity(_0xd8982a,null))[_0xfe88('0x46')](handleError(_0xd8982a,null));};exports['describe']=function(_0x1b22df,_0x2747d7){return db[_0xfe88('0x2e')]['describe']()[_0xfe88('0x25')](respondWithResult(_0x2747d7,null))[_0xfe88('0x46')](handleError(_0x2747d7,null));};