adce58635538f926af1f66bbe365386a795a284b
[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 _0x8f9d=['describe','eml-format','zip-dir','request-promise','moment','bluebird','mustache','util','path','sox','ejs','fs-extra','lodash','squel','crypto','desk.js','to-csv','papaparse','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','end','json','offset','undefined','count','status','Content-Range','apply','save','update','then','destroy','stack','name','map','JscriptyAnswerReport','rawAttributes','fieldName','key','model','keys','query','filters','intersection','attributes','length','limit','sort','where','pick','filter','merge','type','VIRTUAL','options','findAll','rows','catch','show','params','fields','includeAll','include','find','create','body'];(function(_0x22ac78,_0x4d9a24){var _0x166faf=function(_0x58d16e){while(--_0x58d16e){_0x22ac78['push'](_0x22ac78['shift']());}};_0x166faf(++_0x4d9a24);}(_0x8f9d,0x93));var _0xd8f9=function(_0x40a045,_0x516f0e){_0x40a045=_0x40a045-0x0;var _0x1a687c=_0x8f9d[_0x40a045];return _0x1a687c;};'use strict';var emlformat=require(_0xd8f9('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xd8f9('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0xd8f9('0x2'));var moment=require(_0xd8f9('0x3'));var BPromise=require(_0xd8f9('0x4'));var Mustache=require(_0xd8f9('0x5'));var util=require(_0xd8f9('0x6'));var path=require(_0xd8f9('0x7'));var sox=require(_0xd8f9('0x8'));var csv=require('to-csv');var ejs=require(_0xd8f9('0x9'));var fs=require('fs');var fs_extra=require(_0xd8f9('0xa'));var _=require(_0xd8f9('0xb'));var squel=require(_0xd8f9('0xc'));var crypto=require(_0xd8f9('0xd'));var jsforce=require('jsforce');var deskjs=require(_0xd8f9('0xe'));var toCsv=require(_0xd8f9('0xf'));var querystring=require('querystring');var Papa=require(_0xd8f9('0x10'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0xd8f9('0x11'));var as=require(_0xd8f9('0x12'));var hardwareService=require(_0xd8f9('0x13'));var logger=require(_0xd8f9('0x14'))(_0xd8f9('0x15'));var utils=require(_0xd8f9('0x16'));var config=require(_0xd8f9('0x17'));var licenseUtil=require('../../config/license/util');var db=require(_0xd8f9('0x18'))['db'];function respondWithStatusCode(_0x56e0d6,_0x39aca0){_0x39aca0=_0x39aca0||0xcc;return function(_0x45aba0){if(_0x45aba0){return _0x56e0d6[_0xd8f9('0x19')](_0x39aca0);}return _0x56e0d6['status'](_0x39aca0)[_0xd8f9('0x1a')]();};}function respondWithResult(_0x3df6d2,_0x4cfebf){_0x4cfebf=_0x4cfebf||0xc8;return function(_0x223f10){if(_0x223f10){return _0x3df6d2['status'](_0x4cfebf)[_0xd8f9('0x1b')](_0x223f10);}};}function respondWithFilteredResult(_0x1525d6,_0x234901){return function(_0x10369c){if(_0x10369c){var _0x3a3a41=typeof _0x234901[_0xd8f9('0x1c')]===_0xd8f9('0x1d')&&typeof _0x234901['limit']==='undefined';var _0x284a1a=_0x10369c[_0xd8f9('0x1e')];var _0x4d5b8d=_0x3a3a41?0x0:_0x234901[_0xd8f9('0x1c')];var _0x47bdea=_0x3a3a41?_0x10369c[_0xd8f9('0x1e')]:_0x234901['offset']+_0x234901['limit'];var _0x58956e;if(_0x47bdea>=_0x284a1a){_0x47bdea=_0x284a1a;_0x58956e=0xc8;}else{_0x58956e=0xce;}_0x1525d6[_0xd8f9('0x1f')](_0x58956e);return _0x1525d6['set'](_0xd8f9('0x20'),_0x4d5b8d+'-'+_0x47bdea+'/'+_0x284a1a)[_0xd8f9('0x1b')](_0x10369c);}return null;};}function patchUpdates(_0x58ea35){return function(_0x3204b3){try{jsonpatch[_0xd8f9('0x21')](_0x3204b3,_0x58ea35,!![]);}catch(_0x45b2e3){return BPromise['reject'](_0x45b2e3);}return _0x3204b3[_0xd8f9('0x22')]();};}function saveUpdates(_0x260807,_0x164bf6){return function(_0x36d740){if(_0x36d740){return _0x36d740[_0xd8f9('0x23')](_0x260807)[_0xd8f9('0x24')](function(_0x4c5808){return _0x4c5808;});}return null;};}function removeEntity(_0x39fedc,_0xbd09da){return function(_0x1fcd45){if(_0x1fcd45){return _0x1fcd45[_0xd8f9('0x25')]()[_0xd8f9('0x24')](function(){_0x39fedc['status'](0xcc)[_0xd8f9('0x1a')]();});}};}function handleEntityNotFound(_0x1d6796,_0x28854a){return function(_0xd15475){if(!_0xd15475){_0x1d6796[_0xd8f9('0x19')](0x194);}return _0xd15475;};}function handleError(_0x9e1d6d,_0x175123){_0x175123=_0x175123||0x1f4;return function(_0x461880){logger['error'](_0x461880[_0xd8f9('0x26')]);if(_0x461880[_0xd8f9('0x27')]){delete _0x461880[_0xd8f9('0x27')];}_0x9e1d6d['status'](_0x175123)['send'](_0x461880);};}exports['index']=function(_0x3f85a2,_0x2c25c2){var _0x5050a4={},_0x2bda39={},_0x210cd1={'count':0x0,'rows':[]};var _0x5da878=_[_0xd8f9('0x28')](db[_0xd8f9('0x29')][_0xd8f9('0x2a')],function(_0x4caa27){return{'name':_0x4caa27[_0xd8f9('0x2b')],'type':_0x4caa27['type'][_0xd8f9('0x2c')]};});_0x2bda39[_0xd8f9('0x2d')]=_['map'](_0x5da878,_0xd8f9('0x27'));_0x2bda39['query']=_[_0xd8f9('0x2e')](_0x3f85a2[_0xd8f9('0x2f')]);_0x2bda39[_0xd8f9('0x30')]=_[_0xd8f9('0x31')](_0x2bda39[_0xd8f9('0x2d')],_0x2bda39[_0xd8f9('0x2f')]);_0x5050a4[_0xd8f9('0x32')]=_['intersection'](_0x2bda39[_0xd8f9('0x2d')],qs['fields'](_0x3f85a2['query']['fields']));_0x5050a4['attributes']=_0x5050a4[_0xd8f9('0x32')][_0xd8f9('0x33')]?_0x5050a4[_0xd8f9('0x32')]:_0x2bda39[_0xd8f9('0x2d')];if(!_0x3f85a2[_0xd8f9('0x2f')]['hasOwnProperty']('nolimit')){_0x5050a4[_0xd8f9('0x34')]=qs[_0xd8f9('0x34')](_0x3f85a2['query'][_0xd8f9('0x34')]);_0x5050a4[_0xd8f9('0x1c')]=qs[_0xd8f9('0x1c')](_0x3f85a2['query']['offset']);}_0x5050a4['order']=qs['sort'](_0x3f85a2[_0xd8f9('0x2f')][_0xd8f9('0x35')]);_0x5050a4[_0xd8f9('0x36')]=qs[_0xd8f9('0x30')](_[_0xd8f9('0x37')](_0x3f85a2['query'],_0x2bda39[_0xd8f9('0x30')]),_0x5da878);if(_0x3f85a2[_0xd8f9('0x2f')][_0xd8f9('0x38')]){_0x5050a4[_0xd8f9('0x36')]=_[_0xd8f9('0x39')](_0x5050a4[_0xd8f9('0x36')],{'$or':_[_0xd8f9('0x28')](_0x5da878,function(_0x262e7c){if(_0x262e7c[_0xd8f9('0x3a')]!==_0xd8f9('0x3b')){var _0x2a94d6={};_0x2a94d6[_0x262e7c['name']]={'$like':'%'+_0x3f85a2[_0xd8f9('0x2f')][_0xd8f9('0x38')]+'%'};return _0x2a94d6;}})});}_0x5050a4=_[_0xd8f9('0x39')]({},_0x5050a4,_0x3f85a2[_0xd8f9('0x3c')]);var _0x4af643={'where':_0x5050a4[_0xd8f9('0x36')]};return db[_0xd8f9('0x29')][_0xd8f9('0x1e')](_0x4af643)[_0xd8f9('0x24')](function(_0x1ab301){_0x210cd1[_0xd8f9('0x1e')]=_0x1ab301;if(_0x3f85a2['query']['includeAll']){_0x5050a4['include']=[{'all':!![]}];}return db[_0xd8f9('0x29')][_0xd8f9('0x3d')](_0x5050a4);})[_0xd8f9('0x24')](function(_0x1d8e5d){_0x210cd1[_0xd8f9('0x3e')]=_0x1d8e5d;return _0x210cd1;})[_0xd8f9('0x24')](respondWithFilteredResult(_0x2c25c2,_0x5050a4))[_0xd8f9('0x3f')](handleError(_0x2c25c2,null));};exports[_0xd8f9('0x40')]=function(_0x30e9aa,_0x5ed1b7){var _0x4aabbe={'raw':!![],'where':{'id':_0x30e9aa[_0xd8f9('0x41')]['id']}},_0x433d06={};_0x433d06[_0xd8f9('0x2d')]=_['keys'](db['JscriptyAnswerReport'][_0xd8f9('0x2a')]);_0x433d06[_0xd8f9('0x2f')]=_[_0xd8f9('0x2e')](_0x30e9aa['query']);_0x433d06[_0xd8f9('0x30')]=_[_0xd8f9('0x31')](_0x433d06[_0xd8f9('0x2d')],_0x433d06[_0xd8f9('0x2f')]);_0x4aabbe[_0xd8f9('0x32')]=_[_0xd8f9('0x31')](_0x433d06[_0xd8f9('0x2d')],qs[_0xd8f9('0x42')](_0x30e9aa[_0xd8f9('0x2f')]['fields']));_0x4aabbe['attributes']=_0x4aabbe['attributes'][_0xd8f9('0x33')]?_0x4aabbe[_0xd8f9('0x32')]:_0x433d06[_0xd8f9('0x2d')];if(_0x30e9aa[_0xd8f9('0x2f')][_0xd8f9('0x43')]){_0x4aabbe[_0xd8f9('0x44')]=[{'all':!![]}];}_0x4aabbe=_[_0xd8f9('0x39')]({},_0x4aabbe,_0x30e9aa[_0xd8f9('0x3c')]);return db[_0xd8f9('0x29')][_0xd8f9('0x45')](_0x4aabbe)[_0xd8f9('0x24')](handleEntityNotFound(_0x5ed1b7,null))[_0xd8f9('0x24')](respondWithResult(_0x5ed1b7,null))[_0xd8f9('0x3f')](handleError(_0x5ed1b7,null));};exports['create']=function(_0x395f6b,_0x1cc33e){return db[_0xd8f9('0x29')][_0xd8f9('0x46')](_0x395f6b['body'],{})[_0xd8f9('0x24')](respondWithResult(_0x1cc33e,0xc9))['catch'](handleError(_0x1cc33e,null));};exports['update']=function(_0x39fe25,_0x14e622){if(_0x39fe25[_0xd8f9('0x47')]['id']){delete _0x39fe25[_0xd8f9('0x47')]['id'];}return db[_0xd8f9('0x29')][_0xd8f9('0x45')]({'where':{'id':_0x39fe25[_0xd8f9('0x41')]['id']}})[_0xd8f9('0x24')](handleEntityNotFound(_0x14e622,null))[_0xd8f9('0x24')](saveUpdates(_0x39fe25[_0xd8f9('0x47')],null))['then'](respondWithResult(_0x14e622,null))['catch'](handleError(_0x14e622,null));};exports['destroy']=function(_0x1bb936,_0x3d2485){return db['JscriptyAnswerReport'][_0xd8f9('0x45')]({'where':{'id':_0x1bb936[_0xd8f9('0x41')]['id']}})[_0xd8f9('0x24')](handleEntityNotFound(_0x3d2485,null))[_0xd8f9('0x24')](removeEntity(_0x3d2485,null))[_0xd8f9('0x3f')](handleError(_0x3d2485,null));};exports[_0xd8f9('0x48')]=function(_0x455278,_0x705bd3){return db['JscriptyAnswerReport'][_0xd8f9('0x48')]()[_0xd8f9('0x24')](respondWithResult(_0x705bd3,null))[_0xd8f9('0x3f')](handleError(_0x705bd3,null));};