066934bdee63bbb351a531fbbb9b34788fe92f3b
[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 _0xccdd=['papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','set','apply','reject','save','update','destroy','error','name','send','ChatTransferReport','rawAttributes','key','model','map','query','keys','intersection','fields','attributes','length','order','sort','filters','filter','where','merge','type','VIRTUAL','count','then','includeAll','include','findAll','rows','catch','params','create','body','find','describe','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','sox','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring'];(function(_0x238c67,_0x4c409e){var _0x51d179=function(_0x24ab46){while(--_0x24ab46){_0x238c67['push'](_0x238c67['shift']());}};_0x51d179(++_0x4c409e);}(_0xccdd,0x1a6));var _0xdccd=function(_0x279d37,_0x14de3f){_0x279d37=_0x279d37-0x0;var _0x530173=_0xccdd[_0x279d37];return _0x530173;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xdccd('0x0'));var zipdir=require(_0xdccd('0x1'));var jsonpatch=require(_0xdccd('0x2'));var rp=require('request-promise');var moment=require(_0xdccd('0x3'));var BPromise=require(_0xdccd('0x4'));var Mustache=require(_0xdccd('0x5'));var util=require(_0xdccd('0x6'));var path=require('path');var sox=require(_0xdccd('0x7'));var csv=require(_0xdccd('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xdccd('0x9'));var _=require(_0xdccd('0xa'));var squel=require(_0xdccd('0xb'));var crypto=require(_0xdccd('0xc'));var jsforce=require(_0xdccd('0xd'));var deskjs=require(_0xdccd('0xe'));var toCsv=require(_0xdccd('0x8'));var querystring=require(_0xdccd('0xf'));var Papa=require(_0xdccd('0x10'));var Redis=require(_0xdccd('0x11'));var authService=require('../../components/auth/service');var qs=require(_0xdccd('0x12'));var as=require(_0xdccd('0x13'));var hardwareService=require(_0xdccd('0x14'));var logger=require(_0xdccd('0x15'))(_0xdccd('0x16'));var utils=require(_0xdccd('0x17'));var config=require('../../config/environment');var licenseUtil=require(_0xdccd('0x18'));var db=require(_0xdccd('0x19'))['db'];function respondWithStatusCode(_0x1e43cc,_0x13313d){_0x13313d=_0x13313d||0xcc;return function(_0x319cd2){if(_0x319cd2){return _0x1e43cc[_0xdccd('0x1a')](_0x13313d);}return _0x1e43cc[_0xdccd('0x1b')](_0x13313d)[_0xdccd('0x1c')]();};}function respondWithResult(_0x3b0e14,_0x5177fc){_0x5177fc=_0x5177fc||0xc8;return function(_0x38f7e9){if(_0x38f7e9){return _0x3b0e14[_0xdccd('0x1b')](_0x5177fc)[_0xdccd('0x1d')](_0x38f7e9);}};}function respondWithFilteredResult(_0x448354,_0x36236c){return function(_0x14814b){if(_0x14814b){var _0x51b684=typeof _0x36236c[_0xdccd('0x1e')]===_0xdccd('0x1f')&&typeof _0x36236c[_0xdccd('0x20')]===_0xdccd('0x1f');var _0x634f23=_0x14814b['count'];var _0x1bd430=_0x51b684?0x0:_0x36236c[_0xdccd('0x1e')];var _0x53c896=_0x51b684?_0x14814b['count']:_0x36236c[_0xdccd('0x1e')]+_0x36236c['limit'];var _0x29ddb3;if(_0x53c896>=_0x634f23){_0x53c896=_0x634f23;_0x29ddb3=0xc8;}else{_0x29ddb3=0xce;}_0x448354['status'](_0x29ddb3);return _0x448354[_0xdccd('0x21')]('Content-Range',_0x1bd430+'-'+_0x53c896+'/'+_0x634f23)[_0xdccd('0x1d')](_0x14814b);}return null;};}function patchUpdates(_0x579b9a){return function(_0xdeed37){try{jsonpatch[_0xdccd('0x22')](_0xdeed37,_0x579b9a,!![]);}catch(_0x2f79c9){return BPromise[_0xdccd('0x23')](_0x2f79c9);}return _0xdeed37[_0xdccd('0x24')]();};}function saveUpdates(_0x27b56b,_0x517902){return function(_0x2f9646){if(_0x2f9646){return _0x2f9646[_0xdccd('0x25')](_0x27b56b)['then'](function(_0x50e58c){return _0x50e58c;});}return null;};}function removeEntity(_0x537a85,_0xc6ab38){return function(_0x49318a){if(_0x49318a){return _0x49318a[_0xdccd('0x26')]()['then'](function(){_0x537a85['status'](0xcc)[_0xdccd('0x1c')]();});}};}function handleEntityNotFound(_0x314042,_0x5f6df){return function(_0x3f5cd6){if(!_0x3f5cd6){_0x314042[_0xdccd('0x1a')](0x194);}return _0x3f5cd6;};}function handleError(_0x4b12e2,_0x5b31b1){_0x5b31b1=_0x5b31b1||0x1f4;return function(_0x195e30){logger[_0xdccd('0x27')](_0x195e30['stack']);if(_0x195e30[_0xdccd('0x28')]){delete _0x195e30[_0xdccd('0x28')];}_0x4b12e2[_0xdccd('0x1b')](_0x5b31b1)[_0xdccd('0x29')](_0x195e30);};}exports['index']=function(_0x2da70a,_0x59f2d6){var _0x4d9314={},_0x4a6cc7={},_0x5216ca={'count':0x0,'rows':[]};var _0x411e88=_['map'](db[_0xdccd('0x2a')][_0xdccd('0x2b')],function(_0x2e43ba){return{'name':_0x2e43ba['fieldName'],'type':_0x2e43ba['type'][_0xdccd('0x2c')]};});_0x4a6cc7[_0xdccd('0x2d')]=_[_0xdccd('0x2e')](_0x411e88,_0xdccd('0x28'));_0x4a6cc7[_0xdccd('0x2f')]=_[_0xdccd('0x30')](_0x2da70a[_0xdccd('0x2f')]);_0x4a6cc7['filters']=_[_0xdccd('0x31')](_0x4a6cc7[_0xdccd('0x2d')],_0x4a6cc7[_0xdccd('0x2f')]);_0x4d9314['attributes']=_['intersection'](_0x4a6cc7[_0xdccd('0x2d')],qs[_0xdccd('0x32')](_0x2da70a[_0xdccd('0x2f')][_0xdccd('0x32')]));_0x4d9314[_0xdccd('0x33')]=_0x4d9314[_0xdccd('0x33')][_0xdccd('0x34')]?_0x4d9314[_0xdccd('0x33')]:_0x4a6cc7[_0xdccd('0x2d')];if(!_0x2da70a[_0xdccd('0x2f')]['hasOwnProperty']('nolimit')){_0x4d9314['limit']=qs[_0xdccd('0x20')](_0x2da70a[_0xdccd('0x2f')][_0xdccd('0x20')]);_0x4d9314[_0xdccd('0x1e')]=qs[_0xdccd('0x1e')](_0x2da70a[_0xdccd('0x2f')]['offset']);}_0x4d9314[_0xdccd('0x35')]=qs[_0xdccd('0x36')](_0x2da70a[_0xdccd('0x2f')]['sort']);_0x4d9314['where']=qs[_0xdccd('0x37')](_['pick'](_0x2da70a[_0xdccd('0x2f')],_0x4a6cc7[_0xdccd('0x37')]),_0x411e88);if(_0x2da70a['query'][_0xdccd('0x38')]){_0x4d9314[_0xdccd('0x39')]=_[_0xdccd('0x3a')](_0x4d9314[_0xdccd('0x39')],{'$or':_[_0xdccd('0x2e')](_0x411e88,function(_0xa968a6){if(_0xa968a6[_0xdccd('0x3b')]!==_0xdccd('0x3c')){var _0x551b75={};_0x551b75[_0xa968a6[_0xdccd('0x28')]]={'$like':'%'+_0x2da70a[_0xdccd('0x2f')][_0xdccd('0x38')]+'%'};return _0x551b75;}})});}_0x4d9314=_['merge']({},_0x4d9314,_0x2da70a['options']);var _0x171e65={'where':_0x4d9314['where']};return db['ChatTransferReport'][_0xdccd('0x3d')](_0x171e65)[_0xdccd('0x3e')](function(_0x14c93a){_0x5216ca[_0xdccd('0x3d')]=_0x14c93a;if(_0x2da70a[_0xdccd('0x2f')][_0xdccd('0x3f')]){_0x4d9314[_0xdccd('0x40')]=[{'all':!![]}];}return db[_0xdccd('0x2a')][_0xdccd('0x41')](_0x4d9314);})['then'](function(_0x850dff){_0x5216ca[_0xdccd('0x42')]=_0x850dff;return _0x5216ca;})[_0xdccd('0x3e')](respondWithFilteredResult(_0x59f2d6,_0x4d9314))[_0xdccd('0x43')](handleError(_0x59f2d6,null));};exports['show']=function(_0x252cf5,_0x5a5591){var _0x44ff2a={'raw':!![],'where':{'id':_0x252cf5[_0xdccd('0x44')]['id']}},_0x1b0af0={};_0x1b0af0[_0xdccd('0x2d')]=_[_0xdccd('0x30')](db[_0xdccd('0x2a')][_0xdccd('0x2b')]);_0x1b0af0[_0xdccd('0x2f')]=_[_0xdccd('0x30')](_0x252cf5[_0xdccd('0x2f')]);_0x1b0af0[_0xdccd('0x37')]=_[_0xdccd('0x31')](_0x1b0af0[_0xdccd('0x2d')],_0x1b0af0[_0xdccd('0x2f')]);_0x44ff2a[_0xdccd('0x33')]=_[_0xdccd('0x31')](_0x1b0af0[_0xdccd('0x2d')],qs[_0xdccd('0x32')](_0x252cf5[_0xdccd('0x2f')][_0xdccd('0x32')]));_0x44ff2a[_0xdccd('0x33')]=_0x44ff2a[_0xdccd('0x33')][_0xdccd('0x34')]?_0x44ff2a[_0xdccd('0x33')]:_0x1b0af0['model'];if(_0x252cf5[_0xdccd('0x2f')][_0xdccd('0x3f')]){_0x44ff2a[_0xdccd('0x40')]=[{'all':!![]}];}_0x44ff2a=_[_0xdccd('0x3a')]({},_0x44ff2a,_0x252cf5['options']);return db['ChatTransferReport']['find'](_0x44ff2a)[_0xdccd('0x3e')](handleEntityNotFound(_0x5a5591,null))[_0xdccd('0x3e')](respondWithResult(_0x5a5591,null))[_0xdccd('0x43')](handleError(_0x5a5591,null));};exports[_0xdccd('0x45')]=function(_0x511731,_0x4b2d3d){return db['ChatTransferReport']['create'](_0x511731[_0xdccd('0x46')],{})[_0xdccd('0x3e')](respondWithResult(_0x4b2d3d,0xc9))['catch'](handleError(_0x4b2d3d,null));};exports['update']=function(_0x219aa8,_0x26729c){if(_0x219aa8[_0xdccd('0x46')]['id']){delete _0x219aa8[_0xdccd('0x46')]['id'];}return db['ChatTransferReport']['find']({'where':{'id':_0x219aa8[_0xdccd('0x44')]['id']}})[_0xdccd('0x3e')](handleEntityNotFound(_0x26729c,null))['then'](saveUpdates(_0x219aa8[_0xdccd('0x46')],null))[_0xdccd('0x3e')](respondWithResult(_0x26729c,null))[_0xdccd('0x43')](handleError(_0x26729c,null));};exports[_0xdccd('0x26')]=function(_0x2d4d1b,_0x4d922a){return db[_0xdccd('0x2a')][_0xdccd('0x47')]({'where':{'id':_0x2d4d1b[_0xdccd('0x44')]['id']}})[_0xdccd('0x3e')](handleEntityNotFound(_0x4d922a,null))[_0xdccd('0x3e')](removeEntity(_0x4d922a,null))[_0xdccd('0x43')](handleError(_0x4d922a,null));};exports[_0xdccd('0x48')]=function(_0x37496d,_0x73b8c2){return db[_0xdccd('0x2a')][_0xdccd('0x48')]()[_0xdccd('0x3e')](respondWithResult(_0x73b8c2,null))[_0xdccd('0x43')](handleError(_0x73b8c2,null));};