99531ffa384df1942f501ab008839ab276dd004c
[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 _0xeff8=['destroy','error','stack','name','send','index','SalesforceField','rawAttributes','query','keys','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','where','pick','filters','filter','key','VIRTUAL','field','merge','options','includeAll','include','rows','catch','show','find','create','body','params','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','to-csv','ejs','lodash','squel','jsforce','desk.js','querystring','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','api','../../config/utils','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','save','update','then'];(function(_0x296897,_0x4d23ea){var _0x2b44ab=function(_0xdf90d8){while(--_0xdf90d8){_0x296897['push'](_0x296897['shift']());}};_0x2b44ab(++_0x4d23ea);}(_0xeff8,0x186));var _0x8eff=function(_0x10df18,_0x13338c){_0x10df18=_0x10df18-0x0;var _0x1f9a1d=_0xeff8[_0x10df18];return _0x1f9a1d;};'use strict';var pdf=require(_0x8eff('0x0'));var emlformat=require(_0x8eff('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x8eff('0x2'));var jsonpatch=require(_0x8eff('0x3'));var rp=require(_0x8eff('0x4'));var moment=require('moment');var BPromise=require(_0x8eff('0x5'));var Mustache=require(_0x8eff('0x6'));var util=require(_0x8eff('0x7'));var path=require(_0x8eff('0x8'));var sox=require('sox');var csv=require(_0x8eff('0x9'));var ejs=require(_0x8eff('0xa'));var fs=require('fs');var _=require(_0x8eff('0xb'));var squel=require(_0x8eff('0xc'));var crypto=require('crypto');var jsforce=require(_0x8eff('0xd'));var deskjs=require(_0x8eff('0xe'));var toCsv=require(_0x8eff('0x9'));var querystring=require(_0x8eff('0xf'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x8eff('0x10'));var qs=require(_0x8eff('0x11'));var hardwareService=require(_0x8eff('0x12'));var logger=require('../../config/logger')(_0x8eff('0x13'));var utils=require(_0x8eff('0x14'));var config=require('../../config/environment');var db=require(_0x8eff('0x15'))['db'];function respondWithStatusCode(_0x271044,_0x559143){_0x559143=_0x559143||0xcc;return function(_0x4a399e){if(_0x4a399e){return _0x271044[_0x8eff('0x16')](_0x559143);}return _0x271044[_0x8eff('0x17')](_0x559143)[_0x8eff('0x18')]();};}function respondWithResult(_0x42fb24,_0x1349cb){_0x1349cb=_0x1349cb||0xc8;return function(_0x56efdf){if(_0x56efdf){return _0x42fb24[_0x8eff('0x17')](_0x1349cb)[_0x8eff('0x19')](_0x56efdf);}};}function respondWithFilteredResult(_0x372ee8,_0x1af3d6){return function(_0x228eb1){if(_0x228eb1){var _0x4cfc91=_0x228eb1[_0x8eff('0x1a')],_0x16202e=_0x1af3d6[_0x8eff('0x1b')],_0xdbb753=_0x1af3d6['offset']+_0x1af3d6[_0x8eff('0x1c')],_0x16a4eb;if(_0xdbb753>=_0x4cfc91){_0xdbb753=_0x4cfc91;_0x16a4eb=0xc8;}else{_0x16a4eb=0xce;}_0x372ee8[_0x8eff('0x17')](_0x16a4eb);return _0x372ee8[_0x8eff('0x1d')](_0x8eff('0x1e'),_0x16202e+'-'+_0xdbb753+'/'+_0x4cfc91)[_0x8eff('0x19')](_0x228eb1);}return null;};}function patchUpdates(_0x3c800b){return function(_0x38f5ee){try{jsonpatch[_0x8eff('0x1f')](_0x38f5ee,_0x3c800b,!![]);}catch(_0x1b003c){return BPromise[_0x8eff('0x20')](_0x1b003c);}return _0x38f5ee[_0x8eff('0x21')]();};}function saveUpdates(_0x1b65f9,_0x1e9ad0){return function(_0x2a7337){if(_0x2a7337){return _0x2a7337[_0x8eff('0x22')](_0x1b65f9)[_0x8eff('0x23')](function(_0x5e157c){return _0x5e157c;});}return null;};}function removeEntity(_0x1ca2e6,_0x4d3e84){return function(_0x5a2492){if(_0x5a2492){return _0x5a2492[_0x8eff('0x24')]()['then'](function(){_0x1ca2e6[_0x8eff('0x17')](0xcc)[_0x8eff('0x18')]();});}};}function handleEntityNotFound(_0x1ccc79,_0x59cc32){return function(_0x1ee09c){if(!_0x1ee09c){_0x1ccc79['sendStatus'](0x194);}return _0x1ee09c;};}function handleError(_0x179814,_0x350927){_0x350927=_0x350927||0x1f4;return function(_0x50784c){logger[_0x8eff('0x25')](_0x50784c[_0x8eff('0x26')]);if(_0x50784c[_0x8eff('0x27')]){delete _0x50784c[_0x8eff('0x27')];}_0x179814[_0x8eff('0x17')](_0x350927)[_0x8eff('0x28')](_0x50784c);};}exports[_0x8eff('0x29')]=function(_0x2e8067,_0x516173){var _0x3e1607={},_0x323ffa={},_0x15083c={'count':0x0,'rows':[]};var _0xb88ce9=db[_0x8eff('0x2a')][_0x8eff('0x2b')];_0x323ffa['model']=_['keys'](_0xb88ce9);_0x323ffa[_0x8eff('0x2c')]=_[_0x8eff('0x2d')](_0x2e8067[_0x8eff('0x2c')]);_0x323ffa['filters']=_[_0x8eff('0x2e')](_0x323ffa[_0x8eff('0x2f')],_0x323ffa[_0x8eff('0x2c')]);_0x3e1607[_0x8eff('0x30')]=_[_0x8eff('0x2e')](_0x323ffa[_0x8eff('0x2f')],qs[_0x8eff('0x31')](_0x2e8067[_0x8eff('0x2c')][_0x8eff('0x31')]));_0x3e1607[_0x8eff('0x30')]=_0x3e1607[_0x8eff('0x30')][_0x8eff('0x32')]?_0x3e1607['attributes']:_0x323ffa[_0x8eff('0x2f')];if(!_0x2e8067[_0x8eff('0x2c')][_0x8eff('0x33')](_0x8eff('0x34'))){_0x3e1607['limit']=qs[_0x8eff('0x1c')](_0x2e8067[_0x8eff('0x2c')]['limit']);_0x3e1607['offset']=qs[_0x8eff('0x1b')](_0x2e8067[_0x8eff('0x2c')]['offset']);}_0x3e1607['order']=qs['sort'](_0x2e8067[_0x8eff('0x2c')]['sort']);_0x3e1607[_0x8eff('0x35')]=qs['filters'](_[_0x8eff('0x36')](_0x2e8067[_0x8eff('0x2c')],_0x323ffa[_0x8eff('0x37')]));if(_0x2e8067[_0x8eff('0x2c')][_0x8eff('0x38')]){_0x3e1607[_0x8eff('0x35')]=_['merge'](_0x3e1607[_0x8eff('0x35')],{'$or':_['map'](_0xb88ce9,function(_0xba48d8){if(_0xba48d8['type'][_0x8eff('0x39')]!==_0x8eff('0x3a')){var _0x3080a6={};_0x3080a6[_0xba48d8[_0x8eff('0x3b')]]={'$like':'%'+_0x2e8067['query'][_0x8eff('0x38')]+'%'};return _0x3080a6;}})});}_0x3e1607=_[_0x8eff('0x3c')]({},_0x3e1607,_0x2e8067[_0x8eff('0x3d')]);var _0x5360b7={'where':_0x3e1607[_0x8eff('0x35')]};return db[_0x8eff('0x2a')][_0x8eff('0x1a')](_0x5360b7)[_0x8eff('0x23')](function(_0x721c71){_0x15083c[_0x8eff('0x1a')]=_0x721c71;if(_0x2e8067[_0x8eff('0x2c')][_0x8eff('0x3e')]){_0x3e1607[_0x8eff('0x3f')]=[{'all':!![]}];}return db['SalesforceField']['findAll'](_0x3e1607);})[_0x8eff('0x23')](function(_0x114f8e){_0x15083c[_0x8eff('0x40')]=_0x114f8e;return _0x15083c;})[_0x8eff('0x23')](respondWithFilteredResult(_0x516173,_0x3e1607))[_0x8eff('0x41')](handleError(_0x516173,null));};exports[_0x8eff('0x42')]=function(_0x18b132,_0x5acc86){var _0x14cf6e={'raw':!![],'where':{'id':_0x18b132['params']['id']}},_0x1c7332={};_0x1c7332[_0x8eff('0x2f')]=_[_0x8eff('0x2d')](db[_0x8eff('0x2a')][_0x8eff('0x2b')]);_0x1c7332[_0x8eff('0x2c')]=_[_0x8eff('0x2d')](_0x18b132[_0x8eff('0x2c')]);_0x1c7332[_0x8eff('0x37')]=_[_0x8eff('0x2e')](_0x1c7332['model'],_0x1c7332[_0x8eff('0x2c')]);_0x14cf6e[_0x8eff('0x30')]=_[_0x8eff('0x2e')](_0x1c7332[_0x8eff('0x2f')],qs[_0x8eff('0x31')](_0x18b132['query'][_0x8eff('0x31')]));_0x14cf6e['attributes']=_0x14cf6e[_0x8eff('0x30')][_0x8eff('0x32')]?_0x14cf6e[_0x8eff('0x30')]:_0x1c7332[_0x8eff('0x2f')];if(_0x18b132['query'][_0x8eff('0x3e')]){_0x14cf6e[_0x8eff('0x3f')]=[{'all':!![]}];}_0x14cf6e=_[_0x8eff('0x3c')]({},_0x14cf6e,_0x18b132['options']);return db['SalesforceField'][_0x8eff('0x43')](_0x14cf6e)[_0x8eff('0x23')](handleEntityNotFound(_0x5acc86,null))[_0x8eff('0x23')](respondWithResult(_0x5acc86,null))[_0x8eff('0x41')](handleError(_0x5acc86,null));};exports[_0x8eff('0x44')]=function(_0x4819dc,_0x28cb8e){return db['SalesforceField'][_0x8eff('0x44')](_0x4819dc[_0x8eff('0x45')],{})['then'](respondWithResult(_0x28cb8e,0xc9))['catch'](handleError(_0x28cb8e,null));};exports['update']=function(_0x494388,_0x4b0b41){if(_0x494388['body']['id']){delete _0x494388[_0x8eff('0x45')]['id'];}return db[_0x8eff('0x2a')][_0x8eff('0x43')]({'where':{'id':_0x494388[_0x8eff('0x46')]['id']}})[_0x8eff('0x23')](handleEntityNotFound(_0x4b0b41,null))[_0x8eff('0x23')](saveUpdates(_0x494388[_0x8eff('0x45')],null))[_0x8eff('0x23')](respondWithResult(_0x4b0b41,null))[_0x8eff('0x41')](handleError(_0x4b0b41,null));};exports[_0x8eff('0x24')]=function(_0x4c7013,_0x11e53c){return db['SalesforceField'][_0x8eff('0x43')]({'where':{'id':_0x4c7013[_0x8eff('0x46')]['id']}})[_0x8eff('0x23')](handleEntityNotFound(_0x11e53c,null))[_0x8eff('0x23')](removeEntity(_0x11e53c,null))[_0x8eff('0x41')](handleError(_0x11e53c,null));};