Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / api / intZohoField / intZohoField.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 _0x4274=['set','Content-Range','json','apply','reject','update','then','destroy','error','stack','name','map','fieldName','type','key','model','keys','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','pick','filter','VIRTUAL','options','includeAll','ZohoField','findAll','rows','catch','show','params','rawAttributes','include','merge','find','create','body','eml-format','zip-dir','fast-json-patch','request-promise','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','jsforce','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','end','status','offset','undefined','limit','count'];(function(_0x9fd887,_0x47f76c){var _0x1a54ab=function(_0xb65c08){while(--_0xb65c08){_0x9fd887['push'](_0x9fd887['shift']());}};_0x1a54ab(++_0x47f76c);}(_0x4274,0x1f4));var _0x4427=function(_0x20a8ea,_0x3937d8){_0x20a8ea=_0x20a8ea-0x0;var _0x4df51b=_0x4274[_0x20a8ea];return _0x4df51b;};'use strict';var emlformat=require(_0x4427('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x4427('0x1'));var jsonpatch=require(_0x4427('0x2'));var rp=require(_0x4427('0x3'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x4427('0x4'));var util=require(_0x4427('0x5'));var path=require(_0x4427('0x6'));var sox=require(_0x4427('0x7'));var csv=require(_0x4427('0x8'));var ejs=require(_0x4427('0x9'));var fs=require('fs');var fs_extra=require(_0x4427('0xa'));var _=require(_0x4427('0xb'));var squel=require(_0x4427('0xc'));var crypto=require('crypto');var jsforce=require(_0x4427('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x4427('0x8'));var querystring=require(_0x4427('0xe'));var Papa=require(_0x4427('0xf'));var Redis=require(_0x4427('0x10'));var authService=require('../../components/auth/service');var qs=require(_0x4427('0x11'));var as=require(_0x4427('0x12'));var hardwareService=require(_0x4427('0x13'));var logger=require(_0x4427('0x14'))(_0x4427('0x15'));var utils=require(_0x4427('0x16'));var config=require('../../config/environment');var licenseUtil=require(_0x4427('0x17'));var db=require(_0x4427('0x18'))['db'];function respondWithStatusCode(_0x46d3cc,_0x21b83b){_0x21b83b=_0x21b83b||0xcc;return function(_0x17c8d9){if(_0x17c8d9){return _0x46d3cc[_0x4427('0x19')](_0x21b83b);}return _0x46d3cc['status'](_0x21b83b)[_0x4427('0x1a')]();};}function respondWithResult(_0x290b4c,_0x3394e5){_0x3394e5=_0x3394e5||0xc8;return function(_0x4c9f58){if(_0x4c9f58){return _0x290b4c[_0x4427('0x1b')](_0x3394e5)['json'](_0x4c9f58);}};}function respondWithFilteredResult(_0x1f698b,_0x563aea){return function(_0x1f401e){if(_0x1f401e){var _0x59d04e=typeof _0x563aea[_0x4427('0x1c')]===_0x4427('0x1d')&&typeof _0x563aea[_0x4427('0x1e')]==='undefined';var _0xf6aa48=_0x1f401e[_0x4427('0x1f')];var _0x331911=_0x59d04e?0x0:_0x563aea['offset'];var _0x3db877=_0x59d04e?_0x1f401e[_0x4427('0x1f')]:_0x563aea[_0x4427('0x1c')]+_0x563aea[_0x4427('0x1e')];var _0xc42587;if(_0x3db877>=_0xf6aa48){_0x3db877=_0xf6aa48;_0xc42587=0xc8;}else{_0xc42587=0xce;}_0x1f698b['status'](_0xc42587);return _0x1f698b[_0x4427('0x20')](_0x4427('0x21'),_0x331911+'-'+_0x3db877+'/'+_0xf6aa48)[_0x4427('0x22')](_0x1f401e);}return null;};}function patchUpdates(_0x52a110){return function(_0x22e82f){try{jsonpatch[_0x4427('0x23')](_0x22e82f,_0x52a110,!![]);}catch(_0x4b2047){return BPromise[_0x4427('0x24')](_0x4b2047);}return _0x22e82f['save']();};}function saveUpdates(_0xdf6924,_0x20e455){return function(_0x427e6b){if(_0x427e6b){return _0x427e6b[_0x4427('0x25')](_0xdf6924)[_0x4427('0x26')](function(_0x103d56){return _0x103d56;});}return null;};}function removeEntity(_0x2bdf65,_0x4706c9){return function(_0x1614f2){if(_0x1614f2){return _0x1614f2[_0x4427('0x27')]()[_0x4427('0x26')](function(){_0x2bdf65[_0x4427('0x1b')](0xcc)['end']();});}};}function handleEntityNotFound(_0x4d171a,_0x32c998){return function(_0xa7ccf9){if(!_0xa7ccf9){_0x4d171a[_0x4427('0x19')](0x194);}return _0xa7ccf9;};}function handleError(_0x38dd39,_0x47eafc){_0x47eafc=_0x47eafc||0x1f4;return function(_0x4a5789){logger[_0x4427('0x28')](_0x4a5789[_0x4427('0x29')]);if(_0x4a5789[_0x4427('0x2a')]){delete _0x4a5789['name'];}_0x38dd39[_0x4427('0x1b')](_0x47eafc)['send'](_0x4a5789);};}exports['index']=function(_0x47f837,_0x4722f9){var _0x2b3e05={},_0x540165={},_0x76480c={'count':0x0,'rows':[]};var _0x4a801c=_[_0x4427('0x2b')](db['ZohoField']['rawAttributes'],function(_0xe6df5b){return{'name':_0xe6df5b[_0x4427('0x2c')],'type':_0xe6df5b[_0x4427('0x2d')][_0x4427('0x2e')]};});_0x540165[_0x4427('0x2f')]=_[_0x4427('0x2b')](_0x4a801c,_0x4427('0x2a'));_0x540165['query']=_[_0x4427('0x30')](_0x47f837[_0x4427('0x31')]);_0x540165[_0x4427('0x32')]=_[_0x4427('0x33')](_0x540165['model'],_0x540165['query']);_0x2b3e05[_0x4427('0x34')]=_[_0x4427('0x33')](_0x540165[_0x4427('0x2f')],qs[_0x4427('0x35')](_0x47f837[_0x4427('0x31')][_0x4427('0x35')]));_0x2b3e05['attributes']=_0x2b3e05[_0x4427('0x34')][_0x4427('0x36')]?_0x2b3e05[_0x4427('0x34')]:_0x540165[_0x4427('0x2f')];if(!_0x47f837[_0x4427('0x31')][_0x4427('0x37')](_0x4427('0x38'))){_0x2b3e05['limit']=qs[_0x4427('0x1e')](_0x47f837[_0x4427('0x31')][_0x4427('0x1e')]);_0x2b3e05[_0x4427('0x1c')]=qs['offset'](_0x47f837[_0x4427('0x31')][_0x4427('0x1c')]);}_0x2b3e05['order']=qs[_0x4427('0x39')](_0x47f837[_0x4427('0x31')][_0x4427('0x39')]);_0x2b3e05[_0x4427('0x3a')]=qs[_0x4427('0x32')](_[_0x4427('0x3b')](_0x47f837[_0x4427('0x31')],_0x540165[_0x4427('0x32')]),_0x4a801c);if(_0x47f837[_0x4427('0x31')][_0x4427('0x3c')]){_0x2b3e05[_0x4427('0x3a')]=_['merge'](_0x2b3e05[_0x4427('0x3a')],{'$or':_['map'](_0x4a801c,function(_0x57f7be){if(_0x57f7be[_0x4427('0x2d')]!==_0x4427('0x3d')){var _0x474e7e={};_0x474e7e[_0x57f7be[_0x4427('0x2a')]]={'$like':'%'+_0x47f837['query']['filter']+'%'};return _0x474e7e;}})});}_0x2b3e05=_['merge']({},_0x2b3e05,_0x47f837[_0x4427('0x3e')]);var _0x329169={'where':_0x2b3e05[_0x4427('0x3a')]};return db['ZohoField'][_0x4427('0x1f')](_0x329169)['then'](function(_0x3f0bae){_0x76480c[_0x4427('0x1f')]=_0x3f0bae;if(_0x47f837[_0x4427('0x31')][_0x4427('0x3f')]){_0x2b3e05['include']=[{'all':!![]}];}return db[_0x4427('0x40')][_0x4427('0x41')](_0x2b3e05);})['then'](function(_0x83c4e8){_0x76480c[_0x4427('0x42')]=_0x83c4e8;return _0x76480c;})[_0x4427('0x26')](respondWithFilteredResult(_0x4722f9,_0x2b3e05))[_0x4427('0x43')](handleError(_0x4722f9,null));};exports[_0x4427('0x44')]=function(_0x53d8cd,_0x166258){var _0x1b82dc={'raw':!![],'where':{'id':_0x53d8cd[_0x4427('0x45')]['id']}},_0x774ed1={};_0x774ed1['model']=_[_0x4427('0x30')](db[_0x4427('0x40')][_0x4427('0x46')]);_0x774ed1['query']=_['keys'](_0x53d8cd[_0x4427('0x31')]);_0x774ed1[_0x4427('0x32')]=_['intersection'](_0x774ed1['model'],_0x774ed1[_0x4427('0x31')]);_0x1b82dc[_0x4427('0x34')]=_[_0x4427('0x33')](_0x774ed1[_0x4427('0x2f')],qs[_0x4427('0x35')](_0x53d8cd[_0x4427('0x31')][_0x4427('0x35')]));_0x1b82dc[_0x4427('0x34')]=_0x1b82dc[_0x4427('0x34')][_0x4427('0x36')]?_0x1b82dc[_0x4427('0x34')]:_0x774ed1[_0x4427('0x2f')];if(_0x53d8cd['query'][_0x4427('0x3f')]){_0x1b82dc[_0x4427('0x47')]=[{'all':!![]}];}_0x1b82dc=_[_0x4427('0x48')]({},_0x1b82dc,_0x53d8cd[_0x4427('0x3e')]);return db['ZohoField'][_0x4427('0x49')](_0x1b82dc)[_0x4427('0x26')](handleEntityNotFound(_0x166258,null))[_0x4427('0x26')](respondWithResult(_0x166258,null))['catch'](handleError(_0x166258,null));};exports[_0x4427('0x4a')]=function(_0x367b03,_0x46eff6){return db[_0x4427('0x40')][_0x4427('0x4a')](_0x367b03[_0x4427('0x4b')],{})['then'](respondWithResult(_0x46eff6,0xc9))[_0x4427('0x43')](handleError(_0x46eff6,null));};exports[_0x4427('0x25')]=function(_0x1ed023,_0x209055){if(_0x1ed023['body']['id']){delete _0x1ed023['body']['id'];}return db[_0x4427('0x40')][_0x4427('0x49')]({'where':{'id':_0x1ed023['params']['id']}})[_0x4427('0x26')](handleEntityNotFound(_0x209055,null))[_0x4427('0x26')](saveUpdates(_0x1ed023[_0x4427('0x4b')],null))[_0x4427('0x26')](respondWithResult(_0x209055,null))['catch'](handleError(_0x209055,null));};exports[_0x4427('0x27')]=function(_0xc91a0f,_0x3e3aed){return db[_0x4427('0x40')]['find']({'where':{'id':_0xc91a0f[_0x4427('0x45')]['id']}})[_0x4427('0x26')](handleEntityNotFound(_0x3e3aed,null))[_0x4427('0x26')](removeEntity(_0x3e3aed,null))[_0x4427('0x43')](handleError(_0x3e3aed,null));};