65f60c1493694c32c31cb14945997bed377bce3e
[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 _0x7c65=['ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','count','apply','reject','save','update','destroy','then','error','stack','name','send','index','SmsTransferReport','rawAttributes','fieldName','type','key','model','map','keys','query','filters','attributes','intersection','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','include','findAll','catch','show','params','find','create','body','describe','eml-format','rimraf','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','fs-extra','lodash','squel','crypto','desk.js'];(function(_0x4cefc3,_0x23f291){var _0x1cc779=function(_0x7cb914){while(--_0x7cb914){_0x4cefc3['push'](_0x4cefc3['shift']());}};_0x1cc779(++_0x23f291);}(_0x7c65,0x16d));var _0x57c6=function(_0xcb46c0,_0x311f46){_0xcb46c0=_0xcb46c0-0x0;var _0x446cb9=_0x7c65[_0xcb46c0];return _0x446cb9;};'use strict';var emlformat=require(_0x57c6('0x0'));var rimraf=require(_0x57c6('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x57c6('0x2'));var rp=require(_0x57c6('0x3'));var moment=require('moment');var BPromise=require(_0x57c6('0x4'));var Mustache=require(_0x57c6('0x5'));var util=require(_0x57c6('0x6'));var path=require(_0x57c6('0x7'));var sox=require(_0x57c6('0x8'));var csv=require(_0x57c6('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x57c6('0xa'));var _=require(_0x57c6('0xb'));var squel=require(_0x57c6('0xc'));var crypto=require(_0x57c6('0xd'));var jsforce=require('jsforce');var deskjs=require(_0x57c6('0xe'));var toCsv=require(_0x57c6('0x9'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x57c6('0xf'));var authService=require(_0x57c6('0x10'));var qs=require(_0x57c6('0x11'));var as=require(_0x57c6('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x57c6('0x13'))(_0x57c6('0x14'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0x57c6('0x15'));var db=require(_0x57c6('0x16'))['db'];function respondWithStatusCode(_0x2aec91,_0x41217e){_0x41217e=_0x41217e||0xcc;return function(_0x415d61){if(_0x415d61){return _0x2aec91[_0x57c6('0x17')](_0x41217e);}return _0x2aec91[_0x57c6('0x18')](_0x41217e)[_0x57c6('0x19')]();};}function respondWithResult(_0x1bf95c,_0x5b7026){_0x5b7026=_0x5b7026||0xc8;return function(_0x329be5){if(_0x329be5){return _0x1bf95c['status'](_0x5b7026)[_0x57c6('0x1a')](_0x329be5);}};}function respondWithFilteredResult(_0x33dbc8,_0x25b0ad){return function(_0x4b7b6c){if(_0x4b7b6c){var _0x57b188=typeof _0x25b0ad[_0x57c6('0x1b')]===_0x57c6('0x1c')&&typeof _0x25b0ad[_0x57c6('0x1d')]==='undefined';var _0xc1beb0=_0x4b7b6c[_0x57c6('0x1e')];var _0x20f98f=_0x57b188?0x0:_0x25b0ad['offset'];var _0x1aa845=_0x57b188?_0x4b7b6c[_0x57c6('0x1e')]:_0x25b0ad[_0x57c6('0x1b')]+_0x25b0ad[_0x57c6('0x1d')];var _0x468757;if(_0x1aa845>=_0xc1beb0){_0x1aa845=_0xc1beb0;_0x468757=0xc8;}else{_0x468757=0xce;}_0x33dbc8[_0x57c6('0x18')](_0x468757);return _0x33dbc8['set']('Content-Range',_0x20f98f+'-'+_0x1aa845+'/'+_0xc1beb0)[_0x57c6('0x1a')](_0x4b7b6c);}return null;};}function patchUpdates(_0x3415af){return function(_0x4cc973){try{jsonpatch[_0x57c6('0x1f')](_0x4cc973,_0x3415af,!![]);}catch(_0x48e828){return BPromise[_0x57c6('0x20')](_0x48e828);}return _0x4cc973[_0x57c6('0x21')]();};}function saveUpdates(_0x5749ba,_0xb4f911){return function(_0xc63dac){if(_0xc63dac){return _0xc63dac[_0x57c6('0x22')](_0x5749ba)['then'](function(_0x29d60d){return _0x29d60d;});}return null;};}function removeEntity(_0xb1ad38,_0x1d09a3){return function(_0x2af0c0){if(_0x2af0c0){return _0x2af0c0[_0x57c6('0x23')]()[_0x57c6('0x24')](function(){_0xb1ad38[_0x57c6('0x18')](0xcc)['end']();});}};}function handleEntityNotFound(_0xbe6433,_0x4a2783){return function(_0x2020cb){if(!_0x2020cb){_0xbe6433[_0x57c6('0x17')](0x194);}return _0x2020cb;};}function handleError(_0x445197,_0x12a94a){_0x12a94a=_0x12a94a||0x1f4;return function(_0x34e86b){logger[_0x57c6('0x25')](_0x34e86b[_0x57c6('0x26')]);if(_0x34e86b[_0x57c6('0x27')]){delete _0x34e86b[_0x57c6('0x27')];}_0x445197[_0x57c6('0x18')](_0x12a94a)[_0x57c6('0x28')](_0x34e86b);};}exports[_0x57c6('0x29')]=function(_0x5e6c69,_0x5a8d82){var _0x4547ce={},_0x15183f={},_0x3cdf27={'count':0x0,'rows':[]};var _0x265325=_['map'](db[_0x57c6('0x2a')][_0x57c6('0x2b')],function(_0x4a070c){return{'name':_0x4a070c[_0x57c6('0x2c')],'type':_0x4a070c[_0x57c6('0x2d')][_0x57c6('0x2e')]};});_0x15183f[_0x57c6('0x2f')]=_[_0x57c6('0x30')](_0x265325,'name');_0x15183f['query']=_[_0x57c6('0x31')](_0x5e6c69[_0x57c6('0x32')]);_0x15183f[_0x57c6('0x33')]=_['intersection'](_0x15183f['model'],_0x15183f[_0x57c6('0x32')]);_0x4547ce[_0x57c6('0x34')]=_[_0x57c6('0x35')](_0x15183f[_0x57c6('0x2f')],qs[_0x57c6('0x36')](_0x5e6c69[_0x57c6('0x32')][_0x57c6('0x36')]));_0x4547ce['attributes']=_0x4547ce['attributes'][_0x57c6('0x37')]?_0x4547ce[_0x57c6('0x34')]:_0x15183f[_0x57c6('0x2f')];if(!_0x5e6c69[_0x57c6('0x32')][_0x57c6('0x38')](_0x57c6('0x39'))){_0x4547ce['limit']=qs[_0x57c6('0x1d')](_0x5e6c69['query'][_0x57c6('0x1d')]);_0x4547ce[_0x57c6('0x1b')]=qs[_0x57c6('0x1b')](_0x5e6c69[_0x57c6('0x32')][_0x57c6('0x1b')]);}_0x4547ce[_0x57c6('0x3a')]=qs[_0x57c6('0x3b')](_0x5e6c69['query'][_0x57c6('0x3b')]);_0x4547ce[_0x57c6('0x3c')]=qs[_0x57c6('0x33')](_[_0x57c6('0x3d')](_0x5e6c69['query'],_0x15183f['filters']),_0x265325);if(_0x5e6c69[_0x57c6('0x32')][_0x57c6('0x3e')]){_0x4547ce['where']=_[_0x57c6('0x3f')](_0x4547ce[_0x57c6('0x3c')],{'$or':_['map'](_0x265325,function(_0xeabcfd){if(_0xeabcfd[_0x57c6('0x2d')]!==_0x57c6('0x40')){var _0x236110={};_0x236110[_0xeabcfd['name']]={'$like':'%'+_0x5e6c69[_0x57c6('0x32')][_0x57c6('0x3e')]+'%'};return _0x236110;}})});}_0x4547ce=_[_0x57c6('0x3f')]({},_0x4547ce,_0x5e6c69[_0x57c6('0x41')]);var _0x3e41ab={'where':_0x4547ce[_0x57c6('0x3c')]};return db['SmsTransferReport'][_0x57c6('0x1e')](_0x3e41ab)[_0x57c6('0x24')](function(_0x2c14a0){_0x3cdf27[_0x57c6('0x1e')]=_0x2c14a0;if(_0x5e6c69[_0x57c6('0x32')][_0x57c6('0x42')]){_0x4547ce[_0x57c6('0x43')]=[{'all':!![]}];}return db[_0x57c6('0x2a')][_0x57c6('0x44')](_0x4547ce);})[_0x57c6('0x24')](function(_0x562eaa){_0x3cdf27['rows']=_0x562eaa;return _0x3cdf27;})[_0x57c6('0x24')](respondWithFilteredResult(_0x5a8d82,_0x4547ce))[_0x57c6('0x45')](handleError(_0x5a8d82,null));};exports[_0x57c6('0x46')]=function(_0x30f35d,_0x5452fb){var _0xd83687={'raw':!![],'where':{'id':_0x30f35d[_0x57c6('0x47')]['id']}},_0x222b6f={};_0x222b6f[_0x57c6('0x2f')]=_[_0x57c6('0x31')](db[_0x57c6('0x2a')][_0x57c6('0x2b')]);_0x222b6f[_0x57c6('0x32')]=_[_0x57c6('0x31')](_0x30f35d[_0x57c6('0x32')]);_0x222b6f[_0x57c6('0x33')]=_[_0x57c6('0x35')](_0x222b6f['model'],_0x222b6f[_0x57c6('0x32')]);_0xd83687['attributes']=_[_0x57c6('0x35')](_0x222b6f['model'],qs[_0x57c6('0x36')](_0x30f35d['query']['fields']));_0xd83687['attributes']=_0xd83687[_0x57c6('0x34')]['length']?_0xd83687[_0x57c6('0x34')]:_0x222b6f[_0x57c6('0x2f')];if(_0x30f35d['query'][_0x57c6('0x42')]){_0xd83687[_0x57c6('0x43')]=[{'all':!![]}];}_0xd83687=_[_0x57c6('0x3f')]({},_0xd83687,_0x30f35d[_0x57c6('0x41')]);return db[_0x57c6('0x2a')][_0x57c6('0x48')](_0xd83687)['then'](handleEntityNotFound(_0x5452fb,null))['then'](respondWithResult(_0x5452fb,null))['catch'](handleError(_0x5452fb,null));};exports[_0x57c6('0x49')]=function(_0x3fe0a5,_0x37b9e5){return db[_0x57c6('0x2a')][_0x57c6('0x49')](_0x3fe0a5['body'],{})[_0x57c6('0x24')](respondWithResult(_0x37b9e5,0xc9))[_0x57c6('0x45')](handleError(_0x37b9e5,null));};exports['update']=function(_0x4e1287,_0x3d3f91){if(_0x4e1287[_0x57c6('0x4a')]['id']){delete _0x4e1287[_0x57c6('0x4a')]['id'];}return db[_0x57c6('0x2a')]['find']({'where':{'id':_0x4e1287['params']['id']}})['then'](handleEntityNotFound(_0x3d3f91,null))[_0x57c6('0x24')](saveUpdates(_0x4e1287[_0x57c6('0x4a')],null))['then'](respondWithResult(_0x3d3f91,null))[_0x57c6('0x45')](handleError(_0x3d3f91,null));};exports[_0x57c6('0x23')]=function(_0x4268b4,_0x59d627){return db[_0x57c6('0x2a')]['find']({'where':{'id':_0x4268b4[_0x57c6('0x47')]['id']}})[_0x57c6('0x24')](handleEntityNotFound(_0x59d627,null))[_0x57c6('0x24')](removeEntity(_0x59d627,null))['catch'](handleError(_0x59d627,null));};exports[_0x57c6('0x4b')]=function(_0x11f040,_0x39d662){return db[_0x57c6('0x2a')][_0x57c6('0x4b')]()[_0x57c6('0x24')](respondWithResult(_0x39d662,null))['catch'](handleError(_0x39d662,null));};