adad4f292fd86cbac49908164ece43da0e96ed54
[motion2.git] / server / api / jscriptyAnswerReport / jscriptyAnswerReport.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 _0x05c4=['attributes','intersection','fields','length','offset','sort','where','merge','VIRTUAL','options','findAll','rows','catch','show','params','includeAll','include','find','create','body','describe','eml-format','rimraf','zip-dir','moment','bluebird','mustache','sox','to-csv','lodash','squel','crypto','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../mysqldb','status','end','json','count','limit','Content-Range','apply','reject','save','update','then','destroy','sendStatus','stack','name','send','JscriptyAnswerReport','rawAttributes','type','key','model','map','query','keys','filters'];(function(_0x34be8f,_0x5da9ef){var _0x345213=function(_0x12b552){while(--_0x12b552){_0x34be8f['push'](_0x34be8f['shift']());}};_0x345213(++_0x5da9ef);}(_0x05c4,0xde));var _0x405c=function(_0x4afdd5,_0x4f4184){_0x4afdd5=_0x4afdd5-0x0;var _0x14a65d=_0x05c4[_0x4afdd5];return _0x14a65d;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x405c('0x0'));var rimraf=require(_0x405c('0x1'));var zipdir=require(_0x405c('0x2'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x405c('0x3'));var BPromise=require(_0x405c('0x4'));var Mustache=require(_0x405c('0x5'));var util=require('util');var path=require('path');var sox=require(_0x405c('0x6'));var csv=require(_0x405c('0x7'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x405c('0x8'));var squel=require(_0x405c('0x9'));var crypto=require(_0x405c('0xa'));var jsforce=require('jsforce');var deskjs=require(_0x405c('0xb'));var toCsv=require(_0x405c('0x7'));var querystring=require(_0x405c('0xc'));var Papa=require('papaparse');var Redis=require(_0x405c('0xd'));var authService=require(_0x405c('0xe'));var qs=require(_0x405c('0xf'));var as=require(_0x405c('0x10'));var hardwareService=require(_0x405c('0x11'));var logger=require(_0x405c('0x12'))(_0x405c('0x13'));var utils=require('../../config/utils');var config=require('../../config/environment');var db=require(_0x405c('0x14'))['db'];function respondWithStatusCode(_0x2d58b9,_0x1a788e){_0x1a788e=_0x1a788e||0xcc;return function(_0x5c30e4){if(_0x5c30e4){return _0x2d58b9['sendStatus'](_0x1a788e);}return _0x2d58b9[_0x405c('0x15')](_0x1a788e)[_0x405c('0x16')]();};}function respondWithResult(_0x9fb2e8,_0x354262){_0x354262=_0x354262||0xc8;return function(_0x1671a5){if(_0x1671a5){return _0x9fb2e8[_0x405c('0x15')](_0x354262)[_0x405c('0x17')](_0x1671a5);}};}function respondWithFilteredResult(_0x846aa5,_0x35921c){return function(_0x1cb391){if(_0x1cb391){var _0x3b8c71=_0x1cb391[_0x405c('0x18')],_0x483da4=_0x35921c['offset'],_0x5b8c7e=_0x35921c['offset']+_0x35921c[_0x405c('0x19')],_0x11c373;if(_0x5b8c7e>=_0x3b8c71){_0x5b8c7e=_0x3b8c71;_0x11c373=0xc8;}else{_0x11c373=0xce;}_0x846aa5[_0x405c('0x15')](_0x11c373);return _0x846aa5['set'](_0x405c('0x1a'),_0x483da4+'-'+_0x5b8c7e+'/'+_0x3b8c71)[_0x405c('0x17')](_0x1cb391);}return null;};}function patchUpdates(_0x224f03){return function(_0x21e191){try{jsonpatch[_0x405c('0x1b')](_0x21e191,_0x224f03,!![]);}catch(_0x246d7b){return BPromise[_0x405c('0x1c')](_0x246d7b);}return _0x21e191[_0x405c('0x1d')]();};}function saveUpdates(_0x502fa2,_0x1faf0a){return function(_0x22ff43){if(_0x22ff43){return _0x22ff43[_0x405c('0x1e')](_0x502fa2)[_0x405c('0x1f')](function(_0x393c9a){return _0x393c9a;});}return null;};}function removeEntity(_0x42268d,_0x3d8547){return function(_0x412f59){if(_0x412f59){return _0x412f59[_0x405c('0x20')]()[_0x405c('0x1f')](function(){_0x42268d[_0x405c('0x15')](0xcc)[_0x405c('0x16')]();});}};}function handleEntityNotFound(_0x215a86,_0x28d249){return function(_0x1d50b2){if(!_0x1d50b2){_0x215a86[_0x405c('0x21')](0x194);}return _0x1d50b2;};}function handleError(_0x516b47,_0x4f6e02){_0x4f6e02=_0x4f6e02||0x1f4;return function(_0x5e2b9d){logger['error'](_0x5e2b9d[_0x405c('0x22')]);if(_0x5e2b9d['name']){delete _0x5e2b9d[_0x405c('0x23')];}_0x516b47['status'](_0x4f6e02)[_0x405c('0x24')](_0x5e2b9d);};}exports['index']=function(_0x28a996,_0x408d68){var _0x3cef01={},_0x4160e1={},_0x416cf5={'count':0x0,'rows':[]};var _0x1431cc=_['map'](db[_0x405c('0x25')][_0x405c('0x26')],function(_0x4bcb17){return{'name':_0x4bcb17['fieldName'],'type':_0x4bcb17[_0x405c('0x27')][_0x405c('0x28')]};});_0x4160e1[_0x405c('0x29')]=_[_0x405c('0x2a')](_0x1431cc,_0x405c('0x23'));_0x4160e1[_0x405c('0x2b')]=_[_0x405c('0x2c')](_0x28a996[_0x405c('0x2b')]);_0x4160e1[_0x405c('0x2d')]=_['intersection'](_0x4160e1[_0x405c('0x29')],_0x4160e1['query']);_0x3cef01[_0x405c('0x2e')]=_[_0x405c('0x2f')](_0x4160e1[_0x405c('0x29')],qs[_0x405c('0x30')](_0x28a996[_0x405c('0x2b')][_0x405c('0x30')]));_0x3cef01[_0x405c('0x2e')]=_0x3cef01['attributes'][_0x405c('0x31')]?_0x3cef01[_0x405c('0x2e')]:_0x4160e1[_0x405c('0x29')];if(!_0x28a996[_0x405c('0x2b')]['hasOwnProperty']('nolimit')){_0x3cef01['limit']=qs[_0x405c('0x19')](_0x28a996[_0x405c('0x2b')][_0x405c('0x19')]);_0x3cef01[_0x405c('0x32')]=qs['offset'](_0x28a996['query'][_0x405c('0x32')]);}_0x3cef01['order']=qs[_0x405c('0x33')](_0x28a996[_0x405c('0x2b')][_0x405c('0x33')]);_0x3cef01['where']=qs[_0x405c('0x2d')](_['pick'](_0x28a996[_0x405c('0x2b')],_0x4160e1[_0x405c('0x2d')]),_0x1431cc);if(_0x28a996['query']['filter']){_0x3cef01[_0x405c('0x34')]=_[_0x405c('0x35')](_0x3cef01[_0x405c('0x34')],{'$or':_[_0x405c('0x2a')](_0x1431cc,function(_0x3614be){if(_0x3614be[_0x405c('0x27')]!==_0x405c('0x36')){var _0x57ee74={};_0x57ee74[_0x3614be['name']]={'$like':'%'+_0x28a996['query']['filter']+'%'};return _0x57ee74;}})});}_0x3cef01=_[_0x405c('0x35')]({},_0x3cef01,_0x28a996[_0x405c('0x37')]);var _0x350b80={'where':_0x3cef01[_0x405c('0x34')]};return db[_0x405c('0x25')][_0x405c('0x18')](_0x350b80)[_0x405c('0x1f')](function(_0x4760f4){_0x416cf5[_0x405c('0x18')]=_0x4760f4;if(_0x28a996[_0x405c('0x2b')]['includeAll']){_0x3cef01['include']=[{'all':!![]}];}return db['JscriptyAnswerReport'][_0x405c('0x38')](_0x3cef01);})['then'](function(_0x5dd748){_0x416cf5[_0x405c('0x39')]=_0x5dd748;return _0x416cf5;})[_0x405c('0x1f')](respondWithFilteredResult(_0x408d68,_0x3cef01))[_0x405c('0x3a')](handleError(_0x408d68,null));};exports[_0x405c('0x3b')]=function(_0x18dfd4,_0x51a221){var _0x492f9c={'raw':!![],'where':{'id':_0x18dfd4[_0x405c('0x3c')]['id']}},_0x132ac8={};_0x132ac8[_0x405c('0x29')]=_[_0x405c('0x2c')](db['JscriptyAnswerReport'][_0x405c('0x26')]);_0x132ac8[_0x405c('0x2b')]=_[_0x405c('0x2c')](_0x18dfd4[_0x405c('0x2b')]);_0x132ac8[_0x405c('0x2d')]=_[_0x405c('0x2f')](_0x132ac8[_0x405c('0x29')],_0x132ac8[_0x405c('0x2b')]);_0x492f9c[_0x405c('0x2e')]=_[_0x405c('0x2f')](_0x132ac8['model'],qs[_0x405c('0x30')](_0x18dfd4['query'][_0x405c('0x30')]));_0x492f9c[_0x405c('0x2e')]=_0x492f9c[_0x405c('0x2e')][_0x405c('0x31')]?_0x492f9c[_0x405c('0x2e')]:_0x132ac8[_0x405c('0x29')];if(_0x18dfd4[_0x405c('0x2b')][_0x405c('0x3d')]){_0x492f9c[_0x405c('0x3e')]=[{'all':!![]}];}_0x492f9c=_[_0x405c('0x35')]({},_0x492f9c,_0x18dfd4['options']);return db[_0x405c('0x25')][_0x405c('0x3f')](_0x492f9c)[_0x405c('0x1f')](handleEntityNotFound(_0x51a221,null))[_0x405c('0x1f')](respondWithResult(_0x51a221,null))[_0x405c('0x3a')](handleError(_0x51a221,null));};exports[_0x405c('0x40')]=function(_0x31989c,_0x49cbad){return db['JscriptyAnswerReport']['create'](_0x31989c[_0x405c('0x41')],{})[_0x405c('0x1f')](respondWithResult(_0x49cbad,0xc9))[_0x405c('0x3a')](handleError(_0x49cbad,null));};exports[_0x405c('0x1e')]=function(_0x4fdfb5,_0x33b861){if(_0x4fdfb5[_0x405c('0x41')]['id']){delete _0x4fdfb5[_0x405c('0x41')]['id'];}return db[_0x405c('0x25')]['find']({'where':{'id':_0x4fdfb5['params']['id']}})[_0x405c('0x1f')](handleEntityNotFound(_0x33b861,null))['then'](saveUpdates(_0x4fdfb5['body'],null))[_0x405c('0x1f')](respondWithResult(_0x33b861,null))[_0x405c('0x3a')](handleError(_0x33b861,null));};exports[_0x405c('0x20')]=function(_0x1796ab,_0x1ed2dd){return db[_0x405c('0x25')][_0x405c('0x3f')]({'where':{'id':_0x1796ab[_0x405c('0x3c')]['id']}})['then'](handleEntityNotFound(_0x1ed2dd,null))[_0x405c('0x1f')](removeEntity(_0x1ed2dd,null))[_0x405c('0x3a')](handleError(_0x1ed2dd,null));};exports[_0x405c('0x42')]=function(_0x1e953a,_0x22bea4){return db[_0x405c('0x25')][_0x405c('0x42')]()[_0x405c('0x1f')](respondWithResult(_0x22bea4,null))[_0x405c('0x3a')](handleError(_0x22bea4,null));};