1021f32961c099d53168c887d2ca24e1293ccdb7
[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 _0x9509=['count','offset','limit','Content-Range','apply','reject','update','then','destroy','sendStatus','error','stack','name','send','map','ChatTransferReport','type','model','query','keys','filters','intersection','attributes','fields','order','sort','where','merge','filter','options','include','rows','length','find','create','body','params','catch','eml-format','rimraf','fast-json-patch','request-promise','bluebird','mustache','util','sox','to-csv','ejs','lodash','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../mysqldb','status','end'];(function(_0xcff7e0,_0x13c9c8){var _0x1dddc6=function(_0x568429){while(--_0x568429){_0xcff7e0['push'](_0xcff7e0['shift']());}};_0x1dddc6(++_0x13c9c8);}(_0x9509,0xe3));var _0x9950=function(_0x488813,_0x51c1b3){_0x488813=_0x488813-0x0;var _0x29be1a=_0x9509[_0x488813];return _0x29be1a;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x9950('0x0'));var rimraf=require(_0x9950('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x9950('0x2'));var rp=require(_0x9950('0x3'));var moment=require('moment');var BPromise=require(_0x9950('0x4'));var Mustache=require(_0x9950('0x5'));var util=require(_0x9950('0x6'));var path=require('path');var sox=require(_0x9950('0x7'));var csv=require(_0x9950('0x8'));var ejs=require(_0x9950('0x9'));var fs=require('fs');var _=require(_0x9950('0xa'));var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0x9950('0xb'));var deskjs=require(_0x9950('0xc'));var toCsv=require(_0x9950('0x8'));var querystring=require('querystring');var Papa=require(_0x9950('0xd'));var Redis=require(_0x9950('0xe'));var authService=require(_0x9950('0xf'));var qs=require(_0x9950('0x10'));var as=require(_0x9950('0x11'));var hardwareService=require(_0x9950('0x12'));var logger=require(_0x9950('0x13'))(_0x9950('0x14'));var utils=require('../../config/utils');var config=require(_0x9950('0x15'));var licenseUtil=require('../../config/license/util');var db=require(_0x9950('0x16'))['db'];function respondWithStatusCode(_0x3ed3b5,_0x349750){_0x349750=_0x349750||0xcc;return function(_0x4c2cc9){if(_0x4c2cc9){return _0x3ed3b5['sendStatus'](_0x349750);}return _0x3ed3b5[_0x9950('0x17')](_0x349750)[_0x9950('0x18')]();};}function respondWithResult(_0x21c1f7,_0x3263cb){_0x3263cb=_0x3263cb||0xc8;return function(_0x55a947){if(_0x55a947){return _0x21c1f7['status'](_0x3263cb)['json'](_0x55a947);}};}function respondWithFilteredResult(_0x4d4ee8,_0x3b8a7b){return function(_0xe1cfd2){if(_0xe1cfd2){var _0x2a807b=_0xe1cfd2[_0x9950('0x19')],_0x2425a6=_0x3b8a7b['offset'],_0x83a9c5=_0x3b8a7b[_0x9950('0x1a')]+_0x3b8a7b[_0x9950('0x1b')],_0x442aed;if(_0x83a9c5>=_0x2a807b){_0x83a9c5=_0x2a807b;_0x442aed=0xc8;}else{_0x442aed=0xce;}_0x4d4ee8[_0x9950('0x17')](_0x442aed);return _0x4d4ee8['set'](_0x9950('0x1c'),_0x2425a6+'-'+_0x83a9c5+'/'+_0x2a807b)['json'](_0xe1cfd2);}return null;};}function patchUpdates(_0x470dd5){return function(_0x310972){try{jsonpatch[_0x9950('0x1d')](_0x310972,_0x470dd5,!![]);}catch(_0x368207){return BPromise[_0x9950('0x1e')](_0x368207);}return _0x310972['save']();};}function saveUpdates(_0x365656,_0x1f6c5e){return function(_0x104581){if(_0x104581){return _0x104581[_0x9950('0x1f')](_0x365656)[_0x9950('0x20')](function(_0x556cd2){return _0x556cd2;});}return null;};}function removeEntity(_0x348c96,_0x11cec7){return function(_0x57bf46){if(_0x57bf46){return _0x57bf46[_0x9950('0x21')]()[_0x9950('0x20')](function(){_0x348c96[_0x9950('0x17')](0xcc)[_0x9950('0x18')]();});}};}function handleEntityNotFound(_0x24a166,_0x3fa26c){return function(_0x1bad6e){if(!_0x1bad6e){_0x24a166[_0x9950('0x22')](0x194);}return _0x1bad6e;};}function handleError(_0x67655a,_0x169ba5){_0x169ba5=_0x169ba5||0x1f4;return function(_0x3ca69a){logger[_0x9950('0x23')](_0x3ca69a[_0x9950('0x24')]);if(_0x3ca69a[_0x9950('0x25')]){delete _0x3ca69a[_0x9950('0x25')];}_0x67655a[_0x9950('0x17')](_0x169ba5)[_0x9950('0x26')](_0x3ca69a);};}exports['index']=function(_0xdf529f,_0xbd90c6){var _0x306bde={},_0xc20124={},_0x4076f2={'count':0x0,'rows':[]};var _0x10185f=_[_0x9950('0x27')](db[_0x9950('0x28')]['rawAttributes'],function(_0x4872b4){return{'name':_0x4872b4['fieldName'],'type':_0x4872b4[_0x9950('0x29')]['key']};});_0xc20124[_0x9950('0x2a')]=_[_0x9950('0x27')](_0x10185f,_0x9950('0x25'));_0xc20124[_0x9950('0x2b')]=_[_0x9950('0x2c')](_0xdf529f[_0x9950('0x2b')]);_0xc20124[_0x9950('0x2d')]=_[_0x9950('0x2e')](_0xc20124[_0x9950('0x2a')],_0xc20124['query']);_0x306bde[_0x9950('0x2f')]=_[_0x9950('0x2e')](_0xc20124[_0x9950('0x2a')],qs['fields'](_0xdf529f['query'][_0x9950('0x30')]));_0x306bde[_0x9950('0x2f')]=_0x306bde[_0x9950('0x2f')]['length']?_0x306bde['attributes']:_0xc20124['model'];if(!_0xdf529f[_0x9950('0x2b')]['hasOwnProperty']('nolimit')){_0x306bde[_0x9950('0x1b')]=qs['limit'](_0xdf529f[_0x9950('0x2b')][_0x9950('0x1b')]);_0x306bde[_0x9950('0x1a')]=qs[_0x9950('0x1a')](_0xdf529f[_0x9950('0x2b')][_0x9950('0x1a')]);}_0x306bde[_0x9950('0x31')]=qs['sort'](_0xdf529f[_0x9950('0x2b')][_0x9950('0x32')]);_0x306bde['where']=qs[_0x9950('0x2d')](_['pick'](_0xdf529f[_0x9950('0x2b')],_0xc20124[_0x9950('0x2d')]),_0x10185f);if(_0xdf529f[_0x9950('0x2b')]['filter']){_0x306bde[_0x9950('0x33')]=_[_0x9950('0x34')](_0x306bde[_0x9950('0x33')],{'$or':_[_0x9950('0x27')](_0x10185f,function(_0x3e81c6){if(_0x3e81c6[_0x9950('0x29')]!=='VIRTUAL'){var _0x4a0a09={};_0x4a0a09[_0x3e81c6[_0x9950('0x25')]]={'$like':'%'+_0xdf529f['query'][_0x9950('0x35')]+'%'};return _0x4a0a09;}})});}_0x306bde=_[_0x9950('0x34')]({},_0x306bde,_0xdf529f[_0x9950('0x36')]);var _0x51d735={'where':_0x306bde[_0x9950('0x33')]};return db[_0x9950('0x28')][_0x9950('0x19')](_0x51d735)[_0x9950('0x20')](function(_0x4f2d83){_0x4076f2['count']=_0x4f2d83;if(_0xdf529f[_0x9950('0x2b')]['includeAll']){_0x306bde[_0x9950('0x37')]=[{'all':!![]}];}return db[_0x9950('0x28')]['findAll'](_0x306bde);})[_0x9950('0x20')](function(_0x3fb4fa){_0x4076f2[_0x9950('0x38')]=_0x3fb4fa;return _0x4076f2;})[_0x9950('0x20')](respondWithFilteredResult(_0xbd90c6,_0x306bde))['catch'](handleError(_0xbd90c6,null));};exports['show']=function(_0x4351a7,_0x665a8f){var _0x5195b7={'raw':!![],'where':{'id':_0x4351a7['params']['id']}},_0x301e90={};_0x301e90[_0x9950('0x2a')]=_[_0x9950('0x2c')](db['ChatTransferReport']['rawAttributes']);_0x301e90[_0x9950('0x2b')]=_[_0x9950('0x2c')](_0x4351a7[_0x9950('0x2b')]);_0x301e90['filters']=_[_0x9950('0x2e')](_0x301e90[_0x9950('0x2a')],_0x301e90[_0x9950('0x2b')]);_0x5195b7[_0x9950('0x2f')]=_['intersection'](_0x301e90[_0x9950('0x2a')],qs['fields'](_0x4351a7['query'][_0x9950('0x30')]));_0x5195b7[_0x9950('0x2f')]=_0x5195b7[_0x9950('0x2f')][_0x9950('0x39')]?_0x5195b7['attributes']:_0x301e90[_0x9950('0x2a')];if(_0x4351a7['query']['includeAll']){_0x5195b7[_0x9950('0x37')]=[{'all':!![]}];}_0x5195b7=_[_0x9950('0x34')]({},_0x5195b7,_0x4351a7[_0x9950('0x36')]);return db[_0x9950('0x28')][_0x9950('0x3a')](_0x5195b7)[_0x9950('0x20')](handleEntityNotFound(_0x665a8f,null))[_0x9950('0x20')](respondWithResult(_0x665a8f,null))['catch'](handleError(_0x665a8f,null));};exports[_0x9950('0x3b')]=function(_0x3c4cd2,_0x10e978){return db[_0x9950('0x28')][_0x9950('0x3b')](_0x3c4cd2[_0x9950('0x3c')],{})[_0x9950('0x20')](respondWithResult(_0x10e978,0xc9))['catch'](handleError(_0x10e978,null));};exports[_0x9950('0x1f')]=function(_0x23b282,_0x5d2e62){if(_0x23b282[_0x9950('0x3c')]['id']){delete _0x23b282[_0x9950('0x3c')]['id'];}return db['ChatTransferReport'][_0x9950('0x3a')]({'where':{'id':_0x23b282[_0x9950('0x3d')]['id']}})[_0x9950('0x20')](handleEntityNotFound(_0x5d2e62,null))['then'](saveUpdates(_0x23b282[_0x9950('0x3c')],null))['then'](respondWithResult(_0x5d2e62,null))[_0x9950('0x3e')](handleError(_0x5d2e62,null));};exports[_0x9950('0x21')]=function(_0x12449f,_0x4839b8){return db['ChatTransferReport'][_0x9950('0x3a')]({'where':{'id':_0x12449f[_0x9950('0x3d')]['id']}})[_0x9950('0x20')](handleEntityNotFound(_0x4839b8,null))[_0x9950('0x20')](removeEntity(_0x4839b8,null))[_0x9950('0x3e')](handleError(_0x4839b8,null));};exports['describe']=function(_0x3f86a5,_0x22a0fc){return db[_0x9950('0x28')]['describe']()[_0x9950('0x20')](respondWithResult(_0x22a0fc,null))[_0x9950('0x3e')](handleError(_0x22a0fc,null));};