93cd2374d13b70ed10204ca73a9b74895b05bd0c
[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 _0x484e=['params','include','options','create','body','destroy','find','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','to-csv','ejs','fs-extra','squel','crypto','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/license/util','sendStatus','status','end','json','offset','undefined','limit','count','set','apply','reject','save','update','then','error','stack','map','ChatTransferReport','rawAttributes','fieldName','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','type','VIRTUAL','name','includeAll','catch','show'];(function(_0x41a21a,_0xf520c9){var _0xa0542b=function(_0x598c3c){while(--_0x598c3c){_0x41a21a['push'](_0x41a21a['shift']());}};_0xa0542b(++_0xf520c9);}(_0x484e,0x1b8));var _0xe484=function(_0x5e8127,_0x380e9b){_0x5e8127=_0x5e8127-0x0;var _0x1ab2a0=_0x484e[_0x5e8127];return _0x1ab2a0;};'use strict';var emlformat=require(_0xe484('0x0'));var rimraf=require(_0xe484('0x1'));var zipdir=require(_0xe484('0x2'));var jsonpatch=require(_0xe484('0x3'));var rp=require(_0xe484('0x4'));var moment=require(_0xe484('0x5'));var BPromise=require(_0xe484('0x6'));var Mustache=require('mustache');var util=require('util');var path=require('path');var sox=require('sox');var csv=require(_0xe484('0x7'));var ejs=require(_0xe484('0x8'));var fs=require('fs');var fs_extra=require(_0xe484('0x9'));var _=require('lodash');var squel=require(_0xe484('0xa'));var crypto=require(_0xe484('0xb'));var jsforce=require('jsforce');var deskjs=require(_0xe484('0xc'));var toCsv=require(_0xe484('0x7'));var querystring=require(_0xe484('0xd'));var Papa=require(_0xe484('0xe'));var Redis=require(_0xe484('0xf'));var authService=require(_0xe484('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0xe484('0x11'));var hardwareService=require(_0xe484('0x12'));var logger=require(_0xe484('0x13'))(_0xe484('0x14'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0xe484('0x15'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0xcd1fa0,_0x2b3a56){_0x2b3a56=_0x2b3a56||0xcc;return function(_0x20592f){if(_0x20592f){return _0xcd1fa0[_0xe484('0x16')](_0x2b3a56);}return _0xcd1fa0[_0xe484('0x17')](_0x2b3a56)[_0xe484('0x18')]();};}function respondWithResult(_0x57f042,_0x2a22b1){_0x2a22b1=_0x2a22b1||0xc8;return function(_0x1aaa3a){if(_0x1aaa3a){return _0x57f042[_0xe484('0x17')](_0x2a22b1)[_0xe484('0x19')](_0x1aaa3a);}};}function respondWithFilteredResult(_0x18b30e,_0x49243e){return function(_0x58a531){if(_0x58a531){var _0x5d435f=typeof _0x49243e[_0xe484('0x1a')]===_0xe484('0x1b')&&typeof _0x49243e[_0xe484('0x1c')]==='undefined';var _0x34fc17=_0x58a531['count'];var _0x195600=_0x5d435f?0x0:_0x49243e[_0xe484('0x1a')];var _0x102d03=_0x5d435f?_0x58a531[_0xe484('0x1d')]:_0x49243e[_0xe484('0x1a')]+_0x49243e['limit'];var _0x4387f4;if(_0x102d03>=_0x34fc17){_0x102d03=_0x34fc17;_0x4387f4=0xc8;}else{_0x4387f4=0xce;}_0x18b30e[_0xe484('0x17')](_0x4387f4);return _0x18b30e[_0xe484('0x1e')]('Content-Range',_0x195600+'-'+_0x102d03+'/'+_0x34fc17)['json'](_0x58a531);}return null;};}function patchUpdates(_0x455ebf){return function(_0x2c57eb){try{jsonpatch[_0xe484('0x1f')](_0x2c57eb,_0x455ebf,!![]);}catch(_0x5e7b22){return BPromise[_0xe484('0x20')](_0x5e7b22);}return _0x2c57eb[_0xe484('0x21')]();};}function saveUpdates(_0x2259a0,_0x4bc70b){return function(_0x2be829){if(_0x2be829){return _0x2be829[_0xe484('0x22')](_0x2259a0)[_0xe484('0x23')](function(_0x512742){return _0x512742;});}return null;};}function removeEntity(_0x2b1731,_0x14cea8){return function(_0x6a645d){if(_0x6a645d){return _0x6a645d['destroy']()[_0xe484('0x23')](function(){_0x2b1731['status'](0xcc)[_0xe484('0x18')]();});}};}function handleEntityNotFound(_0x7689d6,_0x4ec6d9){return function(_0x519d22){if(!_0x519d22){_0x7689d6[_0xe484('0x16')](0x194);}return _0x519d22;};}function handleError(_0x2af8c3,_0x3daa55){_0x3daa55=_0x3daa55||0x1f4;return function(_0x544aae){logger[_0xe484('0x24')](_0x544aae[_0xe484('0x25')]);if(_0x544aae['name']){delete _0x544aae['name'];}_0x2af8c3[_0xe484('0x17')](_0x3daa55)['send'](_0x544aae);};}exports['index']=function(_0x4aee6d,_0x3822f8){var _0x6af986={},_0x16e50c={},_0x3b1182={'count':0x0,'rows':[]};var _0x8a7ee9=_[_0xe484('0x26')](db[_0xe484('0x27')][_0xe484('0x28')],function(_0x684084){return{'name':_0x684084[_0xe484('0x29')],'type':_0x684084['type'][_0xe484('0x2a')]};});_0x16e50c[_0xe484('0x2b')]=_[_0xe484('0x26')](_0x8a7ee9,'name');_0x16e50c[_0xe484('0x2c')]=_[_0xe484('0x2d')](_0x4aee6d[_0xe484('0x2c')]);_0x16e50c[_0xe484('0x2e')]=_[_0xe484('0x2f')](_0x16e50c[_0xe484('0x2b')],_0x16e50c[_0xe484('0x2c')]);_0x6af986[_0xe484('0x30')]=_[_0xe484('0x2f')](_0x16e50c[_0xe484('0x2b')],qs[_0xe484('0x31')](_0x4aee6d['query'][_0xe484('0x31')]));_0x6af986['attributes']=_0x6af986[_0xe484('0x30')][_0xe484('0x32')]?_0x6af986[_0xe484('0x30')]:_0x16e50c[_0xe484('0x2b')];if(!_0x4aee6d[_0xe484('0x2c')][_0xe484('0x33')](_0xe484('0x34'))){_0x6af986[_0xe484('0x1c')]=qs[_0xe484('0x1c')](_0x4aee6d[_0xe484('0x2c')][_0xe484('0x1c')]);_0x6af986['offset']=qs['offset'](_0x4aee6d['query'][_0xe484('0x1a')]);}_0x6af986[_0xe484('0x35')]=qs[_0xe484('0x36')](_0x4aee6d[_0xe484('0x2c')]['sort']);_0x6af986[_0xe484('0x37')]=qs[_0xe484('0x2e')](_[_0xe484('0x38')](_0x4aee6d[_0xe484('0x2c')],_0x16e50c[_0xe484('0x2e')]),_0x8a7ee9);if(_0x4aee6d['query'][_0xe484('0x39')]){_0x6af986[_0xe484('0x37')]=_['merge'](_0x6af986[_0xe484('0x37')],{'$or':_[_0xe484('0x26')](_0x8a7ee9,function(_0x5d4299){if(_0x5d4299[_0xe484('0x3a')]!==_0xe484('0x3b')){var _0x217104={};_0x217104[_0x5d4299[_0xe484('0x3c')]]={'$like':'%'+_0x4aee6d[_0xe484('0x2c')]['filter']+'%'};return _0x217104;}})});}_0x6af986=_['merge']({},_0x6af986,_0x4aee6d['options']);var _0x469207={'where':_0x6af986[_0xe484('0x37')]};return db[_0xe484('0x27')][_0xe484('0x1d')](_0x469207)[_0xe484('0x23')](function(_0x447431){_0x3b1182[_0xe484('0x1d')]=_0x447431;if(_0x4aee6d[_0xe484('0x2c')][_0xe484('0x3d')]){_0x6af986['include']=[{'all':!![]}];}return db[_0xe484('0x27')]['findAll'](_0x6af986);})['then'](function(_0x4830d8){_0x3b1182['rows']=_0x4830d8;return _0x3b1182;})[_0xe484('0x23')](respondWithFilteredResult(_0x3822f8,_0x6af986))[_0xe484('0x3e')](handleError(_0x3822f8,null));};exports[_0xe484('0x3f')]=function(_0x2f66cd,_0x5bddbd){var _0x31abc1={'raw':!![],'where':{'id':_0x2f66cd[_0xe484('0x40')]['id']}},_0x1794b8={};_0x1794b8[_0xe484('0x2b')]=_['keys'](db[_0xe484('0x27')]['rawAttributes']);_0x1794b8[_0xe484('0x2c')]=_['keys'](_0x2f66cd[_0xe484('0x2c')]);_0x1794b8['filters']=_['intersection'](_0x1794b8['model'],_0x1794b8[_0xe484('0x2c')]);_0x31abc1[_0xe484('0x30')]=_[_0xe484('0x2f')](_0x1794b8[_0xe484('0x2b')],qs[_0xe484('0x31')](_0x2f66cd['query'][_0xe484('0x31')]));_0x31abc1['attributes']=_0x31abc1[_0xe484('0x30')][_0xe484('0x32')]?_0x31abc1[_0xe484('0x30')]:_0x1794b8[_0xe484('0x2b')];if(_0x2f66cd[_0xe484('0x2c')][_0xe484('0x3d')]){_0x31abc1[_0xe484('0x41')]=[{'all':!![]}];}_0x31abc1=_['merge']({},_0x31abc1,_0x2f66cd[_0xe484('0x42')]);return db['ChatTransferReport']['find'](_0x31abc1)[_0xe484('0x23')](handleEntityNotFound(_0x5bddbd,null))[_0xe484('0x23')](respondWithResult(_0x5bddbd,null))[_0xe484('0x3e')](handleError(_0x5bddbd,null));};exports['create']=function(_0x36ab84,_0x5d3d46){return db[_0xe484('0x27')][_0xe484('0x43')](_0x36ab84[_0xe484('0x44')],{})['then'](respondWithResult(_0x5d3d46,0xc9))[_0xe484('0x3e')](handleError(_0x5d3d46,null));};exports['update']=function(_0x44b2a7,_0x7947e9){if(_0x44b2a7[_0xe484('0x44')]['id']){delete _0x44b2a7[_0xe484('0x44')]['id'];}return db['ChatTransferReport']['find']({'where':{'id':_0x44b2a7[_0xe484('0x40')]['id']}})[_0xe484('0x23')](handleEntityNotFound(_0x7947e9,null))[_0xe484('0x23')](saveUpdates(_0x44b2a7[_0xe484('0x44')],null))[_0xe484('0x23')](respondWithResult(_0x7947e9,null))['catch'](handleError(_0x7947e9,null));};exports[_0xe484('0x45')]=function(_0x1fb015,_0x2affc3){return db[_0xe484('0x27')][_0xe484('0x46')]({'where':{'id':_0x1fb015[_0xe484('0x40')]['id']}})['then'](handleEntityNotFound(_0x2affc3,null))[_0xe484('0x23')](removeEntity(_0x2affc3,null))[_0xe484('0x3e')](handleError(_0x2affc3,null));};exports[_0xe484('0x47')]=function(_0x2660ac,_0x38dd8f){return db[_0xe484('0x27')][_0xe484('0x47')]()[_0xe484('0x23')](respondWithResult(_0x38dd8f,null))[_0xe484('0x3e')](handleError(_0x38dd8f,null));};