Built motion from commit 96f8de6d.|2.6.3
[motion2.git] / server / api / intSalesforceField / intSalesforceField.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 _0xaec5=['../../config/logger','api','../../config/environment','sendStatus','status','end','json','offset','undefined','limit','count','set','apply','reject','save','update','then','destroy','error','stack','name','send','index','map','rawAttributes','fieldName','model','keys','query','intersection','attributes','fields','nolimit','order','sort','pick','filters','filter','where','merge','VIRTUAL','options','SalesforceField','includeAll','include','rows','show','params','length','find','catch','create','body','eml-format','rimraf','zip-dir','fast-json-patch','path','sox','to-csv','fs-extra','lodash','squel','jsforce','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch'];(function(_0x662f5b,_0x1bbf91){var _0xa58422=function(_0x3f46da){while(--_0x3f46da){_0x662f5b['push'](_0x662f5b['shift']());}};_0xa58422(++_0x1bbf91);}(_0xaec5,0x104));var _0x5aec=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0xaec5[_0x3dd15e];return _0x231fd0;};'use strict';var emlformat=require(_0x5aec('0x0'));var rimraf=require(_0x5aec('0x1'));var zipdir=require(_0x5aec('0x2'));var jsonpatch=require(_0x5aec('0x3'));var rp=require('request-promise');var moment=require('moment');var BPromise=require('bluebird');var Mustache=require('mustache');var util=require('util');var path=require(_0x5aec('0x4'));var sox=require(_0x5aec('0x5'));var csv=require(_0x5aec('0x6'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x5aec('0x7'));var _=require(_0x5aec('0x8'));var squel=require(_0x5aec('0x9'));var crypto=require('crypto');var jsforce=require(_0x5aec('0xa'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x5aec('0xb'));var Papa=require('papaparse');var Redis=require(_0x5aec('0xc'));var authService=require(_0x5aec('0xd'));var qs=require(_0x5aec('0xe'));var as=require(_0x5aec('0xf'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x5aec('0x10'))(_0x5aec('0x11'));var utils=require('../../config/utils');var config=require(_0x5aec('0x12'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0xe31662,_0x13f1f5){_0x13f1f5=_0x13f1f5||0xcc;return function(_0x4a950e){if(_0x4a950e){return _0xe31662[_0x5aec('0x13')](_0x13f1f5);}return _0xe31662[_0x5aec('0x14')](_0x13f1f5)[_0x5aec('0x15')]();};}function respondWithResult(_0x574a01,_0x2aceb6){_0x2aceb6=_0x2aceb6||0xc8;return function(_0x7283e2){if(_0x7283e2){return _0x574a01[_0x5aec('0x14')](_0x2aceb6)[_0x5aec('0x16')](_0x7283e2);}};}function respondWithFilteredResult(_0x4599eb,_0x528ad5){return function(_0x2510bd){if(_0x2510bd){var _0x184902=typeof _0x528ad5[_0x5aec('0x17')]===_0x5aec('0x18')&&typeof _0x528ad5[_0x5aec('0x19')]===_0x5aec('0x18');var _0x62b348=_0x2510bd['count'];var _0x2e5f95=_0x184902?0x0:_0x528ad5[_0x5aec('0x17')];var _0x2dda55=_0x184902?_0x2510bd[_0x5aec('0x1a')]:_0x528ad5['offset']+_0x528ad5[_0x5aec('0x19')];var _0x987d79;if(_0x2dda55>=_0x62b348){_0x2dda55=_0x62b348;_0x987d79=0xc8;}else{_0x987d79=0xce;}_0x4599eb[_0x5aec('0x14')](_0x987d79);return _0x4599eb[_0x5aec('0x1b')]('Content-Range',_0x2e5f95+'-'+_0x2dda55+'/'+_0x62b348)[_0x5aec('0x16')](_0x2510bd);}return null;};}function patchUpdates(_0x4f993b){return function(_0x3d496a){try{jsonpatch[_0x5aec('0x1c')](_0x3d496a,_0x4f993b,!![]);}catch(_0x71760c){return BPromise[_0x5aec('0x1d')](_0x71760c);}return _0x3d496a[_0x5aec('0x1e')]();};}function saveUpdates(_0x198ec9,_0x370c68){return function(_0x3f5cd9){if(_0x3f5cd9){return _0x3f5cd9[_0x5aec('0x1f')](_0x198ec9)[_0x5aec('0x20')](function(_0xe98206){return _0xe98206;});}return null;};}function removeEntity(_0x946cf7,_0x38e984){return function(_0x289439){if(_0x289439){return _0x289439[_0x5aec('0x21')]()[_0x5aec('0x20')](function(){_0x946cf7['status'](0xcc)[_0x5aec('0x15')]();});}};}function handleEntityNotFound(_0x1c3898,_0x2b2391){return function(_0x4873c9){if(!_0x4873c9){_0x1c3898[_0x5aec('0x13')](0x194);}return _0x4873c9;};}function handleError(_0xbbb6c8,_0x39d9ae){_0x39d9ae=_0x39d9ae||0x1f4;return function(_0x3c8604){logger[_0x5aec('0x22')](_0x3c8604[_0x5aec('0x23')]);if(_0x3c8604[_0x5aec('0x24')]){delete _0x3c8604['name'];}_0xbbb6c8[_0x5aec('0x14')](_0x39d9ae)[_0x5aec('0x25')](_0x3c8604);};}exports[_0x5aec('0x26')]=function(_0x162e14,_0x38cdf0){var _0x1a8913={},_0x9b54e6={},_0x314f5b={'count':0x0,'rows':[]};var _0x2d4395=_[_0x5aec('0x27')](db['SalesforceField'][_0x5aec('0x28')],function(_0x498394){return{'name':_0x498394[_0x5aec('0x29')],'type':_0x498394['type']['key']};});_0x9b54e6[_0x5aec('0x2a')]=_[_0x5aec('0x27')](_0x2d4395,'name');_0x9b54e6['query']=_[_0x5aec('0x2b')](_0x162e14[_0x5aec('0x2c')]);_0x9b54e6['filters']=_[_0x5aec('0x2d')](_0x9b54e6['model'],_0x9b54e6[_0x5aec('0x2c')]);_0x1a8913[_0x5aec('0x2e')]=_[_0x5aec('0x2d')](_0x9b54e6['model'],qs[_0x5aec('0x2f')](_0x162e14[_0x5aec('0x2c')][_0x5aec('0x2f')]));_0x1a8913[_0x5aec('0x2e')]=_0x1a8913[_0x5aec('0x2e')]['length']?_0x1a8913[_0x5aec('0x2e')]:_0x9b54e6[_0x5aec('0x2a')];if(!_0x162e14[_0x5aec('0x2c')]['hasOwnProperty'](_0x5aec('0x30'))){_0x1a8913[_0x5aec('0x19')]=qs[_0x5aec('0x19')](_0x162e14[_0x5aec('0x2c')][_0x5aec('0x19')]);_0x1a8913[_0x5aec('0x17')]=qs[_0x5aec('0x17')](_0x162e14[_0x5aec('0x2c')]['offset']);}_0x1a8913[_0x5aec('0x31')]=qs[_0x5aec('0x32')](_0x162e14['query'][_0x5aec('0x32')]);_0x1a8913['where']=qs['filters'](_[_0x5aec('0x33')](_0x162e14['query'],_0x9b54e6[_0x5aec('0x34')]),_0x2d4395);if(_0x162e14['query'][_0x5aec('0x35')]){_0x1a8913[_0x5aec('0x36')]=_[_0x5aec('0x37')](_0x1a8913['where'],{'$or':_[_0x5aec('0x27')](_0x2d4395,function(_0x2b60d6){if(_0x2b60d6['type']!==_0x5aec('0x38')){var _0x1fca03={};_0x1fca03[_0x2b60d6['name']]={'$like':'%'+_0x162e14[_0x5aec('0x2c')][_0x5aec('0x35')]+'%'};return _0x1fca03;}})});}_0x1a8913=_[_0x5aec('0x37')]({},_0x1a8913,_0x162e14[_0x5aec('0x39')]);var _0x2fcb85={'where':_0x1a8913[_0x5aec('0x36')]};return db[_0x5aec('0x3a')]['count'](_0x2fcb85)['then'](function(_0x5c5561){_0x314f5b[_0x5aec('0x1a')]=_0x5c5561;if(_0x162e14[_0x5aec('0x2c')][_0x5aec('0x3b')]){_0x1a8913[_0x5aec('0x3c')]=[{'all':!![]}];}return db[_0x5aec('0x3a')]['findAll'](_0x1a8913);})[_0x5aec('0x20')](function(_0x3d8941){_0x314f5b[_0x5aec('0x3d')]=_0x3d8941;return _0x314f5b;})[_0x5aec('0x20')](respondWithFilteredResult(_0x38cdf0,_0x1a8913))['catch'](handleError(_0x38cdf0,null));};exports[_0x5aec('0x3e')]=function(_0x296798,_0x624ba9){var _0x1416e1={'raw':!![],'where':{'id':_0x296798[_0x5aec('0x3f')]['id']}},_0x52b574={};_0x52b574[_0x5aec('0x2a')]=_[_0x5aec('0x2b')](db[_0x5aec('0x3a')][_0x5aec('0x28')]);_0x52b574[_0x5aec('0x2c')]=_[_0x5aec('0x2b')](_0x296798[_0x5aec('0x2c')]);_0x52b574[_0x5aec('0x34')]=_['intersection'](_0x52b574[_0x5aec('0x2a')],_0x52b574['query']);_0x1416e1[_0x5aec('0x2e')]=_[_0x5aec('0x2d')](_0x52b574[_0x5aec('0x2a')],qs[_0x5aec('0x2f')](_0x296798['query'][_0x5aec('0x2f')]));_0x1416e1[_0x5aec('0x2e')]=_0x1416e1[_0x5aec('0x2e')][_0x5aec('0x40')]?_0x1416e1['attributes']:_0x52b574[_0x5aec('0x2a')];if(_0x296798[_0x5aec('0x2c')][_0x5aec('0x3b')]){_0x1416e1[_0x5aec('0x3c')]=[{'all':!![]}];}_0x1416e1=_[_0x5aec('0x37')]({},_0x1416e1,_0x296798[_0x5aec('0x39')]);return db[_0x5aec('0x3a')][_0x5aec('0x41')](_0x1416e1)[_0x5aec('0x20')](handleEntityNotFound(_0x624ba9,null))[_0x5aec('0x20')](respondWithResult(_0x624ba9,null))[_0x5aec('0x42')](handleError(_0x624ba9,null));};exports['create']=function(_0x525789,_0xfc7b62){return db[_0x5aec('0x3a')][_0x5aec('0x43')](_0x525789['body'],{})['then'](respondWithResult(_0xfc7b62,0xc9))['catch'](handleError(_0xfc7b62,null));};exports[_0x5aec('0x1f')]=function(_0x30edd5,_0x115aa9){if(_0x30edd5[_0x5aec('0x44')]['id']){delete _0x30edd5[_0x5aec('0x44')]['id'];}return db['SalesforceField'][_0x5aec('0x41')]({'where':{'id':_0x30edd5[_0x5aec('0x3f')]['id']}})[_0x5aec('0x20')](handleEntityNotFound(_0x115aa9,null))[_0x5aec('0x20')](saveUpdates(_0x30edd5[_0x5aec('0x44')],null))[_0x5aec('0x20')](respondWithResult(_0x115aa9,null))[_0x5aec('0x42')](handleError(_0x115aa9,null));};exports[_0x5aec('0x21')]=function(_0x58aa7e,_0x739ada){return db[_0x5aec('0x3a')]['find']({'where':{'id':_0x58aa7e[_0x5aec('0x3f')]['id']}})[_0x5aec('0x20')](handleEntityNotFound(_0x739ada,null))[_0x5aec('0x20')](removeEntity(_0x739ada,null))[_0x5aec('0x42')](handleError(_0x739ada,null));};