03374b9e880950d5c70318330d1802b55a22c347
[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 _0x6516=['attributes','fields','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','merge','type','VIRTUAL','options','includeAll','findAll','rows','catch','show','params','length','find','create','update','body','describe','eml-format','rimraf','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','squel','crypto','jsforce','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/environment','../../config/license/util','../../mysqldb','end','status','undefined','limit','count','offset','apply','reject','save','destroy','then','error','name','send','index','map','JscriptyQuestionReport','rawAttributes','fieldName','key','model','query','keys','intersection'];(function(_0x412e27,_0x20a978){var _0x53da42=function(_0x43cae5){while(--_0x43cae5){_0x412e27['push'](_0x412e27['shift']());}};_0x53da42(++_0x20a978);}(_0x6516,0xae));var _0x6651=function(_0x569b7a,_0x460d32){_0x569b7a=_0x569b7a-0x0;var _0xbfe656=_0x6516[_0x569b7a];return _0xbfe656;};'use strict';var emlformat=require(_0x6651('0x0'));var rimraf=require(_0x6651('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x6651('0x2'));var rp=require(_0x6651('0x3'));var moment=require('moment');var BPromise=require(_0x6651('0x4'));var Mustache=require(_0x6651('0x5'));var util=require(_0x6651('0x6'));var path=require(_0x6651('0x7'));var sox=require(_0x6651('0x8'));var csv=require(_0x6651('0x9'));var ejs=require(_0x6651('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0x6651('0xb'));var crypto=require(_0x6651('0xc'));var jsforce=require(_0x6651('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x6651('0x9'));var querystring=require('querystring');var Papa=require(_0x6651('0xe'));var Redis=require(_0x6651('0xf'));var authService=require(_0x6651('0x10'));var qs=require(_0x6651('0x11'));var as=require(_0x6651('0x12'));var hardwareService=require(_0x6651('0x13'));var logger=require('../../config/logger')(_0x6651('0x14'));var utils=require('../../config/utils');var config=require(_0x6651('0x15'));var licenseUtil=require(_0x6651('0x16'));var db=require(_0x6651('0x17'))['db'];function respondWithStatusCode(_0x11b8ea,_0x5a5f09){_0x5a5f09=_0x5a5f09||0xcc;return function(_0x1498bb){if(_0x1498bb){return _0x11b8ea['sendStatus'](_0x5a5f09);}return _0x11b8ea['status'](_0x5a5f09)[_0x6651('0x18')]();};}function respondWithResult(_0x29d6ea,_0x3f6f64){_0x3f6f64=_0x3f6f64||0xc8;return function(_0x46cfa0){if(_0x46cfa0){return _0x29d6ea[_0x6651('0x19')](_0x3f6f64)['json'](_0x46cfa0);}};}function respondWithFilteredResult(_0x3ab6aa,_0x58b0bf){return function(_0x8e71b){if(_0x8e71b){var _0xd51e1c=typeof _0x58b0bf['offset']===_0x6651('0x1a')&&typeof _0x58b0bf[_0x6651('0x1b')]==='undefined';var _0x245fbf=_0x8e71b[_0x6651('0x1c')];var _0x511324=_0xd51e1c?0x0:_0x58b0bf[_0x6651('0x1d')];var _0x4e29c1=_0xd51e1c?_0x8e71b[_0x6651('0x1c')]:_0x58b0bf[_0x6651('0x1d')]+_0x58b0bf[_0x6651('0x1b')];var _0x373979;if(_0x4e29c1>=_0x245fbf){_0x4e29c1=_0x245fbf;_0x373979=0xc8;}else{_0x373979=0xce;}_0x3ab6aa[_0x6651('0x19')](_0x373979);return _0x3ab6aa['set']('Content-Range',_0x511324+'-'+_0x4e29c1+'/'+_0x245fbf)['json'](_0x8e71b);}return null;};}function patchUpdates(_0x57093b){return function(_0x19c799){try{jsonpatch[_0x6651('0x1e')](_0x19c799,_0x57093b,!![]);}catch(_0x50241d){return BPromise[_0x6651('0x1f')](_0x50241d);}return _0x19c799[_0x6651('0x20')]();};}function saveUpdates(_0x45beda,_0x19f17b){return function(_0xa5945d){if(_0xa5945d){return _0xa5945d['update'](_0x45beda)['then'](function(_0x25595b){return _0x25595b;});}return null;};}function removeEntity(_0x127e0b,_0x181ec6){return function(_0x4e5dd1){if(_0x4e5dd1){return _0x4e5dd1[_0x6651('0x21')]()[_0x6651('0x22')](function(){_0x127e0b[_0x6651('0x19')](0xcc)[_0x6651('0x18')]();});}};}function handleEntityNotFound(_0x52c9ea,_0x29619e){return function(_0x331ab7){if(!_0x331ab7){_0x52c9ea['sendStatus'](0x194);}return _0x331ab7;};}function handleError(_0x2973ba,_0x5951d5){_0x5951d5=_0x5951d5||0x1f4;return function(_0xbe34d3){logger[_0x6651('0x23')](_0xbe34d3['stack']);if(_0xbe34d3[_0x6651('0x24')]){delete _0xbe34d3[_0x6651('0x24')];}_0x2973ba[_0x6651('0x19')](_0x5951d5)[_0x6651('0x25')](_0xbe34d3);};}exports[_0x6651('0x26')]=function(_0x2f8030,_0x4f678a){var _0x1fe8ae={},_0x2a346e={},_0x14f953={'count':0x0,'rows':[]};var _0x520af9=_[_0x6651('0x27')](db[_0x6651('0x28')][_0x6651('0x29')],function(_0x119b6e){return{'name':_0x119b6e[_0x6651('0x2a')],'type':_0x119b6e['type'][_0x6651('0x2b')]};});_0x2a346e[_0x6651('0x2c')]=_[_0x6651('0x27')](_0x520af9,_0x6651('0x24'));_0x2a346e[_0x6651('0x2d')]=_[_0x6651('0x2e')](_0x2f8030['query']);_0x2a346e['filters']=_[_0x6651('0x2f')](_0x2a346e[_0x6651('0x2c')],_0x2a346e[_0x6651('0x2d')]);_0x1fe8ae[_0x6651('0x30')]=_['intersection'](_0x2a346e[_0x6651('0x2c')],qs[_0x6651('0x31')](_0x2f8030[_0x6651('0x2d')][_0x6651('0x31')]));_0x1fe8ae[_0x6651('0x30')]=_0x1fe8ae['attributes']['length']?_0x1fe8ae[_0x6651('0x30')]:_0x2a346e[_0x6651('0x2c')];if(!_0x2f8030['query'][_0x6651('0x32')](_0x6651('0x33'))){_0x1fe8ae[_0x6651('0x1b')]=qs[_0x6651('0x1b')](_0x2f8030['query'][_0x6651('0x1b')]);_0x1fe8ae[_0x6651('0x1d')]=qs['offset'](_0x2f8030[_0x6651('0x2d')][_0x6651('0x1d')]);}_0x1fe8ae[_0x6651('0x34')]=qs[_0x6651('0x35')](_0x2f8030[_0x6651('0x2d')][_0x6651('0x35')]);_0x1fe8ae[_0x6651('0x36')]=qs[_0x6651('0x37')](_[_0x6651('0x38')](_0x2f8030[_0x6651('0x2d')],_0x2a346e[_0x6651('0x37')]),_0x520af9);if(_0x2f8030[_0x6651('0x2d')][_0x6651('0x39')]){_0x1fe8ae[_0x6651('0x36')]=_[_0x6651('0x3a')](_0x1fe8ae[_0x6651('0x36')],{'$or':_['map'](_0x520af9,function(_0x4194fd){if(_0x4194fd[_0x6651('0x3b')]!==_0x6651('0x3c')){var _0x47fa6c={};_0x47fa6c[_0x4194fd['name']]={'$like':'%'+_0x2f8030[_0x6651('0x2d')][_0x6651('0x39')]+'%'};return _0x47fa6c;}})});}_0x1fe8ae=_[_0x6651('0x3a')]({},_0x1fe8ae,_0x2f8030[_0x6651('0x3d')]);var _0x5cbe31={'where':_0x1fe8ae[_0x6651('0x36')]};return db['JscriptyQuestionReport'][_0x6651('0x1c')](_0x5cbe31)[_0x6651('0x22')](function(_0x257bb3){_0x14f953['count']=_0x257bb3;if(_0x2f8030[_0x6651('0x2d')][_0x6651('0x3e')]){_0x1fe8ae['include']=[{'all':!![]}];}return db[_0x6651('0x28')][_0x6651('0x3f')](_0x1fe8ae);})[_0x6651('0x22')](function(_0x575f45){_0x14f953[_0x6651('0x40')]=_0x575f45;return _0x14f953;})[_0x6651('0x22')](respondWithFilteredResult(_0x4f678a,_0x1fe8ae))[_0x6651('0x41')](handleError(_0x4f678a,null));};exports[_0x6651('0x42')]=function(_0x428bdc,_0x137693){var _0x26455f={'raw':!![],'where':{'id':_0x428bdc[_0x6651('0x43')]['id']}},_0x54c6b7={};_0x54c6b7[_0x6651('0x2c')]=_[_0x6651('0x2e')](db[_0x6651('0x28')][_0x6651('0x29')]);_0x54c6b7[_0x6651('0x2d')]=_[_0x6651('0x2e')](_0x428bdc[_0x6651('0x2d')]);_0x54c6b7['filters']=_[_0x6651('0x2f')](_0x54c6b7[_0x6651('0x2c')],_0x54c6b7[_0x6651('0x2d')]);_0x26455f[_0x6651('0x30')]=_['intersection'](_0x54c6b7['model'],qs[_0x6651('0x31')](_0x428bdc[_0x6651('0x2d')][_0x6651('0x31')]));_0x26455f[_0x6651('0x30')]=_0x26455f[_0x6651('0x30')][_0x6651('0x44')]?_0x26455f[_0x6651('0x30')]:_0x54c6b7[_0x6651('0x2c')];if(_0x428bdc[_0x6651('0x2d')]['includeAll']){_0x26455f['include']=[{'all':!![]}];}_0x26455f=_[_0x6651('0x3a')]({},_0x26455f,_0x428bdc['options']);return db[_0x6651('0x28')][_0x6651('0x45')](_0x26455f)['then'](handleEntityNotFound(_0x137693,null))[_0x6651('0x22')](respondWithResult(_0x137693,null))[_0x6651('0x41')](handleError(_0x137693,null));};exports[_0x6651('0x46')]=function(_0x4872df,_0x5436df){return db[_0x6651('0x28')][_0x6651('0x46')](_0x4872df['body'],{})[_0x6651('0x22')](respondWithResult(_0x5436df,0xc9))['catch'](handleError(_0x5436df,null));};exports[_0x6651('0x47')]=function(_0x3e5501,_0x4665b5){if(_0x3e5501[_0x6651('0x48')]['id']){delete _0x3e5501[_0x6651('0x48')]['id'];}return db[_0x6651('0x28')][_0x6651('0x45')]({'where':{'id':_0x3e5501[_0x6651('0x43')]['id']}})[_0x6651('0x22')](handleEntityNotFound(_0x4665b5,null))[_0x6651('0x22')](saveUpdates(_0x3e5501[_0x6651('0x48')],null))[_0x6651('0x22')](respondWithResult(_0x4665b5,null))[_0x6651('0x41')](handleError(_0x4665b5,null));};exports[_0x6651('0x21')]=function(_0x5a5854,_0x558bfa){return db[_0x6651('0x28')][_0x6651('0x45')]({'where':{'id':_0x5a5854[_0x6651('0x43')]['id']}})[_0x6651('0x22')](handleEntityNotFound(_0x558bfa,null))[_0x6651('0x22')](removeEntity(_0x558bfa,null))[_0x6651('0x41')](handleError(_0x558bfa,null));};exports[_0x6651('0x49')]=function(_0xdda19e,_0x191cd3){return db[_0x6651('0x28')][_0x6651('0x49')]()[_0x6651('0x22')](respondWithResult(_0x191cd3,null))[_0x6651('0x41')](handleError(_0x191cd3,null));};