fa9bc2d88a128c694cf0d064bd7b8eec12f8be12
[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 _0xdb94=['model','query','intersection','attributes','nolimit','order','sort','where','filters','pick','filter','VIRTUAL','options','count','includeAll','include','findAll','catch','show','params','keys','fields','merge','find','create','body','destroy','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','path','ejs','squel','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','status','end','json','offset','limit','set','Content-Range','apply','reject','save','update','then','sendStatus','error','name','send','index','map','FreshsalesField','rawAttributes','type','key'];(function(_0x57dc85,_0x3a6d51){var _0x563a2e=function(_0x5713b2){while(--_0x5713b2){_0x57dc85['push'](_0x57dc85['shift']());}};_0x563a2e(++_0x3a6d51);}(_0xdb94,0xab));var _0x4db9=function(_0x5e3c02,_0x46639b){_0x5e3c02=_0x5e3c02-0x0;var _0x443a7f=_0xdb94[_0x5e3c02];return _0x443a7f;};'use strict';var pdf=require(_0x4db9('0x0'));var emlformat=require(_0x4db9('0x1'));var rimraf=require(_0x4db9('0x2'));var zipdir=require(_0x4db9('0x3'));var jsonpatch=require(_0x4db9('0x4'));var rp=require('request-promise');var moment=require(_0x4db9('0x5'));var BPromise=require(_0x4db9('0x6'));var Mustache=require('mustache');var util=require('util');var path=require(_0x4db9('0x7'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x4db9('0x8'));var fs=require('fs');var _=require('lodash');var squel=require(_0x4db9('0x9'));var crypto=require('crypto');var jsforce=require(_0x4db9('0xa'));var deskjs=require(_0x4db9('0xb'));var toCsv=require(_0x4db9('0xc'));var querystring=require(_0x4db9('0xd'));var Papa=require(_0x4db9('0xe'));var Redis=require(_0x4db9('0xf'));var authService=require(_0x4db9('0x10'));var qs=require(_0x4db9('0x11'));var as=require(_0x4db9('0x12'));var hardwareService=require(_0x4db9('0x13'));var logger=require(_0x4db9('0x14'))('api');var utils=require(_0x4db9('0x15'));var config=require(_0x4db9('0x16'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x496645,_0x31222b){_0x31222b=_0x31222b||0xcc;return function(_0x5e644c){if(_0x5e644c){return _0x496645['sendStatus'](_0x31222b);}return _0x496645[_0x4db9('0x17')](_0x31222b)[_0x4db9('0x18')]();};}function respondWithResult(_0x569873,_0xd37d63){_0xd37d63=_0xd37d63||0xc8;return function(_0x1f9638){if(_0x1f9638){return _0x569873[_0x4db9('0x17')](_0xd37d63)[_0x4db9('0x19')](_0x1f9638);}};}function respondWithFilteredResult(_0x51d024,_0x5e04ab){return function(_0x102274){if(_0x102274){var _0x34de1a=_0x102274['count'],_0x4a037f=_0x5e04ab['offset'],_0xadc104=_0x5e04ab[_0x4db9('0x1a')]+_0x5e04ab[_0x4db9('0x1b')],_0x4976;if(_0xadc104>=_0x34de1a){_0xadc104=_0x34de1a;_0x4976=0xc8;}else{_0x4976=0xce;}_0x51d024[_0x4db9('0x17')](_0x4976);return _0x51d024[_0x4db9('0x1c')](_0x4db9('0x1d'),_0x4a037f+'-'+_0xadc104+'/'+_0x34de1a)['json'](_0x102274);}return null;};}function patchUpdates(_0x3b1f87){return function(_0x1214ee){try{jsonpatch[_0x4db9('0x1e')](_0x1214ee,_0x3b1f87,!![]);}catch(_0x5e3b36){return BPromise[_0x4db9('0x1f')](_0x5e3b36);}return _0x1214ee[_0x4db9('0x20')]();};}function saveUpdates(_0x1fd635,_0x4c92e8){return function(_0x46b522){if(_0x46b522){return _0x46b522[_0x4db9('0x21')](_0x1fd635)[_0x4db9('0x22')](function(_0x46fc3d){return _0x46fc3d;});}return null;};}function removeEntity(_0xf4f3fe,_0x159d9b){return function(_0x3585d5){if(_0x3585d5){return _0x3585d5['destroy']()[_0x4db9('0x22')](function(){_0xf4f3fe[_0x4db9('0x17')](0xcc)[_0x4db9('0x18')]();});}};}function handleEntityNotFound(_0x319475,_0x4aaa84){return function(_0x213daa){if(!_0x213daa){_0x319475[_0x4db9('0x23')](0x194);}return _0x213daa;};}function handleError(_0x5cbd3f,_0x2e97ab){_0x2e97ab=_0x2e97ab||0x1f4;return function(_0x33c55c){logger[_0x4db9('0x24')](_0x33c55c['stack']);if(_0x33c55c[_0x4db9('0x25')]){delete _0x33c55c[_0x4db9('0x25')];}_0x5cbd3f[_0x4db9('0x17')](_0x2e97ab)[_0x4db9('0x26')](_0x33c55c);};}exports[_0x4db9('0x27')]=function(_0x385e22,_0x385400){var _0x2a56b8={},_0x3d0f12={},_0x400ee5={'count':0x0,'rows':[]};var _0x2fae0a=_[_0x4db9('0x28')](db[_0x4db9('0x29')][_0x4db9('0x2a')],function(_0x583861){return{'name':_0x583861['fieldName'],'type':_0x583861[_0x4db9('0x2b')][_0x4db9('0x2c')]};});_0x3d0f12[_0x4db9('0x2d')]=_[_0x4db9('0x28')](_0x2fae0a,_0x4db9('0x25'));_0x3d0f12[_0x4db9('0x2e')]=_['keys'](_0x385e22[_0x4db9('0x2e')]);_0x3d0f12['filters']=_[_0x4db9('0x2f')](_0x3d0f12[_0x4db9('0x2d')],_0x3d0f12[_0x4db9('0x2e')]);_0x2a56b8[_0x4db9('0x30')]=_[_0x4db9('0x2f')](_0x3d0f12['model'],qs['fields'](_0x385e22[_0x4db9('0x2e')]['fields']));_0x2a56b8[_0x4db9('0x30')]=_0x2a56b8[_0x4db9('0x30')]['length']?_0x2a56b8[_0x4db9('0x30')]:_0x3d0f12[_0x4db9('0x2d')];if(!_0x385e22[_0x4db9('0x2e')]['hasOwnProperty'](_0x4db9('0x31'))){_0x2a56b8['limit']=qs[_0x4db9('0x1b')](_0x385e22[_0x4db9('0x2e')][_0x4db9('0x1b')]);_0x2a56b8['offset']=qs['offset'](_0x385e22[_0x4db9('0x2e')][_0x4db9('0x1a')]);}_0x2a56b8[_0x4db9('0x32')]=qs[_0x4db9('0x33')](_0x385e22[_0x4db9('0x2e')][_0x4db9('0x33')]);_0x2a56b8[_0x4db9('0x34')]=qs[_0x4db9('0x35')](_[_0x4db9('0x36')](_0x385e22['query'],_0x3d0f12[_0x4db9('0x35')]));if(_0x385e22[_0x4db9('0x2e')][_0x4db9('0x37')]){_0x2a56b8[_0x4db9('0x34')]=_['merge'](_0x2a56b8[_0x4db9('0x34')],{'$or':_[_0x4db9('0x28')](_0x2fae0a,function(_0x326a92){if(_0x326a92['type']!==_0x4db9('0x38')){var _0xaf5f09={};_0xaf5f09[_0x326a92[_0x4db9('0x25')]]={'$like':'%'+_0x385e22[_0x4db9('0x2e')]['filter']+'%'};return _0xaf5f09;}})});}_0x2a56b8=_['merge']({},_0x2a56b8,_0x385e22[_0x4db9('0x39')]);var _0x163077={'where':_0x2a56b8[_0x4db9('0x34')]};return db[_0x4db9('0x29')][_0x4db9('0x3a')](_0x163077)['then'](function(_0x22365d){_0x400ee5[_0x4db9('0x3a')]=_0x22365d;if(_0x385e22[_0x4db9('0x2e')][_0x4db9('0x3b')]){_0x2a56b8[_0x4db9('0x3c')]=[{'all':!![]}];}return db['FreshsalesField'][_0x4db9('0x3d')](_0x2a56b8);})[_0x4db9('0x22')](function(_0x38a727){_0x400ee5['rows']=_0x38a727;return _0x400ee5;})[_0x4db9('0x22')](respondWithFilteredResult(_0x385400,_0x2a56b8))[_0x4db9('0x3e')](handleError(_0x385400,null));};exports[_0x4db9('0x3f')]=function(_0x2e5ae8,_0x2f1862){var _0x24aa2a={'raw':!![],'where':{'id':_0x2e5ae8[_0x4db9('0x40')]['id']}},_0x412aab={};_0x412aab[_0x4db9('0x2d')]=_[_0x4db9('0x41')](db['FreshsalesField']['rawAttributes']);_0x412aab['query']=_[_0x4db9('0x41')](_0x2e5ae8[_0x4db9('0x2e')]);_0x412aab['filters']=_[_0x4db9('0x2f')](_0x412aab[_0x4db9('0x2d')],_0x412aab['query']);_0x24aa2a['attributes']=_[_0x4db9('0x2f')](_0x412aab['model'],qs[_0x4db9('0x42')](_0x2e5ae8[_0x4db9('0x2e')]['fields']));_0x24aa2a[_0x4db9('0x30')]=_0x24aa2a[_0x4db9('0x30')]['length']?_0x24aa2a[_0x4db9('0x30')]:_0x412aab[_0x4db9('0x2d')];if(_0x2e5ae8[_0x4db9('0x2e')]['includeAll']){_0x24aa2a['include']=[{'all':!![]}];}_0x24aa2a=_[_0x4db9('0x43')]({},_0x24aa2a,_0x2e5ae8[_0x4db9('0x39')]);return db[_0x4db9('0x29')][_0x4db9('0x44')](_0x24aa2a)[_0x4db9('0x22')](handleEntityNotFound(_0x2f1862,null))[_0x4db9('0x22')](respondWithResult(_0x2f1862,null))[_0x4db9('0x3e')](handleError(_0x2f1862,null));};exports[_0x4db9('0x45')]=function(_0x2baf3c,_0x8fc827){return db[_0x4db9('0x29')][_0x4db9('0x45')](_0x2baf3c[_0x4db9('0x46')],{})['then'](respondWithResult(_0x8fc827,0xc9))[_0x4db9('0x3e')](handleError(_0x8fc827,null));};exports[_0x4db9('0x21')]=function(_0x3852f0,_0xba27c0){if(_0x3852f0[_0x4db9('0x46')]['id']){delete _0x3852f0[_0x4db9('0x46')]['id'];}return db[_0x4db9('0x29')][_0x4db9('0x44')]({'where':{'id':_0x3852f0[_0x4db9('0x40')]['id']}})[_0x4db9('0x22')](handleEntityNotFound(_0xba27c0,null))[_0x4db9('0x22')](saveUpdates(_0x3852f0['body'],null))['then'](respondWithResult(_0xba27c0,null))[_0x4db9('0x3e')](handleError(_0xba27c0,null));};exports[_0x4db9('0x47')]=function(_0x34b366,_0x3e5131){return db[_0x4db9('0x29')][_0x4db9('0x44')]({'where':{'id':_0x34b366[_0x4db9('0x40')]['id']}})[_0x4db9('0x22')](handleEntityNotFound(_0x3e5131,null))['then'](removeEntity(_0x3e5131,null))[_0x4db9('0x3e')](handleError(_0x3e5131,null));};