340842a6e1bf85d891955fec2f60c1142cc1282b
[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 _0x4e57=['request-promise','moment','util','sox','to-csv','fs-extra','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/license/util','../../mysqldb','status','end','json','undefined','offset','count','set','apply','reject','then','destroy','sendStatus','error','stack','name','send','index','map','SmsTransferReport','rawAttributes','fieldName','type','key','model','query','keys','intersection','fields','attributes','length','hasOwnProperty','nolimit','limit','order','sort','where','pick','filters','merge','VIRTUAL','filter','options','includeAll','include','findAll','rows','catch','show','find','create','body','update','describe','eml-format','rimraf','zip-dir','fast-json-patch'];(function(_0x2d2c16,_0x4e88b6){var _0x53f2fb=function(_0x6b6dac){while(--_0x6b6dac){_0x2d2c16['push'](_0x2d2c16['shift']());}};_0x53f2fb(++_0x4e88b6);}(_0x4e57,0x182));var _0x74e5=function(_0x5ca5a7,_0xa4a48f){_0x5ca5a7=_0x5ca5a7-0x0;var _0x4e6b99=_0x4e57[_0x5ca5a7];return _0x4e6b99;};'use strict';var emlformat=require(_0x74e5('0x0'));var rimraf=require(_0x74e5('0x1'));var zipdir=require(_0x74e5('0x2'));var jsonpatch=require(_0x74e5('0x3'));var rp=require(_0x74e5('0x4'));var moment=require(_0x74e5('0x5'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x74e5('0x6'));var path=require('path');var sox=require(_0x74e5('0x7'));var csv=require(_0x74e5('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x74e5('0x9'));var _=require('lodash');var squel=require(_0x74e5('0xa'));var crypto=require(_0x74e5('0xb'));var jsforce=require(_0x74e5('0xc'));var deskjs=require(_0x74e5('0xd'));var toCsv=require(_0x74e5('0x8'));var querystring=require(_0x74e5('0xe'));var Papa=require(_0x74e5('0xf'));var Redis=require(_0x74e5('0x10'));var authService=require(_0x74e5('0x11'));var qs=require(_0x74e5('0x12'));var as=require(_0x74e5('0x13'));var hardwareService=require(_0x74e5('0x14'));var logger=require('../../config/logger')(_0x74e5('0x15'));var utils=require(_0x74e5('0x16'));var config=require('../../config/environment');var licenseUtil=require(_0x74e5('0x17'));var db=require(_0x74e5('0x18'))['db'];function respondWithStatusCode(_0x3e4bf6,_0x482922){_0x482922=_0x482922||0xcc;return function(_0x502241){if(_0x502241){return _0x3e4bf6['sendStatus'](_0x482922);}return _0x3e4bf6[_0x74e5('0x19')](_0x482922)[_0x74e5('0x1a')]();};}function respondWithResult(_0x3084e0,_0x190f80){_0x190f80=_0x190f80||0xc8;return function(_0x2370e0){if(_0x2370e0){return _0x3084e0[_0x74e5('0x19')](_0x190f80)[_0x74e5('0x1b')](_0x2370e0);}};}function respondWithFilteredResult(_0x77a152,_0x31ed72){return function(_0x50de3c){if(_0x50de3c){var _0x64d648=typeof _0x31ed72['offset']===_0x74e5('0x1c')&&typeof _0x31ed72['limit']===_0x74e5('0x1c');var _0x20a51b=_0x50de3c['count'];var _0x5a1739=_0x64d648?0x0:_0x31ed72[_0x74e5('0x1d')];var _0x1435c0=_0x64d648?_0x50de3c[_0x74e5('0x1e')]:_0x31ed72['offset']+_0x31ed72['limit'];var _0x976a9b;if(_0x1435c0>=_0x20a51b){_0x1435c0=_0x20a51b;_0x976a9b=0xc8;}else{_0x976a9b=0xce;}_0x77a152[_0x74e5('0x19')](_0x976a9b);return _0x77a152[_0x74e5('0x1f')]('Content-Range',_0x5a1739+'-'+_0x1435c0+'/'+_0x20a51b)[_0x74e5('0x1b')](_0x50de3c);}return null;};}function patchUpdates(_0x4ffb0a){return function(_0x4d1747){try{jsonpatch[_0x74e5('0x20')](_0x4d1747,_0x4ffb0a,!![]);}catch(_0x571d5a){return BPromise[_0x74e5('0x21')](_0x571d5a);}return _0x4d1747['save']();};}function saveUpdates(_0x39fb87,_0x270810){return function(_0x18f070){if(_0x18f070){return _0x18f070['update'](_0x39fb87)[_0x74e5('0x22')](function(_0x53e25d){return _0x53e25d;});}return null;};}function removeEntity(_0x583b9a,_0x3bc634){return function(_0x1937c3){if(_0x1937c3){return _0x1937c3[_0x74e5('0x23')]()['then'](function(){_0x583b9a[_0x74e5('0x19')](0xcc)[_0x74e5('0x1a')]();});}};}function handleEntityNotFound(_0x31636a,_0x1366c2){return function(_0x4a2ad9){if(!_0x4a2ad9){_0x31636a[_0x74e5('0x24')](0x194);}return _0x4a2ad9;};}function handleError(_0x25c6c1,_0x5965cf){_0x5965cf=_0x5965cf||0x1f4;return function(_0xe71c4f){logger[_0x74e5('0x25')](_0xe71c4f[_0x74e5('0x26')]);if(_0xe71c4f[_0x74e5('0x27')]){delete _0xe71c4f[_0x74e5('0x27')];}_0x25c6c1[_0x74e5('0x19')](_0x5965cf)[_0x74e5('0x28')](_0xe71c4f);};}exports[_0x74e5('0x29')]=function(_0x3d32ec,_0x16621e){var _0x6cd953={},_0x545eb1={},_0x2ee497={'count':0x0,'rows':[]};var _0x23562e=_[_0x74e5('0x2a')](db[_0x74e5('0x2b')][_0x74e5('0x2c')],function(_0x4ce487){return{'name':_0x4ce487[_0x74e5('0x2d')],'type':_0x4ce487[_0x74e5('0x2e')][_0x74e5('0x2f')]};});_0x545eb1[_0x74e5('0x30')]=_[_0x74e5('0x2a')](_0x23562e,_0x74e5('0x27'));_0x545eb1[_0x74e5('0x31')]=_[_0x74e5('0x32')](_0x3d32ec['query']);_0x545eb1['filters']=_[_0x74e5('0x33')](_0x545eb1[_0x74e5('0x30')],_0x545eb1['query']);_0x6cd953['attributes']=_[_0x74e5('0x33')](_0x545eb1[_0x74e5('0x30')],qs['fields'](_0x3d32ec[_0x74e5('0x31')][_0x74e5('0x34')]));_0x6cd953[_0x74e5('0x35')]=_0x6cd953['attributes'][_0x74e5('0x36')]?_0x6cd953[_0x74e5('0x35')]:_0x545eb1[_0x74e5('0x30')];if(!_0x3d32ec[_0x74e5('0x31')][_0x74e5('0x37')](_0x74e5('0x38'))){_0x6cd953[_0x74e5('0x39')]=qs[_0x74e5('0x39')](_0x3d32ec[_0x74e5('0x31')]['limit']);_0x6cd953[_0x74e5('0x1d')]=qs[_0x74e5('0x1d')](_0x3d32ec[_0x74e5('0x31')]['offset']);}_0x6cd953[_0x74e5('0x3a')]=qs[_0x74e5('0x3b')](_0x3d32ec['query'][_0x74e5('0x3b')]);_0x6cd953[_0x74e5('0x3c')]=qs['filters'](_[_0x74e5('0x3d')](_0x3d32ec[_0x74e5('0x31')],_0x545eb1[_0x74e5('0x3e')]),_0x23562e);if(_0x3d32ec['query']['filter']){_0x6cd953['where']=_[_0x74e5('0x3f')](_0x6cd953[_0x74e5('0x3c')],{'$or':_['map'](_0x23562e,function(_0x5c3ed9){if(_0x5c3ed9[_0x74e5('0x2e')]!==_0x74e5('0x40')){var _0x540f2a={};_0x540f2a[_0x5c3ed9[_0x74e5('0x27')]]={'$like':'%'+_0x3d32ec[_0x74e5('0x31')][_0x74e5('0x41')]+'%'};return _0x540f2a;}})});}_0x6cd953=_[_0x74e5('0x3f')]({},_0x6cd953,_0x3d32ec[_0x74e5('0x42')]);var _0x2fddb8={'where':_0x6cd953[_0x74e5('0x3c')]};return db[_0x74e5('0x2b')][_0x74e5('0x1e')](_0x2fddb8)[_0x74e5('0x22')](function(_0x13281e){_0x2ee497[_0x74e5('0x1e')]=_0x13281e;if(_0x3d32ec[_0x74e5('0x31')][_0x74e5('0x43')]){_0x6cd953[_0x74e5('0x44')]=[{'all':!![]}];}return db[_0x74e5('0x2b')][_0x74e5('0x45')](_0x6cd953);})[_0x74e5('0x22')](function(_0x46d7c2){_0x2ee497[_0x74e5('0x46')]=_0x46d7c2;return _0x2ee497;})[_0x74e5('0x22')](respondWithFilteredResult(_0x16621e,_0x6cd953))[_0x74e5('0x47')](handleError(_0x16621e,null));};exports[_0x74e5('0x48')]=function(_0x5a27c1,_0x3b8ba4){var _0x3e78f6={'raw':!![],'where':{'id':_0x5a27c1['params']['id']}},_0x5a7987={};_0x5a7987[_0x74e5('0x30')]=_[_0x74e5('0x32')](db[_0x74e5('0x2b')][_0x74e5('0x2c')]);_0x5a7987[_0x74e5('0x31')]=_[_0x74e5('0x32')](_0x5a27c1[_0x74e5('0x31')]);_0x5a7987[_0x74e5('0x3e')]=_[_0x74e5('0x33')](_0x5a7987['model'],_0x5a7987[_0x74e5('0x31')]);_0x3e78f6[_0x74e5('0x35')]=_[_0x74e5('0x33')](_0x5a7987[_0x74e5('0x30')],qs[_0x74e5('0x34')](_0x5a27c1[_0x74e5('0x31')][_0x74e5('0x34')]));_0x3e78f6[_0x74e5('0x35')]=_0x3e78f6[_0x74e5('0x35')]['length']?_0x3e78f6[_0x74e5('0x35')]:_0x5a7987[_0x74e5('0x30')];if(_0x5a27c1['query'][_0x74e5('0x43')]){_0x3e78f6[_0x74e5('0x44')]=[{'all':!![]}];}_0x3e78f6=_['merge']({},_0x3e78f6,_0x5a27c1['options']);return db[_0x74e5('0x2b')][_0x74e5('0x49')](_0x3e78f6)[_0x74e5('0x22')](handleEntityNotFound(_0x3b8ba4,null))[_0x74e5('0x22')](respondWithResult(_0x3b8ba4,null))[_0x74e5('0x47')](handleError(_0x3b8ba4,null));};exports['create']=function(_0x20652e,_0x19bd20){return db['SmsTransferReport'][_0x74e5('0x4a')](_0x20652e[_0x74e5('0x4b')],{})[_0x74e5('0x22')](respondWithResult(_0x19bd20,0xc9))[_0x74e5('0x47')](handleError(_0x19bd20,null));};exports[_0x74e5('0x4c')]=function(_0x13cdda,_0x42f2f0){if(_0x13cdda['body']['id']){delete _0x13cdda[_0x74e5('0x4b')]['id'];}return db[_0x74e5('0x2b')][_0x74e5('0x49')]({'where':{'id':_0x13cdda['params']['id']}})[_0x74e5('0x22')](handleEntityNotFound(_0x42f2f0,null))['then'](saveUpdates(_0x13cdda[_0x74e5('0x4b')],null))[_0x74e5('0x22')](respondWithResult(_0x42f2f0,null))[_0x74e5('0x47')](handleError(_0x42f2f0,null));};exports[_0x74e5('0x23')]=function(_0x13b2c2,_0x133de9){return db[_0x74e5('0x2b')][_0x74e5('0x49')]({'where':{'id':_0x13b2c2['params']['id']}})[_0x74e5('0x22')](handleEntityNotFound(_0x133de9,null))[_0x74e5('0x22')](removeEntity(_0x133de9,null))[_0x74e5('0x47')](handleError(_0x133de9,null));};exports[_0x74e5('0x4d')]=function(_0x555347,_0x2faf3e){return db[_0x74e5('0x2b')][_0x74e5('0x4d')]()[_0x74e5('0x22')](respondWithResult(_0x2faf3e,null))[_0x74e5('0x47')](handleError(_0x2faf3e,null));};