ebbb0d51680426b5618eed64407e1eb1a589a7d7
[motion2.git] / server / api / intFreshsalesField / intFreshsalesField.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 _0x1dba=['offset','undefined','count','limit','set','Content-Range','json','apply','reject','save','then','destroy','name','send','index','map','FreshsalesField','rawAttributes','fieldName','type','query','keys','filters','intersection','model','attributes','fields','length','nolimit','order','sort','pick','filter','where','merge','includeAll','rows','catch','params','include','options','find','create','body','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','ejs','fs-extra','squel','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end'];(function(_0x480690,_0x33d209){var _0x75a054=function(_0x37fb5b){while(--_0x37fb5b){_0x480690['push'](_0x480690['shift']());}};_0x75a054(++_0x33d209);}(_0x1dba,0xbe));var _0xa1db=function(_0x284cc4,_0x1e1c2d){_0x284cc4=_0x284cc4-0x0;var _0x1fe42d=_0x1dba[_0x284cc4];return _0x1fe42d;};'use strict';var emlformat=require(_0xa1db('0x0'));var rimraf=require(_0xa1db('0x1'));var zipdir=require(_0xa1db('0x2'));var jsonpatch=require(_0xa1db('0x3'));var rp=require(_0xa1db('0x4'));var moment=require(_0xa1db('0x5'));var BPromise=require(_0xa1db('0x6'));var Mustache=require(_0xa1db('0x7'));var util=require(_0xa1db('0x8'));var path=require(_0xa1db('0x9'));var sox=require(_0xa1db('0xa'));var csv=require('to-csv');var ejs=require(_0xa1db('0xb'));var fs=require('fs');var fs_extra=require(_0xa1db('0xc'));var _=require('lodash');var squel=require(_0xa1db('0xd'));var crypto=require('crypto');var jsforce=require(_0xa1db('0xe'));var deskjs=require(_0xa1db('0xf'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0xa1db('0x10'));var Redis=require(_0xa1db('0x11'));var authService=require(_0xa1db('0x12'));var qs=require('../../components/parsers/qs');var as=require(_0xa1db('0x13'));var hardwareService=require(_0xa1db('0x14'));var logger=require(_0xa1db('0x15'))('api');var utils=require(_0xa1db('0x16'));var config=require(_0xa1db('0x17'));var licenseUtil=require(_0xa1db('0x18'));var db=require(_0xa1db('0x19'))['db'];function respondWithStatusCode(_0xb67656,_0x3dfe2d){_0x3dfe2d=_0x3dfe2d||0xcc;return function(_0x7924){if(_0x7924){return _0xb67656[_0xa1db('0x1a')](_0x3dfe2d);}return _0xb67656[_0xa1db('0x1b')](_0x3dfe2d)[_0xa1db('0x1c')]();};}function respondWithResult(_0x480d72,_0x43d5a9){_0x43d5a9=_0x43d5a9||0xc8;return function(_0x59de90){if(_0x59de90){return _0x480d72['status'](_0x43d5a9)['json'](_0x59de90);}};}function respondWithFilteredResult(_0x66c1f8,_0x231d54){return function(_0x1326e9){if(_0x1326e9){var _0x552e09=typeof _0x231d54[_0xa1db('0x1d')]===_0xa1db('0x1e')&&typeof _0x231d54['limit']===_0xa1db('0x1e');var _0x6340af=_0x1326e9[_0xa1db('0x1f')];var _0x4262d1=_0x552e09?0x0:_0x231d54[_0xa1db('0x1d')];var _0x3d6edf=_0x552e09?_0x1326e9[_0xa1db('0x1f')]:_0x231d54[_0xa1db('0x1d')]+_0x231d54[_0xa1db('0x20')];var _0xefafba;if(_0x3d6edf>=_0x6340af){_0x3d6edf=_0x6340af;_0xefafba=0xc8;}else{_0xefafba=0xce;}_0x66c1f8['status'](_0xefafba);return _0x66c1f8[_0xa1db('0x21')](_0xa1db('0x22'),_0x4262d1+'-'+_0x3d6edf+'/'+_0x6340af)[_0xa1db('0x23')](_0x1326e9);}return null;};}function patchUpdates(_0x122dfd){return function(_0x2e467e){try{jsonpatch[_0xa1db('0x24')](_0x2e467e,_0x122dfd,!![]);}catch(_0x1dab40){return BPromise[_0xa1db('0x25')](_0x1dab40);}return _0x2e467e[_0xa1db('0x26')]();};}function saveUpdates(_0xbdfb9f,_0x5ad969){return function(_0x3a815f){if(_0x3a815f){return _0x3a815f['update'](_0xbdfb9f)[_0xa1db('0x27')](function(_0x2532e3){return _0x2532e3;});}return null;};}function removeEntity(_0x1a0e78,_0x42831d){return function(_0x2a8ede){if(_0x2a8ede){return _0x2a8ede[_0xa1db('0x28')]()[_0xa1db('0x27')](function(){_0x1a0e78[_0xa1db('0x1b')](0xcc)[_0xa1db('0x1c')]();});}};}function handleEntityNotFound(_0x2c574,_0xcda38){return function(_0x1cc1bc){if(!_0x1cc1bc){_0x2c574[_0xa1db('0x1a')](0x194);}return _0x1cc1bc;};}function handleError(_0x1ea058,_0x287133){_0x287133=_0x287133||0x1f4;return function(_0x50a3fe){logger['error'](_0x50a3fe['stack']);if(_0x50a3fe['name']){delete _0x50a3fe[_0xa1db('0x29')];}_0x1ea058[_0xa1db('0x1b')](_0x287133)[_0xa1db('0x2a')](_0x50a3fe);};}exports[_0xa1db('0x2b')]=function(_0x2d91b7,_0x52f550){var _0x4dbb20={},_0x29970a={},_0x2943a9={'count':0x0,'rows':[]};var _0x46075b=_[_0xa1db('0x2c')](db[_0xa1db('0x2d')][_0xa1db('0x2e')],function(_0x19de78){return{'name':_0x19de78[_0xa1db('0x2f')],'type':_0x19de78[_0xa1db('0x30')]['key']};});_0x29970a['model']=_['map'](_0x46075b,_0xa1db('0x29'));_0x29970a[_0xa1db('0x31')]=_[_0xa1db('0x32')](_0x2d91b7[_0xa1db('0x31')]);_0x29970a[_0xa1db('0x33')]=_[_0xa1db('0x34')](_0x29970a[_0xa1db('0x35')],_0x29970a[_0xa1db('0x31')]);_0x4dbb20[_0xa1db('0x36')]=_['intersection'](_0x29970a[_0xa1db('0x35')],qs['fields'](_0x2d91b7[_0xa1db('0x31')][_0xa1db('0x37')]));_0x4dbb20[_0xa1db('0x36')]=_0x4dbb20[_0xa1db('0x36')][_0xa1db('0x38')]?_0x4dbb20[_0xa1db('0x36')]:_0x29970a[_0xa1db('0x35')];if(!_0x2d91b7['query']['hasOwnProperty'](_0xa1db('0x39'))){_0x4dbb20[_0xa1db('0x20')]=qs['limit'](_0x2d91b7[_0xa1db('0x31')][_0xa1db('0x20')]);_0x4dbb20['offset']=qs[_0xa1db('0x1d')](_0x2d91b7[_0xa1db('0x31')][_0xa1db('0x1d')]);}_0x4dbb20[_0xa1db('0x3a')]=qs['sort'](_0x2d91b7[_0xa1db('0x31')][_0xa1db('0x3b')]);_0x4dbb20['where']=qs[_0xa1db('0x33')](_[_0xa1db('0x3c')](_0x2d91b7['query'],_0x29970a[_0xa1db('0x33')]),_0x46075b);if(_0x2d91b7['query'][_0xa1db('0x3d')]){_0x4dbb20[_0xa1db('0x3e')]=_[_0xa1db('0x3f')](_0x4dbb20[_0xa1db('0x3e')],{'$or':_[_0xa1db('0x2c')](_0x46075b,function(_0x2c73be){if(_0x2c73be[_0xa1db('0x30')]!=='VIRTUAL'){var _0x38d6cd={};_0x38d6cd[_0x2c73be[_0xa1db('0x29')]]={'$like':'%'+_0x2d91b7[_0xa1db('0x31')][_0xa1db('0x3d')]+'%'};return _0x38d6cd;}})});}_0x4dbb20=_[_0xa1db('0x3f')]({},_0x4dbb20,_0x2d91b7['options']);var _0x1dbd89={'where':_0x4dbb20[_0xa1db('0x3e')]};return db['FreshsalesField']['count'](_0x1dbd89)[_0xa1db('0x27')](function(_0x3a618e){_0x2943a9[_0xa1db('0x1f')]=_0x3a618e;if(_0x2d91b7['query'][_0xa1db('0x40')]){_0x4dbb20['include']=[{'all':!![]}];}return db['FreshsalesField']['findAll'](_0x4dbb20);})[_0xa1db('0x27')](function(_0x4933c0){_0x2943a9[_0xa1db('0x41')]=_0x4933c0;return _0x2943a9;})[_0xa1db('0x27')](respondWithFilteredResult(_0x52f550,_0x4dbb20))[_0xa1db('0x42')](handleError(_0x52f550,null));};exports['show']=function(_0x54f173,_0x5a343b){var _0x53c7ad={'raw':!![],'where':{'id':_0x54f173[_0xa1db('0x43')]['id']}},_0x24903b={};_0x24903b[_0xa1db('0x35')]=_[_0xa1db('0x32')](db[_0xa1db('0x2d')][_0xa1db('0x2e')]);_0x24903b['query']=_[_0xa1db('0x32')](_0x54f173[_0xa1db('0x31')]);_0x24903b[_0xa1db('0x33')]=_[_0xa1db('0x34')](_0x24903b[_0xa1db('0x35')],_0x24903b[_0xa1db('0x31')]);_0x53c7ad[_0xa1db('0x36')]=_[_0xa1db('0x34')](_0x24903b['model'],qs[_0xa1db('0x37')](_0x54f173[_0xa1db('0x31')][_0xa1db('0x37')]));_0x53c7ad[_0xa1db('0x36')]=_0x53c7ad['attributes']['length']?_0x53c7ad[_0xa1db('0x36')]:_0x24903b[_0xa1db('0x35')];if(_0x54f173[_0xa1db('0x31')][_0xa1db('0x40')]){_0x53c7ad[_0xa1db('0x44')]=[{'all':!![]}];}_0x53c7ad=_[_0xa1db('0x3f')]({},_0x53c7ad,_0x54f173[_0xa1db('0x45')]);return db[_0xa1db('0x2d')][_0xa1db('0x46')](_0x53c7ad)['then'](handleEntityNotFound(_0x5a343b,null))[_0xa1db('0x27')](respondWithResult(_0x5a343b,null))[_0xa1db('0x42')](handleError(_0x5a343b,null));};exports['create']=function(_0x164aba,_0x516be1){return db[_0xa1db('0x2d')][_0xa1db('0x47')](_0x164aba[_0xa1db('0x48')],{})[_0xa1db('0x27')](respondWithResult(_0x516be1,0xc9))[_0xa1db('0x42')](handleError(_0x516be1,null));};exports['update']=function(_0x29f32a,_0x153206){if(_0x29f32a[_0xa1db('0x48')]['id']){delete _0x29f32a['body']['id'];}return db[_0xa1db('0x2d')]['find']({'where':{'id':_0x29f32a['params']['id']}})[_0xa1db('0x27')](handleEntityNotFound(_0x153206,null))[_0xa1db('0x27')](saveUpdates(_0x29f32a[_0xa1db('0x48')],null))[_0xa1db('0x27')](respondWithResult(_0x153206,null))[_0xa1db('0x42')](handleError(_0x153206,null));};exports[_0xa1db('0x28')]=function(_0x51c4ce,_0x500b67){return db[_0xa1db('0x2d')][_0xa1db('0x46')]({'where':{'id':_0x51c4ce[_0xa1db('0x43')]['id']}})[_0xa1db('0x27')](handleEntityNotFound(_0x500b67,null))[_0xa1db('0x27')](removeEntity(_0x500b67,null))['catch'](handleError(_0x500b67,null));};