Built motion from commit bab6f49e.|2.6.17
[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 _0x1b73=['error','stack','name','send','index','map','JscriptyQuestionReport','fieldName','key','model','keys','query','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','pick','filters','filter','merge','type','VIRTUAL','include','rows','catch','show','params','rawAttributes','includeAll','options','find','body','destroy','rimraf','fast-json-patch','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','count','Content-Range','reject','update','then'];(function(_0x4358f5,_0x5b1ac6){var _0x4d8104=function(_0x1d4aee){while(--_0x1d4aee){_0x4358f5['push'](_0x4358f5['shift']());}};_0x4d8104(++_0x5b1ac6);}(_0x1b73,0x1e7));var _0x31b7=function(_0x285bbb,_0x264b8b){_0x285bbb=_0x285bbb-0x0;var _0x3c8bcf=_0x1b73[_0x285bbb];return _0x3c8bcf;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x31b7('0x0'));var zipdir=require('zip-dir');var jsonpatch=require(_0x31b7('0x1'));var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0x31b7('0x2'));var Mustache=require(_0x31b7('0x3'));var util=require(_0x31b7('0x4'));var path=require(_0x31b7('0x5'));var sox=require(_0x31b7('0x6'));var csv=require(_0x31b7('0x7'));var ejs=require(_0x31b7('0x8'));var fs=require('fs');var fs_extra=require(_0x31b7('0x9'));var _=require(_0x31b7('0xa'));var squel=require(_0x31b7('0xb'));var crypto=require('crypto');var jsforce=require(_0x31b7('0xc'));var deskjs=require(_0x31b7('0xd'));var toCsv=require(_0x31b7('0x7'));var querystring=require(_0x31b7('0xe'));var Papa=require(_0x31b7('0xf'));var Redis=require(_0x31b7('0x10'));var authService=require(_0x31b7('0x11'));var qs=require(_0x31b7('0x12'));var as=require(_0x31b7('0x13'));var hardwareService=require(_0x31b7('0x14'));var logger=require(_0x31b7('0x15'))(_0x31b7('0x16'));var utils=require('../../config/utils');var config=require(_0x31b7('0x17'));var licenseUtil=require(_0x31b7('0x18'));var db=require(_0x31b7('0x19'))['db'];function respondWithStatusCode(_0x88e307,_0x17a569){_0x17a569=_0x17a569||0xcc;return function(_0x1f20e0){if(_0x1f20e0){return _0x88e307[_0x31b7('0x1a')](_0x17a569);}return _0x88e307[_0x31b7('0x1b')](_0x17a569)[_0x31b7('0x1c')]();};}function respondWithResult(_0x5d8d83,_0x3e337a){_0x3e337a=_0x3e337a||0xc8;return function(_0x550650){if(_0x550650){return _0x5d8d83[_0x31b7('0x1b')](_0x3e337a)[_0x31b7('0x1d')](_0x550650);}};}function respondWithFilteredResult(_0x5d9723,_0x1e2be7){return function(_0x29ad1a){if(_0x29ad1a){var _0x38c0af=typeof _0x1e2be7[_0x31b7('0x1e')]===_0x31b7('0x1f')&&typeof _0x1e2be7[_0x31b7('0x20')]==='undefined';var _0x5997ad=_0x29ad1a[_0x31b7('0x21')];var _0x3bd58a=_0x38c0af?0x0:_0x1e2be7[_0x31b7('0x1e')];var _0x5786eb=_0x38c0af?_0x29ad1a[_0x31b7('0x21')]:_0x1e2be7['offset']+_0x1e2be7['limit'];var _0x163658;if(_0x5786eb>=_0x5997ad){_0x5786eb=_0x5997ad;_0x163658=0xc8;}else{_0x163658=0xce;}_0x5d9723['status'](_0x163658);return _0x5d9723['set'](_0x31b7('0x22'),_0x3bd58a+'-'+_0x5786eb+'/'+_0x5997ad)['json'](_0x29ad1a);}return null;};}function patchUpdates(_0x1915ae){return function(_0x335231){try{jsonpatch['apply'](_0x335231,_0x1915ae,!![]);}catch(_0x2b1227){return BPromise[_0x31b7('0x23')](_0x2b1227);}return _0x335231['save']();};}function saveUpdates(_0x378f66,_0x6f8517){return function(_0x56afb6){if(_0x56afb6){return _0x56afb6[_0x31b7('0x24')](_0x378f66)[_0x31b7('0x25')](function(_0x420bba){return _0x420bba;});}return null;};}function removeEntity(_0x37e667,_0x2b6813){return function(_0x46a7c9){if(_0x46a7c9){return _0x46a7c9['destroy']()[_0x31b7('0x25')](function(){_0x37e667[_0x31b7('0x1b')](0xcc)['end']();});}};}function handleEntityNotFound(_0x404599,_0x2aeee9){return function(_0xb73f0f){if(!_0xb73f0f){_0x404599[_0x31b7('0x1a')](0x194);}return _0xb73f0f;};}function handleError(_0x4e5752,_0x4719fb){_0x4719fb=_0x4719fb||0x1f4;return function(_0x1354ff){logger[_0x31b7('0x26')](_0x1354ff[_0x31b7('0x27')]);if(_0x1354ff['name']){delete _0x1354ff[_0x31b7('0x28')];}_0x4e5752[_0x31b7('0x1b')](_0x4719fb)[_0x31b7('0x29')](_0x1354ff);};}exports[_0x31b7('0x2a')]=function(_0x4b0bcf,_0x507014){var _0x5115e8={},_0x52eeec={},_0x5c032b={'count':0x0,'rows':[]};var _0x2822dc=_[_0x31b7('0x2b')](db[_0x31b7('0x2c')]['rawAttributes'],function(_0x2558ce){return{'name':_0x2558ce[_0x31b7('0x2d')],'type':_0x2558ce['type'][_0x31b7('0x2e')]};});_0x52eeec[_0x31b7('0x2f')]=_[_0x31b7('0x2b')](_0x2822dc,'name');_0x52eeec['query']=_[_0x31b7('0x30')](_0x4b0bcf[_0x31b7('0x31')]);_0x52eeec['filters']=_[_0x31b7('0x32')](_0x52eeec[_0x31b7('0x2f')],_0x52eeec[_0x31b7('0x31')]);_0x5115e8[_0x31b7('0x33')]=_[_0x31b7('0x32')](_0x52eeec[_0x31b7('0x2f')],qs['fields'](_0x4b0bcf[_0x31b7('0x31')][_0x31b7('0x34')]));_0x5115e8['attributes']=_0x5115e8[_0x31b7('0x33')][_0x31b7('0x35')]?_0x5115e8['attributes']:_0x52eeec[_0x31b7('0x2f')];if(!_0x4b0bcf[_0x31b7('0x31')][_0x31b7('0x36')]('nolimit')){_0x5115e8[_0x31b7('0x20')]=qs[_0x31b7('0x20')](_0x4b0bcf['query'][_0x31b7('0x20')]);_0x5115e8[_0x31b7('0x1e')]=qs[_0x31b7('0x1e')](_0x4b0bcf[_0x31b7('0x31')]['offset']);}_0x5115e8[_0x31b7('0x37')]=qs['sort'](_0x4b0bcf[_0x31b7('0x31')][_0x31b7('0x38')]);_0x5115e8[_0x31b7('0x39')]=qs['filters'](_[_0x31b7('0x3a')](_0x4b0bcf['query'],_0x52eeec[_0x31b7('0x3b')]),_0x2822dc);if(_0x4b0bcf['query'][_0x31b7('0x3c')]){_0x5115e8['where']=_[_0x31b7('0x3d')](_0x5115e8['where'],{'$or':_[_0x31b7('0x2b')](_0x2822dc,function(_0x5945c3){if(_0x5945c3[_0x31b7('0x3e')]!==_0x31b7('0x3f')){var _0x26e3bd={};_0x26e3bd[_0x5945c3[_0x31b7('0x28')]]={'$like':'%'+_0x4b0bcf[_0x31b7('0x31')][_0x31b7('0x3c')]+'%'};return _0x26e3bd;}})});}_0x5115e8=_['merge']({},_0x5115e8,_0x4b0bcf['options']);var _0x2fabec={'where':_0x5115e8[_0x31b7('0x39')]};return db[_0x31b7('0x2c')]['count'](_0x2fabec)['then'](function(_0x1b10c1){_0x5c032b['count']=_0x1b10c1;if(_0x4b0bcf['query']['includeAll']){_0x5115e8[_0x31b7('0x40')]=[{'all':!![]}];}return db[_0x31b7('0x2c')]['findAll'](_0x5115e8);})['then'](function(_0x1e6858){_0x5c032b[_0x31b7('0x41')]=_0x1e6858;return _0x5c032b;})['then'](respondWithFilteredResult(_0x507014,_0x5115e8))[_0x31b7('0x42')](handleError(_0x507014,null));};exports[_0x31b7('0x43')]=function(_0x4167fb,_0x1a671b){var _0x46ff2c={'raw':!![],'where':{'id':_0x4167fb[_0x31b7('0x44')]['id']}},_0x5d9989={};_0x5d9989[_0x31b7('0x2f')]=_[_0x31b7('0x30')](db[_0x31b7('0x2c')][_0x31b7('0x45')]);_0x5d9989[_0x31b7('0x31')]=_['keys'](_0x4167fb['query']);_0x5d9989['filters']=_[_0x31b7('0x32')](_0x5d9989[_0x31b7('0x2f')],_0x5d9989['query']);_0x46ff2c[_0x31b7('0x33')]=_[_0x31b7('0x32')](_0x5d9989[_0x31b7('0x2f')],qs[_0x31b7('0x34')](_0x4167fb[_0x31b7('0x31')]['fields']));_0x46ff2c[_0x31b7('0x33')]=_0x46ff2c['attributes']['length']?_0x46ff2c[_0x31b7('0x33')]:_0x5d9989[_0x31b7('0x2f')];if(_0x4167fb['query'][_0x31b7('0x46')]){_0x46ff2c['include']=[{'all':!![]}];}_0x46ff2c=_[_0x31b7('0x3d')]({},_0x46ff2c,_0x4167fb[_0x31b7('0x47')]);return db[_0x31b7('0x2c')][_0x31b7('0x48')](_0x46ff2c)[_0x31b7('0x25')](handleEntityNotFound(_0x1a671b,null))['then'](respondWithResult(_0x1a671b,null))['catch'](handleError(_0x1a671b,null));};exports['create']=function(_0x4f0a87,_0x10bf01){return db[_0x31b7('0x2c')]['create'](_0x4f0a87['body'],{})[_0x31b7('0x25')](respondWithResult(_0x10bf01,0xc9))[_0x31b7('0x42')](handleError(_0x10bf01,null));};exports[_0x31b7('0x24')]=function(_0x551deb,_0x560acd){if(_0x551deb[_0x31b7('0x49')]['id']){delete _0x551deb[_0x31b7('0x49')]['id'];}return db['JscriptyQuestionReport']['find']({'where':{'id':_0x551deb['params']['id']}})[_0x31b7('0x25')](handleEntityNotFound(_0x560acd,null))['then'](saveUpdates(_0x551deb[_0x31b7('0x49')],null))[_0x31b7('0x25')](respondWithResult(_0x560acd,null))[_0x31b7('0x42')](handleError(_0x560acd,null));};exports[_0x31b7('0x4a')]=function(_0x3f9e66,_0xbe9598){return db[_0x31b7('0x2c')][_0x31b7('0x48')]({'where':{'id':_0x3f9e66[_0x31b7('0x44')]['id']}})['then'](handleEntityNotFound(_0xbe9598,null))[_0x31b7('0x25')](removeEntity(_0xbe9598,null))['catch'](handleError(_0xbe9598,null));};exports['describe']=function(_0xb2971e,_0x1abd4d){return db[_0x31b7('0x2c')]['describe']()[_0x31b7('0x25')](respondWithResult(_0x1abd4d,null))[_0x31b7('0x42')](handleError(_0x1abd4d,null));};