3f9c047da4b193f548bd43576abe8eee63447498
[motion2.git] / server / api / smsTransferReport / smsTransferReport.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 _0x37c2=['jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/license/util','status','end','limit','undefined','count','offset','set','Content-Range','json','apply','reject','save','update','then','destroy','sendStatus','error','stack','name','index','SmsTransferReport','rawAttributes','type','key','model','map','query','keys','filters','intersection','attributes','fields','length','nolimit','order','sort','where','pick','merge','VIRTUAL','filter','options','includeAll','include','findAll','rows','show','params','catch','create','body','find','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','to-csv','ejs','fs-extra','lodash','squel','crypto'];(function(_0x10e708,_0x1f1d6e){var _0x59866d=function(_0x50cc3a){while(--_0x50cc3a){_0x10e708['push'](_0x10e708['shift']());}};_0x59866d(++_0x1f1d6e);}(_0x37c2,0x129));var _0x237c=function(_0x5be4a2,_0x4962fa){_0x5be4a2=_0x5be4a2-0x0;var _0x304b22=_0x37c2[_0x5be4a2];return _0x304b22;};'use strict';var emlformat=require(_0x237c('0x0'));var rimraf=require(_0x237c('0x1'));var zipdir=require(_0x237c('0x2'));var jsonpatch=require(_0x237c('0x3'));var rp=require(_0x237c('0x4'));var moment=require('moment');var BPromise=require(_0x237c('0x5'));var Mustache=require(_0x237c('0x6'));var util=require(_0x237c('0x7'));var path=require(_0x237c('0x8'));var sox=require('sox');var csv=require(_0x237c('0x9'));var ejs=require(_0x237c('0xa'));var fs=require('fs');var fs_extra=require(_0x237c('0xb'));var _=require(_0x237c('0xc'));var squel=require(_0x237c('0xd'));var crypto=require(_0x237c('0xe'));var jsforce=require(_0x237c('0xf'));var deskjs=require(_0x237c('0x10'));var toCsv=require(_0x237c('0x9'));var querystring=require(_0x237c('0x11'));var Papa=require(_0x237c('0x12'));var Redis=require(_0x237c('0x13'));var authService=require(_0x237c('0x14'));var qs=require(_0x237c('0x15'));var as=require(_0x237c('0x16'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x237c('0x17'))('api');var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0x237c('0x18'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x157607,_0x2702c7){_0x2702c7=_0x2702c7||0xcc;return function(_0x29268f){if(_0x29268f){return _0x157607['sendStatus'](_0x2702c7);}return _0x157607[_0x237c('0x19')](_0x2702c7)[_0x237c('0x1a')]();};}function respondWithResult(_0x10af6f,_0x2679f3){_0x2679f3=_0x2679f3||0xc8;return function(_0x64cc60){if(_0x64cc60){return _0x10af6f[_0x237c('0x19')](_0x2679f3)['json'](_0x64cc60);}};}function respondWithFilteredResult(_0x627c1f,_0x413408){return function(_0x3b21be){if(_0x3b21be){var _0x57013d=typeof _0x413408['offset']==='undefined'&&typeof _0x413408[_0x237c('0x1b')]===_0x237c('0x1c');var _0x42069e=_0x3b21be[_0x237c('0x1d')];var _0x4c40d0=_0x57013d?0x0:_0x413408[_0x237c('0x1e')];var _0x1f79f3=_0x57013d?_0x3b21be[_0x237c('0x1d')]:_0x413408['offset']+_0x413408[_0x237c('0x1b')];var _0x234fba;if(_0x1f79f3>=_0x42069e){_0x1f79f3=_0x42069e;_0x234fba=0xc8;}else{_0x234fba=0xce;}_0x627c1f[_0x237c('0x19')](_0x234fba);return _0x627c1f[_0x237c('0x1f')](_0x237c('0x20'),_0x4c40d0+'-'+_0x1f79f3+'/'+_0x42069e)[_0x237c('0x21')](_0x3b21be);}return null;};}function patchUpdates(_0x48cc1d){return function(_0x6b0cb1){try{jsonpatch[_0x237c('0x22')](_0x6b0cb1,_0x48cc1d,!![]);}catch(_0x692e25){return BPromise[_0x237c('0x23')](_0x692e25);}return _0x6b0cb1[_0x237c('0x24')]();};}function saveUpdates(_0x3478c7,_0x31669e){return function(_0x2eaa1c){if(_0x2eaa1c){return _0x2eaa1c[_0x237c('0x25')](_0x3478c7)[_0x237c('0x26')](function(_0x2338a7){return _0x2338a7;});}return null;};}function removeEntity(_0x821105,_0x193c01){return function(_0x176d6c){if(_0x176d6c){return _0x176d6c[_0x237c('0x27')]()[_0x237c('0x26')](function(){_0x821105[_0x237c('0x19')](0xcc)[_0x237c('0x1a')]();});}};}function handleEntityNotFound(_0x8f22c4,_0x4899d0){return function(_0x5bc7eb){if(!_0x5bc7eb){_0x8f22c4[_0x237c('0x28')](0x194);}return _0x5bc7eb;};}function handleError(_0x2574c4,_0x4dfe7a){_0x4dfe7a=_0x4dfe7a||0x1f4;return function(_0x420f20){logger[_0x237c('0x29')](_0x420f20[_0x237c('0x2a')]);if(_0x420f20[_0x237c('0x2b')]){delete _0x420f20[_0x237c('0x2b')];}_0x2574c4[_0x237c('0x19')](_0x4dfe7a)['send'](_0x420f20);};}exports[_0x237c('0x2c')]=function(_0x11278b,_0x49edaf){var _0x245b11={},_0x271a26={},_0x2fc422={'count':0x0,'rows':[]};var _0x328706=_['map'](db[_0x237c('0x2d')][_0x237c('0x2e')],function(_0xbabec){return{'name':_0xbabec['fieldName'],'type':_0xbabec[_0x237c('0x2f')][_0x237c('0x30')]};});_0x271a26[_0x237c('0x31')]=_[_0x237c('0x32')](_0x328706,_0x237c('0x2b'));_0x271a26[_0x237c('0x33')]=_[_0x237c('0x34')](_0x11278b[_0x237c('0x33')]);_0x271a26[_0x237c('0x35')]=_[_0x237c('0x36')](_0x271a26[_0x237c('0x31')],_0x271a26[_0x237c('0x33')]);_0x245b11[_0x237c('0x37')]=_[_0x237c('0x36')](_0x271a26[_0x237c('0x31')],qs[_0x237c('0x38')](_0x11278b['query'][_0x237c('0x38')]));_0x245b11[_0x237c('0x37')]=_0x245b11[_0x237c('0x37')][_0x237c('0x39')]?_0x245b11[_0x237c('0x37')]:_0x271a26['model'];if(!_0x11278b[_0x237c('0x33')]['hasOwnProperty'](_0x237c('0x3a'))){_0x245b11[_0x237c('0x1b')]=qs[_0x237c('0x1b')](_0x11278b[_0x237c('0x33')]['limit']);_0x245b11[_0x237c('0x1e')]=qs[_0x237c('0x1e')](_0x11278b['query'][_0x237c('0x1e')]);}_0x245b11[_0x237c('0x3b')]=qs[_0x237c('0x3c')](_0x11278b[_0x237c('0x33')][_0x237c('0x3c')]);_0x245b11[_0x237c('0x3d')]=qs['filters'](_[_0x237c('0x3e')](_0x11278b[_0x237c('0x33')],_0x271a26[_0x237c('0x35')]),_0x328706);if(_0x11278b[_0x237c('0x33')]['filter']){_0x245b11[_0x237c('0x3d')]=_[_0x237c('0x3f')](_0x245b11[_0x237c('0x3d')],{'$or':_[_0x237c('0x32')](_0x328706,function(_0x45799b){if(_0x45799b[_0x237c('0x2f')]!==_0x237c('0x40')){var _0x2f1c69={};_0x2f1c69[_0x45799b['name']]={'$like':'%'+_0x11278b[_0x237c('0x33')][_0x237c('0x41')]+'%'};return _0x2f1c69;}})});}_0x245b11=_[_0x237c('0x3f')]({},_0x245b11,_0x11278b[_0x237c('0x42')]);var _0x2f1420={'where':_0x245b11['where']};return db[_0x237c('0x2d')]['count'](_0x2f1420)[_0x237c('0x26')](function(_0x26a88f){_0x2fc422['count']=_0x26a88f;if(_0x11278b['query'][_0x237c('0x43')]){_0x245b11[_0x237c('0x44')]=[{'all':!![]}];}return db['SmsTransferReport'][_0x237c('0x45')](_0x245b11);})['then'](function(_0x325a4b){_0x2fc422[_0x237c('0x46')]=_0x325a4b;return _0x2fc422;})['then'](respondWithFilteredResult(_0x49edaf,_0x245b11))['catch'](handleError(_0x49edaf,null));};exports[_0x237c('0x47')]=function(_0x21ba40,_0x2cbc31){var _0x2cdd74={'raw':!![],'where':{'id':_0x21ba40[_0x237c('0x48')]['id']}},_0x5208f9={};_0x5208f9[_0x237c('0x31')]=_['keys'](db[_0x237c('0x2d')]['rawAttributes']);_0x5208f9['query']=_[_0x237c('0x34')](_0x21ba40[_0x237c('0x33')]);_0x5208f9[_0x237c('0x35')]=_['intersection'](_0x5208f9[_0x237c('0x31')],_0x5208f9[_0x237c('0x33')]);_0x2cdd74['attributes']=_['intersection'](_0x5208f9[_0x237c('0x31')],qs[_0x237c('0x38')](_0x21ba40[_0x237c('0x33')][_0x237c('0x38')]));_0x2cdd74['attributes']=_0x2cdd74[_0x237c('0x37')]['length']?_0x2cdd74[_0x237c('0x37')]:_0x5208f9[_0x237c('0x31')];if(_0x21ba40['query']['includeAll']){_0x2cdd74[_0x237c('0x44')]=[{'all':!![]}];}_0x2cdd74=_[_0x237c('0x3f')]({},_0x2cdd74,_0x21ba40['options']);return db['SmsTransferReport']['find'](_0x2cdd74)['then'](handleEntityNotFound(_0x2cbc31,null))[_0x237c('0x26')](respondWithResult(_0x2cbc31,null))[_0x237c('0x49')](handleError(_0x2cbc31,null));};exports['create']=function(_0x5e2dd6,_0xd6998d){return db[_0x237c('0x2d')][_0x237c('0x4a')](_0x5e2dd6[_0x237c('0x4b')],{})['then'](respondWithResult(_0xd6998d,0xc9))[_0x237c('0x49')](handleError(_0xd6998d,null));};exports[_0x237c('0x25')]=function(_0xfdefbf,_0x54036e){if(_0xfdefbf[_0x237c('0x4b')]['id']){delete _0xfdefbf[_0x237c('0x4b')]['id'];}return db['SmsTransferReport']['find']({'where':{'id':_0xfdefbf[_0x237c('0x48')]['id']}})[_0x237c('0x26')](handleEntityNotFound(_0x54036e,null))['then'](saveUpdates(_0xfdefbf[_0x237c('0x4b')],null))['then'](respondWithResult(_0x54036e,null))[_0x237c('0x49')](handleError(_0x54036e,null));};exports['destroy']=function(_0xcd890d,_0x31217f){return db[_0x237c('0x2d')][_0x237c('0x4c')]({'where':{'id':_0xcd890d[_0x237c('0x48')]['id']}})[_0x237c('0x26')](handleEntityNotFound(_0x31217f,null))[_0x237c('0x26')](removeEntity(_0x31217f,null))['catch'](handleError(_0x31217f,null));};exports[_0x237c('0x4d')]=function(_0x13a439,_0x59e9bb){return db[_0x237c('0x2d')]['describe']()[_0x237c('0x26')](respondWithResult(_0x59e9bb,null))['catch'](handleError(_0x59e9bb,null));};