6c8daea8ebf8167b52ae420c76c8123fdf420070
[motion2.git] / server / api / cmHopperBlack / cmHopperBlack.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 _0x2d8f=['model','query','keys','intersection','attributes','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','merge','VIRTUAL','filter','options','include','findAll','rows','catch','params','rawAttributes','fields','includeAll','find','body','describe','eml-format','rimraf','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','ejs','fs-extra','lodash','squel','jsforce','desk.js','to-csv','querystring','papaparse','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','count','Content-Range','update','then','error','stack','name','map','CmHopperBlack','fieldName','type','key'];(function(_0x4c6d6f,_0x291557){var _0x2d4478=function(_0x106946){while(--_0x106946){_0x4c6d6f['push'](_0x4c6d6f['shift']());}};_0x2d4478(++_0x291557);}(_0x2d8f,0x140));var _0xf2d8=function(_0xf230c7,_0x50fb7c){_0xf230c7=_0xf230c7-0x0;var _0x5a47f6=_0x2d8f[_0xf230c7];return _0x5a47f6;};'use strict';var emlformat=require(_0xf2d8('0x0'));var rimraf=require(_0xf2d8('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xf2d8('0x2'));var rp=require(_0xf2d8('0x3'));var moment=require('moment');var BPromise=require(_0xf2d8('0x4'));var Mustache=require(_0xf2d8('0x5'));var util=require(_0xf2d8('0x6'));var path=require(_0xf2d8('0x7'));var sox=require(_0xf2d8('0x8'));var csv=require('to-csv');var ejs=require(_0xf2d8('0x9'));var fs=require('fs');var fs_extra=require(_0xf2d8('0xa'));var _=require(_0xf2d8('0xb'));var squel=require(_0xf2d8('0xc'));var crypto=require('crypto');var jsforce=require(_0xf2d8('0xd'));var deskjs=require(_0xf2d8('0xe'));var toCsv=require(_0xf2d8('0xf'));var querystring=require(_0xf2d8('0x10'));var Papa=require(_0xf2d8('0x11'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0xf2d8('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xf2d8('0x13'));var logger=require(_0xf2d8('0x14'))(_0xf2d8('0x15'));var utils=require(_0xf2d8('0x16'));var config=require(_0xf2d8('0x17'));var licenseUtil=require(_0xf2d8('0x18'));var db=require(_0xf2d8('0x19'))['db'];function respondWithStatusCode(_0x173f05,_0x52d6c0){_0x52d6c0=_0x52d6c0||0xcc;return function(_0x1de652){if(_0x1de652){return _0x173f05[_0xf2d8('0x1a')](_0x52d6c0);}return _0x173f05[_0xf2d8('0x1b')](_0x52d6c0)[_0xf2d8('0x1c')]();};}function respondWithResult(_0x508c25,_0x428443){_0x428443=_0x428443||0xc8;return function(_0x2eded6){if(_0x2eded6){return _0x508c25[_0xf2d8('0x1b')](_0x428443)[_0xf2d8('0x1d')](_0x2eded6);}};}function respondWithFilteredResult(_0x2b3b1b,_0x1c7869){return function(_0x4dbeb1){if(_0x4dbeb1){var _0x379d4d=typeof _0x1c7869[_0xf2d8('0x1e')]===_0xf2d8('0x1f')&&typeof _0x1c7869[_0xf2d8('0x20')]===_0xf2d8('0x1f');var _0x127f97=_0x4dbeb1[_0xf2d8('0x21')];var _0x20a3ab=_0x379d4d?0x0:_0x1c7869[_0xf2d8('0x1e')];var _0x2ebc84=_0x379d4d?_0x4dbeb1[_0xf2d8('0x21')]:_0x1c7869[_0xf2d8('0x1e')]+_0x1c7869[_0xf2d8('0x20')];var _0xf1a38d;if(_0x2ebc84>=_0x127f97){_0x2ebc84=_0x127f97;_0xf1a38d=0xc8;}else{_0xf1a38d=0xce;}_0x2b3b1b[_0xf2d8('0x1b')](_0xf1a38d);return _0x2b3b1b['set'](_0xf2d8('0x22'),_0x20a3ab+'-'+_0x2ebc84+'/'+_0x127f97)[_0xf2d8('0x1d')](_0x4dbeb1);}return null;};}function patchUpdates(_0x14eefd){return function(_0x131142){try{jsonpatch['apply'](_0x131142,_0x14eefd,!![]);}catch(_0x55499e){return BPromise['reject'](_0x55499e);}return _0x131142['save']();};}function saveUpdates(_0x447beb,_0x7c5ea9){return function(_0x5e7a9d){if(_0x5e7a9d){return _0x5e7a9d[_0xf2d8('0x23')](_0x447beb)[_0xf2d8('0x24')](function(_0xdded90){return _0xdded90;});}return null;};}function removeEntity(_0x38885f,_0x2bb4fb){return function(_0x419777){if(_0x419777){return _0x419777['destroy']()[_0xf2d8('0x24')](function(){_0x38885f[_0xf2d8('0x1b')](0xcc)[_0xf2d8('0x1c')]();});}};}function handleEntityNotFound(_0x4ea222,_0x34da2d){return function(_0x527451){if(!_0x527451){_0x4ea222[_0xf2d8('0x1a')](0x194);}return _0x527451;};}function handleError(_0x28f65d,_0x2ca743){_0x2ca743=_0x2ca743||0x1f4;return function(_0x51b6ba){logger[_0xf2d8('0x25')](_0x51b6ba[_0xf2d8('0x26')]);if(_0x51b6ba[_0xf2d8('0x27')]){delete _0x51b6ba['name'];}_0x28f65d[_0xf2d8('0x1b')](_0x2ca743)['send'](_0x51b6ba);};}exports['index']=function(_0x4987bb,_0x47b14a){var _0x23fa09={},_0x2ceedf={},_0x1ca5c8={'count':0x0,'rows':[]};var _0x106b98=_[_0xf2d8('0x28')](db[_0xf2d8('0x29')]['rawAttributes'],function(_0x221a68){return{'name':_0x221a68[_0xf2d8('0x2a')],'type':_0x221a68[_0xf2d8('0x2b')][_0xf2d8('0x2c')]};});_0x2ceedf[_0xf2d8('0x2d')]=_[_0xf2d8('0x28')](_0x106b98,_0xf2d8('0x27'));_0x2ceedf[_0xf2d8('0x2e')]=_[_0xf2d8('0x2f')](_0x4987bb[_0xf2d8('0x2e')]);_0x2ceedf['filters']=_[_0xf2d8('0x30')](_0x2ceedf[_0xf2d8('0x2d')],_0x2ceedf[_0xf2d8('0x2e')]);_0x23fa09['attributes']=_[_0xf2d8('0x30')](_0x2ceedf[_0xf2d8('0x2d')],qs['fields'](_0x4987bb[_0xf2d8('0x2e')]['fields']));_0x23fa09[_0xf2d8('0x31')]=_0x23fa09['attributes'][_0xf2d8('0x32')]?_0x23fa09[_0xf2d8('0x31')]:_0x2ceedf[_0xf2d8('0x2d')];if(!_0x4987bb['query'][_0xf2d8('0x33')](_0xf2d8('0x34'))){_0x23fa09[_0xf2d8('0x20')]=qs[_0xf2d8('0x20')](_0x4987bb[_0xf2d8('0x2e')][_0xf2d8('0x20')]);_0x23fa09[_0xf2d8('0x1e')]=qs[_0xf2d8('0x1e')](_0x4987bb[_0xf2d8('0x2e')]['offset']);}_0x23fa09[_0xf2d8('0x35')]=qs[_0xf2d8('0x36')](_0x4987bb['query']['sort']);_0x23fa09[_0xf2d8('0x37')]=qs[_0xf2d8('0x38')](_[_0xf2d8('0x39')](_0x4987bb[_0xf2d8('0x2e')],_0x2ceedf[_0xf2d8('0x38')]),_0x106b98);if(_0x4987bb['query']['filter']){_0x23fa09[_0xf2d8('0x37')]=_[_0xf2d8('0x3a')](_0x23fa09[_0xf2d8('0x37')],{'$or':_[_0xf2d8('0x28')](_0x106b98,function(_0x4da561){if(_0x4da561[_0xf2d8('0x2b')]!==_0xf2d8('0x3b')){var _0x4613a3={};_0x4613a3[_0x4da561['name']]={'$like':'%'+_0x4987bb[_0xf2d8('0x2e')][_0xf2d8('0x3c')]+'%'};return _0x4613a3;}})});}_0x23fa09=_[_0xf2d8('0x3a')]({},_0x23fa09,_0x4987bb[_0xf2d8('0x3d')]);var _0x4b386c={'where':_0x23fa09[_0xf2d8('0x37')]};return db[_0xf2d8('0x29')][_0xf2d8('0x21')](_0x4b386c)['then'](function(_0x161ff6){_0x1ca5c8[_0xf2d8('0x21')]=_0x161ff6;if(_0x4987bb[_0xf2d8('0x2e')]['includeAll']){_0x23fa09[_0xf2d8('0x3e')]=[{'all':!![]}];}return db[_0xf2d8('0x29')][_0xf2d8('0x3f')](_0x23fa09);})['then'](function(_0x70d39a){_0x1ca5c8[_0xf2d8('0x40')]=_0x70d39a;return _0x1ca5c8;})[_0xf2d8('0x24')](respondWithFilteredResult(_0x47b14a,_0x23fa09))[_0xf2d8('0x41')](handleError(_0x47b14a,null));};exports['show']=function(_0x894f68,_0x47aefc){var _0x550f5a={'raw':!![],'where':{'id':_0x894f68[_0xf2d8('0x42')]['id']}},_0x445dd2={};_0x445dd2[_0xf2d8('0x2d')]=_[_0xf2d8('0x2f')](db[_0xf2d8('0x29')][_0xf2d8('0x43')]);_0x445dd2[_0xf2d8('0x2e')]=_[_0xf2d8('0x2f')](_0x894f68[_0xf2d8('0x2e')]);_0x445dd2[_0xf2d8('0x38')]=_[_0xf2d8('0x30')](_0x445dd2[_0xf2d8('0x2d')],_0x445dd2[_0xf2d8('0x2e')]);_0x550f5a[_0xf2d8('0x31')]=_['intersection'](_0x445dd2[_0xf2d8('0x2d')],qs[_0xf2d8('0x44')](_0x894f68[_0xf2d8('0x2e')]['fields']));_0x550f5a[_0xf2d8('0x31')]=_0x550f5a[_0xf2d8('0x31')][_0xf2d8('0x32')]?_0x550f5a[_0xf2d8('0x31')]:_0x445dd2[_0xf2d8('0x2d')];if(_0x894f68['query'][_0xf2d8('0x45')]){_0x550f5a[_0xf2d8('0x3e')]=[{'all':!![]}];}_0x550f5a=_[_0xf2d8('0x3a')]({},_0x550f5a,_0x894f68['options']);return db['CmHopperBlack'][_0xf2d8('0x46')](_0x550f5a)[_0xf2d8('0x24')](handleEntityNotFound(_0x47aefc,null))[_0xf2d8('0x24')](respondWithResult(_0x47aefc,null))[_0xf2d8('0x41')](handleError(_0x47aefc,null));};exports[_0xf2d8('0x23')]=function(_0x2aaed8,_0x4488c1){if(_0x2aaed8[_0xf2d8('0x47')]['id']){delete _0x2aaed8[_0xf2d8('0x47')]['id'];}return db[_0xf2d8('0x29')][_0xf2d8('0x46')]({'where':{'id':_0x2aaed8[_0xf2d8('0x42')]['id']}})[_0xf2d8('0x24')](handleEntityNotFound(_0x4488c1,null))[_0xf2d8('0x24')](saveUpdates(_0x2aaed8[_0xf2d8('0x47')],null))[_0xf2d8('0x24')](respondWithResult(_0x4488c1,null))[_0xf2d8('0x41')](handleError(_0x4488c1,null));};exports['destroy']=function(_0x280761,_0x4b5932){return db['CmHopperBlack']['find']({'where':{'id':_0x280761[_0xf2d8('0x42')]['id']}})['then'](handleEntityNotFound(_0x4b5932,null))[_0xf2d8('0x24')](removeEntity(_0x4b5932,null))[_0xf2d8('0x41')](handleError(_0x4b5932,null));};exports[_0xf2d8('0x48')]=function(_0x349951,_0xb0b768){return db[_0xf2d8('0x29')][_0xf2d8('0x48')]()[_0xf2d8('0x24')](respondWithResult(_0xb0b768,null))['catch'](handleError(_0xb0b768,null));};