Built motion from commit 9d0783e6.|2.6.13
[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 _0x3bc7=['request-promise','bluebird','mustache','util','path','to-csv','fs-extra','lodash','squel','crypto','desk.js','querystring','papaparse','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','undefined','limit','offset','count','set','Content-Range','json','apply','reject','update','then','destroy','stack','name','send','map','ChatTransferReport','rawAttributes','fieldName','type','key','model','query','intersection','attributes','hasOwnProperty','nolimit','order','sort','where','pick','filters','merge','VIRTUAL','include','rows','show','params','keys','fields','length','includeAll','find','catch','create','body','describe','eml-format','rimraf','fast-json-patch'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x3bc7,0x16f));var _0x73bc=function(_0x3b199a,_0x37a6a3){_0x3b199a=_0x3b199a-0x0;var _0x3716bb=_0x3bc7[_0x3b199a];return _0x3716bb;};'use strict';var emlformat=require(_0x73bc('0x0'));var rimraf=require(_0x73bc('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x73bc('0x2'));var rp=require(_0x73bc('0x3'));var moment=require('moment');var BPromise=require(_0x73bc('0x4'));var Mustache=require(_0x73bc('0x5'));var util=require(_0x73bc('0x6'));var path=require(_0x73bc('0x7'));var sox=require('sox');var csv=require(_0x73bc('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x73bc('0x9'));var _=require(_0x73bc('0xa'));var squel=require(_0x73bc('0xb'));var crypto=require(_0x73bc('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x73bc('0xd'));var toCsv=require('to-csv');var querystring=require(_0x73bc('0xe'));var Papa=require(_0x73bc('0xf'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x73bc('0x10'));var as=require(_0x73bc('0x11'));var hardwareService=require(_0x73bc('0x12'));var logger=require(_0x73bc('0x13'))(_0x73bc('0x14'));var utils=require('../../config/utils');var config=require(_0x73bc('0x15'));var licenseUtil=require(_0x73bc('0x16'));var db=require(_0x73bc('0x17'))['db'];function respondWithStatusCode(_0x11af65,_0x41609a){_0x41609a=_0x41609a||0xcc;return function(_0x5d5f8b){if(_0x5d5f8b){return _0x11af65[_0x73bc('0x18')](_0x41609a);}return _0x11af65[_0x73bc('0x19')](_0x41609a)[_0x73bc('0x1a')]();};}function respondWithResult(_0x48111e,_0x4f41ac){_0x4f41ac=_0x4f41ac||0xc8;return function(_0x33fc2d){if(_0x33fc2d){return _0x48111e['status'](_0x4f41ac)['json'](_0x33fc2d);}};}function respondWithFilteredResult(_0x35dc66,_0x2a0426){return function(_0x1e44d2){if(_0x1e44d2){var _0x59ed17=typeof _0x2a0426['offset']===_0x73bc('0x1b')&&typeof _0x2a0426[_0x73bc('0x1c')]===_0x73bc('0x1b');var _0x2a9517=_0x1e44d2['count'];var _0x34a30c=_0x59ed17?0x0:_0x2a0426[_0x73bc('0x1d')];var _0x272fb6=_0x59ed17?_0x1e44d2[_0x73bc('0x1e')]:_0x2a0426[_0x73bc('0x1d')]+_0x2a0426['limit'];var _0x10ffae;if(_0x272fb6>=_0x2a9517){_0x272fb6=_0x2a9517;_0x10ffae=0xc8;}else{_0x10ffae=0xce;}_0x35dc66['status'](_0x10ffae);return _0x35dc66[_0x73bc('0x1f')](_0x73bc('0x20'),_0x34a30c+'-'+_0x272fb6+'/'+_0x2a9517)[_0x73bc('0x21')](_0x1e44d2);}return null;};}function patchUpdates(_0x5a2c6b){return function(_0x384a26){try{jsonpatch[_0x73bc('0x22')](_0x384a26,_0x5a2c6b,!![]);}catch(_0x7f5907){return BPromise[_0x73bc('0x23')](_0x7f5907);}return _0x384a26['save']();};}function saveUpdates(_0x1095c7,_0x2632f7){return function(_0xf0cc53){if(_0xf0cc53){return _0xf0cc53[_0x73bc('0x24')](_0x1095c7)[_0x73bc('0x25')](function(_0xa804fe){return _0xa804fe;});}return null;};}function removeEntity(_0x4f26a9,_0x46fbf3){return function(_0x328bd4){if(_0x328bd4){return _0x328bd4[_0x73bc('0x26')]()[_0x73bc('0x25')](function(){_0x4f26a9['status'](0xcc)[_0x73bc('0x1a')]();});}};}function handleEntityNotFound(_0x4166e1,_0xefd034){return function(_0x458a35){if(!_0x458a35){_0x4166e1[_0x73bc('0x18')](0x194);}return _0x458a35;};}function handleError(_0x261678,_0x95ee6f){_0x95ee6f=_0x95ee6f||0x1f4;return function(_0x35fbb6){logger['error'](_0x35fbb6[_0x73bc('0x27')]);if(_0x35fbb6[_0x73bc('0x28')]){delete _0x35fbb6[_0x73bc('0x28')];}_0x261678['status'](_0x95ee6f)[_0x73bc('0x29')](_0x35fbb6);};}exports['index']=function(_0x191c61,_0x23e333){var _0x39986e={},_0x13c363={},_0x3f7808={'count':0x0,'rows':[]};var _0x1afbec=_[_0x73bc('0x2a')](db[_0x73bc('0x2b')][_0x73bc('0x2c')],function(_0x125e8f){return{'name':_0x125e8f[_0x73bc('0x2d')],'type':_0x125e8f[_0x73bc('0x2e')][_0x73bc('0x2f')]};});_0x13c363[_0x73bc('0x30')]=_[_0x73bc('0x2a')](_0x1afbec,_0x73bc('0x28'));_0x13c363[_0x73bc('0x31')]=_['keys'](_0x191c61[_0x73bc('0x31')]);_0x13c363['filters']=_['intersection'](_0x13c363[_0x73bc('0x30')],_0x13c363[_0x73bc('0x31')]);_0x39986e['attributes']=_[_0x73bc('0x32')](_0x13c363['model'],qs['fields'](_0x191c61[_0x73bc('0x31')]['fields']));_0x39986e[_0x73bc('0x33')]=_0x39986e[_0x73bc('0x33')]['length']?_0x39986e[_0x73bc('0x33')]:_0x13c363[_0x73bc('0x30')];if(!_0x191c61['query'][_0x73bc('0x34')](_0x73bc('0x35'))){_0x39986e[_0x73bc('0x1c')]=qs[_0x73bc('0x1c')](_0x191c61[_0x73bc('0x31')]['limit']);_0x39986e[_0x73bc('0x1d')]=qs[_0x73bc('0x1d')](_0x191c61['query'][_0x73bc('0x1d')]);}_0x39986e[_0x73bc('0x36')]=qs['sort'](_0x191c61['query'][_0x73bc('0x37')]);_0x39986e[_0x73bc('0x38')]=qs['filters'](_[_0x73bc('0x39')](_0x191c61[_0x73bc('0x31')],_0x13c363[_0x73bc('0x3a')]),_0x1afbec);if(_0x191c61['query']['filter']){_0x39986e[_0x73bc('0x38')]=_[_0x73bc('0x3b')](_0x39986e[_0x73bc('0x38')],{'$or':_[_0x73bc('0x2a')](_0x1afbec,function(_0x357939){if(_0x357939[_0x73bc('0x2e')]!==_0x73bc('0x3c')){var _0x26a2de={};_0x26a2de[_0x357939[_0x73bc('0x28')]]={'$like':'%'+_0x191c61[_0x73bc('0x31')]['filter']+'%'};return _0x26a2de;}})});}_0x39986e=_[_0x73bc('0x3b')]({},_0x39986e,_0x191c61['options']);var _0x45da5c={'where':_0x39986e[_0x73bc('0x38')]};return db[_0x73bc('0x2b')][_0x73bc('0x1e')](_0x45da5c)[_0x73bc('0x25')](function(_0x92d780){_0x3f7808[_0x73bc('0x1e')]=_0x92d780;if(_0x191c61[_0x73bc('0x31')]['includeAll']){_0x39986e[_0x73bc('0x3d')]=[{'all':!![]}];}return db[_0x73bc('0x2b')]['findAll'](_0x39986e);})['then'](function(_0x260426){_0x3f7808[_0x73bc('0x3e')]=_0x260426;return _0x3f7808;})[_0x73bc('0x25')](respondWithFilteredResult(_0x23e333,_0x39986e))['catch'](handleError(_0x23e333,null));};exports[_0x73bc('0x3f')]=function(_0x180c02,_0x2f2a81){var _0x4be710={'raw':!![],'where':{'id':_0x180c02[_0x73bc('0x40')]['id']}},_0x17b808={};_0x17b808['model']=_[_0x73bc('0x41')](db[_0x73bc('0x2b')]['rawAttributes']);_0x17b808[_0x73bc('0x31')]=_[_0x73bc('0x41')](_0x180c02[_0x73bc('0x31')]);_0x17b808[_0x73bc('0x3a')]=_[_0x73bc('0x32')](_0x17b808[_0x73bc('0x30')],_0x17b808['query']);_0x4be710[_0x73bc('0x33')]=_[_0x73bc('0x32')](_0x17b808[_0x73bc('0x30')],qs[_0x73bc('0x42')](_0x180c02['query'][_0x73bc('0x42')]));_0x4be710[_0x73bc('0x33')]=_0x4be710['attributes'][_0x73bc('0x43')]?_0x4be710[_0x73bc('0x33')]:_0x17b808[_0x73bc('0x30')];if(_0x180c02['query'][_0x73bc('0x44')]){_0x4be710[_0x73bc('0x3d')]=[{'all':!![]}];}_0x4be710=_[_0x73bc('0x3b')]({},_0x4be710,_0x180c02['options']);return db[_0x73bc('0x2b')][_0x73bc('0x45')](_0x4be710)[_0x73bc('0x25')](handleEntityNotFound(_0x2f2a81,null))['then'](respondWithResult(_0x2f2a81,null))[_0x73bc('0x46')](handleError(_0x2f2a81,null));};exports['create']=function(_0x336fd3,_0x264bf5){return db[_0x73bc('0x2b')][_0x73bc('0x47')](_0x336fd3[_0x73bc('0x48')],{})[_0x73bc('0x25')](respondWithResult(_0x264bf5,0xc9))[_0x73bc('0x46')](handleError(_0x264bf5,null));};exports[_0x73bc('0x24')]=function(_0x2f1dcd,_0x243d11){if(_0x2f1dcd[_0x73bc('0x48')]['id']){delete _0x2f1dcd['body']['id'];}return db['ChatTransferReport'][_0x73bc('0x45')]({'where':{'id':_0x2f1dcd[_0x73bc('0x40')]['id']}})[_0x73bc('0x25')](handleEntityNotFound(_0x243d11,null))[_0x73bc('0x25')](saveUpdates(_0x2f1dcd['body'],null))[_0x73bc('0x25')](respondWithResult(_0x243d11,null))[_0x73bc('0x46')](handleError(_0x243d11,null));};exports[_0x73bc('0x26')]=function(_0x1e7168,_0x50e6fa){return db[_0x73bc('0x2b')]['find']({'where':{'id':_0x1e7168[_0x73bc('0x40')]['id']}})[_0x73bc('0x25')](handleEntityNotFound(_0x50e6fa,null))[_0x73bc('0x25')](removeEntity(_0x50e6fa,null))[_0x73bc('0x46')](handleError(_0x50e6fa,null));};exports[_0x73bc('0x49')]=function(_0x1d4b86,_0x5cd31f){return db['ChatTransferReport']['describe']()[_0x73bc('0x25')](respondWithResult(_0x5cd31f,null))[_0x73bc('0x46')](handleError(_0x5cd31f,null));};