Built motion from commit 19a84241.|2.5.34
[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 _0xd73d=['error','stack','name','send','map','fieldName','type','model','keys','filters','intersection','query','attributes','fields','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','merge','VIRTUAL','options','ZohoField','then','includeAll','include','findAll','rows','catch','show','params','rawAttributes','find','create','body','destroy','eml-format','zip-dir','fast-json-patch','bluebird','util','path','sox','to-csv','lodash','squel','crypto','desk.js','querystring','ioredis','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','status','json','offset','undefined','limit','count','set','Content-Range','save','update','end'];(function(_0x237da8,_0x37b77a){var _0x558825=function(_0x45d7f1){while(--_0x45d7f1){_0x237da8['push'](_0x237da8['shift']());}};_0x558825(++_0x37b77a);}(_0xd73d,0xb5));var _0xdd73=function(_0x381927,_0x684dab){_0x381927=_0x381927-0x0;var _0x5f2835=_0xd73d[_0x381927];return _0x5f2835;};'use strict';var emlformat=require(_0xdd73('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xdd73('0x1'));var jsonpatch=require(_0xdd73('0x2'));var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0xdd73('0x3'));var Mustache=require('mustache');var util=require(_0xdd73('0x4'));var path=require(_0xdd73('0x5'));var sox=require(_0xdd73('0x6'));var csv=require(_0xdd73('0x7'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xdd73('0x8'));var squel=require(_0xdd73('0x9'));var crypto=require(_0xdd73('0xa'));var jsforce=require('jsforce');var deskjs=require(_0xdd73('0xb'));var toCsv=require('to-csv');var querystring=require(_0xdd73('0xc'));var Papa=require('papaparse');var Redis=require(_0xdd73('0xd'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0xdd73('0xe'));var hardwareService=require(_0xdd73('0xf'));var logger=require(_0xdd73('0x10'))(_0xdd73('0x11'));var utils=require(_0xdd73('0x12'));var config=require(_0xdd73('0x13'));var licenseUtil=require(_0xdd73('0x14'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x1aeeed,_0xe3af91){_0xe3af91=_0xe3af91||0xcc;return function(_0x43adf4){if(_0x43adf4){return _0x1aeeed['sendStatus'](_0xe3af91);}return _0x1aeeed[_0xdd73('0x15')](_0xe3af91)['end']();};}function respondWithResult(_0x245be9,_0x4cefff){_0x4cefff=_0x4cefff||0xc8;return function(_0x4aa1fc){if(_0x4aa1fc){return _0x245be9[_0xdd73('0x15')](_0x4cefff)[_0xdd73('0x16')](_0x4aa1fc);}};}function respondWithFilteredResult(_0x51a363,_0x49d56c){return function(_0x449886){if(_0x449886){var _0x4f32fe=typeof _0x49d56c[_0xdd73('0x17')]===_0xdd73('0x18')&&typeof _0x49d56c[_0xdd73('0x19')]===_0xdd73('0x18');var _0x4268c2=_0x449886[_0xdd73('0x1a')];var _0x4aa97b=_0x4f32fe?0x0:_0x49d56c[_0xdd73('0x17')];var _0x31b93b=_0x4f32fe?_0x449886['count']:_0x49d56c[_0xdd73('0x17')]+_0x49d56c[_0xdd73('0x19')];var _0x1a2637;if(_0x31b93b>=_0x4268c2){_0x31b93b=_0x4268c2;_0x1a2637=0xc8;}else{_0x1a2637=0xce;}_0x51a363[_0xdd73('0x15')](_0x1a2637);return _0x51a363[_0xdd73('0x1b')](_0xdd73('0x1c'),_0x4aa97b+'-'+_0x31b93b+'/'+_0x4268c2)['json'](_0x449886);}return null;};}function patchUpdates(_0x2d785d){return function(_0x119ae7){try{jsonpatch['apply'](_0x119ae7,_0x2d785d,!![]);}catch(_0x2da130){return BPromise['reject'](_0x2da130);}return _0x119ae7[_0xdd73('0x1d')]();};}function saveUpdates(_0x51b071,_0x22abd7){return function(_0x535fac){if(_0x535fac){return _0x535fac[_0xdd73('0x1e')](_0x51b071)['then'](function(_0x4f3741){return _0x4f3741;});}return null;};}function removeEntity(_0x4e0a30,_0x1f5928){return function(_0x4d1be6){if(_0x4d1be6){return _0x4d1be6['destroy']()['then'](function(){_0x4e0a30[_0xdd73('0x15')](0xcc)[_0xdd73('0x1f')]();});}};}function handleEntityNotFound(_0x44a45c,_0x2d1436){return function(_0x1e6872){if(!_0x1e6872){_0x44a45c['sendStatus'](0x194);}return _0x1e6872;};}function handleError(_0x954d6,_0x1c4eef){_0x1c4eef=_0x1c4eef||0x1f4;return function(_0x486257){logger[_0xdd73('0x20')](_0x486257[_0xdd73('0x21')]);if(_0x486257['name']){delete _0x486257[_0xdd73('0x22')];}_0x954d6[_0xdd73('0x15')](_0x1c4eef)[_0xdd73('0x23')](_0x486257);};}exports['index']=function(_0x50ffba,_0x213a7e){var _0x413040={},_0x206846={},_0x7e6175={'count':0x0,'rows':[]};var _0x1932f2=_[_0xdd73('0x24')](db['ZohoField']['rawAttributes'],function(_0x5eb97d){return{'name':_0x5eb97d[_0xdd73('0x25')],'type':_0x5eb97d[_0xdd73('0x26')]['key']};});_0x206846[_0xdd73('0x27')]=_[_0xdd73('0x24')](_0x1932f2,_0xdd73('0x22'));_0x206846['query']=_[_0xdd73('0x28')](_0x50ffba['query']);_0x206846[_0xdd73('0x29')]=_[_0xdd73('0x2a')](_0x206846['model'],_0x206846[_0xdd73('0x2b')]);_0x413040[_0xdd73('0x2c')]=_[_0xdd73('0x2a')](_0x206846['model'],qs[_0xdd73('0x2d')](_0x50ffba[_0xdd73('0x2b')][_0xdd73('0x2d')]));_0x413040[_0xdd73('0x2c')]=_0x413040[_0xdd73('0x2c')][_0xdd73('0x2e')]?_0x413040['attributes']:_0x206846[_0xdd73('0x27')];if(!_0x50ffba[_0xdd73('0x2b')][_0xdd73('0x2f')](_0xdd73('0x30'))){_0x413040[_0xdd73('0x19')]=qs['limit'](_0x50ffba[_0xdd73('0x2b')][_0xdd73('0x19')]);_0x413040[_0xdd73('0x17')]=qs[_0xdd73('0x17')](_0x50ffba[_0xdd73('0x2b')][_0xdd73('0x17')]);}_0x413040[_0xdd73('0x31')]=qs[_0xdd73('0x32')](_0x50ffba[_0xdd73('0x2b')][_0xdd73('0x32')]);_0x413040['where']=qs[_0xdd73('0x29')](_[_0xdd73('0x33')](_0x50ffba[_0xdd73('0x2b')],_0x206846[_0xdd73('0x29')]),_0x1932f2);if(_0x50ffba[_0xdd73('0x2b')][_0xdd73('0x34')]){_0x413040[_0xdd73('0x35')]=_[_0xdd73('0x36')](_0x413040[_0xdd73('0x35')],{'$or':_[_0xdd73('0x24')](_0x1932f2,function(_0x1a70a3){if(_0x1a70a3[_0xdd73('0x26')]!==_0xdd73('0x37')){var _0x2ed3a4={};_0x2ed3a4[_0x1a70a3[_0xdd73('0x22')]]={'$like':'%'+_0x50ffba[_0xdd73('0x2b')][_0xdd73('0x34')]+'%'};return _0x2ed3a4;}})});}_0x413040=_[_0xdd73('0x36')]({},_0x413040,_0x50ffba[_0xdd73('0x38')]);var _0x1cc6c0={'where':_0x413040[_0xdd73('0x35')]};return db[_0xdd73('0x39')][_0xdd73('0x1a')](_0x1cc6c0)[_0xdd73('0x3a')](function(_0x331030){_0x7e6175[_0xdd73('0x1a')]=_0x331030;if(_0x50ffba['query'][_0xdd73('0x3b')]){_0x413040[_0xdd73('0x3c')]=[{'all':!![]}];}return db[_0xdd73('0x39')][_0xdd73('0x3d')](_0x413040);})[_0xdd73('0x3a')](function(_0x5b8ede){_0x7e6175[_0xdd73('0x3e')]=_0x5b8ede;return _0x7e6175;})[_0xdd73('0x3a')](respondWithFilteredResult(_0x213a7e,_0x413040))[_0xdd73('0x3f')](handleError(_0x213a7e,null));};exports[_0xdd73('0x40')]=function(_0x178751,_0x39dd22){var _0x2b5b71={'raw':!![],'where':{'id':_0x178751[_0xdd73('0x41')]['id']}},_0x384a63={};_0x384a63[_0xdd73('0x27')]=_[_0xdd73('0x28')](db['ZohoField'][_0xdd73('0x42')]);_0x384a63[_0xdd73('0x2b')]=_[_0xdd73('0x28')](_0x178751[_0xdd73('0x2b')]);_0x384a63['filters']=_[_0xdd73('0x2a')](_0x384a63[_0xdd73('0x27')],_0x384a63['query']);_0x2b5b71[_0xdd73('0x2c')]=_[_0xdd73('0x2a')](_0x384a63[_0xdd73('0x27')],qs['fields'](_0x178751[_0xdd73('0x2b')][_0xdd73('0x2d')]));_0x2b5b71['attributes']=_0x2b5b71[_0xdd73('0x2c')]['length']?_0x2b5b71[_0xdd73('0x2c')]:_0x384a63[_0xdd73('0x27')];if(_0x178751[_0xdd73('0x2b')][_0xdd73('0x3b')]){_0x2b5b71[_0xdd73('0x3c')]=[{'all':!![]}];}_0x2b5b71=_[_0xdd73('0x36')]({},_0x2b5b71,_0x178751[_0xdd73('0x38')]);return db[_0xdd73('0x39')][_0xdd73('0x43')](_0x2b5b71)[_0xdd73('0x3a')](handleEntityNotFound(_0x39dd22,null))[_0xdd73('0x3a')](respondWithResult(_0x39dd22,null))[_0xdd73('0x3f')](handleError(_0x39dd22,null));};exports[_0xdd73('0x44')]=function(_0x1e7517,_0xea4a63){return db[_0xdd73('0x39')]['create'](_0x1e7517[_0xdd73('0x45')],{})[_0xdd73('0x3a')](respondWithResult(_0xea4a63,0xc9))['catch'](handleError(_0xea4a63,null));};exports[_0xdd73('0x1e')]=function(_0x44ed19,_0x24f871){if(_0x44ed19['body']['id']){delete _0x44ed19[_0xdd73('0x45')]['id'];}return db[_0xdd73('0x39')][_0xdd73('0x43')]({'where':{'id':_0x44ed19[_0xdd73('0x41')]['id']}})['then'](handleEntityNotFound(_0x24f871,null))[_0xdd73('0x3a')](saveUpdates(_0x44ed19[_0xdd73('0x45')],null))[_0xdd73('0x3a')](respondWithResult(_0x24f871,null))[_0xdd73('0x3f')](handleError(_0x24f871,null));};exports[_0xdd73('0x46')]=function(_0x5704cb,_0x1f5a12){return db[_0xdd73('0x39')][_0xdd73('0x43')]({'where':{'id':_0x5704cb[_0xdd73('0x41')]['id']}})['then'](handleEntityNotFound(_0x1f5a12,null))[_0xdd73('0x3a')](removeEntity(_0x1f5a12,null))['catch'](handleError(_0x1f5a12,null));};