aeba8c3501f152de021a9ea5da06dbcf59fab460
[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 _0x72d7=['../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','offset','undefined','count','set','Content-Range','json','save','update','then','destroy','error','stack','name','send','map','ZohoField','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','limit','order','sort','where','pick','filter','merge','includeAll','include','rows','params','rawAttributes','options','find','catch','create','body','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../config/license/hardware','../../config/logger','api','../../config/utils'];(function(_0x59ee6f,_0x450239){var _0x4c0979=function(_0x565e92){while(--_0x565e92){_0x59ee6f['push'](_0x59ee6f['shift']());}};_0x4c0979(++_0x450239);}(_0x72d7,0x19b));var _0x772d=function(_0xe66cf2,_0x32ba5f){_0xe66cf2=_0xe66cf2-0x0;var _0x2d84e7=_0x72d7[_0xe66cf2];return _0x2d84e7;};'use strict';var emlformat=require(_0x772d('0x0'));var rimraf=require(_0x772d('0x1'));var zipdir=require(_0x772d('0x2'));var jsonpatch=require(_0x772d('0x3'));var rp=require(_0x772d('0x4'));var moment=require(_0x772d('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x772d('0x6'));var util=require('util');var path=require('path');var sox=require(_0x772d('0x7'));var csv=require(_0x772d('0x8'));var ejs=require(_0x772d('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x772d('0xa'));var squel=require(_0x772d('0xb'));var crypto=require(_0x772d('0xc'));var jsforce=require(_0x772d('0xd'));var deskjs=require(_0x772d('0xe'));var toCsv=require(_0x772d('0x8'));var querystring=require(_0x772d('0xf'));var Papa=require('papaparse');var Redis=require(_0x772d('0x10'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x772d('0x11'));var logger=require(_0x772d('0x12'))(_0x772d('0x13'));var utils=require(_0x772d('0x14'));var config=require(_0x772d('0x15'));var licenseUtil=require(_0x772d('0x16'));var db=require(_0x772d('0x17'))['db'];function respondWithStatusCode(_0x3a2939,_0x4a0865){_0x4a0865=_0x4a0865||0xcc;return function(_0x342bad){if(_0x342bad){return _0x3a2939[_0x772d('0x18')](_0x4a0865);}return _0x3a2939[_0x772d('0x19')](_0x4a0865)[_0x772d('0x1a')]();};}function respondWithResult(_0x3719b3,_0x489c48){_0x489c48=_0x489c48||0xc8;return function(_0x38fbed){if(_0x38fbed){return _0x3719b3['status'](_0x489c48)['json'](_0x38fbed);}};}function respondWithFilteredResult(_0x1325bc,_0x3fc786){return function(_0x54457d){if(_0x54457d){var _0x5880f0=typeof _0x3fc786[_0x772d('0x1b')]===_0x772d('0x1c')&&typeof _0x3fc786['limit']===_0x772d('0x1c');var _0x281577=_0x54457d[_0x772d('0x1d')];var _0x485b75=_0x5880f0?0x0:_0x3fc786[_0x772d('0x1b')];var _0x36055f=_0x5880f0?_0x54457d[_0x772d('0x1d')]:_0x3fc786[_0x772d('0x1b')]+_0x3fc786['limit'];var _0x545fee;if(_0x36055f>=_0x281577){_0x36055f=_0x281577;_0x545fee=0xc8;}else{_0x545fee=0xce;}_0x1325bc[_0x772d('0x19')](_0x545fee);return _0x1325bc[_0x772d('0x1e')](_0x772d('0x1f'),_0x485b75+'-'+_0x36055f+'/'+_0x281577)[_0x772d('0x20')](_0x54457d);}return null;};}function patchUpdates(_0x3e8ece){return function(_0x491b22){try{jsonpatch['apply'](_0x491b22,_0x3e8ece,!![]);}catch(_0x43cd58){return BPromise['reject'](_0x43cd58);}return _0x491b22[_0x772d('0x21')]();};}function saveUpdates(_0x54c0ac,_0x56dd11){return function(_0x2a423e){if(_0x2a423e){return _0x2a423e[_0x772d('0x22')](_0x54c0ac)[_0x772d('0x23')](function(_0x5777cd){return _0x5777cd;});}return null;};}function removeEntity(_0xb9dca4,_0x356c6d){return function(_0x28f4a0){if(_0x28f4a0){return _0x28f4a0[_0x772d('0x24')]()[_0x772d('0x23')](function(){_0xb9dca4[_0x772d('0x19')](0xcc)[_0x772d('0x1a')]();});}};}function handleEntityNotFound(_0x2f4587,_0x530c3c){return function(_0x34b647){if(!_0x34b647){_0x2f4587[_0x772d('0x18')](0x194);}return _0x34b647;};}function handleError(_0x51cbd6,_0x2aab30){_0x2aab30=_0x2aab30||0x1f4;return function(_0x186d8e){logger[_0x772d('0x25')](_0x186d8e[_0x772d('0x26')]);if(_0x186d8e['name']){delete _0x186d8e[_0x772d('0x27')];}_0x51cbd6[_0x772d('0x19')](_0x2aab30)[_0x772d('0x28')](_0x186d8e);};}exports['index']=function(_0x59a04b,_0x1fd695){var _0x1ded63={},_0x1cb0e3={},_0x2c1537={'count':0x0,'rows':[]};var _0x3f2926=_[_0x772d('0x29')](db[_0x772d('0x2a')]['rawAttributes'],function(_0x15177c){return{'name':_0x15177c['fieldName'],'type':_0x15177c[_0x772d('0x2b')][_0x772d('0x2c')]};});_0x1cb0e3[_0x772d('0x2d')]=_[_0x772d('0x29')](_0x3f2926,_0x772d('0x27'));_0x1cb0e3[_0x772d('0x2e')]=_[_0x772d('0x2f')](_0x59a04b[_0x772d('0x2e')]);_0x1cb0e3[_0x772d('0x30')]=_[_0x772d('0x31')](_0x1cb0e3[_0x772d('0x2d')],_0x1cb0e3['query']);_0x1ded63[_0x772d('0x32')]=_['intersection'](_0x1cb0e3[_0x772d('0x2d')],qs[_0x772d('0x33')](_0x59a04b[_0x772d('0x2e')][_0x772d('0x33')]));_0x1ded63[_0x772d('0x32')]=_0x1ded63['attributes'][_0x772d('0x34')]?_0x1ded63['attributes']:_0x1cb0e3['model'];if(!_0x59a04b[_0x772d('0x2e')][_0x772d('0x35')](_0x772d('0x36'))){_0x1ded63['limit']=qs['limit'](_0x59a04b[_0x772d('0x2e')][_0x772d('0x37')]);_0x1ded63[_0x772d('0x1b')]=qs[_0x772d('0x1b')](_0x59a04b[_0x772d('0x2e')][_0x772d('0x1b')]);}_0x1ded63[_0x772d('0x38')]=qs[_0x772d('0x39')](_0x59a04b[_0x772d('0x2e')][_0x772d('0x39')]);_0x1ded63[_0x772d('0x3a')]=qs[_0x772d('0x30')](_[_0x772d('0x3b')](_0x59a04b[_0x772d('0x2e')],_0x1cb0e3['filters']),_0x3f2926);if(_0x59a04b['query'][_0x772d('0x3c')]){_0x1ded63['where']=_[_0x772d('0x3d')](_0x1ded63[_0x772d('0x3a')],{'$or':_['map'](_0x3f2926,function(_0x1d2ab0){if(_0x1d2ab0[_0x772d('0x2b')]!=='VIRTUAL'){var _0x3a0f97={};_0x3a0f97[_0x1d2ab0[_0x772d('0x27')]]={'$like':'%'+_0x59a04b[_0x772d('0x2e')][_0x772d('0x3c')]+'%'};return _0x3a0f97;}})});}_0x1ded63=_[_0x772d('0x3d')]({},_0x1ded63,_0x59a04b['options']);var _0x5ab75c={'where':_0x1ded63[_0x772d('0x3a')]};return db[_0x772d('0x2a')][_0x772d('0x1d')](_0x5ab75c)['then'](function(_0x5a29f6){_0x2c1537[_0x772d('0x1d')]=_0x5a29f6;if(_0x59a04b[_0x772d('0x2e')][_0x772d('0x3e')]){_0x1ded63[_0x772d('0x3f')]=[{'all':!![]}];}return db[_0x772d('0x2a')]['findAll'](_0x1ded63);})[_0x772d('0x23')](function(_0x21a881){_0x2c1537[_0x772d('0x40')]=_0x21a881;return _0x2c1537;})[_0x772d('0x23')](respondWithFilteredResult(_0x1fd695,_0x1ded63))['catch'](handleError(_0x1fd695,null));};exports['show']=function(_0x4a81a4,_0x8586ff){var _0xeea979={'raw':!![],'where':{'id':_0x4a81a4[_0x772d('0x41')]['id']}},_0x113b4a={};_0x113b4a[_0x772d('0x2d')]=_[_0x772d('0x2f')](db['ZohoField'][_0x772d('0x42')]);_0x113b4a[_0x772d('0x2e')]=_[_0x772d('0x2f')](_0x4a81a4[_0x772d('0x2e')]);_0x113b4a[_0x772d('0x30')]=_[_0x772d('0x31')](_0x113b4a[_0x772d('0x2d')],_0x113b4a[_0x772d('0x2e')]);_0xeea979[_0x772d('0x32')]=_[_0x772d('0x31')](_0x113b4a[_0x772d('0x2d')],qs['fields'](_0x4a81a4[_0x772d('0x2e')][_0x772d('0x33')]));_0xeea979[_0x772d('0x32')]=_0xeea979[_0x772d('0x32')]['length']?_0xeea979[_0x772d('0x32')]:_0x113b4a[_0x772d('0x2d')];if(_0x4a81a4[_0x772d('0x2e')][_0x772d('0x3e')]){_0xeea979[_0x772d('0x3f')]=[{'all':!![]}];}_0xeea979=_['merge']({},_0xeea979,_0x4a81a4[_0x772d('0x43')]);return db[_0x772d('0x2a')][_0x772d('0x44')](_0xeea979)[_0x772d('0x23')](handleEntityNotFound(_0x8586ff,null))[_0x772d('0x23')](respondWithResult(_0x8586ff,null))[_0x772d('0x45')](handleError(_0x8586ff,null));};exports[_0x772d('0x46')]=function(_0x26a7c5,_0xc79524){return db[_0x772d('0x2a')][_0x772d('0x46')](_0x26a7c5[_0x772d('0x47')],{})[_0x772d('0x23')](respondWithResult(_0xc79524,0xc9))[_0x772d('0x45')](handleError(_0xc79524,null));};exports['update']=function(_0xa82965,_0x40b667){if(_0xa82965['body']['id']){delete _0xa82965[_0x772d('0x47')]['id'];}return db[_0x772d('0x2a')][_0x772d('0x44')]({'where':{'id':_0xa82965[_0x772d('0x41')]['id']}})[_0x772d('0x23')](handleEntityNotFound(_0x40b667,null))['then'](saveUpdates(_0xa82965[_0x772d('0x47')],null))[_0x772d('0x23')](respondWithResult(_0x40b667,null))['catch'](handleError(_0x40b667,null));};exports[_0x772d('0x24')]=function(_0x18b0f1,_0x12af39){return db[_0x772d('0x2a')]['find']({'where':{'id':_0x18b0f1[_0x772d('0x41')]['id']}})[_0x772d('0x23')](handleEntityNotFound(_0x12af39,null))[_0x772d('0x23')](removeEntity(_0x12af39,null))['catch'](handleError(_0x12af39,null));};