Built motion from commit 6db1674d.|2.6.23
[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 _0x1842=['papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','offset','undefined','limit','count','set','Content-Range','json','apply','reject','save','update','then','destroy','end','error','index','map','ZohoField','rawAttributes','type','model','name','query','keys','filters','intersection','attributes','fields','length','nolimit','order','sort','where','filter','VIRTUAL','merge','options','includeAll','include','findAll','catch','create','body','find','params','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','path','sox','to-csv','fs-extra','lodash','crypto','desk.js'];(function(_0x587c0a,_0x55fe0d){var _0x21136c=function(_0x2989b3){while(--_0x2989b3){_0x587c0a['push'](_0x587c0a['shift']());}};_0x21136c(++_0x55fe0d);}(_0x1842,0x80));var _0x2184=function(_0x508ded,_0x3f2061){_0x508ded=_0x508ded-0x0;var _0x3bc457=_0x1842[_0x508ded];return _0x3bc457;};'use strict';var emlformat=require(_0x2184('0x0'));var rimraf=require(_0x2184('0x1'));var zipdir=require(_0x2184('0x2'));var jsonpatch=require(_0x2184('0x3'));var rp=require(_0x2184('0x4'));var moment=require(_0x2184('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x2184('0x6'));var util=require('util');var path=require(_0x2184('0x7'));var sox=require(_0x2184('0x8'));var csv=require(_0x2184('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x2184('0xa'));var _=require(_0x2184('0xb'));var squel=require('squel');var crypto=require(_0x2184('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x2184('0xd'));var toCsv=require(_0x2184('0x9'));var querystring=require('querystring');var Papa=require(_0x2184('0xe'));var Redis=require(_0x2184('0xf'));var authService=require(_0x2184('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0x2184('0x11'));var hardwareService=require(_0x2184('0x12'));var logger=require(_0x2184('0x13'))(_0x2184('0x14'));var utils=require(_0x2184('0x15'));var config=require(_0x2184('0x16'));var licenseUtil=require(_0x2184('0x17'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x36c60b,_0x54f04b){_0x54f04b=_0x54f04b||0xcc;return function(_0x54d61d){if(_0x54d61d){return _0x36c60b[_0x2184('0x18')](_0x54f04b);}return _0x36c60b[_0x2184('0x19')](_0x54f04b)['end']();};}function respondWithResult(_0x113b9b,_0x36e3b3){_0x36e3b3=_0x36e3b3||0xc8;return function(_0x47d353){if(_0x47d353){return _0x113b9b[_0x2184('0x19')](_0x36e3b3)['json'](_0x47d353);}};}function respondWithFilteredResult(_0x81f09e,_0x1603d6){return function(_0x3ab481){if(_0x3ab481){var _0x8b3e68=typeof _0x1603d6[_0x2184('0x1a')]===_0x2184('0x1b')&&typeof _0x1603d6[_0x2184('0x1c')]===_0x2184('0x1b');var _0x4c35ed=_0x3ab481['count'];var _0x496ac5=_0x8b3e68?0x0:_0x1603d6[_0x2184('0x1a')];var _0x246fbc=_0x8b3e68?_0x3ab481[_0x2184('0x1d')]:_0x1603d6[_0x2184('0x1a')]+_0x1603d6[_0x2184('0x1c')];var _0x38d895;if(_0x246fbc>=_0x4c35ed){_0x246fbc=_0x4c35ed;_0x38d895=0xc8;}else{_0x38d895=0xce;}_0x81f09e[_0x2184('0x19')](_0x38d895);return _0x81f09e[_0x2184('0x1e')](_0x2184('0x1f'),_0x496ac5+'-'+_0x246fbc+'/'+_0x4c35ed)[_0x2184('0x20')](_0x3ab481);}return null;};}function patchUpdates(_0x28a816){return function(_0x3e8556){try{jsonpatch[_0x2184('0x21')](_0x3e8556,_0x28a816,!![]);}catch(_0x257aa7){return BPromise[_0x2184('0x22')](_0x257aa7);}return _0x3e8556[_0x2184('0x23')]();};}function saveUpdates(_0x11497d,_0xcaa459){return function(_0x72c3c0){if(_0x72c3c0){return _0x72c3c0[_0x2184('0x24')](_0x11497d)[_0x2184('0x25')](function(_0x4d0c5b){return _0x4d0c5b;});}return null;};}function removeEntity(_0x1fbc0e,_0x4ddc65){return function(_0x731d5c){if(_0x731d5c){return _0x731d5c[_0x2184('0x26')]()[_0x2184('0x25')](function(){_0x1fbc0e['status'](0xcc)[_0x2184('0x27')]();});}};}function handleEntityNotFound(_0x484e33,_0x377a6e){return function(_0x3efc88){if(!_0x3efc88){_0x484e33[_0x2184('0x18')](0x194);}return _0x3efc88;};}function handleError(_0x3044b5,_0x1f79db){_0x1f79db=_0x1f79db||0x1f4;return function(_0x180747){logger[_0x2184('0x28')](_0x180747['stack']);if(_0x180747['name']){delete _0x180747['name'];}_0x3044b5[_0x2184('0x19')](_0x1f79db)['send'](_0x180747);};}exports[_0x2184('0x29')]=function(_0x7dd1cf,_0x2a0b94){var _0x77ff1d={},_0x4d07d2={},_0x249545={'count':0x0,'rows':[]};var _0x45b9af=_[_0x2184('0x2a')](db[_0x2184('0x2b')][_0x2184('0x2c')],function(_0x1e9709){return{'name':_0x1e9709['fieldName'],'type':_0x1e9709[_0x2184('0x2d')]['key']};});_0x4d07d2[_0x2184('0x2e')]=_[_0x2184('0x2a')](_0x45b9af,_0x2184('0x2f'));_0x4d07d2[_0x2184('0x30')]=_[_0x2184('0x31')](_0x7dd1cf[_0x2184('0x30')]);_0x4d07d2[_0x2184('0x32')]=_[_0x2184('0x33')](_0x4d07d2[_0x2184('0x2e')],_0x4d07d2[_0x2184('0x30')]);_0x77ff1d[_0x2184('0x34')]=_[_0x2184('0x33')](_0x4d07d2['model'],qs[_0x2184('0x35')](_0x7dd1cf['query']['fields']));_0x77ff1d[_0x2184('0x34')]=_0x77ff1d[_0x2184('0x34')][_0x2184('0x36')]?_0x77ff1d[_0x2184('0x34')]:_0x4d07d2[_0x2184('0x2e')];if(!_0x7dd1cf['query']['hasOwnProperty'](_0x2184('0x37'))){_0x77ff1d[_0x2184('0x1c')]=qs['limit'](_0x7dd1cf['query'][_0x2184('0x1c')]);_0x77ff1d[_0x2184('0x1a')]=qs[_0x2184('0x1a')](_0x7dd1cf['query']['offset']);}_0x77ff1d[_0x2184('0x38')]=qs['sort'](_0x7dd1cf[_0x2184('0x30')][_0x2184('0x39')]);_0x77ff1d[_0x2184('0x3a')]=qs[_0x2184('0x32')](_['pick'](_0x7dd1cf[_0x2184('0x30')],_0x4d07d2[_0x2184('0x32')]),_0x45b9af);if(_0x7dd1cf[_0x2184('0x30')][_0x2184('0x3b')]){_0x77ff1d[_0x2184('0x3a')]=_['merge'](_0x77ff1d[_0x2184('0x3a')],{'$or':_['map'](_0x45b9af,function(_0x594896){if(_0x594896[_0x2184('0x2d')]!==_0x2184('0x3c')){var _0x3f9e49={};_0x3f9e49[_0x594896[_0x2184('0x2f')]]={'$like':'%'+_0x7dd1cf[_0x2184('0x30')]['filter']+'%'};return _0x3f9e49;}})});}_0x77ff1d=_[_0x2184('0x3d')]({},_0x77ff1d,_0x7dd1cf[_0x2184('0x3e')]);var _0x51ee8e={'where':_0x77ff1d[_0x2184('0x3a')]};return db[_0x2184('0x2b')][_0x2184('0x1d')](_0x51ee8e)[_0x2184('0x25')](function(_0x3276a6){_0x249545[_0x2184('0x1d')]=_0x3276a6;if(_0x7dd1cf[_0x2184('0x30')][_0x2184('0x3f')]){_0x77ff1d[_0x2184('0x40')]=[{'all':!![]}];}return db['ZohoField'][_0x2184('0x41')](_0x77ff1d);})[_0x2184('0x25')](function(_0x321049){_0x249545['rows']=_0x321049;return _0x249545;})['then'](respondWithFilteredResult(_0x2a0b94,_0x77ff1d))[_0x2184('0x42')](handleError(_0x2a0b94,null));};exports['show']=function(_0x1de2aa,_0xc156f9){var _0x5b6546={'raw':!![],'where':{'id':_0x1de2aa['params']['id']}},_0x5c3b96={};_0x5c3b96[_0x2184('0x2e')]=_[_0x2184('0x31')](db[_0x2184('0x2b')][_0x2184('0x2c')]);_0x5c3b96[_0x2184('0x30')]=_['keys'](_0x1de2aa[_0x2184('0x30')]);_0x5c3b96[_0x2184('0x32')]=_[_0x2184('0x33')](_0x5c3b96['model'],_0x5c3b96[_0x2184('0x30')]);_0x5b6546[_0x2184('0x34')]=_[_0x2184('0x33')](_0x5c3b96[_0x2184('0x2e')],qs[_0x2184('0x35')](_0x1de2aa[_0x2184('0x30')][_0x2184('0x35')]));_0x5b6546[_0x2184('0x34')]=_0x5b6546[_0x2184('0x34')][_0x2184('0x36')]?_0x5b6546[_0x2184('0x34')]:_0x5c3b96[_0x2184('0x2e')];if(_0x1de2aa[_0x2184('0x30')][_0x2184('0x3f')]){_0x5b6546[_0x2184('0x40')]=[{'all':!![]}];}_0x5b6546=_[_0x2184('0x3d')]({},_0x5b6546,_0x1de2aa[_0x2184('0x3e')]);return db[_0x2184('0x2b')]['find'](_0x5b6546)[_0x2184('0x25')](handleEntityNotFound(_0xc156f9,null))[_0x2184('0x25')](respondWithResult(_0xc156f9,null))['catch'](handleError(_0xc156f9,null));};exports['create']=function(_0x930ba7,_0x29b681){return db['ZohoField'][_0x2184('0x43')](_0x930ba7[_0x2184('0x44')],{})[_0x2184('0x25')](respondWithResult(_0x29b681,0xc9))['catch'](handleError(_0x29b681,null));};exports['update']=function(_0x270d95,_0x4cdd9d){if(_0x270d95[_0x2184('0x44')]['id']){delete _0x270d95[_0x2184('0x44')]['id'];}return db[_0x2184('0x2b')][_0x2184('0x45')]({'where':{'id':_0x270d95[_0x2184('0x46')]['id']}})[_0x2184('0x25')](handleEntityNotFound(_0x4cdd9d,null))[_0x2184('0x25')](saveUpdates(_0x270d95[_0x2184('0x44')],null))[_0x2184('0x25')](respondWithResult(_0x4cdd9d,null))[_0x2184('0x42')](handleError(_0x4cdd9d,null));};exports[_0x2184('0x26')]=function(_0x36db7f,_0x522c03){return db[_0x2184('0x2b')][_0x2184('0x45')]({'where':{'id':_0x36db7f[_0x2184('0x46')]['id']}})[_0x2184('0x25')](handleEntityNotFound(_0x522c03,null))[_0x2184('0x25')](removeEntity(_0x522c03,null))[_0x2184('0x42')](handleError(_0x522c03,null));};