Built motion from commit eddce310.|2.6.12
[motion2.git] / server / api / openchannelTransferReport / openchannelTransferReport.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 _0x2a71=['to-csv','ejs','fs-extra','lodash','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','offset','limit','undefined','count','set','save','update','then','destroy','error','stack','name','send','map','rawAttributes','type','key','model','query','attributes','fields','length','hasOwnProperty','nolimit','order','filters','pick','filter','where','merge','VIRTUAL','options','OpenchannelTransferReport','include','findAll','catch','show','params','keys','includeAll','find','create','body','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox'];(function(_0x4ef2b1,_0x1f4854){var _0x34a4c4=function(_0x3901bd){while(--_0x3901bd){_0x4ef2b1['push'](_0x4ef2b1['shift']());}};_0x34a4c4(++_0x1f4854);}(_0x2a71,0xdc));var _0x12a7=function(_0x295049,_0x59246e){_0x295049=_0x295049-0x0;var _0x4c1452=_0x2a71[_0x295049];return _0x4c1452;};'use strict';var emlformat=require(_0x12a7('0x0'));var rimraf=require(_0x12a7('0x1'));var zipdir=require(_0x12a7('0x2'));var jsonpatch=require(_0x12a7('0x3'));var rp=require(_0x12a7('0x4'));var moment=require(_0x12a7('0x5'));var BPromise=require(_0x12a7('0x6'));var Mustache=require(_0x12a7('0x7'));var util=require(_0x12a7('0x8'));var path=require(_0x12a7('0x9'));var sox=require(_0x12a7('0xa'));var csv=require(_0x12a7('0xb'));var ejs=require(_0x12a7('0xc'));var fs=require('fs');var fs_extra=require(_0x12a7('0xd'));var _=require(_0x12a7('0xe'));var squel=require(_0x12a7('0xf'));var crypto=require('crypto');var jsforce=require(_0x12a7('0x10'));var deskjs=require(_0x12a7('0x11'));var toCsv=require('to-csv');var querystring=require(_0x12a7('0x12'));var Papa=require(_0x12a7('0x13'));var Redis=require(_0x12a7('0x14'));var authService=require(_0x12a7('0x15'));var qs=require(_0x12a7('0x16'));var as=require(_0x12a7('0x17'));var hardwareService=require(_0x12a7('0x18'));var logger=require(_0x12a7('0x19'))(_0x12a7('0x1a'));var utils=require('../../config/utils');var config=require(_0x12a7('0x1b'));var licenseUtil=require(_0x12a7('0x1c'));var db=require(_0x12a7('0x1d'))['db'];function respondWithStatusCode(_0x38790e,_0x5710c7){_0x5710c7=_0x5710c7||0xcc;return function(_0x1fe392){if(_0x1fe392){return _0x38790e[_0x12a7('0x1e')](_0x5710c7);}return _0x38790e[_0x12a7('0x1f')](_0x5710c7)[_0x12a7('0x20')]();};}function respondWithResult(_0x183e01,_0x3349de){_0x3349de=_0x3349de||0xc8;return function(_0x111e55){if(_0x111e55){return _0x183e01[_0x12a7('0x1f')](_0x3349de)['json'](_0x111e55);}};}function respondWithFilteredResult(_0x41cc2c,_0xbb58a5){return function(_0x16bbb9){if(_0x16bbb9){var _0x1ccb3f=typeof _0xbb58a5[_0x12a7('0x21')]==='undefined'&&typeof _0xbb58a5[_0x12a7('0x22')]===_0x12a7('0x23');var _0x50d39c=_0x16bbb9[_0x12a7('0x24')];var _0x27a139=_0x1ccb3f?0x0:_0xbb58a5['offset'];var _0x1b0aab=_0x1ccb3f?_0x16bbb9[_0x12a7('0x24')]:_0xbb58a5[_0x12a7('0x21')]+_0xbb58a5[_0x12a7('0x22')];var _0x5d04a9;if(_0x1b0aab>=_0x50d39c){_0x1b0aab=_0x50d39c;_0x5d04a9=0xc8;}else{_0x5d04a9=0xce;}_0x41cc2c['status'](_0x5d04a9);return _0x41cc2c[_0x12a7('0x25')]('Content-Range',_0x27a139+'-'+_0x1b0aab+'/'+_0x50d39c)['json'](_0x16bbb9);}return null;};}function patchUpdates(_0x4b137a){return function(_0xbfaf33){try{jsonpatch['apply'](_0xbfaf33,_0x4b137a,!![]);}catch(_0x4e62c3){return BPromise['reject'](_0x4e62c3);}return _0xbfaf33[_0x12a7('0x26')]();};}function saveUpdates(_0x572da4,_0xfce2f){return function(_0x2f6085){if(_0x2f6085){return _0x2f6085[_0x12a7('0x27')](_0x572da4)[_0x12a7('0x28')](function(_0x88f4b0){return _0x88f4b0;});}return null;};}function removeEntity(_0x4124ab,_0x38e614){return function(_0x414e43){if(_0x414e43){return _0x414e43[_0x12a7('0x29')]()[_0x12a7('0x28')](function(){_0x4124ab[_0x12a7('0x1f')](0xcc)[_0x12a7('0x20')]();});}};}function handleEntityNotFound(_0x215627,_0x37e334){return function(_0x2b7aad){if(!_0x2b7aad){_0x215627[_0x12a7('0x1e')](0x194);}return _0x2b7aad;};}function handleError(_0x4540ff,_0x267d88){_0x267d88=_0x267d88||0x1f4;return function(_0x4e304e){logger[_0x12a7('0x2a')](_0x4e304e[_0x12a7('0x2b')]);if(_0x4e304e[_0x12a7('0x2c')]){delete _0x4e304e[_0x12a7('0x2c')];}_0x4540ff[_0x12a7('0x1f')](_0x267d88)[_0x12a7('0x2d')](_0x4e304e);};}exports['index']=function(_0x1d09fd,_0xa96ac0){var _0x19bedc={},_0x1ba4ad={},_0x38773f={'count':0x0,'rows':[]};var _0x3ef5c=_[_0x12a7('0x2e')](db['OpenchannelTransferReport'][_0x12a7('0x2f')],function(_0x471479){return{'name':_0x471479['fieldName'],'type':_0x471479[_0x12a7('0x30')][_0x12a7('0x31')]};});_0x1ba4ad[_0x12a7('0x32')]=_[_0x12a7('0x2e')](_0x3ef5c,_0x12a7('0x2c'));_0x1ba4ad[_0x12a7('0x33')]=_['keys'](_0x1d09fd[_0x12a7('0x33')]);_0x1ba4ad['filters']=_['intersection'](_0x1ba4ad[_0x12a7('0x32')],_0x1ba4ad['query']);_0x19bedc[_0x12a7('0x34')]=_['intersection'](_0x1ba4ad[_0x12a7('0x32')],qs[_0x12a7('0x35')](_0x1d09fd[_0x12a7('0x33')][_0x12a7('0x35')]));_0x19bedc[_0x12a7('0x34')]=_0x19bedc['attributes'][_0x12a7('0x36')]?_0x19bedc[_0x12a7('0x34')]:_0x1ba4ad[_0x12a7('0x32')];if(!_0x1d09fd[_0x12a7('0x33')][_0x12a7('0x37')](_0x12a7('0x38'))){_0x19bedc[_0x12a7('0x22')]=qs['limit'](_0x1d09fd[_0x12a7('0x33')]['limit']);_0x19bedc['offset']=qs[_0x12a7('0x21')](_0x1d09fd[_0x12a7('0x33')][_0x12a7('0x21')]);}_0x19bedc[_0x12a7('0x39')]=qs['sort'](_0x1d09fd[_0x12a7('0x33')]['sort']);_0x19bedc['where']=qs[_0x12a7('0x3a')](_[_0x12a7('0x3b')](_0x1d09fd[_0x12a7('0x33')],_0x1ba4ad[_0x12a7('0x3a')]),_0x3ef5c);if(_0x1d09fd[_0x12a7('0x33')][_0x12a7('0x3c')]){_0x19bedc[_0x12a7('0x3d')]=_[_0x12a7('0x3e')](_0x19bedc[_0x12a7('0x3d')],{'$or':_[_0x12a7('0x2e')](_0x3ef5c,function(_0x327140){if(_0x327140['type']!==_0x12a7('0x3f')){var _0x30fd13={};_0x30fd13[_0x327140[_0x12a7('0x2c')]]={'$like':'%'+_0x1d09fd[_0x12a7('0x33')][_0x12a7('0x3c')]+'%'};return _0x30fd13;}})});}_0x19bedc=_['merge']({},_0x19bedc,_0x1d09fd[_0x12a7('0x40')]);var _0x430061={'where':_0x19bedc['where']};return db[_0x12a7('0x41')]['count'](_0x430061)[_0x12a7('0x28')](function(_0x67cc55){_0x38773f['count']=_0x67cc55;if(_0x1d09fd[_0x12a7('0x33')]['includeAll']){_0x19bedc[_0x12a7('0x42')]=[{'all':!![]}];}return db[_0x12a7('0x41')][_0x12a7('0x43')](_0x19bedc);})['then'](function(_0x549e09){_0x38773f['rows']=_0x549e09;return _0x38773f;})['then'](respondWithFilteredResult(_0xa96ac0,_0x19bedc))[_0x12a7('0x44')](handleError(_0xa96ac0,null));};exports[_0x12a7('0x45')]=function(_0x155906,_0xa04c42){var _0x19a6a9={'raw':!![],'where':{'id':_0x155906[_0x12a7('0x46')]['id']}},_0x5c6c35={};_0x5c6c35['model']=_[_0x12a7('0x47')](db[_0x12a7('0x41')][_0x12a7('0x2f')]);_0x5c6c35['query']=_[_0x12a7('0x47')](_0x155906['query']);_0x5c6c35[_0x12a7('0x3a')]=_['intersection'](_0x5c6c35[_0x12a7('0x32')],_0x5c6c35[_0x12a7('0x33')]);_0x19a6a9[_0x12a7('0x34')]=_['intersection'](_0x5c6c35[_0x12a7('0x32')],qs[_0x12a7('0x35')](_0x155906[_0x12a7('0x33')][_0x12a7('0x35')]));_0x19a6a9['attributes']=_0x19a6a9['attributes']['length']?_0x19a6a9['attributes']:_0x5c6c35[_0x12a7('0x32')];if(_0x155906[_0x12a7('0x33')][_0x12a7('0x48')]){_0x19a6a9['include']=[{'all':!![]}];}_0x19a6a9=_[_0x12a7('0x3e')]({},_0x19a6a9,_0x155906[_0x12a7('0x40')]);return db[_0x12a7('0x41')][_0x12a7('0x49')](_0x19a6a9)[_0x12a7('0x28')](handleEntityNotFound(_0xa04c42,null))[_0x12a7('0x28')](respondWithResult(_0xa04c42,null))['catch'](handleError(_0xa04c42,null));};exports[_0x12a7('0x4a')]=function(_0x121186,_0x1cbcbe){return db['OpenchannelTransferReport']['create'](_0x121186[_0x12a7('0x4b')],{})[_0x12a7('0x28')](respondWithResult(_0x1cbcbe,0xc9))[_0x12a7('0x44')](handleError(_0x1cbcbe,null));};exports[_0x12a7('0x27')]=function(_0x3fef79,_0x1818e6){if(_0x3fef79[_0x12a7('0x4b')]['id']){delete _0x3fef79[_0x12a7('0x4b')]['id'];}return db[_0x12a7('0x41')][_0x12a7('0x49')]({'where':{'id':_0x3fef79[_0x12a7('0x46')]['id']}})[_0x12a7('0x28')](handleEntityNotFound(_0x1818e6,null))[_0x12a7('0x28')](saveUpdates(_0x3fef79['body'],null))[_0x12a7('0x28')](respondWithResult(_0x1818e6,null))[_0x12a7('0x44')](handleError(_0x1818e6,null));};exports[_0x12a7('0x29')]=function(_0x20ffdf,_0x34a07b){return db['OpenchannelTransferReport'][_0x12a7('0x49')]({'where':{'id':_0x20ffdf[_0x12a7('0x46')]['id']}})['then'](handleEntityNotFound(_0x34a07b,null))['then'](removeEntity(_0x34a07b,null))[_0x12a7('0x44')](handleError(_0x34a07b,null));};exports[_0x12a7('0x4c')]=function(_0x194e49,_0x2f0ed7){return db[_0x12a7('0x41')][_0x12a7('0x4c')]()[_0x12a7('0x28')](respondWithResult(_0x2f0ed7,null))[_0x12a7('0x44')](handleError(_0x2f0ed7,null));};