Built motion from commit e02f907f.|2.6.14
[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 _0x0689=['end','json','offset','undefined','count','limit','set','Content-Range','apply','then','destroy','error','name','send','index','map','JscriptyAnswerReport','fieldName','type','key','model','query','keys','filters','attributes','fields','hasOwnProperty','nolimit','order','sort','pick','where','merge','VIRTUAL','filter','options','includeAll','include','findAll','catch','show','params','intersection','length','find','create','body','update','describe','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status'];(function(_0x1546eb,_0x2b6de2){var _0x128f64=function(_0x23bc22){while(--_0x23bc22){_0x1546eb['push'](_0x1546eb['shift']());}};_0x128f64(++_0x2b6de2);}(_0x0689,0x161));var _0x9068=function(_0x1ba907,_0x256d25){_0x1ba907=_0x1ba907-0x0;var _0x4053dd=_0x0689[_0x1ba907];return _0x4053dd;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x9068('0x0'));var zipdir=require('zip-dir');var jsonpatch=require(_0x9068('0x1'));var rp=require(_0x9068('0x2'));var moment=require(_0x9068('0x3'));var BPromise=require(_0x9068('0x4'));var Mustache=require(_0x9068('0x5'));var util=require(_0x9068('0x6'));var path=require(_0x9068('0x7'));var sox=require(_0x9068('0x8'));var csv=require(_0x9068('0x9'));var ejs=require(_0x9068('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x9068('0xb'));var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0x9068('0xc'));var deskjs=require(_0x9068('0xd'));var toCsv=require(_0x9068('0x9'));var querystring=require(_0x9068('0xe'));var Papa=require(_0x9068('0xf'));var Redis=require(_0x9068('0x10'));var authService=require(_0x9068('0x11'));var qs=require(_0x9068('0x12'));var as=require(_0x9068('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x9068('0x14'))(_0x9068('0x15'));var utils=require(_0x9068('0x16'));var config=require(_0x9068('0x17'));var licenseUtil=require('../../config/license/util');var db=require(_0x9068('0x18'))['db'];function respondWithStatusCode(_0x1a89d4,_0x39eae8){_0x39eae8=_0x39eae8||0xcc;return function(_0x4ba797){if(_0x4ba797){return _0x1a89d4[_0x9068('0x19')](_0x39eae8);}return _0x1a89d4[_0x9068('0x1a')](_0x39eae8)[_0x9068('0x1b')]();};}function respondWithResult(_0x479675,_0x322640){_0x322640=_0x322640||0xc8;return function(_0x3ea030){if(_0x3ea030){return _0x479675['status'](_0x322640)[_0x9068('0x1c')](_0x3ea030);}};}function respondWithFilteredResult(_0x2952f8,_0x486714){return function(_0x1ad536){if(_0x1ad536){var _0x412dbf=typeof _0x486714[_0x9068('0x1d')]===_0x9068('0x1e')&&typeof _0x486714['limit']===_0x9068('0x1e');var _0x376f6d=_0x1ad536[_0x9068('0x1f')];var _0x36d591=_0x412dbf?0x0:_0x486714[_0x9068('0x1d')];var _0x1d09bf=_0x412dbf?_0x1ad536[_0x9068('0x1f')]:_0x486714[_0x9068('0x1d')]+_0x486714[_0x9068('0x20')];var _0x5844b6;if(_0x1d09bf>=_0x376f6d){_0x1d09bf=_0x376f6d;_0x5844b6=0xc8;}else{_0x5844b6=0xce;}_0x2952f8[_0x9068('0x1a')](_0x5844b6);return _0x2952f8[_0x9068('0x21')](_0x9068('0x22'),_0x36d591+'-'+_0x1d09bf+'/'+_0x376f6d)[_0x9068('0x1c')](_0x1ad536);}return null;};}function patchUpdates(_0xb6bf1e){return function(_0x427744){try{jsonpatch[_0x9068('0x23')](_0x427744,_0xb6bf1e,!![]);}catch(_0x1bc81b){return BPromise['reject'](_0x1bc81b);}return _0x427744['save']();};}function saveUpdates(_0x48a2de,_0x4537e7){return function(_0x5cab20){if(_0x5cab20){return _0x5cab20['update'](_0x48a2de)[_0x9068('0x24')](function(_0x290d94){return _0x290d94;});}return null;};}function removeEntity(_0x32231b,_0x3673b9){return function(_0x5d708a){if(_0x5d708a){return _0x5d708a[_0x9068('0x25')]()[_0x9068('0x24')](function(){_0x32231b[_0x9068('0x1a')](0xcc)[_0x9068('0x1b')]();});}};}function handleEntityNotFound(_0x12f17f,_0x28615e){return function(_0x4b93d9){if(!_0x4b93d9){_0x12f17f[_0x9068('0x19')](0x194);}return _0x4b93d9;};}function handleError(_0x3ee9aa,_0x4f48c3){_0x4f48c3=_0x4f48c3||0x1f4;return function(_0x12369a){logger[_0x9068('0x26')](_0x12369a['stack']);if(_0x12369a['name']){delete _0x12369a[_0x9068('0x27')];}_0x3ee9aa['status'](_0x4f48c3)[_0x9068('0x28')](_0x12369a);};}exports[_0x9068('0x29')]=function(_0x422e89,_0x1ceef5){var _0x2f14ab={},_0x4fd2e2={},_0x94b290={'count':0x0,'rows':[]};var _0x412b82=_[_0x9068('0x2a')](db[_0x9068('0x2b')]['rawAttributes'],function(_0x5a49b8){return{'name':_0x5a49b8[_0x9068('0x2c')],'type':_0x5a49b8[_0x9068('0x2d')][_0x9068('0x2e')]};});_0x4fd2e2[_0x9068('0x2f')]=_[_0x9068('0x2a')](_0x412b82,_0x9068('0x27'));_0x4fd2e2[_0x9068('0x30')]=_[_0x9068('0x31')](_0x422e89[_0x9068('0x30')]);_0x4fd2e2[_0x9068('0x32')]=_['intersection'](_0x4fd2e2[_0x9068('0x2f')],_0x4fd2e2[_0x9068('0x30')]);_0x2f14ab[_0x9068('0x33')]=_['intersection'](_0x4fd2e2[_0x9068('0x2f')],qs[_0x9068('0x34')](_0x422e89[_0x9068('0x30')][_0x9068('0x34')]));_0x2f14ab['attributes']=_0x2f14ab[_0x9068('0x33')]['length']?_0x2f14ab[_0x9068('0x33')]:_0x4fd2e2['model'];if(!_0x422e89[_0x9068('0x30')][_0x9068('0x35')](_0x9068('0x36'))){_0x2f14ab[_0x9068('0x20')]=qs[_0x9068('0x20')](_0x422e89['query'][_0x9068('0x20')]);_0x2f14ab[_0x9068('0x1d')]=qs[_0x9068('0x1d')](_0x422e89[_0x9068('0x30')][_0x9068('0x1d')]);}_0x2f14ab[_0x9068('0x37')]=qs[_0x9068('0x38')](_0x422e89[_0x9068('0x30')][_0x9068('0x38')]);_0x2f14ab['where']=qs[_0x9068('0x32')](_[_0x9068('0x39')](_0x422e89[_0x9068('0x30')],_0x4fd2e2[_0x9068('0x32')]),_0x412b82);if(_0x422e89['query']['filter']){_0x2f14ab[_0x9068('0x3a')]=_[_0x9068('0x3b')](_0x2f14ab[_0x9068('0x3a')],{'$or':_[_0x9068('0x2a')](_0x412b82,function(_0x108e98){if(_0x108e98[_0x9068('0x2d')]!==_0x9068('0x3c')){var _0x3e3dc0={};_0x3e3dc0[_0x108e98[_0x9068('0x27')]]={'$like':'%'+_0x422e89[_0x9068('0x30')][_0x9068('0x3d')]+'%'};return _0x3e3dc0;}})});}_0x2f14ab=_[_0x9068('0x3b')]({},_0x2f14ab,_0x422e89[_0x9068('0x3e')]);var _0x3749ff={'where':_0x2f14ab[_0x9068('0x3a')]};return db[_0x9068('0x2b')][_0x9068('0x1f')](_0x3749ff)[_0x9068('0x24')](function(_0x53201f){_0x94b290[_0x9068('0x1f')]=_0x53201f;if(_0x422e89[_0x9068('0x30')][_0x9068('0x3f')]){_0x2f14ab[_0x9068('0x40')]=[{'all':!![]}];}return db['JscriptyAnswerReport'][_0x9068('0x41')](_0x2f14ab);})['then'](function(_0x36bfb2){_0x94b290['rows']=_0x36bfb2;return _0x94b290;})[_0x9068('0x24')](respondWithFilteredResult(_0x1ceef5,_0x2f14ab))[_0x9068('0x42')](handleError(_0x1ceef5,null));};exports[_0x9068('0x43')]=function(_0x2a911a,_0x4a1efd){var _0x399dfd={'raw':!![],'where':{'id':_0x2a911a[_0x9068('0x44')]['id']}},_0x2e7480={};_0x2e7480[_0x9068('0x2f')]=_[_0x9068('0x31')](db[_0x9068('0x2b')]['rawAttributes']);_0x2e7480['query']=_[_0x9068('0x31')](_0x2a911a[_0x9068('0x30')]);_0x2e7480[_0x9068('0x32')]=_[_0x9068('0x45')](_0x2e7480[_0x9068('0x2f')],_0x2e7480[_0x9068('0x30')]);_0x399dfd[_0x9068('0x33')]=_[_0x9068('0x45')](_0x2e7480[_0x9068('0x2f')],qs[_0x9068('0x34')](_0x2a911a['query'][_0x9068('0x34')]));_0x399dfd[_0x9068('0x33')]=_0x399dfd['attributes'][_0x9068('0x46')]?_0x399dfd['attributes']:_0x2e7480[_0x9068('0x2f')];if(_0x2a911a['query'][_0x9068('0x3f')]){_0x399dfd[_0x9068('0x40')]=[{'all':!![]}];}_0x399dfd=_['merge']({},_0x399dfd,_0x2a911a[_0x9068('0x3e')]);return db[_0x9068('0x2b')][_0x9068('0x47')](_0x399dfd)[_0x9068('0x24')](handleEntityNotFound(_0x4a1efd,null))['then'](respondWithResult(_0x4a1efd,null))[_0x9068('0x42')](handleError(_0x4a1efd,null));};exports[_0x9068('0x48')]=function(_0x5ace24,_0x18430f){return db[_0x9068('0x2b')][_0x9068('0x48')](_0x5ace24[_0x9068('0x49')],{})[_0x9068('0x24')](respondWithResult(_0x18430f,0xc9))[_0x9068('0x42')](handleError(_0x18430f,null));};exports[_0x9068('0x4a')]=function(_0x552933,_0x49513f){if(_0x552933['body']['id']){delete _0x552933['body']['id'];}return db['JscriptyAnswerReport'][_0x9068('0x47')]({'where':{'id':_0x552933[_0x9068('0x44')]['id']}})[_0x9068('0x24')](handleEntityNotFound(_0x49513f,null))[_0x9068('0x24')](saveUpdates(_0x552933[_0x9068('0x49')],null))[_0x9068('0x24')](respondWithResult(_0x49513f,null))['catch'](handleError(_0x49513f,null));};exports[_0x9068('0x25')]=function(_0x4cea5d,_0x146964){return db[_0x9068('0x2b')]['find']({'where':{'id':_0x4cea5d[_0x9068('0x44')]['id']}})[_0x9068('0x24')](handleEntityNotFound(_0x146964,null))[_0x9068('0x24')](removeEntity(_0x146964,null))[_0x9068('0x42')](handleError(_0x146964,null));};exports[_0x9068('0x4b')]=function(_0x2a6deb,_0x228f22){return db[_0x9068('0x2b')][_0x9068('0x4b')]()[_0x9068('0x24')](respondWithResult(_0x228f22,null))[_0x9068('0x42')](handleError(_0x228f22,null));};