4c3aeebc243bda1ca0ab71403781f11d0077f07d
[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 _0xefa2=['include','findAll','rows','catch','show','options','find','create','body','params','describe','eml-format','request-promise','moment','bluebird','mustache','path','to-csv','ejs','crypto','jsforce','desk.js','querystring','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','json','undefined','limit','offset','count','set','Content-Range','reject','save','update','destroy','end','sendStatus','stack','name','index','map','SmsTransferReport','rawAttributes','type','model','keys','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','pick','merge','then','includeAll'];(function(_0xce9195,_0x1963e1){var _0x530fe6=function(_0x1b8055){while(--_0x1b8055){_0xce9195['push'](_0xce9195['shift']());}};_0x530fe6(++_0x1963e1);}(_0xefa2,0x123));var _0x2efa=function(_0x1b8c49,_0x250d99){_0x1b8c49=_0x1b8c49-0x0;var _0x435194=_0xefa2[_0x1b8c49];return _0x435194;};'use strict';var emlformat=require(_0x2efa('0x0'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x2efa('0x1'));var moment=require(_0x2efa('0x2'));var BPromise=require(_0x2efa('0x3'));var Mustache=require(_0x2efa('0x4'));var util=require('util');var path=require(_0x2efa('0x5'));var sox=require('sox');var csv=require(_0x2efa('0x6'));var ejs=require(_0x2efa('0x7'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require('squel');var crypto=require(_0x2efa('0x8'));var jsforce=require(_0x2efa('0x9'));var deskjs=require(_0x2efa('0xa'));var toCsv=require(_0x2efa('0x6'));var querystring=require(_0x2efa('0xb'));var Papa=require('papaparse');var Redis=require(_0x2efa('0xc'));var authService=require('../../components/auth/service');var qs=require(_0x2efa('0xd'));var as=require(_0x2efa('0xe'));var hardwareService=require(_0x2efa('0xf'));var logger=require(_0x2efa('0x10'))(_0x2efa('0x11'));var utils=require(_0x2efa('0x12'));var config=require(_0x2efa('0x13'));var licenseUtil=require(_0x2efa('0x14'));var db=require(_0x2efa('0x15'))['db'];function respondWithStatusCode(_0x5e6b31,_0x304c04){_0x304c04=_0x304c04||0xcc;return function(_0xc77af8){if(_0xc77af8){return _0x5e6b31['sendStatus'](_0x304c04);}return _0x5e6b31[_0x2efa('0x16')](_0x304c04)['end']();};}function respondWithResult(_0x2a8b62,_0x3daa26){_0x3daa26=_0x3daa26||0xc8;return function(_0x466b74){if(_0x466b74){return _0x2a8b62[_0x2efa('0x16')](_0x3daa26)[_0x2efa('0x17')](_0x466b74);}};}function respondWithFilteredResult(_0x227e37,_0x1bcc4d){return function(_0x5f5643){if(_0x5f5643){var _0x3cb51a=typeof _0x1bcc4d['offset']===_0x2efa('0x18')&&typeof _0x1bcc4d[_0x2efa('0x19')]===_0x2efa('0x18');var _0x238184=_0x5f5643['count'];var _0x3eda24=_0x3cb51a?0x0:_0x1bcc4d[_0x2efa('0x1a')];var _0x40d3f9=_0x3cb51a?_0x5f5643[_0x2efa('0x1b')]:_0x1bcc4d[_0x2efa('0x1a')]+_0x1bcc4d[_0x2efa('0x19')];var _0x433844;if(_0x40d3f9>=_0x238184){_0x40d3f9=_0x238184;_0x433844=0xc8;}else{_0x433844=0xce;}_0x227e37['status'](_0x433844);return _0x227e37[_0x2efa('0x1c')](_0x2efa('0x1d'),_0x3eda24+'-'+_0x40d3f9+'/'+_0x238184)[_0x2efa('0x17')](_0x5f5643);}return null;};}function patchUpdates(_0x196106){return function(_0x374385){try{jsonpatch['apply'](_0x374385,_0x196106,!![]);}catch(_0xea9663){return BPromise[_0x2efa('0x1e')](_0xea9663);}return _0x374385[_0x2efa('0x1f')]();};}function saveUpdates(_0x4c51dd,_0x1290ff){return function(_0x48120a){if(_0x48120a){return _0x48120a[_0x2efa('0x20')](_0x4c51dd)['then'](function(_0x575880){return _0x575880;});}return null;};}function removeEntity(_0x45ef4d,_0x3344d7){return function(_0x5495d3){if(_0x5495d3){return _0x5495d3[_0x2efa('0x21')]()['then'](function(){_0x45ef4d[_0x2efa('0x16')](0xcc)[_0x2efa('0x22')]();});}};}function handleEntityNotFound(_0x52dded,_0x5734b3){return function(_0x27ecf9){if(!_0x27ecf9){_0x52dded[_0x2efa('0x23')](0x194);}return _0x27ecf9;};}function handleError(_0x1fa857,_0x59ee10){_0x59ee10=_0x59ee10||0x1f4;return function(_0x2d73b6){logger['error'](_0x2d73b6[_0x2efa('0x24')]);if(_0x2d73b6[_0x2efa('0x25')]){delete _0x2d73b6[_0x2efa('0x25')];}_0x1fa857[_0x2efa('0x16')](_0x59ee10)['send'](_0x2d73b6);};}exports[_0x2efa('0x26')]=function(_0x544604,_0x3427f9){var _0x9c97c9={},_0x221c97={},_0x371651={'count':0x0,'rows':[]};var _0xe9db9=_[_0x2efa('0x27')](db[_0x2efa('0x28')][_0x2efa('0x29')],function(_0x3dda48){return{'name':_0x3dda48['fieldName'],'type':_0x3dda48[_0x2efa('0x2a')]['key']};});_0x221c97[_0x2efa('0x2b')]=_[_0x2efa('0x27')](_0xe9db9,_0x2efa('0x25'));_0x221c97['query']=_[_0x2efa('0x2c')](_0x544604[_0x2efa('0x2d')]);_0x221c97[_0x2efa('0x2e')]=_[_0x2efa('0x2f')](_0x221c97[_0x2efa('0x2b')],_0x221c97[_0x2efa('0x2d')]);_0x9c97c9[_0x2efa('0x30')]=_['intersection'](_0x221c97['model'],qs[_0x2efa('0x31')](_0x544604[_0x2efa('0x2d')][_0x2efa('0x31')]));_0x9c97c9[_0x2efa('0x30')]=_0x9c97c9[_0x2efa('0x30')][_0x2efa('0x32')]?_0x9c97c9['attributes']:_0x221c97['model'];if(!_0x544604[_0x2efa('0x2d')][_0x2efa('0x33')](_0x2efa('0x34'))){_0x9c97c9[_0x2efa('0x19')]=qs['limit'](_0x544604[_0x2efa('0x2d')]['limit']);_0x9c97c9[_0x2efa('0x1a')]=qs[_0x2efa('0x1a')](_0x544604[_0x2efa('0x2d')]['offset']);}_0x9c97c9['order']=qs[_0x2efa('0x35')](_0x544604[_0x2efa('0x2d')]['sort']);_0x9c97c9[_0x2efa('0x36')]=qs[_0x2efa('0x2e')](_[_0x2efa('0x37')](_0x544604[_0x2efa('0x2d')],_0x221c97[_0x2efa('0x2e')]),_0xe9db9);if(_0x544604[_0x2efa('0x2d')]['filter']){_0x9c97c9['where']=_['merge'](_0x9c97c9['where'],{'$or':_[_0x2efa('0x27')](_0xe9db9,function(_0x1f7c67){if(_0x1f7c67['type']!=='VIRTUAL'){var _0x3dfdd4={};_0x3dfdd4[_0x1f7c67[_0x2efa('0x25')]]={'$like':'%'+_0x544604['query']['filter']+'%'};return _0x3dfdd4;}})});}_0x9c97c9=_[_0x2efa('0x38')]({},_0x9c97c9,_0x544604['options']);var _0x3b3219={'where':_0x9c97c9[_0x2efa('0x36')]};return db[_0x2efa('0x28')][_0x2efa('0x1b')](_0x3b3219)[_0x2efa('0x39')](function(_0x545867){_0x371651[_0x2efa('0x1b')]=_0x545867;if(_0x544604[_0x2efa('0x2d')][_0x2efa('0x3a')]){_0x9c97c9[_0x2efa('0x3b')]=[{'all':!![]}];}return db[_0x2efa('0x28')][_0x2efa('0x3c')](_0x9c97c9);})['then'](function(_0x1022c3){_0x371651[_0x2efa('0x3d')]=_0x1022c3;return _0x371651;})['then'](respondWithFilteredResult(_0x3427f9,_0x9c97c9))[_0x2efa('0x3e')](handleError(_0x3427f9,null));};exports[_0x2efa('0x3f')]=function(_0x3ad1db,_0xcfc4f9){var _0xa86b4a={'raw':!![],'where':{'id':_0x3ad1db['params']['id']}},_0x4574ee={};_0x4574ee['model']=_[_0x2efa('0x2c')](db[_0x2efa('0x28')]['rawAttributes']);_0x4574ee['query']=_['keys'](_0x3ad1db[_0x2efa('0x2d')]);_0x4574ee['filters']=_[_0x2efa('0x2f')](_0x4574ee['model'],_0x4574ee[_0x2efa('0x2d')]);_0xa86b4a['attributes']=_[_0x2efa('0x2f')](_0x4574ee[_0x2efa('0x2b')],qs[_0x2efa('0x31')](_0x3ad1db['query']['fields']));_0xa86b4a[_0x2efa('0x30')]=_0xa86b4a[_0x2efa('0x30')]['length']?_0xa86b4a[_0x2efa('0x30')]:_0x4574ee['model'];if(_0x3ad1db['query'][_0x2efa('0x3a')]){_0xa86b4a[_0x2efa('0x3b')]=[{'all':!![]}];}_0xa86b4a=_[_0x2efa('0x38')]({},_0xa86b4a,_0x3ad1db[_0x2efa('0x40')]);return db[_0x2efa('0x28')][_0x2efa('0x41')](_0xa86b4a)[_0x2efa('0x39')](handleEntityNotFound(_0xcfc4f9,null))[_0x2efa('0x39')](respondWithResult(_0xcfc4f9,null))[_0x2efa('0x3e')](handleError(_0xcfc4f9,null));};exports[_0x2efa('0x42')]=function(_0x3d353f,_0x38bffa){return db[_0x2efa('0x28')][_0x2efa('0x42')](_0x3d353f[_0x2efa('0x43')],{})[_0x2efa('0x39')](respondWithResult(_0x38bffa,0xc9))[_0x2efa('0x3e')](handleError(_0x38bffa,null));};exports[_0x2efa('0x20')]=function(_0x20c917,_0x44b992){if(_0x20c917[_0x2efa('0x43')]['id']){delete _0x20c917[_0x2efa('0x43')]['id'];}return db['SmsTransferReport']['find']({'where':{'id':_0x20c917[_0x2efa('0x44')]['id']}})[_0x2efa('0x39')](handleEntityNotFound(_0x44b992,null))[_0x2efa('0x39')](saveUpdates(_0x20c917[_0x2efa('0x43')],null))['then'](respondWithResult(_0x44b992,null))['catch'](handleError(_0x44b992,null));};exports['destroy']=function(_0x1e3606,_0x6ea610){return db[_0x2efa('0x28')][_0x2efa('0x41')]({'where':{'id':_0x1e3606['params']['id']}})[_0x2efa('0x39')](handleEntityNotFound(_0x6ea610,null))['then'](removeEntity(_0x6ea610,null))[_0x2efa('0x3e')](handleError(_0x6ea610,null));};exports[_0x2efa('0x45')]=function(_0x423385,_0x133b08){return db[_0x2efa('0x28')]['describe']()[_0x2efa('0x39')](respondWithResult(_0x133b08,null))[_0x2efa('0x3e')](handleError(_0x133b08,null));};