37889ec03eb8c95f60ccba81cc19b344cfc8a13e
[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 _0xd2ad=['ChatTransferReport','rawAttributes','fieldName','type','key','model','query','filters','intersection','attributes','fields','nolimit','order','sort','where','pick','VIRTUAL','filter','options','includeAll','include','findAll','catch','params','keys','length','merge','find','create','body','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','to-csv','fs-extra','lodash','crypto','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../config/logger','api','../../config/utils','../../config/license/util','sendStatus','end','status','undefined','offset','count','limit','set','Content-Range','reject','save','update','then','error','stack','name','send'];(function(_0x329d13,_0x1aff27){var _0x33efd9=function(_0x265b7d){while(--_0x265b7d){_0x329d13['push'](_0x329d13['shift']());}};_0x33efd9(++_0x1aff27);}(_0xd2ad,0x13b));var _0xdd2a=function(_0x373dee,_0x1a8c45){_0x373dee=_0x373dee-0x0;var _0x46798f=_0xd2ad[_0x373dee];return _0x46798f;};'use strict';var emlformat=require(_0xdd2a('0x0'));var rimraf=require(_0xdd2a('0x1'));var zipdir=require(_0xdd2a('0x2'));var jsonpatch=require(_0xdd2a('0x3'));var rp=require(_0xdd2a('0x4'));var moment=require(_0xdd2a('0x5'));var BPromise=require('bluebird');var Mustache=require(_0xdd2a('0x6'));var util=require(_0xdd2a('0x7'));var path=require(_0xdd2a('0x8'));var sox=require(_0xdd2a('0x9'));var csv=require(_0xdd2a('0xa'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xdd2a('0xb'));var _=require(_0xdd2a('0xc'));var squel=require('squel');var crypto=require(_0xdd2a('0xd'));var jsforce=require('jsforce');var deskjs=require(_0xdd2a('0xe'));var toCsv=require(_0xdd2a('0xa'));var querystring=require(_0xdd2a('0xf'));var Papa=require(_0xdd2a('0x10'));var Redis=require(_0xdd2a('0x11'));var authService=require('../../components/auth/service');var qs=require(_0xdd2a('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xdd2a('0x13'))(_0xdd2a('0x14'));var utils=require(_0xdd2a('0x15'));var config=require('../../config/environment');var licenseUtil=require(_0xdd2a('0x16'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x381447,_0x37160e){_0x37160e=_0x37160e||0xcc;return function(_0x1dec8a){if(_0x1dec8a){return _0x381447[_0xdd2a('0x17')](_0x37160e);}return _0x381447['status'](_0x37160e)[_0xdd2a('0x18')]();};}function respondWithResult(_0x42f414,_0x109cb2){_0x109cb2=_0x109cb2||0xc8;return function(_0x26748e){if(_0x26748e){return _0x42f414[_0xdd2a('0x19')](_0x109cb2)['json'](_0x26748e);}};}function respondWithFilteredResult(_0x50abac,_0x58ed46){return function(_0x5a19ed){if(_0x5a19ed){var _0x13af5c=typeof _0x58ed46['offset']===_0xdd2a('0x1a')&&typeof _0x58ed46['limit']===_0xdd2a('0x1a');var _0x3fc569=_0x5a19ed['count'];var _0x40bdd5=_0x13af5c?0x0:_0x58ed46[_0xdd2a('0x1b')];var _0xebd63c=_0x13af5c?_0x5a19ed[_0xdd2a('0x1c')]:_0x58ed46['offset']+_0x58ed46[_0xdd2a('0x1d')];var _0x5a7803;if(_0xebd63c>=_0x3fc569){_0xebd63c=_0x3fc569;_0x5a7803=0xc8;}else{_0x5a7803=0xce;}_0x50abac[_0xdd2a('0x19')](_0x5a7803);return _0x50abac[_0xdd2a('0x1e')](_0xdd2a('0x1f'),_0x40bdd5+'-'+_0xebd63c+'/'+_0x3fc569)['json'](_0x5a19ed);}return null;};}function patchUpdates(_0x1a584e){return function(_0xa7ed2c){try{jsonpatch['apply'](_0xa7ed2c,_0x1a584e,!![]);}catch(_0x37818c){return BPromise[_0xdd2a('0x20')](_0x37818c);}return _0xa7ed2c[_0xdd2a('0x21')]();};}function saveUpdates(_0x437260,_0x5ce928){return function(_0x2029ce){if(_0x2029ce){return _0x2029ce[_0xdd2a('0x22')](_0x437260)[_0xdd2a('0x23')](function(_0x1bddbe){return _0x1bddbe;});}return null;};}function removeEntity(_0x255fc7,_0x3acafc){return function(_0x4a0730){if(_0x4a0730){return _0x4a0730['destroy']()[_0xdd2a('0x23')](function(){_0x255fc7[_0xdd2a('0x19')](0xcc)[_0xdd2a('0x18')]();});}};}function handleEntityNotFound(_0x2d727d,_0x1f2ac7){return function(_0x4c3578){if(!_0x4c3578){_0x2d727d[_0xdd2a('0x17')](0x194);}return _0x4c3578;};}function handleError(_0x3a40b3,_0xb1967e){_0xb1967e=_0xb1967e||0x1f4;return function(_0x2f4794){logger[_0xdd2a('0x24')](_0x2f4794[_0xdd2a('0x25')]);if(_0x2f4794[_0xdd2a('0x26')]){delete _0x2f4794[_0xdd2a('0x26')];}_0x3a40b3['status'](_0xb1967e)[_0xdd2a('0x27')](_0x2f4794);};}exports['index']=function(_0x37ba2a,_0x3934a5){var _0x175ee8={},_0x2239d1={},_0xb10df3={'count':0x0,'rows':[]};var _0x265340=_['map'](db[_0xdd2a('0x28')][_0xdd2a('0x29')],function(_0x1b12ce){return{'name':_0x1b12ce[_0xdd2a('0x2a')],'type':_0x1b12ce[_0xdd2a('0x2b')][_0xdd2a('0x2c')]};});_0x2239d1[_0xdd2a('0x2d')]=_['map'](_0x265340,_0xdd2a('0x26'));_0x2239d1[_0xdd2a('0x2e')]=_['keys'](_0x37ba2a[_0xdd2a('0x2e')]);_0x2239d1[_0xdd2a('0x2f')]=_[_0xdd2a('0x30')](_0x2239d1[_0xdd2a('0x2d')],_0x2239d1['query']);_0x175ee8[_0xdd2a('0x31')]=_[_0xdd2a('0x30')](_0x2239d1[_0xdd2a('0x2d')],qs[_0xdd2a('0x32')](_0x37ba2a[_0xdd2a('0x2e')][_0xdd2a('0x32')]));_0x175ee8['attributes']=_0x175ee8[_0xdd2a('0x31')]['length']?_0x175ee8[_0xdd2a('0x31')]:_0x2239d1['model'];if(!_0x37ba2a['query']['hasOwnProperty'](_0xdd2a('0x33'))){_0x175ee8[_0xdd2a('0x1d')]=qs[_0xdd2a('0x1d')](_0x37ba2a[_0xdd2a('0x2e')][_0xdd2a('0x1d')]);_0x175ee8[_0xdd2a('0x1b')]=qs['offset'](_0x37ba2a['query'][_0xdd2a('0x1b')]);}_0x175ee8[_0xdd2a('0x34')]=qs[_0xdd2a('0x35')](_0x37ba2a[_0xdd2a('0x2e')][_0xdd2a('0x35')]);_0x175ee8[_0xdd2a('0x36')]=qs[_0xdd2a('0x2f')](_[_0xdd2a('0x37')](_0x37ba2a[_0xdd2a('0x2e')],_0x2239d1[_0xdd2a('0x2f')]),_0x265340);if(_0x37ba2a[_0xdd2a('0x2e')]['filter']){_0x175ee8['where']=_['merge'](_0x175ee8[_0xdd2a('0x36')],{'$or':_['map'](_0x265340,function(_0x54cc95){if(_0x54cc95[_0xdd2a('0x2b')]!==_0xdd2a('0x38')){var _0x2d2fe6={};_0x2d2fe6[_0x54cc95[_0xdd2a('0x26')]]={'$like':'%'+_0x37ba2a[_0xdd2a('0x2e')][_0xdd2a('0x39')]+'%'};return _0x2d2fe6;}})});}_0x175ee8=_['merge']({},_0x175ee8,_0x37ba2a[_0xdd2a('0x3a')]);var _0x2e4cb5={'where':_0x175ee8[_0xdd2a('0x36')]};return db[_0xdd2a('0x28')][_0xdd2a('0x1c')](_0x2e4cb5)[_0xdd2a('0x23')](function(_0x5d074b){_0xb10df3[_0xdd2a('0x1c')]=_0x5d074b;if(_0x37ba2a['query'][_0xdd2a('0x3b')]){_0x175ee8[_0xdd2a('0x3c')]=[{'all':!![]}];}return db[_0xdd2a('0x28')][_0xdd2a('0x3d')](_0x175ee8);})['then'](function(_0x252656){_0xb10df3['rows']=_0x252656;return _0xb10df3;})[_0xdd2a('0x23')](respondWithFilteredResult(_0x3934a5,_0x175ee8))[_0xdd2a('0x3e')](handleError(_0x3934a5,null));};exports['show']=function(_0x91186d,_0x48bafc){var _0x5031a6={'raw':!![],'where':{'id':_0x91186d[_0xdd2a('0x3f')]['id']}},_0xc5906a={};_0xc5906a['model']=_[_0xdd2a('0x40')](db['ChatTransferReport'][_0xdd2a('0x29')]);_0xc5906a[_0xdd2a('0x2e')]=_[_0xdd2a('0x40')](_0x91186d[_0xdd2a('0x2e')]);_0xc5906a[_0xdd2a('0x2f')]=_[_0xdd2a('0x30')](_0xc5906a[_0xdd2a('0x2d')],_0xc5906a[_0xdd2a('0x2e')]);_0x5031a6[_0xdd2a('0x31')]=_[_0xdd2a('0x30')](_0xc5906a[_0xdd2a('0x2d')],qs[_0xdd2a('0x32')](_0x91186d[_0xdd2a('0x2e')]['fields']));_0x5031a6['attributes']=_0x5031a6[_0xdd2a('0x31')][_0xdd2a('0x41')]?_0x5031a6['attributes']:_0xc5906a[_0xdd2a('0x2d')];if(_0x91186d[_0xdd2a('0x2e')][_0xdd2a('0x3b')]){_0x5031a6[_0xdd2a('0x3c')]=[{'all':!![]}];}_0x5031a6=_[_0xdd2a('0x42')]({},_0x5031a6,_0x91186d[_0xdd2a('0x3a')]);return db[_0xdd2a('0x28')][_0xdd2a('0x43')](_0x5031a6)[_0xdd2a('0x23')](handleEntityNotFound(_0x48bafc,null))[_0xdd2a('0x23')](respondWithResult(_0x48bafc,null))['catch'](handleError(_0x48bafc,null));};exports[_0xdd2a('0x44')]=function(_0x5c8ab2,_0x306ce5){return db[_0xdd2a('0x28')][_0xdd2a('0x44')](_0x5c8ab2[_0xdd2a('0x45')],{})[_0xdd2a('0x23')](respondWithResult(_0x306ce5,0xc9))['catch'](handleError(_0x306ce5,null));};exports[_0xdd2a('0x22')]=function(_0x7de236,_0x284373){if(_0x7de236[_0xdd2a('0x45')]['id']){delete _0x7de236[_0xdd2a('0x45')]['id'];}return db['ChatTransferReport']['find']({'where':{'id':_0x7de236[_0xdd2a('0x3f')]['id']}})[_0xdd2a('0x23')](handleEntityNotFound(_0x284373,null))[_0xdd2a('0x23')](saveUpdates(_0x7de236['body'],null))['then'](respondWithResult(_0x284373,null))[_0xdd2a('0x3e')](handleError(_0x284373,null));};exports['destroy']=function(_0x5bf9c7,_0x29a308){return db[_0xdd2a('0x28')][_0xdd2a('0x43')]({'where':{'id':_0x5bf9c7[_0xdd2a('0x3f')]['id']}})[_0xdd2a('0x23')](handleEntityNotFound(_0x29a308,null))[_0xdd2a('0x23')](removeEntity(_0x29a308,null))['catch'](handleError(_0x29a308,null));};exports[_0xdd2a('0x46')]=function(_0x259cf9,_0x275ab4){return db[_0xdd2a('0x28')][_0xdd2a('0x46')]()[_0xdd2a('0x23')](respondWithResult(_0x275ab4,null))['catch'](handleError(_0x275ab4,null));};