239166c70a48f1ed7db7c30b64a6df073274f299
[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 _0x1829=['offset','undefined','limit','set','apply','reject','save','then','destroy','stack','name','index','JscriptyQuestionReport','rawAttributes','fieldName','key','map','query','keys','filters','intersection','attributes','model','fields','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','merge','options','count','includeAll','include','findAll','show','params','find','create','body','catch','update','describe','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','sox','fs-extra','squel','desk.js','to-csv','querystring','papaparse','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','sendStatus','status','end','json'];(function(_0x3b3d2b,_0xb7dfd5){var _0x324420=function(_0x2ed634){while(--_0x2ed634){_0x3b3d2b['push'](_0x3b3d2b['shift']());}};_0x324420(++_0xb7dfd5);}(_0x1829,0x1d8));var _0x9182=function(_0x29d915,_0x54a040){_0x29d915=_0x29d915-0x0;var _0x160f86=_0x1829[_0x29d915];return _0x160f86;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x9182('0x0'));var zipdir=require(_0x9182('0x1'));var jsonpatch=require(_0x9182('0x2'));var rp=require(_0x9182('0x3'));var moment=require(_0x9182('0x4'));var BPromise=require(_0x9182('0x5'));var Mustache=require(_0x9182('0x6'));var util=require('util');var path=require('path');var sox=require(_0x9182('0x7'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x9182('0x8'));var _=require('lodash');var squel=require(_0x9182('0x9'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x9182('0xa'));var toCsv=require(_0x9182('0xb'));var querystring=require(_0x9182('0xc'));var Papa=require(_0x9182('0xd'));var Redis=require('ioredis');var authService=require(_0x9182('0xe'));var qs=require('../../components/parsers/qs');var as=require(_0x9182('0xf'));var hardwareService=require(_0x9182('0x10'));var logger=require(_0x9182('0x11'))(_0x9182('0x12'));var utils=require(_0x9182('0x13'));var config=require('../../config/environment');var licenseUtil=require(_0x9182('0x14'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x247620,_0xd62cfc){_0xd62cfc=_0xd62cfc||0xcc;return function(_0x46051f){if(_0x46051f){return _0x247620[_0x9182('0x15')](_0xd62cfc);}return _0x247620[_0x9182('0x16')](_0xd62cfc)[_0x9182('0x17')]();};}function respondWithResult(_0x4c3faa,_0x2a0c8d){_0x2a0c8d=_0x2a0c8d||0xc8;return function(_0x151b25){if(_0x151b25){return _0x4c3faa[_0x9182('0x16')](_0x2a0c8d)[_0x9182('0x18')](_0x151b25);}};}function respondWithFilteredResult(_0x4d651f,_0x10d3f0){return function(_0x5cf1b2){if(_0x5cf1b2){var _0x280298=typeof _0x10d3f0[_0x9182('0x19')]===_0x9182('0x1a')&&typeof _0x10d3f0['limit']===_0x9182('0x1a');var _0x2c2aac=_0x5cf1b2['count'];var _0x5c0afa=_0x280298?0x0:_0x10d3f0[_0x9182('0x19')];var _0x3e0662=_0x280298?_0x5cf1b2['count']:_0x10d3f0[_0x9182('0x19')]+_0x10d3f0[_0x9182('0x1b')];var _0x422d4f;if(_0x3e0662>=_0x2c2aac){_0x3e0662=_0x2c2aac;_0x422d4f=0xc8;}else{_0x422d4f=0xce;}_0x4d651f[_0x9182('0x16')](_0x422d4f);return _0x4d651f[_0x9182('0x1c')]('Content-Range',_0x5c0afa+'-'+_0x3e0662+'/'+_0x2c2aac)[_0x9182('0x18')](_0x5cf1b2);}return null;};}function patchUpdates(_0x568562){return function(_0x4337d7){try{jsonpatch[_0x9182('0x1d')](_0x4337d7,_0x568562,!![]);}catch(_0x41dadc){return BPromise[_0x9182('0x1e')](_0x41dadc);}return _0x4337d7[_0x9182('0x1f')]();};}function saveUpdates(_0x7672fc,_0x46e394){return function(_0x23d8b7){if(_0x23d8b7){return _0x23d8b7['update'](_0x7672fc)[_0x9182('0x20')](function(_0x8a12a5){return _0x8a12a5;});}return null;};}function removeEntity(_0x26656e,_0x1c5535){return function(_0x3caa70){if(_0x3caa70){return _0x3caa70[_0x9182('0x21')]()[_0x9182('0x20')](function(){_0x26656e[_0x9182('0x16')](0xcc)[_0x9182('0x17')]();});}};}function handleEntityNotFound(_0x1915cc,_0x26e10f){return function(_0x1bfb9e){if(!_0x1bfb9e){_0x1915cc[_0x9182('0x15')](0x194);}return _0x1bfb9e;};}function handleError(_0xc76909,_0x4abc56){_0x4abc56=_0x4abc56||0x1f4;return function(_0x1f81a9){logger['error'](_0x1f81a9[_0x9182('0x22')]);if(_0x1f81a9[_0x9182('0x23')]){delete _0x1f81a9[_0x9182('0x23')];}_0xc76909[_0x9182('0x16')](_0x4abc56)['send'](_0x1f81a9);};}exports[_0x9182('0x24')]=function(_0x578e66,_0x37a1ab){var _0x51dea7={},_0x3dd804={},_0x55479a={'count':0x0,'rows':[]};var _0x4b7d14=_['map'](db[_0x9182('0x25')][_0x9182('0x26')],function(_0x3960d5){return{'name':_0x3960d5[_0x9182('0x27')],'type':_0x3960d5['type'][_0x9182('0x28')]};});_0x3dd804['model']=_[_0x9182('0x29')](_0x4b7d14,_0x9182('0x23'));_0x3dd804[_0x9182('0x2a')]=_[_0x9182('0x2b')](_0x578e66['query']);_0x3dd804[_0x9182('0x2c')]=_[_0x9182('0x2d')](_0x3dd804['model'],_0x3dd804[_0x9182('0x2a')]);_0x51dea7[_0x9182('0x2e')]=_[_0x9182('0x2d')](_0x3dd804[_0x9182('0x2f')],qs[_0x9182('0x30')](_0x578e66['query'][_0x9182('0x30')]));_0x51dea7[_0x9182('0x2e')]=_0x51dea7['attributes'][_0x9182('0x31')]?_0x51dea7['attributes']:_0x3dd804[_0x9182('0x2f')];if(!_0x578e66[_0x9182('0x2a')][_0x9182('0x32')](_0x9182('0x33'))){_0x51dea7[_0x9182('0x1b')]=qs[_0x9182('0x1b')](_0x578e66[_0x9182('0x2a')][_0x9182('0x1b')]);_0x51dea7[_0x9182('0x19')]=qs[_0x9182('0x19')](_0x578e66[_0x9182('0x2a')][_0x9182('0x19')]);}_0x51dea7[_0x9182('0x34')]=qs[_0x9182('0x35')](_0x578e66[_0x9182('0x2a')]['sort']);_0x51dea7['where']=qs[_0x9182('0x2c')](_[_0x9182('0x36')](_0x578e66[_0x9182('0x2a')],_0x3dd804['filters']),_0x4b7d14);if(_0x578e66['query'][_0x9182('0x37')]){_0x51dea7[_0x9182('0x38')]=_[_0x9182('0x39')](_0x51dea7[_0x9182('0x38')],{'$or':_[_0x9182('0x29')](_0x4b7d14,function(_0x1dbed2){if(_0x1dbed2['type']!=='VIRTUAL'){var _0x41caf9={};_0x41caf9[_0x1dbed2['name']]={'$like':'%'+_0x578e66[_0x9182('0x2a')][_0x9182('0x37')]+'%'};return _0x41caf9;}})});}_0x51dea7=_[_0x9182('0x39')]({},_0x51dea7,_0x578e66[_0x9182('0x3a')]);var _0x5e90bc={'where':_0x51dea7[_0x9182('0x38')]};return db[_0x9182('0x25')][_0x9182('0x3b')](_0x5e90bc)[_0x9182('0x20')](function(_0x2db4ef){_0x55479a[_0x9182('0x3b')]=_0x2db4ef;if(_0x578e66[_0x9182('0x2a')][_0x9182('0x3c')]){_0x51dea7[_0x9182('0x3d')]=[{'all':!![]}];}return db[_0x9182('0x25')][_0x9182('0x3e')](_0x51dea7);})[_0x9182('0x20')](function(_0x1c1dd4){_0x55479a['rows']=_0x1c1dd4;return _0x55479a;})[_0x9182('0x20')](respondWithFilteredResult(_0x37a1ab,_0x51dea7))['catch'](handleError(_0x37a1ab,null));};exports[_0x9182('0x3f')]=function(_0x14a0b8,_0x5d7494){var _0x58c0de={'raw':!![],'where':{'id':_0x14a0b8[_0x9182('0x40')]['id']}},_0x5217a3={};_0x5217a3[_0x9182('0x2f')]=_['keys'](db['JscriptyQuestionReport'][_0x9182('0x26')]);_0x5217a3[_0x9182('0x2a')]=_[_0x9182('0x2b')](_0x14a0b8['query']);_0x5217a3['filters']=_['intersection'](_0x5217a3[_0x9182('0x2f')],_0x5217a3[_0x9182('0x2a')]);_0x58c0de[_0x9182('0x2e')]=_[_0x9182('0x2d')](_0x5217a3[_0x9182('0x2f')],qs[_0x9182('0x30')](_0x14a0b8['query'][_0x9182('0x30')]));_0x58c0de[_0x9182('0x2e')]=_0x58c0de['attributes']['length']?_0x58c0de['attributes']:_0x5217a3[_0x9182('0x2f')];if(_0x14a0b8[_0x9182('0x2a')]['includeAll']){_0x58c0de[_0x9182('0x3d')]=[{'all':!![]}];}_0x58c0de=_[_0x9182('0x39')]({},_0x58c0de,_0x14a0b8[_0x9182('0x3a')]);return db[_0x9182('0x25')][_0x9182('0x41')](_0x58c0de)[_0x9182('0x20')](handleEntityNotFound(_0x5d7494,null))[_0x9182('0x20')](respondWithResult(_0x5d7494,null))['catch'](handleError(_0x5d7494,null));};exports[_0x9182('0x42')]=function(_0x1ba9cc,_0x31838d){return db[_0x9182('0x25')][_0x9182('0x42')](_0x1ba9cc[_0x9182('0x43')],{})[_0x9182('0x20')](respondWithResult(_0x31838d,0xc9))[_0x9182('0x44')](handleError(_0x31838d,null));};exports[_0x9182('0x45')]=function(_0x2c6347,_0x26dc74){if(_0x2c6347[_0x9182('0x43')]['id']){delete _0x2c6347[_0x9182('0x43')]['id'];}return db[_0x9182('0x25')][_0x9182('0x41')]({'where':{'id':_0x2c6347[_0x9182('0x40')]['id']}})[_0x9182('0x20')](handleEntityNotFound(_0x26dc74,null))[_0x9182('0x20')](saveUpdates(_0x2c6347[_0x9182('0x43')],null))[_0x9182('0x20')](respondWithResult(_0x26dc74,null))[_0x9182('0x44')](handleError(_0x26dc74,null));};exports[_0x9182('0x21')]=function(_0x43b28c,_0x2a6dbd){return db[_0x9182('0x25')]['find']({'where':{'id':_0x43b28c['params']['id']}})[_0x9182('0x20')](handleEntityNotFound(_0x2a6dbd,null))[_0x9182('0x20')](removeEntity(_0x2a6dbd,null))[_0x9182('0x44')](handleError(_0x2a6dbd,null));};exports[_0x9182('0x46')]=function(_0x2cea52,_0x4ba686){return db[_0x9182('0x25')]['describe']()['then'](respondWithResult(_0x4ba686,null))[_0x9182('0x44')](handleError(_0x4ba686,null));};