f60108149a58400946adc0bd4a03982b8bdf1c87
[motion2.git] / server / api / jscriptyQuestionReport / jscriptyQuestionReport.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 _0x76b9=['to-csv','ejs','squel','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','end','limit','undefined','offset','set','apply','save','update','then','sendStatus','error','stack','name','send','map','JscriptyQuestionReport','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','order','where','filter','merge','VIRTUAL','options','count','includeAll','include','findAll','catch','show','find','create','body','params','describe','eml-format','zip-dir','request-promise','mustache','util','path','sox'];(function(_0x34340e,_0x23864a){var _0x33889b=function(_0x2a59a7){while(--_0x2a59a7){_0x34340e['push'](_0x34340e['shift']());}};_0x33889b(++_0x23864a);}(_0x76b9,0x148));var _0x976b=function(_0x52463a,_0x160170){_0x52463a=_0x52463a-0x0;var _0xad7ce2=_0x76b9[_0x52463a];return _0xad7ce2;};'use strict';var emlformat=require(_0x976b('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x976b('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0x976b('0x2'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x976b('0x3'));var util=require(_0x976b('0x4'));var path=require(_0x976b('0x5'));var sox=require(_0x976b('0x6'));var csv=require(_0x976b('0x7'));var ejs=require(_0x976b('0x8'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0x976b('0x9'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x976b('0x7'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x976b('0xa'));var authService=require(_0x976b('0xb'));var qs=require(_0x976b('0xc'));var as=require(_0x976b('0xd'));var hardwareService=require(_0x976b('0xe'));var logger=require('../../config/logger')(_0x976b('0xf'));var utils=require(_0x976b('0x10'));var config=require(_0x976b('0x11'));var licenseUtil=require(_0x976b('0x12'));var db=require(_0x976b('0x13'))['db'];function respondWithStatusCode(_0x15b3fc,_0x33ba4f){_0x33ba4f=_0x33ba4f||0xcc;return function(_0x109243){if(_0x109243){return _0x15b3fc['sendStatus'](_0x33ba4f);}return _0x15b3fc[_0x976b('0x14')](_0x33ba4f)[_0x976b('0x15')]();};}function respondWithResult(_0x1cf452,_0x5dea72){_0x5dea72=_0x5dea72||0xc8;return function(_0x2e0999){if(_0x2e0999){return _0x1cf452['status'](_0x5dea72)['json'](_0x2e0999);}};}function respondWithFilteredResult(_0x282e6b,_0x313ea7){return function(_0x194840){if(_0x194840){var _0x11c1d3=typeof _0x313ea7['offset']==='undefined'&&typeof _0x313ea7[_0x976b('0x16')]===_0x976b('0x17');var _0x2213c5=_0x194840['count'];var _0x66130=_0x11c1d3?0x0:_0x313ea7[_0x976b('0x18')];var _0x5e74c8=_0x11c1d3?_0x194840['count']:_0x313ea7[_0x976b('0x18')]+_0x313ea7[_0x976b('0x16')];var _0x11a050;if(_0x5e74c8>=_0x2213c5){_0x5e74c8=_0x2213c5;_0x11a050=0xc8;}else{_0x11a050=0xce;}_0x282e6b[_0x976b('0x14')](_0x11a050);return _0x282e6b[_0x976b('0x19')]('Content-Range',_0x66130+'-'+_0x5e74c8+'/'+_0x2213c5)['json'](_0x194840);}return null;};}function patchUpdates(_0x5408f1){return function(_0x48445f){try{jsonpatch[_0x976b('0x1a')](_0x48445f,_0x5408f1,!![]);}catch(_0x483cdf){return BPromise['reject'](_0x483cdf);}return _0x48445f[_0x976b('0x1b')]();};}function saveUpdates(_0x54f9ab,_0x440051){return function(_0x55542d){if(_0x55542d){return _0x55542d[_0x976b('0x1c')](_0x54f9ab)['then'](function(_0x488ad3){return _0x488ad3;});}return null;};}function removeEntity(_0x49c9fb,_0x2f85d3){return function(_0x121d95){if(_0x121d95){return _0x121d95['destroy']()[_0x976b('0x1d')](function(){_0x49c9fb[_0x976b('0x14')](0xcc)[_0x976b('0x15')]();});}};}function handleEntityNotFound(_0x44d3ab,_0x4d88b6){return function(_0x496fc6){if(!_0x496fc6){_0x44d3ab[_0x976b('0x1e')](0x194);}return _0x496fc6;};}function handleError(_0x181694,_0x17aede){_0x17aede=_0x17aede||0x1f4;return function(_0x46dc82){logger[_0x976b('0x1f')](_0x46dc82[_0x976b('0x20')]);if(_0x46dc82[_0x976b('0x21')]){delete _0x46dc82[_0x976b('0x21')];}_0x181694[_0x976b('0x14')](_0x17aede)[_0x976b('0x22')](_0x46dc82);};}exports['index']=function(_0x275ec3,_0x3c8bf6){var _0x4d2eb9={},_0x50ed73={},_0x282b52={'count':0x0,'rows':[]};var _0x51da78=_[_0x976b('0x23')](db[_0x976b('0x24')][_0x976b('0x25')],function(_0x34babe){return{'name':_0x34babe[_0x976b('0x26')],'type':_0x34babe[_0x976b('0x27')][_0x976b('0x28')]};});_0x50ed73[_0x976b('0x29')]=_[_0x976b('0x23')](_0x51da78,_0x976b('0x21'));_0x50ed73[_0x976b('0x2a')]=_[_0x976b('0x2b')](_0x275ec3[_0x976b('0x2a')]);_0x50ed73[_0x976b('0x2c')]=_[_0x976b('0x2d')](_0x50ed73[_0x976b('0x29')],_0x50ed73['query']);_0x4d2eb9[_0x976b('0x2e')]=_['intersection'](_0x50ed73['model'],qs[_0x976b('0x2f')](_0x275ec3[_0x976b('0x2a')][_0x976b('0x2f')]));_0x4d2eb9[_0x976b('0x2e')]=_0x4d2eb9[_0x976b('0x2e')][_0x976b('0x30')]?_0x4d2eb9[_0x976b('0x2e')]:_0x50ed73[_0x976b('0x29')];if(!_0x275ec3[_0x976b('0x2a')][_0x976b('0x31')]('nolimit')){_0x4d2eb9[_0x976b('0x16')]=qs[_0x976b('0x16')](_0x275ec3['query'][_0x976b('0x16')]);_0x4d2eb9[_0x976b('0x18')]=qs[_0x976b('0x18')](_0x275ec3[_0x976b('0x2a')][_0x976b('0x18')]);}_0x4d2eb9[_0x976b('0x32')]=qs['sort'](_0x275ec3[_0x976b('0x2a')]['sort']);_0x4d2eb9[_0x976b('0x33')]=qs[_0x976b('0x2c')](_['pick'](_0x275ec3[_0x976b('0x2a')],_0x50ed73[_0x976b('0x2c')]),_0x51da78);if(_0x275ec3[_0x976b('0x2a')][_0x976b('0x34')]){_0x4d2eb9[_0x976b('0x33')]=_[_0x976b('0x35')](_0x4d2eb9['where'],{'$or':_[_0x976b('0x23')](_0x51da78,function(_0x75a9fa){if(_0x75a9fa[_0x976b('0x27')]!==_0x976b('0x36')){var _0x29f76d={};_0x29f76d[_0x75a9fa[_0x976b('0x21')]]={'$like':'%'+_0x275ec3['query'][_0x976b('0x34')]+'%'};return _0x29f76d;}})});}_0x4d2eb9=_[_0x976b('0x35')]({},_0x4d2eb9,_0x275ec3[_0x976b('0x37')]);var _0x57979d={'where':_0x4d2eb9['where']};return db['JscriptyQuestionReport'][_0x976b('0x38')](_0x57979d)[_0x976b('0x1d')](function(_0x23cd45){_0x282b52[_0x976b('0x38')]=_0x23cd45;if(_0x275ec3['query'][_0x976b('0x39')]){_0x4d2eb9[_0x976b('0x3a')]=[{'all':!![]}];}return db[_0x976b('0x24')][_0x976b('0x3b')](_0x4d2eb9);})[_0x976b('0x1d')](function(_0x2d9a76){_0x282b52['rows']=_0x2d9a76;return _0x282b52;})[_0x976b('0x1d')](respondWithFilteredResult(_0x3c8bf6,_0x4d2eb9))[_0x976b('0x3c')](handleError(_0x3c8bf6,null));};exports[_0x976b('0x3d')]=function(_0xc290cd,_0x2ffd86){var _0x15a6dd={'raw':!![],'where':{'id':_0xc290cd['params']['id']}},_0x54725e={};_0x54725e[_0x976b('0x29')]=_[_0x976b('0x2b')](db['JscriptyQuestionReport'][_0x976b('0x25')]);_0x54725e[_0x976b('0x2a')]=_['keys'](_0xc290cd['query']);_0x54725e[_0x976b('0x2c')]=_[_0x976b('0x2d')](_0x54725e[_0x976b('0x29')],_0x54725e[_0x976b('0x2a')]);_0x15a6dd['attributes']=_[_0x976b('0x2d')](_0x54725e[_0x976b('0x29')],qs[_0x976b('0x2f')](_0xc290cd['query'][_0x976b('0x2f')]));_0x15a6dd[_0x976b('0x2e')]=_0x15a6dd[_0x976b('0x2e')]['length']?_0x15a6dd['attributes']:_0x54725e[_0x976b('0x29')];if(_0xc290cd['query'][_0x976b('0x39')]){_0x15a6dd[_0x976b('0x3a')]=[{'all':!![]}];}_0x15a6dd=_['merge']({},_0x15a6dd,_0xc290cd[_0x976b('0x37')]);return db[_0x976b('0x24')][_0x976b('0x3e')](_0x15a6dd)[_0x976b('0x1d')](handleEntityNotFound(_0x2ffd86,null))[_0x976b('0x1d')](respondWithResult(_0x2ffd86,null))[_0x976b('0x3c')](handleError(_0x2ffd86,null));};exports['create']=function(_0x25e622,_0x466d69){return db[_0x976b('0x24')][_0x976b('0x3f')](_0x25e622['body'],{})['then'](respondWithResult(_0x466d69,0xc9))['catch'](handleError(_0x466d69,null));};exports[_0x976b('0x1c')]=function(_0x34bbb2,_0x132a76){if(_0x34bbb2[_0x976b('0x40')]['id']){delete _0x34bbb2[_0x976b('0x40')]['id'];}return db['JscriptyQuestionReport'][_0x976b('0x3e')]({'where':{'id':_0x34bbb2['params']['id']}})['then'](handleEntityNotFound(_0x132a76,null))[_0x976b('0x1d')](saveUpdates(_0x34bbb2[_0x976b('0x40')],null))[_0x976b('0x1d')](respondWithResult(_0x132a76,null))['catch'](handleError(_0x132a76,null));};exports['destroy']=function(_0x1e89f2,_0x35a5bc){return db['JscriptyQuestionReport'][_0x976b('0x3e')]({'where':{'id':_0x1e89f2[_0x976b('0x41')]['id']}})[_0x976b('0x1d')](handleEntityNotFound(_0x35a5bc,null))[_0x976b('0x1d')](removeEntity(_0x35a5bc,null))[_0x976b('0x3c')](handleError(_0x35a5bc,null));};exports[_0x976b('0x42')]=function(_0x114889,_0x1f1cd4){return db['JscriptyQuestionReport']['describe']()['then'](respondWithResult(_0x1f1cd4,null))['catch'](handleError(_0x1f1cd4,null));};