01921bb8b36fe6f15c8fefb07bfd227e2d869ec5
[motion2.git] / server / api / crmMyCompanies / crmMyCompanies.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 _0x236c=['day','merge','where','filter','options','crmMyCompany','includeAll','include','findAll','rows','catch','params','find','create','body','describe','html-pdf','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','to-csv','ejs','squel','crypto','querystring','../../components/parsers/qs','../../config/logger','api','../../config/utils','../../config/environment','sendStatus','status','json','count','offset','limit','update','then','destroy','end','error','stack','name','send','index','rawAttributes','keys','query','dateStart','dateEnd','intersection','attributes','fields','length','model','sort','filters','pick','add'];(function(_0x2a3551,_0x3256bc){var _0x561907=function(_0x2a819a){while(--_0x2a819a){_0x2a3551['push'](_0x2a3551['shift']());}};_0x561907(++_0x3256bc);}(_0x236c,0x155));var _0xc236=function(_0x8da5da,_0x404603){_0x8da5da=_0x8da5da-0x0;var _0x519b52=_0x236c[_0x8da5da];return _0x519b52;};'use strict';var pdf=require(_0xc236('0x0'));var emlformat=require('eml-format');var rimraf=require(_0xc236('0x1'));var zipdir=require(_0xc236('0x2'));var jsonpatch=require(_0xc236('0x3'));var rp=require(_0xc236('0x4'));var moment=require(_0xc236('0x5'));var BPromise=require('bluebird');var Mustache=require(_0xc236('0x6'));var util=require(_0xc236('0x7'));var path=require(_0xc236('0x8'));var sox=require(_0xc236('0x9'));var csv=require(_0xc236('0xa'));var ejs=require(_0xc236('0xb'));var fs=require('fs');var _=require('lodash');var squel=require(_0xc236('0xc'));var crypto=require(_0xc236('0xd'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0xc236('0xe'));var Papa=require('papaparse');var qs=require(_0xc236('0xf'));var logger=require(_0xc236('0x10'))(_0xc236('0x11'));var utils=require(_0xc236('0x12'));var config=require(_0xc236('0x13'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x200744,_0x3311f7){_0x3311f7=_0x3311f7||0xcc;return function(_0x58acb0){if(_0x58acb0){return _0x200744[_0xc236('0x14')](_0x3311f7);}return _0x200744[_0xc236('0x15')](_0x3311f7)['end']();};}function respondWithResult(_0x5b9638,_0x5bce83){_0x5bce83=_0x5bce83||0xc8;return function(_0x599d36){if(_0x599d36){return _0x5b9638[_0xc236('0x15')](_0x5bce83)[_0xc236('0x16')](_0x599d36);}};}function respondWithFilteredResult(_0x2184c9,_0x71bce2){return function(_0x5052db){if(_0x5052db){var _0x13a42b=_0x5052db[_0xc236('0x17')],_0x55b188=_0x71bce2[_0xc236('0x18')],_0x5221bf=_0x71bce2[_0xc236('0x18')]+_0x71bce2[_0xc236('0x19')],_0x9a65e8;if(_0x5221bf>=_0x13a42b){_0x5221bf=_0x13a42b;_0x9a65e8=0xc8;}else{_0x9a65e8=0xce;}_0x2184c9['status'](_0x9a65e8);return _0x2184c9['set']('Content-Range',_0x55b188+'-'+_0x5221bf+'/'+_0x13a42b)[_0xc236('0x16')](_0x5052db);}return null;};}function patchUpdates(_0x76f45){return function(_0x11ec65){try{jsonpatch['apply'](_0x11ec65,_0x76f45,!![]);}catch(_0x13b432){return BPromise['reject'](_0x13b432);}return _0x11ec65['save']();};}function saveUpdates(_0x1eafba,_0x30adeb){return function(_0x3a6183){if(_0x3a6183){return _0x3a6183[_0xc236('0x1a')](_0x1eafba)[_0xc236('0x1b')](function(_0x27c6ab){return _0x27c6ab;});}return null;};}function removeEntity(_0x3f0e2f,_0x27c96a){return function(_0x54ffac){if(_0x54ffac){return _0x54ffac[_0xc236('0x1c')]()[_0xc236('0x1b')](function(){_0x3f0e2f['status'](0xcc)[_0xc236('0x1d')]();});}};}function handleEntityNotFound(_0x34d73a,_0x3bd41b){return function(_0xd18bd0){if(!_0xd18bd0){_0x34d73a[_0xc236('0x14')](0x194);}return _0xd18bd0;};}function handleError(_0x21fab8,_0x3a315b){_0x3a315b=_0x3a315b||0x1f4;return function(_0xf921e6){logger[_0xc236('0x1e')](_0xf921e6[_0xc236('0x1f')]);if(_0xf921e6[_0xc236('0x20')]){delete _0xf921e6['name'];}_0x21fab8[_0xc236('0x15')](_0x3a315b)[_0xc236('0x21')](_0xf921e6);};}exports[_0xc236('0x22')]=function(_0x9017ec,_0x561da1){var _0x42f248={},_0x5da4b2={},_0x5351bc={'count':0x0,'rows':[]};var _0x15ead8=db['crmMyCompany'][_0xc236('0x23')];_0x5da4b2['model']=_[_0xc236('0x24')](_0x15ead8);var _0x5c79d6={'dateStart':_0x9017ec[_0xc236('0x25')][_0xc236('0x26')],'dateEnd':_0x9017ec['query']['dateEnd']};delete _0x9017ec[_0xc236('0x25')][_0xc236('0x26')];delete _0x9017ec[_0xc236('0x25')][_0xc236('0x27')];_0x5da4b2['query']=_['keys'](_0x9017ec[_0xc236('0x25')]);_0x5da4b2['filters']=_[_0xc236('0x28')](_0x5da4b2['model'],_0x5da4b2[_0xc236('0x25')]);_0x42f248[_0xc236('0x29')]=_['intersection'](_0x5da4b2['model'],qs[_0xc236('0x2a')](_0x9017ec[_0xc236('0x25')][_0xc236('0x2a')]));_0x42f248[_0xc236('0x29')]=_0x42f248[_0xc236('0x29')][_0xc236('0x2b')]?_0x42f248[_0xc236('0x29')]:_0x5da4b2[_0xc236('0x2c')];if(!_0x9017ec[_0xc236('0x25')]['hasOwnProperty']('nolimit')){_0x42f248['limit']=qs[_0xc236('0x19')](_0x9017ec[_0xc236('0x25')][_0xc236('0x19')]);_0x42f248[_0xc236('0x18')]=qs[_0xc236('0x18')](_0x9017ec[_0xc236('0x25')][_0xc236('0x18')]);}_0x42f248['order']=qs[_0xc236('0x2d')](_0x9017ec[_0xc236('0x25')][_0xc236('0x2d')]);_0x42f248['where']=qs[_0xc236('0x2e')](_[_0xc236('0x2f')](_0x9017ec[_0xc236('0x25')],_0x5da4b2[_0xc236('0x2e')]));if(_0x5c79d6['dateStart']){if(_0x5c79d6[_0xc236('0x27')]){_0x5c79d6[_0xc236('0x27')]=moment(_0x5c79d6[_0xc236('0x27')])[_0xc236('0x30')](0x1,_0xc236('0x31'));}else{_0x5c79d6[_0xc236('0x27')]=moment(_0x5c79d6[_0xc236('0x26')])[_0xc236('0x30')](0x1,_0xc236('0x31'));}_[_0xc236('0x32')](_0x42f248[_0xc236('0x33')],{'createdAt':{'$gte':_0x5c79d6[_0xc236('0x26')],'$lte':_0x5c79d6[_0xc236('0x27')]}});}if(_0x9017ec[_0xc236('0x25')][_0xc236('0x34')]){_0x42f248[_0xc236('0x33')]=_[_0xc236('0x32')](_0x42f248['where'],{'$or':_['map'](_0x42f248['attributes'],function(_0x4c5a50){var _0x369a79={};_0x369a79[_0x4c5a50]={'$like':'%'+_0x9017ec['query'][_0xc236('0x34')]+'%'};return _0x369a79;})});}_0x42f248=_[_0xc236('0x32')]({},_0x42f248,_0x9017ec[_0xc236('0x35')]);var _0x32df56={'where':_0x42f248[_0xc236('0x33')]};return db[_0xc236('0x36')][_0xc236('0x17')](_0x32df56)[_0xc236('0x1b')](function(_0x12dd90){_0x5351bc[_0xc236('0x17')]=_0x12dd90;if(_0x9017ec[_0xc236('0x25')][_0xc236('0x37')]){_0x42f248[_0xc236('0x38')]=[{'all':!![]}];}return db[_0xc236('0x36')][_0xc236('0x39')](_0x42f248);})['then'](function(_0x31bd91){_0x5351bc[_0xc236('0x3a')]=_0x31bd91;return _0x5351bc;})['then'](respondWithFilteredResult(_0x561da1,_0x42f248))[_0xc236('0x3b')](handleError(_0x561da1,null));};exports['show']=function(_0x1cecc5,_0x5e3910){var _0x30f391={'raw':![],'where':{'id':_0x1cecc5[_0xc236('0x3c')]['id']}},_0x34c611={};_0x34c611['model']=_[_0xc236('0x24')](db[_0xc236('0x36')][_0xc236('0x23')]);_0x34c611['query']=_[_0xc236('0x24')](_0x1cecc5[_0xc236('0x25')]);_0x34c611[_0xc236('0x2e')]=_[_0xc236('0x28')](_0x34c611[_0xc236('0x2c')],_0x34c611[_0xc236('0x25')]);_0x30f391['attributes']=_[_0xc236('0x28')](_0x34c611['model'],qs[_0xc236('0x2a')](_0x1cecc5[_0xc236('0x25')][_0xc236('0x2a')]));_0x30f391[_0xc236('0x29')]=_0x30f391[_0xc236('0x29')][_0xc236('0x2b')]?_0x30f391[_0xc236('0x29')]:_0x34c611['model'];if(_0x1cecc5[_0xc236('0x25')]['includeAll']){_0x30f391[_0xc236('0x38')]=[{'all':!![]}];}_0x30f391=_[_0xc236('0x32')]({},_0x30f391,_0x1cecc5['options']);return db[_0xc236('0x36')][_0xc236('0x3d')](_0x30f391)[_0xc236('0x1b')](handleEntityNotFound(_0x5e3910,null))[_0xc236('0x1b')](respondWithResult(_0x5e3910,null))[_0xc236('0x3b')](handleError(_0x5e3910,null));};exports[_0xc236('0x3e')]=function(_0x37bf72,_0x5a904e){return db['crmMyCompany'][_0xc236('0x3e')](_0x37bf72[_0xc236('0x3f')],{})['then'](respondWithResult(_0x5a904e,0xc9))[_0xc236('0x3b')](handleError(_0x5a904e,null));};exports[_0xc236('0x1a')]=function(_0xeac3bd,_0x7c856f){if(_0xeac3bd[_0xc236('0x3f')]['id']){delete _0xeac3bd[_0xc236('0x3f')]['id'];}return db[_0xc236('0x36')][_0xc236('0x3d')]({'where':{'id':_0xeac3bd[_0xc236('0x3c')]['id']}})['then'](handleEntityNotFound(_0x7c856f,null))[_0xc236('0x1b')](saveUpdates(_0xeac3bd[_0xc236('0x3f')],null))[_0xc236('0x1b')](respondWithResult(_0x7c856f,null))[_0xc236('0x3b')](handleError(_0x7c856f,null));};exports[_0xc236('0x1c')]=function(_0x28e6b4,_0x3ea045){return db['crmMyCompany'][_0xc236('0x3d')]({'where':{'id':_0x28e6b4[_0xc236('0x3c')]['id']}})[_0xc236('0x1b')](handleEntityNotFound(_0x3ea045,null))[_0xc236('0x1b')](removeEntity(_0x3ea045,null))['catch'](handleError(_0x3ea045,null));};exports[_0xc236('0x40')]=function(_0x3e6da6,_0xad71ea){return db[_0xc236('0x36')][_0xc236('0x40')]()['then'](respondWithResult(_0xad71ea,null))[_0xc236('0x3b')](handleError(_0xad71ea,null));};