a5173f61fa24b3416c9602d6461e698d4787f53c
[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 _0x982d=['../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','count','offset','limit','set','apply','save','update','then','destroy','sendStatus','error','stack','name','send','index','ChatTransferReport','rawAttributes','fieldName','type','key','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','VIRTUAL','merge','options','findAll','rows','catch','show','params','keys','include','create','body','find','describe','html-pdf','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','util','path','sox','ejs','lodash','squel','jsforce','desk.js','to-csv','querystring','ioredis','../../components/auth/service','../../components/parsers/advancedSearch'];(function(_0x4cce4e,_0x542f3a){var _0xae5c26=function(_0x125a87){while(--_0x125a87){_0x4cce4e['push'](_0x4cce4e['shift']());}};_0xae5c26(++_0x542f3a);}(_0x982d,0x16e));var _0xd982=function(_0x3a9271,_0x4ddbe1){_0x3a9271=_0x3a9271-0x0;var _0x42d266=_0x982d[_0x3a9271];return _0x42d266;};'use strict';var pdf=require(_0xd982('0x0'));var emlformat=require('eml-format');var rimraf=require(_0xd982('0x1'));var zipdir=require(_0xd982('0x2'));var jsonpatch=require(_0xd982('0x3'));var rp=require(_0xd982('0x4'));var moment=require('moment');var BPromise=require(_0xd982('0x5'));var Mustache=require('mustache');var util=require(_0xd982('0x6'));var path=require(_0xd982('0x7'));var sox=require(_0xd982('0x8'));var csv=require('to-csv');var ejs=require(_0xd982('0x9'));var fs=require('fs');var _=require(_0xd982('0xa'));var squel=require(_0xd982('0xb'));var crypto=require('crypto');var jsforce=require(_0xd982('0xc'));var deskjs=require(_0xd982('0xd'));var toCsv=require(_0xd982('0xe'));var querystring=require(_0xd982('0xf'));var Papa=require('papaparse');var Redis=require(_0xd982('0x10'));var authService=require(_0xd982('0x11'));var qs=require('../../components/parsers/qs');var as=require(_0xd982('0x12'));var hardwareService=require(_0xd982('0x13'));var logger=require(_0xd982('0x14'))(_0xd982('0x15'));var utils=require(_0xd982('0x16'));var config=require(_0xd982('0x17'));var licenseUtil=require(_0xd982('0x18'));var db=require(_0xd982('0x19'))['db'];function respondWithStatusCode(_0x57fa89,_0x3bc028){_0x3bc028=_0x3bc028||0xcc;return function(_0x46bfc6){if(_0x46bfc6){return _0x57fa89['sendStatus'](_0x3bc028);}return _0x57fa89[_0xd982('0x1a')](_0x3bc028)[_0xd982('0x1b')]();};}function respondWithResult(_0x135216,_0x2b4036){_0x2b4036=_0x2b4036||0xc8;return function(_0x1aaa8f){if(_0x1aaa8f){return _0x135216[_0xd982('0x1a')](_0x2b4036)[_0xd982('0x1c')](_0x1aaa8f);}};}function respondWithFilteredResult(_0x15d5b1,_0x2d79ed){return function(_0x316902){if(_0x316902){var _0x333f50=_0x316902[_0xd982('0x1d')],_0x3aa14d=_0x2d79ed[_0xd982('0x1e')],_0x18902c=_0x2d79ed[_0xd982('0x1e')]+_0x2d79ed[_0xd982('0x1f')],_0x48e7a1;if(_0x18902c>=_0x333f50){_0x18902c=_0x333f50;_0x48e7a1=0xc8;}else{_0x48e7a1=0xce;}_0x15d5b1[_0xd982('0x1a')](_0x48e7a1);return _0x15d5b1[_0xd982('0x20')]('Content-Range',_0x3aa14d+'-'+_0x18902c+'/'+_0x333f50)[_0xd982('0x1c')](_0x316902);}return null;};}function patchUpdates(_0x3913f4){return function(_0x454cfb){try{jsonpatch[_0xd982('0x21')](_0x454cfb,_0x3913f4,!![]);}catch(_0x4df069){return BPromise['reject'](_0x4df069);}return _0x454cfb[_0xd982('0x22')]();};}function saveUpdates(_0xc09828,_0x1e3cfd){return function(_0x142df8){if(_0x142df8){return _0x142df8[_0xd982('0x23')](_0xc09828)[_0xd982('0x24')](function(_0xa1889d){return _0xa1889d;});}return null;};}function removeEntity(_0x5b7d6b,_0x473988){return function(_0x4d19ac){if(_0x4d19ac){return _0x4d19ac[_0xd982('0x25')]()[_0xd982('0x24')](function(){_0x5b7d6b['status'](0xcc)[_0xd982('0x1b')]();});}};}function handleEntityNotFound(_0x1ed761,_0x4060a9){return function(_0x5b14ec){if(!_0x5b14ec){_0x1ed761[_0xd982('0x26')](0x194);}return _0x5b14ec;};}function handleError(_0xa30534,_0x166441){_0x166441=_0x166441||0x1f4;return function(_0xf6be2f){logger[_0xd982('0x27')](_0xf6be2f[_0xd982('0x28')]);if(_0xf6be2f[_0xd982('0x29')]){delete _0xf6be2f[_0xd982('0x29')];}_0xa30534[_0xd982('0x1a')](_0x166441)[_0xd982('0x2a')](_0xf6be2f);};}exports[_0xd982('0x2b')]=function(_0x5387c7,_0x32b04c){var _0x4feeb0={},_0x1e7c3d={},_0x4eece5={'count':0x0,'rows':[]};var _0x5e0bb0=_['map'](db[_0xd982('0x2c')][_0xd982('0x2d')],function(_0xe3f6cb){return{'name':_0xe3f6cb[_0xd982('0x2e')],'type':_0xe3f6cb[_0xd982('0x2f')][_0xd982('0x30')]};});_0x1e7c3d[_0xd982('0x31')]=_['map'](_0x5e0bb0,_0xd982('0x29'));_0x1e7c3d[_0xd982('0x32')]=_['keys'](_0x5387c7['query']);_0x1e7c3d[_0xd982('0x33')]=_[_0xd982('0x34')](_0x1e7c3d[_0xd982('0x31')],_0x1e7c3d[_0xd982('0x32')]);_0x4feeb0[_0xd982('0x35')]=_[_0xd982('0x34')](_0x1e7c3d[_0xd982('0x31')],qs['fields'](_0x5387c7[_0xd982('0x32')][_0xd982('0x36')]));_0x4feeb0[_0xd982('0x35')]=_0x4feeb0[_0xd982('0x35')][_0xd982('0x37')]?_0x4feeb0[_0xd982('0x35')]:_0x1e7c3d[_0xd982('0x31')];if(!_0x5387c7[_0xd982('0x32')][_0xd982('0x38')](_0xd982('0x39'))){_0x4feeb0[_0xd982('0x1f')]=qs['limit'](_0x5387c7[_0xd982('0x32')][_0xd982('0x1f')]);_0x4feeb0[_0xd982('0x1e')]=qs[_0xd982('0x1e')](_0x5387c7['query']['offset']);}_0x4feeb0[_0xd982('0x3a')]=qs['sort'](_0x5387c7[_0xd982('0x32')][_0xd982('0x3b')]);_0x4feeb0[_0xd982('0x3c')]=qs[_0xd982('0x33')](_[_0xd982('0x3d')](_0x5387c7[_0xd982('0x32')],_0x1e7c3d[_0xd982('0x33')]),_0x5e0bb0);if(_0x5387c7[_0xd982('0x32')][_0xd982('0x3e')]){_0x4feeb0['where']=_['merge'](_0x4feeb0[_0xd982('0x3c')],{'$or':_['map'](_0x5e0bb0,function(_0x195ae0){if(_0x195ae0[_0xd982('0x2f')]!==_0xd982('0x3f')){var _0x2c4f48={};_0x2c4f48[_0x195ae0[_0xd982('0x29')]]={'$like':'%'+_0x5387c7['query'][_0xd982('0x3e')]+'%'};return _0x2c4f48;}})});}_0x4feeb0=_[_0xd982('0x40')]({},_0x4feeb0,_0x5387c7[_0xd982('0x41')]);var _0x46a6fa={'where':_0x4feeb0[_0xd982('0x3c')]};return db[_0xd982('0x2c')][_0xd982('0x1d')](_0x46a6fa)[_0xd982('0x24')](function(_0x17eec7){_0x4eece5[_0xd982('0x1d')]=_0x17eec7;if(_0x5387c7['query']['includeAll']){_0x4feeb0['include']=[{'all':!![]}];}return db[_0xd982('0x2c')][_0xd982('0x42')](_0x4feeb0);})['then'](function(_0xdef3ac){_0x4eece5[_0xd982('0x43')]=_0xdef3ac;return _0x4eece5;})[_0xd982('0x24')](respondWithFilteredResult(_0x32b04c,_0x4feeb0))[_0xd982('0x44')](handleError(_0x32b04c,null));};exports[_0xd982('0x45')]=function(_0x40c7e9,_0x4ac879){var _0x31f8de={'raw':!![],'where':{'id':_0x40c7e9[_0xd982('0x46')]['id']}},_0xddabaf={};_0xddabaf[_0xd982('0x31')]=_[_0xd982('0x47')](db[_0xd982('0x2c')][_0xd982('0x2d')]);_0xddabaf[_0xd982('0x32')]=_['keys'](_0x40c7e9[_0xd982('0x32')]);_0xddabaf[_0xd982('0x33')]=_['intersection'](_0xddabaf['model'],_0xddabaf[_0xd982('0x32')]);_0x31f8de[_0xd982('0x35')]=_[_0xd982('0x34')](_0xddabaf['model'],qs[_0xd982('0x36')](_0x40c7e9[_0xd982('0x32')][_0xd982('0x36')]));_0x31f8de['attributes']=_0x31f8de[_0xd982('0x35')][_0xd982('0x37')]?_0x31f8de['attributes']:_0xddabaf['model'];if(_0x40c7e9[_0xd982('0x32')]['includeAll']){_0x31f8de[_0xd982('0x48')]=[{'all':!![]}];}_0x31f8de=_['merge']({},_0x31f8de,_0x40c7e9['options']);return db[_0xd982('0x2c')]['find'](_0x31f8de)[_0xd982('0x24')](handleEntityNotFound(_0x4ac879,null))['then'](respondWithResult(_0x4ac879,null))[_0xd982('0x44')](handleError(_0x4ac879,null));};exports[_0xd982('0x49')]=function(_0x45daeb,_0x281884){return db[_0xd982('0x2c')][_0xd982('0x49')](_0x45daeb[_0xd982('0x4a')],{})[_0xd982('0x24')](respondWithResult(_0x281884,0xc9))['catch'](handleError(_0x281884,null));};exports[_0xd982('0x23')]=function(_0x4d374d,_0x46df15){if(_0x4d374d[_0xd982('0x4a')]['id']){delete _0x4d374d['body']['id'];}return db[_0xd982('0x2c')]['find']({'where':{'id':_0x4d374d[_0xd982('0x46')]['id']}})[_0xd982('0x24')](handleEntityNotFound(_0x46df15,null))[_0xd982('0x24')](saveUpdates(_0x4d374d[_0xd982('0x4a')],null))[_0xd982('0x24')](respondWithResult(_0x46df15,null))['catch'](handleError(_0x46df15,null));};exports[_0xd982('0x25')]=function(_0x4fc941,_0x2431af){return db[_0xd982('0x2c')][_0xd982('0x4b')]({'where':{'id':_0x4fc941[_0xd982('0x46')]['id']}})['then'](handleEntityNotFound(_0x2431af,null))[_0xd982('0x24')](removeEntity(_0x2431af,null))['catch'](handleError(_0x2431af,null));};exports[_0xd982('0x4c')]=function(_0x2af3d9,_0x30eb9c){return db['ChatTransferReport'][_0xd982('0x4c')]()[_0xd982('0x24')](respondWithResult(_0x30eb9c,null))[_0xd982('0x44')](handleError(_0x30eb9c,null));};