Built motion from commit 3e059bc2.|2.5.32
[motion2.git] / server / api / jscriptyAnswerReport / jscriptyAnswerReport.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 _0xed1f=['where','pick','filter','merge','options','includeAll','include','findAll','rows','then','catch','show','params','keys','create','body','find','describe','eml-format','rimraf','request-promise','bluebird','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','querystring','papaparse','../../components/auth/service','../../config/license/hardware','../../config/logger','../../config/environment','../../config/license/util','sendStatus','status','end','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','destroy','error','name','index','map','JscriptyAnswerReport','fieldName','type','model','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','sort'];(function(_0x1b74d3,_0x4a18c0){var _0x31cb88=function(_0x1a2a0e){while(--_0x1a2a0e){_0x1b74d3['push'](_0x1b74d3['shift']());}};_0x31cb88(++_0x4a18c0);}(_0xed1f,0x170));var _0xfed1=function(_0x5ddaac,_0x2697a8){_0x5ddaac=_0x5ddaac-0x0;var _0x2a9c58=_0xed1f[_0x5ddaac];return _0x2a9c58;};'use strict';var emlformat=require(_0xfed1('0x0'));var rimraf=require(_0xfed1('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0xfed1('0x2'));var moment=require('moment');var BPromise=require(_0xfed1('0x3'));var Mustache=require('mustache');var util=require(_0xfed1('0x4'));var path=require(_0xfed1('0x5'));var sox=require(_0xfed1('0x6'));var csv=require(_0xfed1('0x7'));var ejs=require(_0xfed1('0x8'));var fs=require('fs');var fs_extra=require(_0xfed1('0x9'));var _=require(_0xfed1('0xa'));var squel=require(_0xfed1('0xb'));var crypto=require(_0xfed1('0xc'));var jsforce=require(_0xfed1('0xd'));var deskjs=require('desk.js');var toCsv=require(_0xfed1('0x7'));var querystring=require(_0xfed1('0xe'));var Papa=require(_0xfed1('0xf'));var Redis=require('ioredis');var authService=require(_0xfed1('0x10'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xfed1('0x11'));var logger=require(_0xfed1('0x12'))('api');var utils=require('../../config/utils');var config=require(_0xfed1('0x13'));var licenseUtil=require(_0xfed1('0x14'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x56555a,_0x4e2e26){_0x4e2e26=_0x4e2e26||0xcc;return function(_0x250eb5){if(_0x250eb5){return _0x56555a[_0xfed1('0x15')](_0x4e2e26);}return _0x56555a[_0xfed1('0x16')](_0x4e2e26)[_0xfed1('0x17')]();};}function respondWithResult(_0x58277d,_0x3bb8f7){_0x3bb8f7=_0x3bb8f7||0xc8;return function(_0x3754c2){if(_0x3754c2){return _0x58277d['status'](_0x3bb8f7)['json'](_0x3754c2);}};}function respondWithFilteredResult(_0x176227,_0x38f652){return function(_0x306567){if(_0x306567){var _0x5ed220=typeof _0x38f652[_0xfed1('0x18')]===_0xfed1('0x19')&&typeof _0x38f652[_0xfed1('0x1a')]===_0xfed1('0x19');var _0x5ab809=_0x306567[_0xfed1('0x1b')];var _0x4c492e=_0x5ed220?0x0:_0x38f652[_0xfed1('0x18')];var _0x2b4cd7=_0x5ed220?_0x306567[_0xfed1('0x1b')]:_0x38f652[_0xfed1('0x18')]+_0x38f652[_0xfed1('0x1a')];var _0x2926ac;if(_0x2b4cd7>=_0x5ab809){_0x2b4cd7=_0x5ab809;_0x2926ac=0xc8;}else{_0x2926ac=0xce;}_0x176227[_0xfed1('0x16')](_0x2926ac);return _0x176227[_0xfed1('0x1c')](_0xfed1('0x1d'),_0x4c492e+'-'+_0x2b4cd7+'/'+_0x5ab809)['json'](_0x306567);}return null;};}function patchUpdates(_0xd7bfb7){return function(_0x491497){try{jsonpatch[_0xfed1('0x1e')](_0x491497,_0xd7bfb7,!![]);}catch(_0x3e5ada){return BPromise[_0xfed1('0x1f')](_0x3e5ada);}return _0x491497[_0xfed1('0x20')]();};}function saveUpdates(_0x1eb9cd,_0x4610fd){return function(_0x1748f5){if(_0x1748f5){return _0x1748f5[_0xfed1('0x21')](_0x1eb9cd)['then'](function(_0x578aaa){return _0x578aaa;});}return null;};}function removeEntity(_0xa6d6cf,_0x5c9385){return function(_0x36a818){if(_0x36a818){return _0x36a818[_0xfed1('0x22')]()['then'](function(){_0xa6d6cf[_0xfed1('0x16')](0xcc)[_0xfed1('0x17')]();});}};}function handleEntityNotFound(_0x472dbc,_0x5bce5d){return function(_0x1e8c3e){if(!_0x1e8c3e){_0x472dbc[_0xfed1('0x15')](0x194);}return _0x1e8c3e;};}function handleError(_0x5ec9c4,_0xa04122){_0xa04122=_0xa04122||0x1f4;return function(_0x40da7f){logger[_0xfed1('0x23')](_0x40da7f['stack']);if(_0x40da7f[_0xfed1('0x24')]){delete _0x40da7f[_0xfed1('0x24')];}_0x5ec9c4[_0xfed1('0x16')](_0xa04122)['send'](_0x40da7f);};}exports[_0xfed1('0x25')]=function(_0x46cf02,_0x411182){var _0x1867f6={},_0x221bf7={},_0x27635f={'count':0x0,'rows':[]};var _0x57e741=_[_0xfed1('0x26')](db[_0xfed1('0x27')]['rawAttributes'],function(_0x34e47b){return{'name':_0x34e47b[_0xfed1('0x28')],'type':_0x34e47b[_0xfed1('0x29')]['key']};});_0x221bf7[_0xfed1('0x2a')]=_[_0xfed1('0x26')](_0x57e741,_0xfed1('0x24'));_0x221bf7[_0xfed1('0x2b')]=_['keys'](_0x46cf02[_0xfed1('0x2b')]);_0x221bf7[_0xfed1('0x2c')]=_[_0xfed1('0x2d')](_0x221bf7[_0xfed1('0x2a')],_0x221bf7[_0xfed1('0x2b')]);_0x1867f6['attributes']=_[_0xfed1('0x2d')](_0x221bf7[_0xfed1('0x2a')],qs[_0xfed1('0x2e')](_0x46cf02[_0xfed1('0x2b')][_0xfed1('0x2e')]));_0x1867f6[_0xfed1('0x2f')]=_0x1867f6[_0xfed1('0x2f')][_0xfed1('0x30')]?_0x1867f6['attributes']:_0x221bf7['model'];if(!_0x46cf02['query'][_0xfed1('0x31')](_0xfed1('0x32'))){_0x1867f6['limit']=qs[_0xfed1('0x1a')](_0x46cf02['query']['limit']);_0x1867f6['offset']=qs[_0xfed1('0x18')](_0x46cf02[_0xfed1('0x2b')][_0xfed1('0x18')]);}_0x1867f6['order']=qs['sort'](_0x46cf02[_0xfed1('0x2b')][_0xfed1('0x33')]);_0x1867f6[_0xfed1('0x34')]=qs[_0xfed1('0x2c')](_[_0xfed1('0x35')](_0x46cf02[_0xfed1('0x2b')],_0x221bf7[_0xfed1('0x2c')]),_0x57e741);if(_0x46cf02['query'][_0xfed1('0x36')]){_0x1867f6['where']=_[_0xfed1('0x37')](_0x1867f6[_0xfed1('0x34')],{'$or':_['map'](_0x57e741,function(_0x3adf16){if(_0x3adf16[_0xfed1('0x29')]!=='VIRTUAL'){var _0x32e493={};_0x32e493[_0x3adf16[_0xfed1('0x24')]]={'$like':'%'+_0x46cf02['query']['filter']+'%'};return _0x32e493;}})});}_0x1867f6=_[_0xfed1('0x37')]({},_0x1867f6,_0x46cf02[_0xfed1('0x38')]);var _0x3ec842={'where':_0x1867f6[_0xfed1('0x34')]};return db['JscriptyAnswerReport'][_0xfed1('0x1b')](_0x3ec842)['then'](function(_0x44ef72){_0x27635f['count']=_0x44ef72;if(_0x46cf02[_0xfed1('0x2b')][_0xfed1('0x39')]){_0x1867f6[_0xfed1('0x3a')]=[{'all':!![]}];}return db[_0xfed1('0x27')][_0xfed1('0x3b')](_0x1867f6);})['then'](function(_0x3edf0d){_0x27635f[_0xfed1('0x3c')]=_0x3edf0d;return _0x27635f;})[_0xfed1('0x3d')](respondWithFilteredResult(_0x411182,_0x1867f6))[_0xfed1('0x3e')](handleError(_0x411182,null));};exports[_0xfed1('0x3f')]=function(_0x5bff16,_0x2bc41f){var _0x1bac62={'raw':!![],'where':{'id':_0x5bff16[_0xfed1('0x40')]['id']}},_0x799206={};_0x799206[_0xfed1('0x2a')]=_[_0xfed1('0x41')](db[_0xfed1('0x27')]['rawAttributes']);_0x799206[_0xfed1('0x2b')]=_['keys'](_0x5bff16[_0xfed1('0x2b')]);_0x799206[_0xfed1('0x2c')]=_[_0xfed1('0x2d')](_0x799206[_0xfed1('0x2a')],_0x799206[_0xfed1('0x2b')]);_0x1bac62[_0xfed1('0x2f')]=_[_0xfed1('0x2d')](_0x799206['model'],qs[_0xfed1('0x2e')](_0x5bff16[_0xfed1('0x2b')]['fields']));_0x1bac62[_0xfed1('0x2f')]=_0x1bac62[_0xfed1('0x2f')][_0xfed1('0x30')]?_0x1bac62[_0xfed1('0x2f')]:_0x799206['model'];if(_0x5bff16[_0xfed1('0x2b')][_0xfed1('0x39')]){_0x1bac62[_0xfed1('0x3a')]=[{'all':!![]}];}_0x1bac62=_['merge']({},_0x1bac62,_0x5bff16['options']);return db['JscriptyAnswerReport']['find'](_0x1bac62)[_0xfed1('0x3d')](handleEntityNotFound(_0x2bc41f,null))[_0xfed1('0x3d')](respondWithResult(_0x2bc41f,null))[_0xfed1('0x3e')](handleError(_0x2bc41f,null));};exports[_0xfed1('0x42')]=function(_0x94bf5c,_0x5c9aab){return db['JscriptyAnswerReport'][_0xfed1('0x42')](_0x94bf5c[_0xfed1('0x43')],{})[_0xfed1('0x3d')](respondWithResult(_0x5c9aab,0xc9))['catch'](handleError(_0x5c9aab,null));};exports['update']=function(_0x6c2337,_0x181063){if(_0x6c2337[_0xfed1('0x43')]['id']){delete _0x6c2337[_0xfed1('0x43')]['id'];}return db[_0xfed1('0x27')][_0xfed1('0x44')]({'where':{'id':_0x6c2337['params']['id']}})[_0xfed1('0x3d')](handleEntityNotFound(_0x181063,null))['then'](saveUpdates(_0x6c2337[_0xfed1('0x43')],null))[_0xfed1('0x3d')](respondWithResult(_0x181063,null))['catch'](handleError(_0x181063,null));};exports['destroy']=function(_0x3c4d59,_0x47d49b){return db[_0xfed1('0x27')][_0xfed1('0x44')]({'where':{'id':_0x3c4d59['params']['id']}})[_0xfed1('0x3d')](handleEntityNotFound(_0x47d49b,null))[_0xfed1('0x3d')](removeEntity(_0x47d49b,null))['catch'](handleError(_0x47d49b,null));};exports[_0xfed1('0x45')]=function(_0x4683e7,_0x5120cd){return db['JscriptyAnswerReport'][_0xfed1('0x45')]()[_0xfed1('0x3d')](respondWithResult(_0x5120cd,null))[_0xfed1('0x3e')](handleError(_0x5120cd,null));};