01bdec0d754321501cff0dba21722c75447528c8
[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 _0x079d=['where','pick','filter','merge','VIRTUAL','includeAll','catch','show','keys','rawAttributes','include','find','create','body','params','describe','eml-format','zip-dir','request-promise','moment','bluebird','mustache','path','sox','to-csv','fs-extra','lodash','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','end','status','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','then','destroy','error','stack','name','send','index','map','SmsTransferReport','fieldName','type','model','query','filters','attributes','intersection','fields','hasOwnProperty','nolimit','order','sort'];(function(_0x47aa64,_0xfb8a07){var _0x549c7a=function(_0x266165){while(--_0x266165){_0x47aa64['push'](_0x47aa64['shift']());}};_0x549c7a(++_0xfb8a07);}(_0x079d,0xa6));var _0xd079=function(_0x4a7dec,_0x5f4581){_0x4a7dec=_0x4a7dec-0x0;var _0x188634=_0x079d[_0x4a7dec];return _0x188634;};'use strict';var emlformat=require(_0xd079('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xd079('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0xd079('0x2'));var moment=require(_0xd079('0x3'));var BPromise=require(_0xd079('0x4'));var Mustache=require(_0xd079('0x5'));var util=require('util');var path=require(_0xd079('0x6'));var sox=require(_0xd079('0x7'));var csv=require(_0xd079('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xd079('0x9'));var _=require(_0xd079('0xa'));var squel=require('squel');var crypto=require(_0xd079('0xb'));var jsforce=require(_0xd079('0xc'));var deskjs=require(_0xd079('0xd'));var toCsv=require(_0xd079('0x8'));var querystring=require(_0xd079('0xe'));var Papa=require(_0xd079('0xf'));var Redis=require(_0xd079('0x10'));var authService=require(_0xd079('0x11'));var qs=require(_0xd079('0x12'));var as=require(_0xd079('0x13'));var hardwareService=require(_0xd079('0x14'));var logger=require('../../config/logger')('api');var utils=require('../../config/utils');var config=require(_0xd079('0x15'));var licenseUtil=require(_0xd079('0x16'));var db=require(_0xd079('0x17'))['db'];function respondWithStatusCode(_0x495036,_0x2c5e5f){_0x2c5e5f=_0x2c5e5f||0xcc;return function(_0x30890b){if(_0x30890b){return _0x495036[_0xd079('0x18')](_0x2c5e5f);}return _0x495036['status'](_0x2c5e5f)[_0xd079('0x19')]();};}function respondWithResult(_0x28f95a,_0x547c03){_0x547c03=_0x547c03||0xc8;return function(_0x5b6ea1){if(_0x5b6ea1){return _0x28f95a[_0xd079('0x1a')](_0x547c03)[_0xd079('0x1b')](_0x5b6ea1);}};}function respondWithFilteredResult(_0x57d92e,_0x1f997b){return function(_0x331465){if(_0x331465){var _0x1e5627=typeof _0x1f997b[_0xd079('0x1c')]===_0xd079('0x1d')&&typeof _0x1f997b[_0xd079('0x1e')]===_0xd079('0x1d');var _0x1ce7b5=_0x331465[_0xd079('0x1f')];var _0x44974a=_0x1e5627?0x0:_0x1f997b['offset'];var _0x35d97f=_0x1e5627?_0x331465[_0xd079('0x1f')]:_0x1f997b[_0xd079('0x1c')]+_0x1f997b[_0xd079('0x1e')];var _0x166bcc;if(_0x35d97f>=_0x1ce7b5){_0x35d97f=_0x1ce7b5;_0x166bcc=0xc8;}else{_0x166bcc=0xce;}_0x57d92e[_0xd079('0x1a')](_0x166bcc);return _0x57d92e[_0xd079('0x20')](_0xd079('0x21'),_0x44974a+'-'+_0x35d97f+'/'+_0x1ce7b5)['json'](_0x331465);}return null;};}function patchUpdates(_0x2330b6){return function(_0x39bec5){try{jsonpatch[_0xd079('0x22')](_0x39bec5,_0x2330b6,!![]);}catch(_0x35ee15){return BPromise[_0xd079('0x23')](_0x35ee15);}return _0x39bec5[_0xd079('0x24')]();};}function saveUpdates(_0x43399b,_0x54e96e){return function(_0x56fc59){if(_0x56fc59){return _0x56fc59[_0xd079('0x25')](_0x43399b)[_0xd079('0x26')](function(_0x287c95){return _0x287c95;});}return null;};}function removeEntity(_0x36f984,_0x277fe4){return function(_0x404f60){if(_0x404f60){return _0x404f60[_0xd079('0x27')]()[_0xd079('0x26')](function(){_0x36f984[_0xd079('0x1a')](0xcc)[_0xd079('0x19')]();});}};}function handleEntityNotFound(_0x56d08c,_0x2261ba){return function(_0x580a42){if(!_0x580a42){_0x56d08c[_0xd079('0x18')](0x194);}return _0x580a42;};}function handleError(_0x1cd72c,_0x5945e0){_0x5945e0=_0x5945e0||0x1f4;return function(_0x56ec57){logger[_0xd079('0x28')](_0x56ec57[_0xd079('0x29')]);if(_0x56ec57[_0xd079('0x2a')]){delete _0x56ec57['name'];}_0x1cd72c['status'](_0x5945e0)[_0xd079('0x2b')](_0x56ec57);};}exports[_0xd079('0x2c')]=function(_0x4ebbee,_0x551547){var _0x14ce47={},_0x3c6830={},_0x1dfc6e={'count':0x0,'rows':[]};var _0x4f2a42=_[_0xd079('0x2d')](db[_0xd079('0x2e')]['rawAttributes'],function(_0x358ca5){return{'name':_0x358ca5[_0xd079('0x2f')],'type':_0x358ca5[_0xd079('0x30')]['key']};});_0x3c6830[_0xd079('0x31')]=_[_0xd079('0x2d')](_0x4f2a42,_0xd079('0x2a'));_0x3c6830['query']=_['keys'](_0x4ebbee[_0xd079('0x32')]);_0x3c6830[_0xd079('0x33')]=_['intersection'](_0x3c6830['model'],_0x3c6830[_0xd079('0x32')]);_0x14ce47[_0xd079('0x34')]=_[_0xd079('0x35')](_0x3c6830[_0xd079('0x31')],qs[_0xd079('0x36')](_0x4ebbee[_0xd079('0x32')]['fields']));_0x14ce47[_0xd079('0x34')]=_0x14ce47[_0xd079('0x34')]['length']?_0x14ce47[_0xd079('0x34')]:_0x3c6830['model'];if(!_0x4ebbee['query'][_0xd079('0x37')](_0xd079('0x38'))){_0x14ce47['limit']=qs['limit'](_0x4ebbee[_0xd079('0x32')][_0xd079('0x1e')]);_0x14ce47[_0xd079('0x1c')]=qs['offset'](_0x4ebbee[_0xd079('0x32')][_0xd079('0x1c')]);}_0x14ce47[_0xd079('0x39')]=qs['sort'](_0x4ebbee['query'][_0xd079('0x3a')]);_0x14ce47[_0xd079('0x3b')]=qs[_0xd079('0x33')](_[_0xd079('0x3c')](_0x4ebbee[_0xd079('0x32')],_0x3c6830[_0xd079('0x33')]),_0x4f2a42);if(_0x4ebbee[_0xd079('0x32')][_0xd079('0x3d')]){_0x14ce47[_0xd079('0x3b')]=_[_0xd079('0x3e')](_0x14ce47[_0xd079('0x3b')],{'$or':_[_0xd079('0x2d')](_0x4f2a42,function(_0x2df2a3){if(_0x2df2a3[_0xd079('0x30')]!==_0xd079('0x3f')){var _0x3fd719={};_0x3fd719[_0x2df2a3[_0xd079('0x2a')]]={'$like':'%'+_0x4ebbee[_0xd079('0x32')][_0xd079('0x3d')]+'%'};return _0x3fd719;}})});}_0x14ce47=_['merge']({},_0x14ce47,_0x4ebbee['options']);var _0x4cc443={'where':_0x14ce47[_0xd079('0x3b')]};return db['SmsTransferReport']['count'](_0x4cc443)[_0xd079('0x26')](function(_0x20dd5a){_0x1dfc6e[_0xd079('0x1f')]=_0x20dd5a;if(_0x4ebbee[_0xd079('0x32')][_0xd079('0x40')]){_0x14ce47['include']=[{'all':!![]}];}return db[_0xd079('0x2e')]['findAll'](_0x14ce47);})[_0xd079('0x26')](function(_0x58eaca){_0x1dfc6e['rows']=_0x58eaca;return _0x1dfc6e;})[_0xd079('0x26')](respondWithFilteredResult(_0x551547,_0x14ce47))[_0xd079('0x41')](handleError(_0x551547,null));};exports[_0xd079('0x42')]=function(_0x151ccf,_0x5bf5b0){var _0x4a3565={'raw':!![],'where':{'id':_0x151ccf['params']['id']}},_0x1db308={};_0x1db308[_0xd079('0x31')]=_[_0xd079('0x43')](db[_0xd079('0x2e')][_0xd079('0x44')]);_0x1db308[_0xd079('0x32')]=_[_0xd079('0x43')](_0x151ccf[_0xd079('0x32')]);_0x1db308[_0xd079('0x33')]=_[_0xd079('0x35')](_0x1db308['model'],_0x1db308['query']);_0x4a3565[_0xd079('0x34')]=_[_0xd079('0x35')](_0x1db308[_0xd079('0x31')],qs[_0xd079('0x36')](_0x151ccf[_0xd079('0x32')]['fields']));_0x4a3565[_0xd079('0x34')]=_0x4a3565[_0xd079('0x34')]['length']?_0x4a3565[_0xd079('0x34')]:_0x1db308[_0xd079('0x31')];if(_0x151ccf[_0xd079('0x32')][_0xd079('0x40')]){_0x4a3565[_0xd079('0x45')]=[{'all':!![]}];}_0x4a3565=_['merge']({},_0x4a3565,_0x151ccf['options']);return db['SmsTransferReport'][_0xd079('0x46')](_0x4a3565)[_0xd079('0x26')](handleEntityNotFound(_0x5bf5b0,null))[_0xd079('0x26')](respondWithResult(_0x5bf5b0,null))[_0xd079('0x41')](handleError(_0x5bf5b0,null));};exports[_0xd079('0x47')]=function(_0x2833e4,_0x47a48d){return db['SmsTransferReport']['create'](_0x2833e4[_0xd079('0x48')],{})['then'](respondWithResult(_0x47a48d,0xc9))[_0xd079('0x41')](handleError(_0x47a48d,null));};exports[_0xd079('0x25')]=function(_0x4b40c5,_0x485023){if(_0x4b40c5[_0xd079('0x48')]['id']){delete _0x4b40c5['body']['id'];}return db['SmsTransferReport']['find']({'where':{'id':_0x4b40c5[_0xd079('0x49')]['id']}})[_0xd079('0x26')](handleEntityNotFound(_0x485023,null))[_0xd079('0x26')](saveUpdates(_0x4b40c5[_0xd079('0x48')],null))[_0xd079('0x26')](respondWithResult(_0x485023,null))[_0xd079('0x41')](handleError(_0x485023,null));};exports[_0xd079('0x27')]=function(_0x10b1e0,_0x337892){return db[_0xd079('0x2e')]['find']({'where':{'id':_0x10b1e0[_0xd079('0x49')]['id']}})['then'](handleEntityNotFound(_0x337892,null))[_0xd079('0x26')](removeEntity(_0x337892,null))['catch'](handleError(_0x337892,null));};exports[_0xd079('0x4a')]=function(_0x222331,_0x2d322a){return db[_0xd079('0x2e')][_0xd079('0x4a')]()[_0xd079('0x26')](respondWithResult(_0x2d322a,null))[_0xd079('0x41')](handleError(_0x2d322a,null));};