55545036be10c675e790497ad5702e1eaea3237f
[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 _0xd3c0=['../../components/parsers/advancedSearch','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','end','status','undefined','limit','count','offset','set','apply','reject','save','update','then','name','send','map','SmsTransferReport','rawAttributes','fieldName','type','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','merge','VIRTUAL','filter','include','findAll','rows','catch','params','create','body','destroy','find','describe','eml-format','rimraf','zip-dir','fast-json-patch','moment','util','path','to-csv','squel','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs'];(function(_0x12fc8d,_0x19ee33){var _0x3f9d04=function(_0x52e51c){while(--_0x52e51c){_0x12fc8d['push'](_0x12fc8d['shift']());}};_0x3f9d04(++_0x19ee33);}(_0xd3c0,0xbf));var _0x0d3c=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0xd3c0[_0x3dd15e];return _0x231fd0;};'use strict';var emlformat=require(_0x0d3c('0x0'));var rimraf=require(_0x0d3c('0x1'));var zipdir=require(_0x0d3c('0x2'));var jsonpatch=require(_0x0d3c('0x3'));var rp=require('request-promise');var moment=require(_0x0d3c('0x4'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x0d3c('0x5'));var path=require(_0x0d3c('0x6'));var sox=require('sox');var csv=require(_0x0d3c('0x7'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0x0d3c('0x8'));var crypto=require(_0x0d3c('0x9'));var jsforce=require(_0x0d3c('0xa'));var deskjs=require('desk.js');var toCsv=require(_0x0d3c('0x7'));var querystring=require(_0x0d3c('0xb'));var Papa=require(_0x0d3c('0xc'));var Redis=require(_0x0d3c('0xd'));var authService=require(_0x0d3c('0xe'));var qs=require(_0x0d3c('0xf'));var as=require(_0x0d3c('0x10'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x0d3c('0x11'))(_0x0d3c('0x12'));var utils=require('../../config/utils');var config=require(_0x0d3c('0x13'));var licenseUtil=require(_0x0d3c('0x14'));var db=require(_0x0d3c('0x15'))['db'];function respondWithStatusCode(_0x2252d1,_0x3cef54){_0x3cef54=_0x3cef54||0xcc;return function(_0x4f4aa0){if(_0x4f4aa0){return _0x2252d1[_0x0d3c('0x16')](_0x3cef54);}return _0x2252d1['status'](_0x3cef54)[_0x0d3c('0x17')]();};}function respondWithResult(_0x2addab,_0x5dc213){_0x5dc213=_0x5dc213||0xc8;return function(_0x3f224d){if(_0x3f224d){return _0x2addab[_0x0d3c('0x18')](_0x5dc213)['json'](_0x3f224d);}};}function respondWithFilteredResult(_0x10e5c1,_0x5c1634){return function(_0x3ac1e9){if(_0x3ac1e9){var _0x18626e=typeof _0x5c1634['offset']===_0x0d3c('0x19')&&typeof _0x5c1634[_0x0d3c('0x1a')]==='undefined';var _0x29d61c=_0x3ac1e9[_0x0d3c('0x1b')];var _0x2c4128=_0x18626e?0x0:_0x5c1634[_0x0d3c('0x1c')];var _0x385af5=_0x18626e?_0x3ac1e9[_0x0d3c('0x1b')]:_0x5c1634[_0x0d3c('0x1c')]+_0x5c1634[_0x0d3c('0x1a')];var _0x1ea46e;if(_0x385af5>=_0x29d61c){_0x385af5=_0x29d61c;_0x1ea46e=0xc8;}else{_0x1ea46e=0xce;}_0x10e5c1['status'](_0x1ea46e);return _0x10e5c1[_0x0d3c('0x1d')]('Content-Range',_0x2c4128+'-'+_0x385af5+'/'+_0x29d61c)['json'](_0x3ac1e9);}return null;};}function patchUpdates(_0x14af06){return function(_0x15cb11){try{jsonpatch[_0x0d3c('0x1e')](_0x15cb11,_0x14af06,!![]);}catch(_0x5b2902){return BPromise[_0x0d3c('0x1f')](_0x5b2902);}return _0x15cb11[_0x0d3c('0x20')]();};}function saveUpdates(_0x28a0bb,_0x14898e){return function(_0x284891){if(_0x284891){return _0x284891[_0x0d3c('0x21')](_0x28a0bb)[_0x0d3c('0x22')](function(_0x5199b4){return _0x5199b4;});}return null;};}function removeEntity(_0x5131ad,_0x411d88){return function(_0x5e2a79){if(_0x5e2a79){return _0x5e2a79['destroy']()[_0x0d3c('0x22')](function(){_0x5131ad['status'](0xcc)[_0x0d3c('0x17')]();});}};}function handleEntityNotFound(_0x40b985,_0x251091){return function(_0x5ce312){if(!_0x5ce312){_0x40b985['sendStatus'](0x194);}return _0x5ce312;};}function handleError(_0x14defc,_0x5f2980){_0x5f2980=_0x5f2980||0x1f4;return function(_0x8fe932){logger['error'](_0x8fe932['stack']);if(_0x8fe932['name']){delete _0x8fe932[_0x0d3c('0x23')];}_0x14defc[_0x0d3c('0x18')](_0x5f2980)[_0x0d3c('0x24')](_0x8fe932);};}exports['index']=function(_0x2e823f,_0x1a293d){var _0x182631={},_0x352f47={},_0x31cde0={'count':0x0,'rows':[]};var _0xcb59cd=_[_0x0d3c('0x25')](db[_0x0d3c('0x26')][_0x0d3c('0x27')],function(_0x3ed15a){return{'name':_0x3ed15a[_0x0d3c('0x28')],'type':_0x3ed15a[_0x0d3c('0x29')]['key']};});_0x352f47[_0x0d3c('0x2a')]=_[_0x0d3c('0x25')](_0xcb59cd,'name');_0x352f47[_0x0d3c('0x2b')]=_[_0x0d3c('0x2c')](_0x2e823f['query']);_0x352f47[_0x0d3c('0x2d')]=_[_0x0d3c('0x2e')](_0x352f47['model'],_0x352f47[_0x0d3c('0x2b')]);_0x182631[_0x0d3c('0x2f')]=_[_0x0d3c('0x2e')](_0x352f47[_0x0d3c('0x2a')],qs['fields'](_0x2e823f[_0x0d3c('0x2b')][_0x0d3c('0x30')]));_0x182631[_0x0d3c('0x2f')]=_0x182631['attributes'][_0x0d3c('0x31')]?_0x182631[_0x0d3c('0x2f')]:_0x352f47[_0x0d3c('0x2a')];if(!_0x2e823f['query'][_0x0d3c('0x32')](_0x0d3c('0x33'))){_0x182631['limit']=qs[_0x0d3c('0x1a')](_0x2e823f[_0x0d3c('0x2b')]['limit']);_0x182631[_0x0d3c('0x1c')]=qs[_0x0d3c('0x1c')](_0x2e823f[_0x0d3c('0x2b')][_0x0d3c('0x1c')]);}_0x182631[_0x0d3c('0x34')]=qs[_0x0d3c('0x35')](_0x2e823f[_0x0d3c('0x2b')][_0x0d3c('0x35')]);_0x182631[_0x0d3c('0x36')]=qs[_0x0d3c('0x2d')](_[_0x0d3c('0x37')](_0x2e823f[_0x0d3c('0x2b')],_0x352f47['filters']),_0xcb59cd);if(_0x2e823f[_0x0d3c('0x2b')]['filter']){_0x182631['where']=_[_0x0d3c('0x38')](_0x182631['where'],{'$or':_['map'](_0xcb59cd,function(_0x542e47){if(_0x542e47['type']!==_0x0d3c('0x39')){var _0x99f254={};_0x99f254[_0x542e47['name']]={'$like':'%'+_0x2e823f[_0x0d3c('0x2b')][_0x0d3c('0x3a')]+'%'};return _0x99f254;}})});}_0x182631=_[_0x0d3c('0x38')]({},_0x182631,_0x2e823f['options']);var _0x3b8604={'where':_0x182631['where']};return db[_0x0d3c('0x26')][_0x0d3c('0x1b')](_0x3b8604)['then'](function(_0x30f1b1){_0x31cde0['count']=_0x30f1b1;if(_0x2e823f['query']['includeAll']){_0x182631[_0x0d3c('0x3b')]=[{'all':!![]}];}return db['SmsTransferReport'][_0x0d3c('0x3c')](_0x182631);})[_0x0d3c('0x22')](function(_0x5001cb){_0x31cde0[_0x0d3c('0x3d')]=_0x5001cb;return _0x31cde0;})[_0x0d3c('0x22')](respondWithFilteredResult(_0x1a293d,_0x182631))[_0x0d3c('0x3e')](handleError(_0x1a293d,null));};exports['show']=function(_0x1f57ed,_0x498894){var _0x57f74d={'raw':!![],'where':{'id':_0x1f57ed[_0x0d3c('0x3f')]['id']}},_0x5c2496={};_0x5c2496['model']=_['keys'](db[_0x0d3c('0x26')][_0x0d3c('0x27')]);_0x5c2496[_0x0d3c('0x2b')]=_['keys'](_0x1f57ed[_0x0d3c('0x2b')]);_0x5c2496['filters']=_[_0x0d3c('0x2e')](_0x5c2496[_0x0d3c('0x2a')],_0x5c2496['query']);_0x57f74d[_0x0d3c('0x2f')]=_['intersection'](_0x5c2496['model'],qs[_0x0d3c('0x30')](_0x1f57ed['query'][_0x0d3c('0x30')]));_0x57f74d[_0x0d3c('0x2f')]=_0x57f74d['attributes'][_0x0d3c('0x31')]?_0x57f74d[_0x0d3c('0x2f')]:_0x5c2496[_0x0d3c('0x2a')];if(_0x1f57ed[_0x0d3c('0x2b')]['includeAll']){_0x57f74d['include']=[{'all':!![]}];}_0x57f74d=_[_0x0d3c('0x38')]({},_0x57f74d,_0x1f57ed['options']);return db[_0x0d3c('0x26')]['find'](_0x57f74d)[_0x0d3c('0x22')](handleEntityNotFound(_0x498894,null))[_0x0d3c('0x22')](respondWithResult(_0x498894,null))['catch'](handleError(_0x498894,null));};exports[_0x0d3c('0x40')]=function(_0x570918,_0x4ba5b3){return db[_0x0d3c('0x26')][_0x0d3c('0x40')](_0x570918['body'],{})[_0x0d3c('0x22')](respondWithResult(_0x4ba5b3,0xc9))['catch'](handleError(_0x4ba5b3,null));};exports[_0x0d3c('0x21')]=function(_0x405a0b,_0x113fec){if(_0x405a0b[_0x0d3c('0x41')]['id']){delete _0x405a0b[_0x0d3c('0x41')]['id'];}return db[_0x0d3c('0x26')]['find']({'where':{'id':_0x405a0b[_0x0d3c('0x3f')]['id']}})['then'](handleEntityNotFound(_0x113fec,null))[_0x0d3c('0x22')](saveUpdates(_0x405a0b[_0x0d3c('0x41')],null))[_0x0d3c('0x22')](respondWithResult(_0x113fec,null))[_0x0d3c('0x3e')](handleError(_0x113fec,null));};exports[_0x0d3c('0x42')]=function(_0x2c0f7e,_0x462cfe){return db['SmsTransferReport'][_0x0d3c('0x43')]({'where':{'id':_0x2c0f7e[_0x0d3c('0x3f')]['id']}})[_0x0d3c('0x22')](handleEntityNotFound(_0x462cfe,null))['then'](removeEntity(_0x462cfe,null))[_0x0d3c('0x3e')](handleError(_0x462cfe,null));};exports[_0x0d3c('0x44')]=function(_0x3f29e1,_0x1caa0f){return db[_0x0d3c('0x26')][_0x0d3c('0x44')]()[_0x0d3c('0x22')](respondWithResult(_0x1caa0f,null))[_0x0d3c('0x3e')](handleError(_0x1caa0f,null));};