Built motion from commit bab6f49e.|2.6.17
[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 _0x3409=['offset','undefined','limit','count','Content-Range','apply','reject','save','update','destroy','then','error','stack','name','send','index','FreshsalesField','fieldName','type','key','map','query','keys','filters','intersection','model','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','VIRTUAL','merge','options','includeAll','include','findAll','rows','catch','show','params','rawAttributes','fields','find','create','body','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','ejs','lodash','squel','jsforce','to-csv','querystring','papaparse','ioredis','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../mysqldb','sendStatus','status','end','json'];(function(_0x62f1a2,_0x7d84cb){var _0x137fb0=function(_0xdea36a){while(--_0xdea36a){_0x62f1a2['push'](_0x62f1a2['shift']());}};_0x137fb0(++_0x7d84cb);}(_0x3409,0xca));var _0x9340=function(_0x15ad46,_0x266ccc){_0x15ad46=_0x15ad46-0x0;var _0x7d75ac=_0x3409[_0x15ad46];return _0x7d75ac;};'use strict';var emlformat=require(_0x9340('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x9340('0x1'));var jsonpatch=require(_0x9340('0x2'));var rp=require(_0x9340('0x3'));var moment=require(_0x9340('0x4'));var BPromise=require(_0x9340('0x5'));var Mustache=require(_0x9340('0x6'));var util=require(_0x9340('0x7'));var path=require('path');var sox=require(_0x9340('0x8'));var csv=require('to-csv');var ejs=require(_0x9340('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x9340('0xa'));var squel=require(_0x9340('0xb'));var crypto=require('crypto');var jsforce=require(_0x9340('0xc'));var deskjs=require('desk.js');var toCsv=require(_0x9340('0xd'));var querystring=require(_0x9340('0xe'));var Papa=require(_0x9340('0xf'));var Redis=require(_0x9340('0x10'));var authService=require('../../components/auth/service');var qs=require(_0x9340('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0x9340('0x12'))(_0x9340('0x13'));var utils=require('../../config/utils');var config=require(_0x9340('0x14'));var licenseUtil=require('../../config/license/util');var db=require(_0x9340('0x15'))['db'];function respondWithStatusCode(_0x30bd33,_0x41fcd0){_0x41fcd0=_0x41fcd0||0xcc;return function(_0x19949c){if(_0x19949c){return _0x30bd33[_0x9340('0x16')](_0x41fcd0);}return _0x30bd33[_0x9340('0x17')](_0x41fcd0)[_0x9340('0x18')]();};}function respondWithResult(_0x54f18a,_0x54664b){_0x54664b=_0x54664b||0xc8;return function(_0x2c5605){if(_0x2c5605){return _0x54f18a[_0x9340('0x17')](_0x54664b)[_0x9340('0x19')](_0x2c5605);}};}function respondWithFilteredResult(_0x565a9b,_0x9e67f2){return function(_0x11e15a){if(_0x11e15a){var _0x5c3e57=typeof _0x9e67f2[_0x9340('0x1a')]===_0x9340('0x1b')&&typeof _0x9e67f2[_0x9340('0x1c')]===_0x9340('0x1b');var _0x51e381=_0x11e15a[_0x9340('0x1d')];var _0x58032c=_0x5c3e57?0x0:_0x9e67f2[_0x9340('0x1a')];var _0x35c3dd=_0x5c3e57?_0x11e15a['count']:_0x9e67f2['offset']+_0x9e67f2['limit'];var _0x168f8e;if(_0x35c3dd>=_0x51e381){_0x35c3dd=_0x51e381;_0x168f8e=0xc8;}else{_0x168f8e=0xce;}_0x565a9b['status'](_0x168f8e);return _0x565a9b['set'](_0x9340('0x1e'),_0x58032c+'-'+_0x35c3dd+'/'+_0x51e381)[_0x9340('0x19')](_0x11e15a);}return null;};}function patchUpdates(_0x518869){return function(_0x3ffa82){try{jsonpatch[_0x9340('0x1f')](_0x3ffa82,_0x518869,!![]);}catch(_0x500918){return BPromise[_0x9340('0x20')](_0x500918);}return _0x3ffa82[_0x9340('0x21')]();};}function saveUpdates(_0x576c9e,_0x1eddd2){return function(_0x20e9c2){if(_0x20e9c2){return _0x20e9c2[_0x9340('0x22')](_0x576c9e)['then'](function(_0xa3b709){return _0xa3b709;});}return null;};}function removeEntity(_0x5d76be,_0x382057){return function(_0x4e5096){if(_0x4e5096){return _0x4e5096[_0x9340('0x23')]()[_0x9340('0x24')](function(){_0x5d76be[_0x9340('0x17')](0xcc)['end']();});}};}function handleEntityNotFound(_0x3ea3c1,_0x81b13d){return function(_0x389145){if(!_0x389145){_0x3ea3c1[_0x9340('0x16')](0x194);}return _0x389145;};}function handleError(_0x5331f7,_0x592fdf){_0x592fdf=_0x592fdf||0x1f4;return function(_0x52f5b4){logger[_0x9340('0x25')](_0x52f5b4[_0x9340('0x26')]);if(_0x52f5b4[_0x9340('0x27')]){delete _0x52f5b4[_0x9340('0x27')];}_0x5331f7[_0x9340('0x17')](_0x592fdf)[_0x9340('0x28')](_0x52f5b4);};}exports[_0x9340('0x29')]=function(_0x536b10,_0x2b7a59){var _0x47c014={},_0x3eacf7={},_0x17d9a4={'count':0x0,'rows':[]};var _0x8c8390=_['map'](db[_0x9340('0x2a')]['rawAttributes'],function(_0x57838f){return{'name':_0x57838f[_0x9340('0x2b')],'type':_0x57838f[_0x9340('0x2c')][_0x9340('0x2d')]};});_0x3eacf7['model']=_[_0x9340('0x2e')](_0x8c8390,_0x9340('0x27'));_0x3eacf7[_0x9340('0x2f')]=_[_0x9340('0x30')](_0x536b10['query']);_0x3eacf7[_0x9340('0x31')]=_[_0x9340('0x32')](_0x3eacf7[_0x9340('0x33')],_0x3eacf7['query']);_0x47c014[_0x9340('0x34')]=_[_0x9340('0x32')](_0x3eacf7[_0x9340('0x33')],qs['fields'](_0x536b10[_0x9340('0x2f')]['fields']));_0x47c014['attributes']=_0x47c014[_0x9340('0x34')][_0x9340('0x35')]?_0x47c014[_0x9340('0x34')]:_0x3eacf7[_0x9340('0x33')];if(!_0x536b10[_0x9340('0x2f')][_0x9340('0x36')](_0x9340('0x37'))){_0x47c014[_0x9340('0x1c')]=qs[_0x9340('0x1c')](_0x536b10['query'][_0x9340('0x1c')]);_0x47c014[_0x9340('0x1a')]=qs[_0x9340('0x1a')](_0x536b10[_0x9340('0x2f')][_0x9340('0x1a')]);}_0x47c014[_0x9340('0x38')]=qs[_0x9340('0x39')](_0x536b10['query'][_0x9340('0x39')]);_0x47c014[_0x9340('0x3a')]=qs[_0x9340('0x31')](_[_0x9340('0x3b')](_0x536b10['query'],_0x3eacf7[_0x9340('0x31')]),_0x8c8390);if(_0x536b10[_0x9340('0x2f')][_0x9340('0x3c')]){_0x47c014['where']=_['merge'](_0x47c014['where'],{'$or':_[_0x9340('0x2e')](_0x8c8390,function(_0x108156){if(_0x108156[_0x9340('0x2c')]!==_0x9340('0x3d')){var _0x3e386d={};_0x3e386d[_0x108156[_0x9340('0x27')]]={'$like':'%'+_0x536b10[_0x9340('0x2f')][_0x9340('0x3c')]+'%'};return _0x3e386d;}})});}_0x47c014=_[_0x9340('0x3e')]({},_0x47c014,_0x536b10[_0x9340('0x3f')]);var _0x1111c4={'where':_0x47c014[_0x9340('0x3a')]};return db['FreshsalesField'][_0x9340('0x1d')](_0x1111c4)[_0x9340('0x24')](function(_0x318d0e){_0x17d9a4[_0x9340('0x1d')]=_0x318d0e;if(_0x536b10[_0x9340('0x2f')][_0x9340('0x40')]){_0x47c014[_0x9340('0x41')]=[{'all':!![]}];}return db[_0x9340('0x2a')][_0x9340('0x42')](_0x47c014);})[_0x9340('0x24')](function(_0x39f652){_0x17d9a4[_0x9340('0x43')]=_0x39f652;return _0x17d9a4;})[_0x9340('0x24')](respondWithFilteredResult(_0x2b7a59,_0x47c014))[_0x9340('0x44')](handleError(_0x2b7a59,null));};exports[_0x9340('0x45')]=function(_0x160903,_0x2653c2){var _0x23689e={'raw':!![],'where':{'id':_0x160903[_0x9340('0x46')]['id']}},_0xbda892={};_0xbda892[_0x9340('0x33')]=_[_0x9340('0x30')](db[_0x9340('0x2a')][_0x9340('0x47')]);_0xbda892['query']=_['keys'](_0x160903[_0x9340('0x2f')]);_0xbda892[_0x9340('0x31')]=_[_0x9340('0x32')](_0xbda892[_0x9340('0x33')],_0xbda892[_0x9340('0x2f')]);_0x23689e[_0x9340('0x34')]=_['intersection'](_0xbda892[_0x9340('0x33')],qs[_0x9340('0x48')](_0x160903[_0x9340('0x2f')]['fields']));_0x23689e[_0x9340('0x34')]=_0x23689e[_0x9340('0x34')][_0x9340('0x35')]?_0x23689e[_0x9340('0x34')]:_0xbda892['model'];if(_0x160903[_0x9340('0x2f')][_0x9340('0x40')]){_0x23689e[_0x9340('0x41')]=[{'all':!![]}];}_0x23689e=_['merge']({},_0x23689e,_0x160903[_0x9340('0x3f')]);return db[_0x9340('0x2a')][_0x9340('0x49')](_0x23689e)[_0x9340('0x24')](handleEntityNotFound(_0x2653c2,null))[_0x9340('0x24')](respondWithResult(_0x2653c2,null))['catch'](handleError(_0x2653c2,null));};exports[_0x9340('0x4a')]=function(_0x24a233,_0x40ee55){return db[_0x9340('0x2a')][_0x9340('0x4a')](_0x24a233[_0x9340('0x4b')],{})[_0x9340('0x24')](respondWithResult(_0x40ee55,0xc9))['catch'](handleError(_0x40ee55,null));};exports[_0x9340('0x22')]=function(_0x3b5824,_0x4041a0){if(_0x3b5824['body']['id']){delete _0x3b5824['body']['id'];}return db[_0x9340('0x2a')][_0x9340('0x49')]({'where':{'id':_0x3b5824[_0x9340('0x46')]['id']}})['then'](handleEntityNotFound(_0x4041a0,null))[_0x9340('0x24')](saveUpdates(_0x3b5824[_0x9340('0x4b')],null))['then'](respondWithResult(_0x4041a0,null))['catch'](handleError(_0x4041a0,null));};exports[_0x9340('0x23')]=function(_0x11bc57,_0x5c4a71){return db[_0x9340('0x2a')][_0x9340('0x49')]({'where':{'id':_0x11bc57[_0x9340('0x46')]['id']}})[_0x9340('0x24')](handleEntityNotFound(_0x5c4a71,null))[_0x9340('0x24')](removeEntity(_0x5c4a71,null))[_0x9340('0x44')](handleError(_0x5c4a71,null));};