e67a1a91982cd3376aa13373116dd804d8e65732
[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 _0x6387=['moment','bluebird','path','sox','to-csv','ejs','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','status','end','undefined','limit','count','offset','set','Content-Range','json','apply','reject','then','destroy','sendStatus','error','stack','name','send','index','map','SmsTransferReport','rawAttributes','type','key','model','query','keys','filters','intersection','attributes','fields','hasOwnProperty','nolimit','sort','where','filter','merge','findAll','rows','catch','show','params','include','create','update','body','find','describe','eml-format','rimraf','zip-dir'];(function(_0x1f0d02,_0x544507){var _0x7cb25=function(_0x12d57b){while(--_0x12d57b){_0x1f0d02['push'](_0x1f0d02['shift']());}};_0x7cb25(++_0x544507);}(_0x6387,0x19b));var _0x7638=function(_0x119c9e,_0x7ea3ea){_0x119c9e=_0x119c9e-0x0;var _0x2a3577=_0x6387[_0x119c9e];return _0x2a3577;};'use strict';var emlformat=require(_0x7638('0x0'));var rimraf=require(_0x7638('0x1'));var zipdir=require(_0x7638('0x2'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x7638('0x3'));var BPromise=require(_0x7638('0x4'));var Mustache=require('mustache');var util=require('util');var path=require(_0x7638('0x5'));var sox=require(_0x7638('0x6'));var csv=require(_0x7638('0x7'));var ejs=require(_0x7638('0x8'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0x7638('0x9'));var crypto=require('crypto');var jsforce=require(_0x7638('0xa'));var deskjs=require(_0x7638('0xb'));var toCsv=require(_0x7638('0x7'));var querystring=require(_0x7638('0xc'));var Papa=require(_0x7638('0xd'));var Redis=require(_0x7638('0xe'));var authService=require('../../components/auth/service');var qs=require(_0x7638('0xf'));var as=require(_0x7638('0x10'));var hardwareService=require(_0x7638('0x11'));var logger=require(_0x7638('0x12'))('api');var utils=require(_0x7638('0x13'));var config=require(_0x7638('0x14'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x44c784,_0x1da02c){_0x1da02c=_0x1da02c||0xcc;return function(_0x16a131){if(_0x16a131){return _0x44c784['sendStatus'](_0x1da02c);}return _0x44c784[_0x7638('0x15')](_0x1da02c)[_0x7638('0x16')]();};}function respondWithResult(_0x3d9d97,_0x180c37){_0x180c37=_0x180c37||0xc8;return function(_0x1332f2){if(_0x1332f2){return _0x3d9d97[_0x7638('0x15')](_0x180c37)['json'](_0x1332f2);}};}function respondWithFilteredResult(_0x595ce6,_0x4f5166){return function(_0x398cd0){if(_0x398cd0){var _0x1bec93=typeof _0x4f5166['offset']===_0x7638('0x17')&&typeof _0x4f5166[_0x7638('0x18')]===_0x7638('0x17');var _0x5f0ca4=_0x398cd0[_0x7638('0x19')];var _0xba1a46=_0x1bec93?0x0:_0x4f5166[_0x7638('0x1a')];var _0x11b8bd=_0x1bec93?_0x398cd0[_0x7638('0x19')]:_0x4f5166[_0x7638('0x1a')]+_0x4f5166[_0x7638('0x18')];var _0x4c4cdb;if(_0x11b8bd>=_0x5f0ca4){_0x11b8bd=_0x5f0ca4;_0x4c4cdb=0xc8;}else{_0x4c4cdb=0xce;}_0x595ce6[_0x7638('0x15')](_0x4c4cdb);return _0x595ce6[_0x7638('0x1b')](_0x7638('0x1c'),_0xba1a46+'-'+_0x11b8bd+'/'+_0x5f0ca4)[_0x7638('0x1d')](_0x398cd0);}return null;};}function patchUpdates(_0x4a4de9){return function(_0x1f4218){try{jsonpatch[_0x7638('0x1e')](_0x1f4218,_0x4a4de9,!![]);}catch(_0x36f3c2){return BPromise[_0x7638('0x1f')](_0x36f3c2);}return _0x1f4218['save']();};}function saveUpdates(_0x323e92,_0x29a4f7){return function(_0x1fce2e){if(_0x1fce2e){return _0x1fce2e['update'](_0x323e92)[_0x7638('0x20')](function(_0x114738){return _0x114738;});}return null;};}function removeEntity(_0x280ffc,_0x22f622){return function(_0x41e646){if(_0x41e646){return _0x41e646[_0x7638('0x21')]()['then'](function(){_0x280ffc['status'](0xcc)[_0x7638('0x16')]();});}};}function handleEntityNotFound(_0x8f0b65,_0x2fde02){return function(_0xa22abf){if(!_0xa22abf){_0x8f0b65[_0x7638('0x22')](0x194);}return _0xa22abf;};}function handleError(_0x55e6cc,_0x5c4a4f){_0x5c4a4f=_0x5c4a4f||0x1f4;return function(_0x174572){logger[_0x7638('0x23')](_0x174572[_0x7638('0x24')]);if(_0x174572['name']){delete _0x174572[_0x7638('0x25')];}_0x55e6cc['status'](_0x5c4a4f)[_0x7638('0x26')](_0x174572);};}exports[_0x7638('0x27')]=function(_0x3d64a5,_0x561dbd){var _0x567692={},_0x2162cc={},_0x34ca99={'count':0x0,'rows':[]};var _0xaa1107=_[_0x7638('0x28')](db[_0x7638('0x29')][_0x7638('0x2a')],function(_0x16d543){return{'name':_0x16d543['fieldName'],'type':_0x16d543[_0x7638('0x2b')][_0x7638('0x2c')]};});_0x2162cc[_0x7638('0x2d')]=_['map'](_0xaa1107,_0x7638('0x25'));_0x2162cc[_0x7638('0x2e')]=_[_0x7638('0x2f')](_0x3d64a5[_0x7638('0x2e')]);_0x2162cc[_0x7638('0x30')]=_[_0x7638('0x31')](_0x2162cc['model'],_0x2162cc['query']);_0x567692[_0x7638('0x32')]=_[_0x7638('0x31')](_0x2162cc[_0x7638('0x2d')],qs['fields'](_0x3d64a5['query'][_0x7638('0x33')]));_0x567692[_0x7638('0x32')]=_0x567692['attributes']['length']?_0x567692[_0x7638('0x32')]:_0x2162cc[_0x7638('0x2d')];if(!_0x3d64a5['query'][_0x7638('0x34')](_0x7638('0x35'))){_0x567692['limit']=qs[_0x7638('0x18')](_0x3d64a5[_0x7638('0x2e')][_0x7638('0x18')]);_0x567692[_0x7638('0x1a')]=qs['offset'](_0x3d64a5[_0x7638('0x2e')][_0x7638('0x1a')]);}_0x567692['order']=qs[_0x7638('0x36')](_0x3d64a5[_0x7638('0x2e')][_0x7638('0x36')]);_0x567692[_0x7638('0x37')]=qs['filters'](_['pick'](_0x3d64a5[_0x7638('0x2e')],_0x2162cc['filters']),_0xaa1107);if(_0x3d64a5['query'][_0x7638('0x38')]){_0x567692[_0x7638('0x37')]=_[_0x7638('0x39')](_0x567692[_0x7638('0x37')],{'$or':_[_0x7638('0x28')](_0xaa1107,function(_0x3375e9){if(_0x3375e9[_0x7638('0x2b')]!=='VIRTUAL'){var _0x4bdb60={};_0x4bdb60[_0x3375e9[_0x7638('0x25')]]={'$like':'%'+_0x3d64a5['query']['filter']+'%'};return _0x4bdb60;}})});}_0x567692=_[_0x7638('0x39')]({},_0x567692,_0x3d64a5['options']);var _0x38857e={'where':_0x567692[_0x7638('0x37')]};return db['SmsTransferReport'][_0x7638('0x19')](_0x38857e)[_0x7638('0x20')](function(_0x2dcb3d){_0x34ca99[_0x7638('0x19')]=_0x2dcb3d;if(_0x3d64a5[_0x7638('0x2e')]['includeAll']){_0x567692['include']=[{'all':!![]}];}return db[_0x7638('0x29')][_0x7638('0x3a')](_0x567692);})[_0x7638('0x20')](function(_0x4ab2f4){_0x34ca99[_0x7638('0x3b')]=_0x4ab2f4;return _0x34ca99;})[_0x7638('0x20')](respondWithFilteredResult(_0x561dbd,_0x567692))[_0x7638('0x3c')](handleError(_0x561dbd,null));};exports[_0x7638('0x3d')]=function(_0x39bad1,_0x300d39){var _0x501753={'raw':!![],'where':{'id':_0x39bad1[_0x7638('0x3e')]['id']}},_0x56b985={};_0x56b985[_0x7638('0x2d')]=_['keys'](db[_0x7638('0x29')][_0x7638('0x2a')]);_0x56b985[_0x7638('0x2e')]=_[_0x7638('0x2f')](_0x39bad1[_0x7638('0x2e')]);_0x56b985['filters']=_[_0x7638('0x31')](_0x56b985[_0x7638('0x2d')],_0x56b985[_0x7638('0x2e')]);_0x501753['attributes']=_[_0x7638('0x31')](_0x56b985[_0x7638('0x2d')],qs[_0x7638('0x33')](_0x39bad1['query'][_0x7638('0x33')]));_0x501753[_0x7638('0x32')]=_0x501753[_0x7638('0x32')]['length']?_0x501753[_0x7638('0x32')]:_0x56b985['model'];if(_0x39bad1[_0x7638('0x2e')]['includeAll']){_0x501753[_0x7638('0x3f')]=[{'all':!![]}];}_0x501753=_['merge']({},_0x501753,_0x39bad1['options']);return db['SmsTransferReport']['find'](_0x501753)[_0x7638('0x20')](handleEntityNotFound(_0x300d39,null))[_0x7638('0x20')](respondWithResult(_0x300d39,null))[_0x7638('0x3c')](handleError(_0x300d39,null));};exports[_0x7638('0x40')]=function(_0x30a827,_0x28316d){return db[_0x7638('0x29')][_0x7638('0x40')](_0x30a827['body'],{})[_0x7638('0x20')](respondWithResult(_0x28316d,0xc9))[_0x7638('0x3c')](handleError(_0x28316d,null));};exports[_0x7638('0x41')]=function(_0x1464f7,_0x3a5e3a){if(_0x1464f7[_0x7638('0x42')]['id']){delete _0x1464f7['body']['id'];}return db[_0x7638('0x29')][_0x7638('0x43')]({'where':{'id':_0x1464f7[_0x7638('0x3e')]['id']}})[_0x7638('0x20')](handleEntityNotFound(_0x3a5e3a,null))[_0x7638('0x20')](saveUpdates(_0x1464f7[_0x7638('0x42')],null))[_0x7638('0x20')](respondWithResult(_0x3a5e3a,null))[_0x7638('0x3c')](handleError(_0x3a5e3a,null));};exports[_0x7638('0x21')]=function(_0x1673c3,_0x2585fd){return db[_0x7638('0x29')]['find']({'where':{'id':_0x1673c3[_0x7638('0x3e')]['id']}})[_0x7638('0x20')](handleEntityNotFound(_0x2585fd,null))['then'](removeEntity(_0x2585fd,null))[_0x7638('0x3c')](handleError(_0x2585fd,null));};exports['describe']=function(_0x10d2d7,_0x598627){return db[_0x7638('0x29')][_0x7638('0x44')]()[_0x7638('0x20')](respondWithResult(_0x598627,null))[_0x7638('0x3c')](handleError(_0x598627,null));};