73c0aa7420c05d21de711221a9839e730789a08f
[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 _0x0c2c=['FreshsalesField','fieldName','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','filter','where','type','VIRTUAL','merge','includeAll','findAll','rows','catch','show','params','rawAttributes','include','find','create','body','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','path','sox','to-csv','fs-extra','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','json','offset','undefined','limit','count','status','Content-Range','apply','reject','save','update','destroy','then','sendStatus','error','stack','name','send','index','map'];(function(_0x2b4411,_0x2625ed){var _0x8e41ef=function(_0x2aa8c1){while(--_0x2aa8c1){_0x2b4411['push'](_0x2b4411['shift']());}};_0x8e41ef(++_0x2625ed);}(_0x0c2c,0x1ec));var _0xc0c2=function(_0x307086,_0x3bfe4e){_0x307086=_0x307086-0x0;var _0x699043=_0x0c2c[_0x307086];return _0x699043;};'use strict';var emlformat=require(_0xc0c2('0x0'));var rimraf=require(_0xc0c2('0x1'));var zipdir=require(_0xc0c2('0x2'));var jsonpatch=require(_0xc0c2('0x3'));var rp=require(_0xc0c2('0x4'));var moment=require(_0xc0c2('0x5'));var BPromise=require(_0xc0c2('0x6'));var Mustache=require(_0xc0c2('0x7'));var util=require('util');var path=require(_0xc0c2('0x8'));var sox=require(_0xc0c2('0x9'));var csv=require(_0xc0c2('0xa'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xc0c2('0xb'));var _=require('lodash');var squel=require('squel');var crypto=require(_0xc0c2('0xc'));var jsforce=require(_0xc0c2('0xd'));var deskjs=require(_0xc0c2('0xe'));var toCsv=require('to-csv');var querystring=require(_0xc0c2('0xf'));var Papa=require(_0xc0c2('0x10'));var Redis=require(_0xc0c2('0x11'));var authService=require('../../components/auth/service');var qs=require(_0xc0c2('0x12'));var as=require(_0xc0c2('0x13'));var hardwareService=require(_0xc0c2('0x14'));var logger=require(_0xc0c2('0x15'))(_0xc0c2('0x16'));var utils=require(_0xc0c2('0x17'));var config=require(_0xc0c2('0x18'));var licenseUtil=require(_0xc0c2('0x19'));var db=require(_0xc0c2('0x1a'))['db'];function respondWithStatusCode(_0x202c8f,_0x3808e9){_0x3808e9=_0x3808e9||0xcc;return function(_0x302c1a){if(_0x302c1a){return _0x202c8f['sendStatus'](_0x3808e9);}return _0x202c8f['status'](_0x3808e9)['end']();};}function respondWithResult(_0x10a453,_0x29b40a){_0x29b40a=_0x29b40a||0xc8;return function(_0x39f3c0){if(_0x39f3c0){return _0x10a453['status'](_0x29b40a)[_0xc0c2('0x1b')](_0x39f3c0);}};}function respondWithFilteredResult(_0x2a8ded,_0x3a6b26){return function(_0x517a12){if(_0x517a12){var _0xa06763=typeof _0x3a6b26[_0xc0c2('0x1c')]===_0xc0c2('0x1d')&&typeof _0x3a6b26[_0xc0c2('0x1e')]===_0xc0c2('0x1d');var _0x221b8f=_0x517a12[_0xc0c2('0x1f')];var _0x105aa7=_0xa06763?0x0:_0x3a6b26[_0xc0c2('0x1c')];var _0x278eb8=_0xa06763?_0x517a12[_0xc0c2('0x1f')]:_0x3a6b26[_0xc0c2('0x1c')]+_0x3a6b26[_0xc0c2('0x1e')];var _0x563121;if(_0x278eb8>=_0x221b8f){_0x278eb8=_0x221b8f;_0x563121=0xc8;}else{_0x563121=0xce;}_0x2a8ded[_0xc0c2('0x20')](_0x563121);return _0x2a8ded['set'](_0xc0c2('0x21'),_0x105aa7+'-'+_0x278eb8+'/'+_0x221b8f)['json'](_0x517a12);}return null;};}function patchUpdates(_0x2caa30){return function(_0x1f2494){try{jsonpatch[_0xc0c2('0x22')](_0x1f2494,_0x2caa30,!![]);}catch(_0x4d15db){return BPromise[_0xc0c2('0x23')](_0x4d15db);}return _0x1f2494[_0xc0c2('0x24')]();};}function saveUpdates(_0x199e57,_0x363b5e){return function(_0x1cff95){if(_0x1cff95){return _0x1cff95[_0xc0c2('0x25')](_0x199e57)['then'](function(_0x57375d){return _0x57375d;});}return null;};}function removeEntity(_0x11ccd6,_0x1232e0){return function(_0x3e5d3a){if(_0x3e5d3a){return _0x3e5d3a[_0xc0c2('0x26')]()[_0xc0c2('0x27')](function(){_0x11ccd6[_0xc0c2('0x20')](0xcc)['end']();});}};}function handleEntityNotFound(_0x4c4673,_0x4e14e3){return function(_0x335b74){if(!_0x335b74){_0x4c4673[_0xc0c2('0x28')](0x194);}return _0x335b74;};}function handleError(_0x4ac1c6,_0x5cd504){_0x5cd504=_0x5cd504||0x1f4;return function(_0x37b673){logger[_0xc0c2('0x29')](_0x37b673[_0xc0c2('0x2a')]);if(_0x37b673[_0xc0c2('0x2b')]){delete _0x37b673['name'];}_0x4ac1c6[_0xc0c2('0x20')](_0x5cd504)[_0xc0c2('0x2c')](_0x37b673);};}exports[_0xc0c2('0x2d')]=function(_0x5f5441,_0x1b36ba){var _0x1f41dc={},_0x51a6df={},_0x4ce71f={'count':0x0,'rows':[]};var _0x481786=_[_0xc0c2('0x2e')](db[_0xc0c2('0x2f')]['rawAttributes'],function(_0x4f685c){return{'name':_0x4f685c[_0xc0c2('0x30')],'type':_0x4f685c['type'][_0xc0c2('0x31')]};});_0x51a6df[_0xc0c2('0x32')]=_[_0xc0c2('0x2e')](_0x481786,_0xc0c2('0x2b'));_0x51a6df[_0xc0c2('0x33')]=_[_0xc0c2('0x34')](_0x5f5441['query']);_0x51a6df[_0xc0c2('0x35')]=_[_0xc0c2('0x36')](_0x51a6df['model'],_0x51a6df['query']);_0x1f41dc[_0xc0c2('0x37')]=_[_0xc0c2('0x36')](_0x51a6df[_0xc0c2('0x32')],qs[_0xc0c2('0x38')](_0x5f5441['query']['fields']));_0x1f41dc[_0xc0c2('0x37')]=_0x1f41dc[_0xc0c2('0x37')][_0xc0c2('0x39')]?_0x1f41dc[_0xc0c2('0x37')]:_0x51a6df[_0xc0c2('0x32')];if(!_0x5f5441[_0xc0c2('0x33')][_0xc0c2('0x3a')]('nolimit')){_0x1f41dc['limit']=qs[_0xc0c2('0x1e')](_0x5f5441[_0xc0c2('0x33')][_0xc0c2('0x1e')]);_0x1f41dc[_0xc0c2('0x1c')]=qs[_0xc0c2('0x1c')](_0x5f5441[_0xc0c2('0x33')][_0xc0c2('0x1c')]);}_0x1f41dc[_0xc0c2('0x3b')]=qs[_0xc0c2('0x3c')](_0x5f5441[_0xc0c2('0x33')]['sort']);_0x1f41dc['where']=qs[_0xc0c2('0x35')](_['pick'](_0x5f5441[_0xc0c2('0x33')],_0x51a6df['filters']),_0x481786);if(_0x5f5441[_0xc0c2('0x33')][_0xc0c2('0x3d')]){_0x1f41dc['where']=_['merge'](_0x1f41dc[_0xc0c2('0x3e')],{'$or':_[_0xc0c2('0x2e')](_0x481786,function(_0x420115){if(_0x420115[_0xc0c2('0x3f')]!==_0xc0c2('0x40')){var _0x386c08={};_0x386c08[_0x420115['name']]={'$like':'%'+_0x5f5441[_0xc0c2('0x33')][_0xc0c2('0x3d')]+'%'};return _0x386c08;}})});}_0x1f41dc=_[_0xc0c2('0x41')]({},_0x1f41dc,_0x5f5441['options']);var _0x5311c4={'where':_0x1f41dc['where']};return db[_0xc0c2('0x2f')][_0xc0c2('0x1f')](_0x5311c4)['then'](function(_0x6d817d){_0x4ce71f[_0xc0c2('0x1f')]=_0x6d817d;if(_0x5f5441[_0xc0c2('0x33')][_0xc0c2('0x42')]){_0x1f41dc['include']=[{'all':!![]}];}return db['FreshsalesField'][_0xc0c2('0x43')](_0x1f41dc);})[_0xc0c2('0x27')](function(_0x4bd4b3){_0x4ce71f[_0xc0c2('0x44')]=_0x4bd4b3;return _0x4ce71f;})[_0xc0c2('0x27')](respondWithFilteredResult(_0x1b36ba,_0x1f41dc))[_0xc0c2('0x45')](handleError(_0x1b36ba,null));};exports[_0xc0c2('0x46')]=function(_0x177cb6,_0x49dca4){var _0x4aca7c={'raw':!![],'where':{'id':_0x177cb6[_0xc0c2('0x47')]['id']}},_0x5d133a={};_0x5d133a['model']=_[_0xc0c2('0x34')](db[_0xc0c2('0x2f')][_0xc0c2('0x48')]);_0x5d133a[_0xc0c2('0x33')]=_[_0xc0c2('0x34')](_0x177cb6[_0xc0c2('0x33')]);_0x5d133a[_0xc0c2('0x35')]=_[_0xc0c2('0x36')](_0x5d133a[_0xc0c2('0x32')],_0x5d133a[_0xc0c2('0x33')]);_0x4aca7c[_0xc0c2('0x37')]=_[_0xc0c2('0x36')](_0x5d133a['model'],qs[_0xc0c2('0x38')](_0x177cb6[_0xc0c2('0x33')][_0xc0c2('0x38')]));_0x4aca7c[_0xc0c2('0x37')]=_0x4aca7c['attributes'][_0xc0c2('0x39')]?_0x4aca7c['attributes']:_0x5d133a['model'];if(_0x177cb6[_0xc0c2('0x33')][_0xc0c2('0x42')]){_0x4aca7c[_0xc0c2('0x49')]=[{'all':!![]}];}_0x4aca7c=_[_0xc0c2('0x41')]({},_0x4aca7c,_0x177cb6['options']);return db['FreshsalesField'][_0xc0c2('0x4a')](_0x4aca7c)[_0xc0c2('0x27')](handleEntityNotFound(_0x49dca4,null))[_0xc0c2('0x27')](respondWithResult(_0x49dca4,null))[_0xc0c2('0x45')](handleError(_0x49dca4,null));};exports[_0xc0c2('0x4b')]=function(_0x4d7bc3,_0x3ac87e){return db[_0xc0c2('0x2f')][_0xc0c2('0x4b')](_0x4d7bc3['body'],{})[_0xc0c2('0x27')](respondWithResult(_0x3ac87e,0xc9))['catch'](handleError(_0x3ac87e,null));};exports[_0xc0c2('0x25')]=function(_0x31344a,_0x3212ff){if(_0x31344a[_0xc0c2('0x4c')]['id']){delete _0x31344a[_0xc0c2('0x4c')]['id'];}return db['FreshsalesField'][_0xc0c2('0x4a')]({'where':{'id':_0x31344a[_0xc0c2('0x47')]['id']}})[_0xc0c2('0x27')](handleEntityNotFound(_0x3212ff,null))[_0xc0c2('0x27')](saveUpdates(_0x31344a[_0xc0c2('0x4c')],null))[_0xc0c2('0x27')](respondWithResult(_0x3212ff,null))['catch'](handleError(_0x3212ff,null));};exports['destroy']=function(_0x31997e,_0x2e93f7){return db[_0xc0c2('0x2f')]['find']({'where':{'id':_0x31997e[_0xc0c2('0x47')]['id']}})[_0xc0c2('0x27')](handleEntityNotFound(_0x2e93f7,null))[_0xc0c2('0x27')](removeEntity(_0x2e93f7,null))[_0xc0c2('0x45')](handleError(_0x2e93f7,null));};