29f8070e0cf92901e49cf6513a979212fac26e82
[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 _0x4361=['sox','to-csv','ejs','lodash','squel','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','apply','save','update','then','destroy','error','stack','name','send','map','ChatTransferReport','rawAttributes','type','keys','query','filters','intersection','attributes','model','fields','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','params','length','find','create','body','describe','html-pdf','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path'];(function(_0x554758,_0x288416){var _0x411a30=function(_0x45dc0d){while(--_0x45dc0d){_0x554758['push'](_0x554758['shift']());}};_0x411a30(++_0x288416);}(_0x4361,0x1b9));var _0x1436=function(_0x491a7f,_0x28bb80){_0x491a7f=_0x491a7f-0x0;var _0x3d8f44=_0x4361[_0x491a7f];return _0x3d8f44;};'use strict';var pdf=require(_0x1436('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x1436('0x1'));var zipdir=require(_0x1436('0x2'));var jsonpatch=require(_0x1436('0x3'));var rp=require('request-promise');var moment=require(_0x1436('0x4'));var BPromise=require(_0x1436('0x5'));var Mustache=require(_0x1436('0x6'));var util=require(_0x1436('0x7'));var path=require(_0x1436('0x8'));var sox=require(_0x1436('0x9'));var csv=require(_0x1436('0xa'));var ejs=require(_0x1436('0xb'));var fs=require('fs');var _=require(_0x1436('0xc'));var squel=require(_0x1436('0xd'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x1436('0xa'));var querystring=require(_0x1436('0xe'));var Papa=require(_0x1436('0xf'));var Redis=require(_0x1436('0x10'));var authService=require(_0x1436('0x11'));var qs=require(_0x1436('0x12'));var as=require(_0x1436('0x13'));var hardwareService=require(_0x1436('0x14'));var logger=require(_0x1436('0x15'))('api');var utils=require(_0x1436('0x16'));var config=require(_0x1436('0x17'));var db=require(_0x1436('0x18'))['db'];function respondWithStatusCode(_0x5aa664,_0x3aa78b){_0x3aa78b=_0x3aa78b||0xcc;return function(_0x200c3c){if(_0x200c3c){return _0x5aa664[_0x1436('0x19')](_0x3aa78b);}return _0x5aa664[_0x1436('0x1a')](_0x3aa78b)[_0x1436('0x1b')]();};}function respondWithResult(_0x36e57b,_0x3f443a){_0x3f443a=_0x3f443a||0xc8;return function(_0x21edea){if(_0x21edea){return _0x36e57b[_0x1436('0x1a')](_0x3f443a)[_0x1436('0x1c')](_0x21edea);}};}function respondWithFilteredResult(_0x30e187,_0x46f658){return function(_0x4786b6){if(_0x4786b6){var _0x4dadfa=_0x4786b6[_0x1436('0x1d')],_0x303f7e=_0x46f658[_0x1436('0x1e')],_0x2ada01=_0x46f658[_0x1436('0x1e')]+_0x46f658[_0x1436('0x1f')],_0x245dc7;if(_0x2ada01>=_0x4dadfa){_0x2ada01=_0x4dadfa;_0x245dc7=0xc8;}else{_0x245dc7=0xce;}_0x30e187['status'](_0x245dc7);return _0x30e187[_0x1436('0x20')]('Content-Range',_0x303f7e+'-'+_0x2ada01+'/'+_0x4dadfa)[_0x1436('0x1c')](_0x4786b6);}return null;};}function patchUpdates(_0x485f12){return function(_0xcd0291){try{jsonpatch[_0x1436('0x21')](_0xcd0291,_0x485f12,!![]);}catch(_0x37d89c){return BPromise['reject'](_0x37d89c);}return _0xcd0291[_0x1436('0x22')]();};}function saveUpdates(_0x1a2d52,_0x312246){return function(_0x2f75b2){if(_0x2f75b2){return _0x2f75b2[_0x1436('0x23')](_0x1a2d52)[_0x1436('0x24')](function(_0x367b37){return _0x367b37;});}return null;};}function removeEntity(_0x397a33,_0x3ffc40){return function(_0x41bcce){if(_0x41bcce){return _0x41bcce[_0x1436('0x25')]()[_0x1436('0x24')](function(){_0x397a33[_0x1436('0x1a')](0xcc)[_0x1436('0x1b')]();});}};}function handleEntityNotFound(_0xcd4203,_0xa60f7a){return function(_0x2de015){if(!_0x2de015){_0xcd4203[_0x1436('0x19')](0x194);}return _0x2de015;};}function handleError(_0x1b2dd0,_0x17aa10){_0x17aa10=_0x17aa10||0x1f4;return function(_0x59ba43){logger[_0x1436('0x26')](_0x59ba43[_0x1436('0x27')]);if(_0x59ba43[_0x1436('0x28')]){delete _0x59ba43[_0x1436('0x28')];}_0x1b2dd0['status'](_0x17aa10)[_0x1436('0x29')](_0x59ba43);};}exports['index']=function(_0x9b5946,_0x49c3b0){var _0x434afa={},_0x1fb028={},_0x15fa52={'count':0x0,'rows':[]};var _0x208ca4=_[_0x1436('0x2a')](db[_0x1436('0x2b')][_0x1436('0x2c')],function(_0x43c30a){return{'name':_0x43c30a['fieldName'],'type':_0x43c30a[_0x1436('0x2d')]['key']};});_0x1fb028['model']=_['map'](_0x208ca4,_0x1436('0x28'));_0x1fb028['query']=_[_0x1436('0x2e')](_0x9b5946[_0x1436('0x2f')]);_0x1fb028[_0x1436('0x30')]=_[_0x1436('0x31')](_0x1fb028['model'],_0x1fb028['query']);_0x434afa[_0x1436('0x32')]=_['intersection'](_0x1fb028[_0x1436('0x33')],qs[_0x1436('0x34')](_0x9b5946[_0x1436('0x2f')][_0x1436('0x34')]));_0x434afa[_0x1436('0x32')]=_0x434afa[_0x1436('0x32')]['length']?_0x434afa[_0x1436('0x32')]:_0x1fb028[_0x1436('0x33')];if(!_0x9b5946['query'][_0x1436('0x35')](_0x1436('0x36'))){_0x434afa[_0x1436('0x1f')]=qs[_0x1436('0x1f')](_0x9b5946[_0x1436('0x2f')][_0x1436('0x1f')]);_0x434afa[_0x1436('0x1e')]=qs['offset'](_0x9b5946[_0x1436('0x2f')]['offset']);}_0x434afa[_0x1436('0x37')]=qs[_0x1436('0x38')](_0x9b5946['query']['sort']);_0x434afa[_0x1436('0x39')]=qs[_0x1436('0x30')](_[_0x1436('0x3a')](_0x9b5946['query'],_0x1fb028[_0x1436('0x30')]),_0x208ca4);if(_0x9b5946[_0x1436('0x2f')][_0x1436('0x3b')]){_0x434afa[_0x1436('0x39')]=_[_0x1436('0x3c')](_0x434afa[_0x1436('0x39')],{'$or':_[_0x1436('0x2a')](_0x208ca4,function(_0x305acd){if(_0x305acd['type']!==_0x1436('0x3d')){var _0x36f58a={};_0x36f58a[_0x305acd[_0x1436('0x28')]]={'$like':'%'+_0x9b5946[_0x1436('0x2f')][_0x1436('0x3b')]+'%'};return _0x36f58a;}})});}_0x434afa=_[_0x1436('0x3c')]({},_0x434afa,_0x9b5946[_0x1436('0x3e')]);var _0x1f0542={'where':_0x434afa['where']};return db[_0x1436('0x2b')]['count'](_0x1f0542)['then'](function(_0x496cc2){_0x15fa52[_0x1436('0x1d')]=_0x496cc2;if(_0x9b5946['query'][_0x1436('0x3f')]){_0x434afa[_0x1436('0x40')]=[{'all':!![]}];}return db['ChatTransferReport'][_0x1436('0x41')](_0x434afa);})['then'](function(_0x3a8c3e){_0x15fa52[_0x1436('0x42')]=_0x3a8c3e;return _0x15fa52;})[_0x1436('0x24')](respondWithFilteredResult(_0x49c3b0,_0x434afa))[_0x1436('0x43')](handleError(_0x49c3b0,null));};exports[_0x1436('0x44')]=function(_0x429230,_0x215681){var _0x35293d={'raw':!![],'where':{'id':_0x429230[_0x1436('0x45')]['id']}},_0xb35447={};_0xb35447['model']=_[_0x1436('0x2e')](db[_0x1436('0x2b')][_0x1436('0x2c')]);_0xb35447['query']=_[_0x1436('0x2e')](_0x429230[_0x1436('0x2f')]);_0xb35447['filters']=_['intersection'](_0xb35447[_0x1436('0x33')],_0xb35447['query']);_0x35293d[_0x1436('0x32')]=_['intersection'](_0xb35447[_0x1436('0x33')],qs[_0x1436('0x34')](_0x429230[_0x1436('0x2f')][_0x1436('0x34')]));_0x35293d[_0x1436('0x32')]=_0x35293d[_0x1436('0x32')][_0x1436('0x46')]?_0x35293d['attributes']:_0xb35447[_0x1436('0x33')];if(_0x429230[_0x1436('0x2f')][_0x1436('0x3f')]){_0x35293d[_0x1436('0x40')]=[{'all':!![]}];}_0x35293d=_['merge']({},_0x35293d,_0x429230[_0x1436('0x3e')]);return db['ChatTransferReport'][_0x1436('0x47')](_0x35293d)[_0x1436('0x24')](handleEntityNotFound(_0x215681,null))['then'](respondWithResult(_0x215681,null))[_0x1436('0x43')](handleError(_0x215681,null));};exports[_0x1436('0x48')]=function(_0xda1b0,_0x4ff92c){return db[_0x1436('0x2b')]['create'](_0xda1b0[_0x1436('0x49')],{})[_0x1436('0x24')](respondWithResult(_0x4ff92c,0xc9))[_0x1436('0x43')](handleError(_0x4ff92c,null));};exports[_0x1436('0x23')]=function(_0x4996c5,_0x508710){if(_0x4996c5[_0x1436('0x49')]['id']){delete _0x4996c5[_0x1436('0x49')]['id'];}return db[_0x1436('0x2b')]['find']({'where':{'id':_0x4996c5[_0x1436('0x45')]['id']}})[_0x1436('0x24')](handleEntityNotFound(_0x508710,null))['then'](saveUpdates(_0x4996c5[_0x1436('0x49')],null))[_0x1436('0x24')](respondWithResult(_0x508710,null))['catch'](handleError(_0x508710,null));};exports['destroy']=function(_0x40e6bb,_0x4c37a0){return db['ChatTransferReport'][_0x1436('0x47')]({'where':{'id':_0x40e6bb[_0x1436('0x45')]['id']}})[_0x1436('0x24')](handleEntityNotFound(_0x4c37a0,null))[_0x1436('0x24')](removeEntity(_0x4c37a0,null))[_0x1436('0x43')](handleError(_0x4c37a0,null));};exports['describe']=function(_0x1ed42c,_0x205d3c){return db['ChatTransferReport'][_0x1436('0x4a')]()['then'](respondWithResult(_0x205d3c,null))['catch'](handleError(_0x205d3c,null));};