1927eb49226bb69a8c8286708f4ae55f045f2f68
[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 _0x8624=['VIRTUAL','options','includeAll','include','show','rawAttributes','length','find','catch','create','body','params','describe','eml-format','zip-dir','fast-json-patch','request-promise','bluebird','util','sox','to-csv','fs-extra','lodash','squel','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','end','status','offset','undefined','limit','count','set','json','apply','reject','update','then','destroy','error','send','map','JscriptyQuestionReport','fieldName','type','key','name','query','keys','intersection','model','fields','attributes','order','sort','where','filters','filter','merge'];(function(_0x256f60,_0x892aa0){var _0x34f044=function(_0x4e0728){while(--_0x4e0728){_0x256f60['push'](_0x256f60['shift']());}};_0x34f044(++_0x892aa0);}(_0x8624,0x1ab));var _0x4862=function(_0x5d31ee,_0x183e43){_0x5d31ee=_0x5d31ee-0x0;var _0x21c2e6=_0x8624[_0x5d31ee];return _0x21c2e6;};'use strict';var emlformat=require(_0x4862('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x4862('0x1'));var jsonpatch=require(_0x4862('0x2'));var rp=require(_0x4862('0x3'));var moment=require('moment');var BPromise=require(_0x4862('0x4'));var Mustache=require('mustache');var util=require(_0x4862('0x5'));var path=require('path');var sox=require(_0x4862('0x6'));var csv=require(_0x4862('0x7'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x4862('0x8'));var _=require(_0x4862('0x9'));var squel=require(_0x4862('0xa'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x4862('0xb'));var toCsv=require(_0x4862('0x7'));var querystring=require(_0x4862('0xc'));var Papa=require(_0x4862('0xd'));var Redis=require(_0x4862('0xe'));var authService=require('../../components/auth/service');var qs=require(_0x4862('0xf'));var as=require(_0x4862('0x10'));var hardwareService=require(_0x4862('0x11'));var logger=require('../../config/logger')(_0x4862('0x12'));var utils=require(_0x4862('0x13'));var config=require(_0x4862('0x14'));var licenseUtil=require('../../config/license/util');var db=require(_0x4862('0x15'))['db'];function respondWithStatusCode(_0x5c9d91,_0x49a237){_0x49a237=_0x49a237||0xcc;return function(_0x2b4133){if(_0x2b4133){return _0x5c9d91[_0x4862('0x16')](_0x49a237);}return _0x5c9d91['status'](_0x49a237)[_0x4862('0x17')]();};}function respondWithResult(_0x421bc0,_0x5f125a){_0x5f125a=_0x5f125a||0xc8;return function(_0xcf3732){if(_0xcf3732){return _0x421bc0[_0x4862('0x18')](_0x5f125a)['json'](_0xcf3732);}};}function respondWithFilteredResult(_0x485639,_0x16146b){return function(_0x1107ca){if(_0x1107ca){var _0x1b92fc=typeof _0x16146b[_0x4862('0x19')]===_0x4862('0x1a')&&typeof _0x16146b[_0x4862('0x1b')]===_0x4862('0x1a');var _0x51fa34=_0x1107ca[_0x4862('0x1c')];var _0x312623=_0x1b92fc?0x0:_0x16146b[_0x4862('0x19')];var _0x4f71b2=_0x1b92fc?_0x1107ca[_0x4862('0x1c')]:_0x16146b[_0x4862('0x19')]+_0x16146b['limit'];var _0x54048f;if(_0x4f71b2>=_0x51fa34){_0x4f71b2=_0x51fa34;_0x54048f=0xc8;}else{_0x54048f=0xce;}_0x485639[_0x4862('0x18')](_0x54048f);return _0x485639[_0x4862('0x1d')]('Content-Range',_0x312623+'-'+_0x4f71b2+'/'+_0x51fa34)[_0x4862('0x1e')](_0x1107ca);}return null;};}function patchUpdates(_0x63d3ef){return function(_0x3f257d){try{jsonpatch[_0x4862('0x1f')](_0x3f257d,_0x63d3ef,!![]);}catch(_0x5f13bf){return BPromise[_0x4862('0x20')](_0x5f13bf);}return _0x3f257d['save']();};}function saveUpdates(_0x2e0899,_0x2d2472){return function(_0x281369){if(_0x281369){return _0x281369[_0x4862('0x21')](_0x2e0899)[_0x4862('0x22')](function(_0x7f91a3){return _0x7f91a3;});}return null;};}function removeEntity(_0x3728d6,_0x495420){return function(_0xfcd134){if(_0xfcd134){return _0xfcd134[_0x4862('0x23')]()[_0x4862('0x22')](function(){_0x3728d6[_0x4862('0x18')](0xcc)[_0x4862('0x17')]();});}};}function handleEntityNotFound(_0x2975b2,_0x14bb76){return function(_0x49dd73){if(!_0x49dd73){_0x2975b2[_0x4862('0x16')](0x194);}return _0x49dd73;};}function handleError(_0x69a2ff,_0x49b926){_0x49b926=_0x49b926||0x1f4;return function(_0x5f23b0){logger[_0x4862('0x24')](_0x5f23b0['stack']);if(_0x5f23b0['name']){delete _0x5f23b0['name'];}_0x69a2ff[_0x4862('0x18')](_0x49b926)[_0x4862('0x25')](_0x5f23b0);};}exports['index']=function(_0x571c2c,_0xc7d1df){var _0x58673f={},_0x4b96b0={},_0x44f195={'count':0x0,'rows':[]};var _0x762707=_[_0x4862('0x26')](db[_0x4862('0x27')]['rawAttributes'],function(_0x400d67){return{'name':_0x400d67[_0x4862('0x28')],'type':_0x400d67[_0x4862('0x29')][_0x4862('0x2a')]};});_0x4b96b0['model']=_[_0x4862('0x26')](_0x762707,_0x4862('0x2b'));_0x4b96b0[_0x4862('0x2c')]=_[_0x4862('0x2d')](_0x571c2c['query']);_0x4b96b0['filters']=_[_0x4862('0x2e')](_0x4b96b0['model'],_0x4b96b0[_0x4862('0x2c')]);_0x58673f['attributes']=_[_0x4862('0x2e')](_0x4b96b0[_0x4862('0x2f')],qs[_0x4862('0x30')](_0x571c2c[_0x4862('0x2c')][_0x4862('0x30')]));_0x58673f[_0x4862('0x31')]=_0x58673f[_0x4862('0x31')]['length']?_0x58673f[_0x4862('0x31')]:_0x4b96b0['model'];if(!_0x571c2c['query']['hasOwnProperty']('nolimit')){_0x58673f['limit']=qs[_0x4862('0x1b')](_0x571c2c[_0x4862('0x2c')]['limit']);_0x58673f[_0x4862('0x19')]=qs['offset'](_0x571c2c['query'][_0x4862('0x19')]);}_0x58673f[_0x4862('0x32')]=qs[_0x4862('0x33')](_0x571c2c['query'][_0x4862('0x33')]);_0x58673f[_0x4862('0x34')]=qs[_0x4862('0x35')](_['pick'](_0x571c2c[_0x4862('0x2c')],_0x4b96b0[_0x4862('0x35')]),_0x762707);if(_0x571c2c['query'][_0x4862('0x36')]){_0x58673f[_0x4862('0x34')]=_[_0x4862('0x37')](_0x58673f[_0x4862('0x34')],{'$or':_['map'](_0x762707,function(_0x5bfe09){if(_0x5bfe09[_0x4862('0x29')]!==_0x4862('0x38')){var _0x491de1={};_0x491de1[_0x5bfe09['name']]={'$like':'%'+_0x571c2c[_0x4862('0x2c')][_0x4862('0x36')]+'%'};return _0x491de1;}})});}_0x58673f=_[_0x4862('0x37')]({},_0x58673f,_0x571c2c[_0x4862('0x39')]);var _0x5d1cf9={'where':_0x58673f[_0x4862('0x34')]};return db[_0x4862('0x27')][_0x4862('0x1c')](_0x5d1cf9)['then'](function(_0x23361b){_0x44f195['count']=_0x23361b;if(_0x571c2c[_0x4862('0x2c')][_0x4862('0x3a')]){_0x58673f[_0x4862('0x3b')]=[{'all':!![]}];}return db[_0x4862('0x27')]['findAll'](_0x58673f);})[_0x4862('0x22')](function(_0x2e30f2){_0x44f195['rows']=_0x2e30f2;return _0x44f195;})[_0x4862('0x22')](respondWithFilteredResult(_0xc7d1df,_0x58673f))['catch'](handleError(_0xc7d1df,null));};exports[_0x4862('0x3c')]=function(_0x45abdc,_0x102d7a){var _0x5c5bdc={'raw':!![],'where':{'id':_0x45abdc['params']['id']}},_0xcdd636={};_0xcdd636[_0x4862('0x2f')]=_[_0x4862('0x2d')](db[_0x4862('0x27')][_0x4862('0x3d')]);_0xcdd636['query']=_[_0x4862('0x2d')](_0x45abdc[_0x4862('0x2c')]);_0xcdd636[_0x4862('0x35')]=_[_0x4862('0x2e')](_0xcdd636[_0x4862('0x2f')],_0xcdd636[_0x4862('0x2c')]);_0x5c5bdc[_0x4862('0x31')]=_[_0x4862('0x2e')](_0xcdd636[_0x4862('0x2f')],qs[_0x4862('0x30')](_0x45abdc[_0x4862('0x2c')]['fields']));_0x5c5bdc['attributes']=_0x5c5bdc['attributes'][_0x4862('0x3e')]?_0x5c5bdc['attributes']:_0xcdd636[_0x4862('0x2f')];if(_0x45abdc[_0x4862('0x2c')][_0x4862('0x3a')]){_0x5c5bdc['include']=[{'all':!![]}];}_0x5c5bdc=_[_0x4862('0x37')]({},_0x5c5bdc,_0x45abdc[_0x4862('0x39')]);return db[_0x4862('0x27')][_0x4862('0x3f')](_0x5c5bdc)[_0x4862('0x22')](handleEntityNotFound(_0x102d7a,null))['then'](respondWithResult(_0x102d7a,null))[_0x4862('0x40')](handleError(_0x102d7a,null));};exports['create']=function(_0x566071,_0x42bc59){return db[_0x4862('0x27')][_0x4862('0x41')](_0x566071['body'],{})[_0x4862('0x22')](respondWithResult(_0x42bc59,0xc9))[_0x4862('0x40')](handleError(_0x42bc59,null));};exports[_0x4862('0x21')]=function(_0x577195,_0x3adbd6){if(_0x577195[_0x4862('0x42')]['id']){delete _0x577195[_0x4862('0x42')]['id'];}return db[_0x4862('0x27')][_0x4862('0x3f')]({'where':{'id':_0x577195[_0x4862('0x43')]['id']}})[_0x4862('0x22')](handleEntityNotFound(_0x3adbd6,null))[_0x4862('0x22')](saveUpdates(_0x577195[_0x4862('0x42')],null))[_0x4862('0x22')](respondWithResult(_0x3adbd6,null))[_0x4862('0x40')](handleError(_0x3adbd6,null));};exports[_0x4862('0x23')]=function(_0x39d912,_0x1ccf88){return db[_0x4862('0x27')][_0x4862('0x3f')]({'where':{'id':_0x39d912['params']['id']}})[_0x4862('0x22')](handleEntityNotFound(_0x1ccf88,null))['then'](removeEntity(_0x1ccf88,null))['catch'](handleError(_0x1ccf88,null));};exports[_0x4862('0x44')]=function(_0x1f4030,_0x494f82){return db['JscriptyQuestionReport']['describe']()[_0x4862('0x22')](respondWithResult(_0x494f82,null))[_0x4862('0x40')](handleError(_0x494f82,null));};