a73b3a2b76d7d5e90493901d043706b40dc82e0c
[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 _0xd97d=['show','params','intersection','options','find','create','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','squel','crypto','jsforce','desk.js','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','sendStatus','end','json','offset','undefined','count','status','Content-Range','apply','reject','save','update','then','destroy','stack','name','send','render','merge','body','contact','agent','interaction','account','index','SmsTransferReport','rawAttributes','fieldName','key','model','map','query','keys','attributes','fields','length','hasOwnProperty','limit','order','sort','where','filters','pick','filter','VIRTUAL','includeAll','include','findAll','rows','catch'];(function(_0x27fbdc,_0x5895a8){var _0xfce606=function(_0x2a75db){while(--_0x2a75db){_0x27fbdc['push'](_0x27fbdc['shift']());}};_0xfce606(++_0x5895a8);}(_0xd97d,0xab));var _0xdd97=function(_0x243217,_0x522951){_0x243217=_0x243217-0x0;var _0x478029=_0xd97d[_0x243217];return _0x478029;};'use strict';var emlformat=require(_0xdd97('0x0'));var rimraf=require(_0xdd97('0x1'));var zipdir=require(_0xdd97('0x2'));var jsonpatch=require(_0xdd97('0x3'));var rp=require(_0xdd97('0x4'));var moment=require(_0xdd97('0x5'));var BPromise=require(_0xdd97('0x6'));var Mustache=require(_0xdd97('0x7'));var util=require(_0xdd97('0x8'));var path=require(_0xdd97('0x9'));var sox=require(_0xdd97('0xa'));var csv=require(_0xdd97('0xb'));var ejs=require(_0xdd97('0xc'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0xdd97('0xd'));var crypto=require(_0xdd97('0xe'));var jsforce=require(_0xdd97('0xf'));var deskjs=require(_0xdd97('0x10'));var toCsv=require(_0xdd97('0xb'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0xdd97('0x11'));var authService=require(_0xdd97('0x12'));var qs=require(_0xdd97('0x13'));var as=require(_0xdd97('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xdd97('0x15'))('api');var utils=require(_0xdd97('0x16'));var config=require(_0xdd97('0x17'));var licenseUtil=require('../../config/license/util');var db=require(_0xdd97('0x18'))['db'];function respondWithStatusCode(_0xb43486,_0x2e3616){_0x2e3616=_0x2e3616||0xcc;return function(_0x5119b2){if(_0x5119b2){return _0xb43486[_0xdd97('0x19')](_0x2e3616);}return _0xb43486['status'](_0x2e3616)[_0xdd97('0x1a')]();};}function respondWithResult(_0x4e93dc,_0x4c3e0e){_0x4c3e0e=_0x4c3e0e||0xc8;return function(_0x250762){if(_0x250762){return _0x4e93dc['status'](_0x4c3e0e)[_0xdd97('0x1b')](_0x250762);}};}function respondWithFilteredResult(_0xc0de7e,_0x519560){return function(_0x31f665){if(_0x31f665){var _0x30d51c=typeof _0x519560[_0xdd97('0x1c')]==='undefined'&&typeof _0x519560['limit']===_0xdd97('0x1d');var _0x3dd35d=_0x31f665[_0xdd97('0x1e')];var _0x35266f=_0x30d51c?0x0:_0x519560[_0xdd97('0x1c')];var _0x266c89=_0x30d51c?_0x31f665[_0xdd97('0x1e')]:_0x519560[_0xdd97('0x1c')]+_0x519560['limit'];var _0x254fd2;if(_0x266c89>=_0x3dd35d){_0x266c89=_0x3dd35d;_0x254fd2=0xc8;}else{_0x254fd2=0xce;}_0xc0de7e[_0xdd97('0x1f')](_0x254fd2);return _0xc0de7e['set'](_0xdd97('0x20'),_0x35266f+'-'+_0x266c89+'/'+_0x3dd35d)[_0xdd97('0x1b')](_0x31f665);}return null;};}function patchUpdates(_0x26266f){return function(_0x50aa87){try{jsonpatch[_0xdd97('0x21')](_0x50aa87,_0x26266f,!![]);}catch(_0x3132c7){return BPromise[_0xdd97('0x22')](_0x3132c7);}return _0x50aa87[_0xdd97('0x23')]();};}function saveUpdates(_0x334d0c,_0x589058){return function(_0x3c8e11){if(_0x3c8e11){return _0x3c8e11[_0xdd97('0x24')](_0x334d0c)[_0xdd97('0x25')](function(_0x45ce1b){return _0x45ce1b;});}return null;};}function removeEntity(_0x224be9,_0x2c1b8f){return function(_0x3d48b9){if(_0x3d48b9){return _0x3d48b9[_0xdd97('0x26')]()[_0xdd97('0x25')](function(){_0x224be9[_0xdd97('0x1f')](0xcc)[_0xdd97('0x1a')]();});}};}function handleEntityNotFound(_0x56bb16,_0x47aaa7){return function(_0x1132c9){if(!_0x1132c9){_0x56bb16['sendStatus'](0x194);}return _0x1132c9;};}function handleError(_0x301633,_0x377e0e){_0x377e0e=_0x377e0e||0x1f4;return function(_0xe291cc){logger['error'](_0xe291cc[_0xdd97('0x27')]);if(_0xe291cc['name']){delete _0xe291cc[_0xdd97('0x28')];}_0x301633[_0xdd97('0x1f')](_0x377e0e)[_0xdd97('0x29')](_0xe291cc);};}function getMustacheRender(_0x15b508,_0x1baa48){return Mustache[_0xdd97('0x2a')](_0x15b508,_[_0xdd97('0x2b')](_0x1baa48[_0xdd97('0x2c')],{'contact':_0x1baa48[_0xdd97('0x2d')],'message':_0x1baa48['message'],'agent':_0x1baa48[_0xdd97('0x2e')],'interaction':_0x1baa48[_0xdd97('0x2f')],'account':_0x1baa48[_0xdd97('0x30')]}))||'';}exports[_0xdd97('0x31')]=function(_0x3e37d1,_0xa1e696){var _0x454787={},_0x104693={},_0x3dde09={'count':0x0,'rows':[]};var _0x434416=_['map'](db[_0xdd97('0x32')][_0xdd97('0x33')],function(_0x429724){return{'name':_0x429724[_0xdd97('0x34')],'type':_0x429724['type'][_0xdd97('0x35')]};});_0x104693[_0xdd97('0x36')]=_[_0xdd97('0x37')](_0x434416,'name');_0x104693[_0xdd97('0x38')]=_[_0xdd97('0x39')](_0x3e37d1[_0xdd97('0x38')]);_0x104693['filters']=_['intersection'](_0x104693['model'],_0x104693[_0xdd97('0x38')]);_0x454787[_0xdd97('0x3a')]=_['intersection'](_0x104693[_0xdd97('0x36')],qs['fields'](_0x3e37d1[_0xdd97('0x38')][_0xdd97('0x3b')]));_0x454787[_0xdd97('0x3a')]=_0x454787[_0xdd97('0x3a')][_0xdd97('0x3c')]?_0x454787['attributes']:_0x104693['model'];if(!_0x3e37d1['query'][_0xdd97('0x3d')]('nolimit')){_0x454787[_0xdd97('0x3e')]=qs[_0xdd97('0x3e')](_0x3e37d1[_0xdd97('0x38')][_0xdd97('0x3e')]);_0x454787['offset']=qs[_0xdd97('0x1c')](_0x3e37d1[_0xdd97('0x38')][_0xdd97('0x1c')]);}_0x454787[_0xdd97('0x3f')]=qs[_0xdd97('0x40')](_0x3e37d1[_0xdd97('0x38')][_0xdd97('0x40')]);_0x454787[_0xdd97('0x41')]=qs[_0xdd97('0x42')](_[_0xdd97('0x43')](_0x3e37d1[_0xdd97('0x38')],_0x104693['filters']),_0x434416);if(_0x3e37d1[_0xdd97('0x38')][_0xdd97('0x44')]){_0x454787['where']=_['merge'](_0x454787[_0xdd97('0x41')],{'$or':_[_0xdd97('0x37')](_0x434416,function(_0x29a95f){if(_0x29a95f['type']!==_0xdd97('0x45')){var _0x2bd91d={};_0x2bd91d[_0x29a95f[_0xdd97('0x28')]]={'$like':'%'+_0x3e37d1[_0xdd97('0x38')][_0xdd97('0x44')]+'%'};return _0x2bd91d;}})});}_0x454787=_['merge']({},_0x454787,_0x3e37d1['options']);var _0x3d8e63={'where':_0x454787[_0xdd97('0x41')]};return db[_0xdd97('0x32')][_0xdd97('0x1e')](_0x3d8e63)[_0xdd97('0x25')](function(_0x1eaa88){_0x3dde09[_0xdd97('0x1e')]=_0x1eaa88;if(_0x3e37d1['query'][_0xdd97('0x46')]){_0x454787[_0xdd97('0x47')]=[{'all':!![]}];}return db[_0xdd97('0x32')][_0xdd97('0x48')](_0x454787);})['then'](function(_0x67d37c){_0x3dde09[_0xdd97('0x49')]=_0x67d37c;return _0x3dde09;})[_0xdd97('0x25')](respondWithFilteredResult(_0xa1e696,_0x454787))[_0xdd97('0x4a')](handleError(_0xa1e696,null));};exports[_0xdd97('0x4b')]=function(_0x58f2d0,_0x5e3a0f){var _0x1bcd34={'raw':!![],'where':{'id':_0x58f2d0[_0xdd97('0x4c')]['id']}},_0x5b83e6={};_0x5b83e6['model']=_['keys'](db['SmsTransferReport'][_0xdd97('0x33')]);_0x5b83e6[_0xdd97('0x38')]=_[_0xdd97('0x39')](_0x58f2d0[_0xdd97('0x38')]);_0x5b83e6[_0xdd97('0x42')]=_[_0xdd97('0x4d')](_0x5b83e6[_0xdd97('0x36')],_0x5b83e6[_0xdd97('0x38')]);_0x1bcd34[_0xdd97('0x3a')]=_[_0xdd97('0x4d')](_0x5b83e6[_0xdd97('0x36')],qs[_0xdd97('0x3b')](_0x58f2d0[_0xdd97('0x38')][_0xdd97('0x3b')]));_0x1bcd34[_0xdd97('0x3a')]=_0x1bcd34[_0xdd97('0x3a')]['length']?_0x1bcd34[_0xdd97('0x3a')]:_0x5b83e6[_0xdd97('0x36')];if(_0x58f2d0['query'][_0xdd97('0x46')]){_0x1bcd34['include']=[{'all':!![]}];}_0x1bcd34=_['merge']({},_0x1bcd34,_0x58f2d0[_0xdd97('0x4e')]);return db[_0xdd97('0x32')][_0xdd97('0x4f')](_0x1bcd34)[_0xdd97('0x25')](handleEntityNotFound(_0x5e3a0f,null))[_0xdd97('0x25')](respondWithResult(_0x5e3a0f,null))[_0xdd97('0x4a')](handleError(_0x5e3a0f,null));};exports[_0xdd97('0x50')]=function(_0x49ee66,_0x5df528){return db['SmsTransferReport']['create'](_0x49ee66[_0xdd97('0x2c')],{})[_0xdd97('0x25')](respondWithResult(_0x5df528,0xc9))[_0xdd97('0x4a')](handleError(_0x5df528,null));};exports['update']=function(_0x36d805,_0x490486){if(_0x36d805[_0xdd97('0x2c')]['id']){delete _0x36d805[_0xdd97('0x2c')]['id'];}return db[_0xdd97('0x32')][_0xdd97('0x4f')]({'where':{'id':_0x36d805[_0xdd97('0x4c')]['id']}})[_0xdd97('0x25')](handleEntityNotFound(_0x490486,null))['then'](saveUpdates(_0x36d805[_0xdd97('0x2c')],null))[_0xdd97('0x25')](respondWithResult(_0x490486,null))[_0xdd97('0x4a')](handleError(_0x490486,null));};exports[_0xdd97('0x26')]=function(_0x537494,_0x47fe38){return db[_0xdd97('0x32')][_0xdd97('0x4f')]({'where':{'id':_0x537494[_0xdd97('0x4c')]['id']}})[_0xdd97('0x25')](handleEntityNotFound(_0x47fe38,null))[_0xdd97('0x25')](removeEntity(_0x47fe38,null))[_0xdd97('0x4a')](handleError(_0x47fe38,null));};exports[_0xdd97('0x51')]=function(_0xe9eba6,_0x4c590f){return db[_0xdd97('0x32')][_0xdd97('0x51')]()['then'](respondWithResult(_0x4c590f,null))['catch'](handleError(_0x4c590f,null));};