ec8b126d2578ff60038a32ecdcab2364b14858e7
[motion2.git] / server / api / intSugarcrmField / intSugarcrmField.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 _0x7da7=['../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','limit','set','Content-Range','json','apply','save','update','then','destroy','end','error','stack','name','send','index','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','hasOwnProperty','nolimit','offset','where','pick','filter','merge','map','VIRTUAL','options','count','includeAll','SugarcrmField','rows','catch','params','rawAttributes','length','find','create','body','html-pdf','eml-format','rimraf','request-promise','moment','mustache','util','sox','to-csv','lodash','crypto','jsforce','desk.js','querystring','ioredis'];(function(_0x3addca,_0x18fc2a){var _0x7b9468=function(_0x457f0b){while(--_0x457f0b){_0x3addca['push'](_0x3addca['shift']());}};_0x7b9468(++_0x18fc2a);}(_0x7da7,0x10d));var _0x77da=function(_0x5f0501,_0x19196e){_0x5f0501=_0x5f0501-0x0;var _0x3c2c45=_0x7da7[_0x5f0501];return _0x3c2c45;};'use strict';var pdf=require(_0x77da('0x0'));var emlformat=require(_0x77da('0x1'));var rimraf=require(_0x77da('0x2'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x77da('0x3'));var moment=require(_0x77da('0x4'));var BPromise=require('bluebird');var Mustache=require(_0x77da('0x5'));var util=require(_0x77da('0x6'));var path=require('path');var sox=require(_0x77da('0x7'));var csv=require(_0x77da('0x8'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x77da('0x9'));var squel=require('squel');var crypto=require(_0x77da('0xa'));var jsforce=require(_0x77da('0xb'));var deskjs=require(_0x77da('0xc'));var toCsv=require(_0x77da('0x8'));var querystring=require(_0x77da('0xd'));var Papa=require('papaparse');var Redis=require(_0x77da('0xe'));var authService=require(_0x77da('0xf'));var qs=require(_0x77da('0x10'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x77da('0x11'));var logger=require(_0x77da('0x12'))(_0x77da('0x13'));var utils=require(_0x77da('0x14'));var config=require('../../config/environment');var licenseUtil=require(_0x77da('0x15'));var db=require(_0x77da('0x16'))['db'];function respondWithStatusCode(_0x2acc65,_0x5d6e2f){_0x5d6e2f=_0x5d6e2f||0xcc;return function(_0x4a7748){if(_0x4a7748){return _0x2acc65[_0x77da('0x17')](_0x5d6e2f);}return _0x2acc65[_0x77da('0x18')](_0x5d6e2f)['end']();};}function respondWithResult(_0x3b0ff2,_0x369df0){_0x369df0=_0x369df0||0xc8;return function(_0x355719){if(_0x355719){return _0x3b0ff2[_0x77da('0x18')](_0x369df0)['json'](_0x355719);}};}function respondWithFilteredResult(_0x2172d0,_0x4e130c){return function(_0x29cd7b){if(_0x29cd7b){var _0x366443=_0x29cd7b['count'],_0x1b0e17=_0x4e130c['offset'],_0x4500c4=_0x4e130c['offset']+_0x4e130c[_0x77da('0x19')],_0x4ecd98;if(_0x4500c4>=_0x366443){_0x4500c4=_0x366443;_0x4ecd98=0xc8;}else{_0x4ecd98=0xce;}_0x2172d0[_0x77da('0x18')](_0x4ecd98);return _0x2172d0[_0x77da('0x1a')](_0x77da('0x1b'),_0x1b0e17+'-'+_0x4500c4+'/'+_0x366443)[_0x77da('0x1c')](_0x29cd7b);}return null;};}function patchUpdates(_0x12d2b1){return function(_0x1d325c){try{jsonpatch[_0x77da('0x1d')](_0x1d325c,_0x12d2b1,!![]);}catch(_0x544104){return BPromise['reject'](_0x544104);}return _0x1d325c[_0x77da('0x1e')]();};}function saveUpdates(_0x4d1512,_0x507979){return function(_0x45a122){if(_0x45a122){return _0x45a122[_0x77da('0x1f')](_0x4d1512)[_0x77da('0x20')](function(_0x5ab79a){return _0x5ab79a;});}return null;};}function removeEntity(_0x58270c,_0x3e6cfe){return function(_0x58f6c1){if(_0x58f6c1){return _0x58f6c1[_0x77da('0x21')]()[_0x77da('0x20')](function(){_0x58270c[_0x77da('0x18')](0xcc)[_0x77da('0x22')]();});}};}function handleEntityNotFound(_0x10399a,_0x270318){return function(_0x95b5db){if(!_0x95b5db){_0x10399a['sendStatus'](0x194);}return _0x95b5db;};}function handleError(_0x4885ec,_0xfd160){_0xfd160=_0xfd160||0x1f4;return function(_0x2d009f){logger[_0x77da('0x23')](_0x2d009f[_0x77da('0x24')]);if(_0x2d009f['name']){delete _0x2d009f[_0x77da('0x25')];}_0x4885ec[_0x77da('0x18')](_0xfd160)[_0x77da('0x26')](_0x2d009f);};}exports[_0x77da('0x27')]=function(_0x446ae7,_0x5997b6){var _0xce24b8={},_0x3e090d={},_0x1f2279={'count':0x0,'rows':[]};var _0x2913f7=_['map'](db['SugarcrmField']['rawAttributes'],function(_0x2258e9){return{'name':_0x2258e9[_0x77da('0x28')],'type':_0x2258e9[_0x77da('0x29')][_0x77da('0x2a')]};});_0x3e090d[_0x77da('0x2b')]=_['map'](_0x2913f7,_0x77da('0x25'));_0x3e090d[_0x77da('0x2c')]=_[_0x77da('0x2d')](_0x446ae7[_0x77da('0x2c')]);_0x3e090d[_0x77da('0x2e')]=_[_0x77da('0x2f')](_0x3e090d['model'],_0x3e090d[_0x77da('0x2c')]);_0xce24b8[_0x77da('0x30')]=_[_0x77da('0x2f')](_0x3e090d[_0x77da('0x2b')],qs[_0x77da('0x31')](_0x446ae7[_0x77da('0x2c')][_0x77da('0x31')]));_0xce24b8[_0x77da('0x30')]=_0xce24b8['attributes']['length']?_0xce24b8[_0x77da('0x30')]:_0x3e090d[_0x77da('0x2b')];if(!_0x446ae7['query'][_0x77da('0x32')](_0x77da('0x33'))){_0xce24b8[_0x77da('0x19')]=qs[_0x77da('0x19')](_0x446ae7[_0x77da('0x2c')][_0x77da('0x19')]);_0xce24b8[_0x77da('0x34')]=qs['offset'](_0x446ae7[_0x77da('0x2c')]['offset']);}_0xce24b8['order']=qs['sort'](_0x446ae7[_0x77da('0x2c')]['sort']);_0xce24b8[_0x77da('0x35')]=qs[_0x77da('0x2e')](_[_0x77da('0x36')](_0x446ae7[_0x77da('0x2c')],_0x3e090d[_0x77da('0x2e')]),_0x2913f7);if(_0x446ae7[_0x77da('0x2c')][_0x77da('0x37')]){_0xce24b8['where']=_[_0x77da('0x38')](_0xce24b8[_0x77da('0x35')],{'$or':_[_0x77da('0x39')](_0x2913f7,function(_0x32785f){if(_0x32785f[_0x77da('0x29')]!==_0x77da('0x3a')){var _0x48fccc={};_0x48fccc[_0x32785f[_0x77da('0x25')]]={'$like':'%'+_0x446ae7[_0x77da('0x2c')][_0x77da('0x37')]+'%'};return _0x48fccc;}})});}_0xce24b8=_['merge']({},_0xce24b8,_0x446ae7[_0x77da('0x3b')]);var _0x505ffb={'where':_0xce24b8['where']};return db['SugarcrmField']['count'](_0x505ffb)[_0x77da('0x20')](function(_0x1adba5){_0x1f2279[_0x77da('0x3c')]=_0x1adba5;if(_0x446ae7['query'][_0x77da('0x3d')]){_0xce24b8['include']=[{'all':!![]}];}return db[_0x77da('0x3e')]['findAll'](_0xce24b8);})[_0x77da('0x20')](function(_0xa19b50){_0x1f2279[_0x77da('0x3f')]=_0xa19b50;return _0x1f2279;})[_0x77da('0x20')](respondWithFilteredResult(_0x5997b6,_0xce24b8))[_0x77da('0x40')](handleError(_0x5997b6,null));};exports['show']=function(_0x759b86,_0x1f48bd){var _0x44717a={'raw':!![],'where':{'id':_0x759b86[_0x77da('0x41')]['id']}},_0x2f14f4={};_0x2f14f4[_0x77da('0x2b')]=_['keys'](db[_0x77da('0x3e')][_0x77da('0x42')]);_0x2f14f4[_0x77da('0x2c')]=_[_0x77da('0x2d')](_0x759b86[_0x77da('0x2c')]);_0x2f14f4[_0x77da('0x2e')]=_['intersection'](_0x2f14f4[_0x77da('0x2b')],_0x2f14f4['query']);_0x44717a[_0x77da('0x30')]=_[_0x77da('0x2f')](_0x2f14f4[_0x77da('0x2b')],qs['fields'](_0x759b86[_0x77da('0x2c')][_0x77da('0x31')]));_0x44717a[_0x77da('0x30')]=_0x44717a[_0x77da('0x30')][_0x77da('0x43')]?_0x44717a[_0x77da('0x30')]:_0x2f14f4[_0x77da('0x2b')];if(_0x759b86[_0x77da('0x2c')][_0x77da('0x3d')]){_0x44717a['include']=[{'all':!![]}];}_0x44717a=_[_0x77da('0x38')]({},_0x44717a,_0x759b86[_0x77da('0x3b')]);return db[_0x77da('0x3e')][_0x77da('0x44')](_0x44717a)[_0x77da('0x20')](handleEntityNotFound(_0x1f48bd,null))[_0x77da('0x20')](respondWithResult(_0x1f48bd,null))['catch'](handleError(_0x1f48bd,null));};exports['create']=function(_0x240d7b,_0x1597d8){return db[_0x77da('0x3e')][_0x77da('0x45')](_0x240d7b[_0x77da('0x46')],{})[_0x77da('0x20')](respondWithResult(_0x1597d8,0xc9))['catch'](handleError(_0x1597d8,null));};exports[_0x77da('0x1f')]=function(_0x357ee4,_0x332f80){if(_0x357ee4[_0x77da('0x46')]['id']){delete _0x357ee4['body']['id'];}return db[_0x77da('0x3e')]['find']({'where':{'id':_0x357ee4['params']['id']}})[_0x77da('0x20')](handleEntityNotFound(_0x332f80,null))[_0x77da('0x20')](saveUpdates(_0x357ee4[_0x77da('0x46')],null))[_0x77da('0x20')](respondWithResult(_0x332f80,null))['catch'](handleError(_0x332f80,null));};exports[_0x77da('0x21')]=function(_0x1e36ee,_0x56a3d9){return db[_0x77da('0x3e')][_0x77da('0x44')]({'where':{'id':_0x1e36ee['params']['id']}})[_0x77da('0x20')](handleEntityNotFound(_0x56a3d9,null))[_0x77da('0x20')](removeEntity(_0x56a3d9,null))[_0x77da('0x40')](handleError(_0x56a3d9,null));};