60ec53753b38b1d6bb6584193523a6e231f53421
[motion2.git] / server / api / chatOfflineMessage / chatOfflineMessage.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 _0x47c5=['then','sendStatus','error','stack','name','index','map','ChatOfflineMessage','rawAttributes','type','key','model','query','keys','filters','intersection','attributes','fields','length','nolimit','offset','order','sort','pick','filter','where','merge','VIRTUAL','options','count','includeAll','findAll','catch','show','params','include','create','body','find','destroy','describe','rimraf','zip-dir','request-promise','bluebird','mustache','util','path','sox','to-csv','crypto','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../mysqldb','status','end','json','limit','set','Content-Range','reject','update'];(function(_0x5b9a28,_0x5e2ec5){var _0x52eda2=function(_0x26b3a5){while(--_0x26b3a5){_0x5b9a28['push'](_0x5b9a28['shift']());}};_0x52eda2(++_0x5e2ec5);}(_0x47c5,0x1cd));var _0x547c=function(_0x973f6e,_0x2df734){_0x973f6e=_0x973f6e-0x0;var _0x3959a6=_0x47c5[_0x973f6e];return _0x3959a6;};'use strict';var pdf=require('html-pdf');var emlformat=require('eml-format');var rimraf=require(_0x547c('0x0'));var zipdir=require(_0x547c('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0x547c('0x2'));var moment=require('moment');var BPromise=require(_0x547c('0x3'));var Mustache=require(_0x547c('0x4'));var util=require(_0x547c('0x5'));var path=require(_0x547c('0x6'));var sox=require(_0x547c('0x7'));var csv=require(_0x547c('0x8'));var ejs=require('ejs');var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require(_0x547c('0x9'));var jsforce=require('jsforce');var deskjs=require(_0x547c('0xa'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x547c('0xb'));var Redis=require(_0x547c('0xc'));var authService=require(_0x547c('0xd'));var qs=require(_0x547c('0xe'));var as=require(_0x547c('0xf'));var hardwareService=require(_0x547c('0x10'));var logger=require('../../config/logger')(_0x547c('0x11'));var utils=require(_0x547c('0x12'));var config=require(_0x547c('0x13'));var licenseUtil=require('../../config/license/util');var db=require(_0x547c('0x14'))['db'];function respondWithStatusCode(_0x193ef5,_0xb1fbd6){_0xb1fbd6=_0xb1fbd6||0xcc;return function(_0x304878){if(_0x304878){return _0x193ef5['sendStatus'](_0xb1fbd6);}return _0x193ef5[_0x547c('0x15')](_0xb1fbd6)[_0x547c('0x16')]();};}function respondWithResult(_0xb675b2,_0x433564){_0x433564=_0x433564||0xc8;return function(_0x330a3b){if(_0x330a3b){return _0xb675b2[_0x547c('0x15')](_0x433564)[_0x547c('0x17')](_0x330a3b);}};}function respondWithFilteredResult(_0x202f48,_0x362a37){return function(_0x2048c1){if(_0x2048c1){var _0x2fd760=_0x2048c1['count'],_0x2d7b4f=_0x362a37['offset'],_0xd354c2=_0x362a37['offset']+_0x362a37[_0x547c('0x18')],_0x50c777;if(_0xd354c2>=_0x2fd760){_0xd354c2=_0x2fd760;_0x50c777=0xc8;}else{_0x50c777=0xce;}_0x202f48['status'](_0x50c777);return _0x202f48[_0x547c('0x19')](_0x547c('0x1a'),_0x2d7b4f+'-'+_0xd354c2+'/'+_0x2fd760)[_0x547c('0x17')](_0x2048c1);}return null;};}function patchUpdates(_0x11989a){return function(_0x1f802a){try{jsonpatch['apply'](_0x1f802a,_0x11989a,!![]);}catch(_0x553d98){return BPromise[_0x547c('0x1b')](_0x553d98);}return _0x1f802a['save']();};}function saveUpdates(_0x3dd7e2,_0x3592f4){return function(_0x1c29fb){if(_0x1c29fb){return _0x1c29fb[_0x547c('0x1c')](_0x3dd7e2)[_0x547c('0x1d')](function(_0x2ad9a6){return _0x2ad9a6;});}return null;};}function removeEntity(_0x1e3ba6,_0xcac732){return function(_0x34992f){if(_0x34992f){return _0x34992f['destroy']()[_0x547c('0x1d')](function(){_0x1e3ba6['status'](0xcc)[_0x547c('0x16')]();});}};}function handleEntityNotFound(_0x249271,_0x30044d){return function(_0x3c19f8){if(!_0x3c19f8){_0x249271[_0x547c('0x1e')](0x194);}return _0x3c19f8;};}function handleError(_0x4f3dec,_0x3d0619){_0x3d0619=_0x3d0619||0x1f4;return function(_0x3cf714){logger[_0x547c('0x1f')](_0x3cf714[_0x547c('0x20')]);if(_0x3cf714[_0x547c('0x21')]){delete _0x3cf714['name'];}_0x4f3dec['status'](_0x3d0619)['send'](_0x3cf714);};}exports[_0x547c('0x22')]=function(_0x10b26c,_0x10c8a3){var _0x1fdf66={},_0x14450f={},_0x19ae42={'count':0x0,'rows':[]};var _0x3f736f=_[_0x547c('0x23')](db[_0x547c('0x24')][_0x547c('0x25')],function(_0x142de0){return{'name':_0x142de0['fieldName'],'type':_0x142de0[_0x547c('0x26')][_0x547c('0x27')]};});_0x14450f[_0x547c('0x28')]=_[_0x547c('0x23')](_0x3f736f,_0x547c('0x21'));_0x14450f[_0x547c('0x29')]=_[_0x547c('0x2a')](_0x10b26c['query']);_0x14450f[_0x547c('0x2b')]=_[_0x547c('0x2c')](_0x14450f[_0x547c('0x28')],_0x14450f[_0x547c('0x29')]);_0x1fdf66[_0x547c('0x2d')]=_['intersection'](_0x14450f[_0x547c('0x28')],qs[_0x547c('0x2e')](_0x10b26c[_0x547c('0x29')][_0x547c('0x2e')]));_0x1fdf66[_0x547c('0x2d')]=_0x1fdf66['attributes'][_0x547c('0x2f')]?_0x1fdf66['attributes']:_0x14450f[_0x547c('0x28')];if(!_0x10b26c[_0x547c('0x29')]['hasOwnProperty'](_0x547c('0x30'))){_0x1fdf66[_0x547c('0x18')]=qs[_0x547c('0x18')](_0x10b26c[_0x547c('0x29')][_0x547c('0x18')]);_0x1fdf66[_0x547c('0x31')]=qs[_0x547c('0x31')](_0x10b26c['query'][_0x547c('0x31')]);}_0x1fdf66[_0x547c('0x32')]=qs['sort'](_0x10b26c[_0x547c('0x29')][_0x547c('0x33')]);_0x1fdf66['where']=qs[_0x547c('0x2b')](_[_0x547c('0x34')](_0x10b26c[_0x547c('0x29')],_0x14450f[_0x547c('0x2b')]),_0x3f736f);if(_0x10b26c[_0x547c('0x29')][_0x547c('0x35')]){_0x1fdf66[_0x547c('0x36')]=_[_0x547c('0x37')](_0x1fdf66[_0x547c('0x36')],{'$or':_['map'](_0x3f736f,function(_0x5249bb){if(_0x5249bb[_0x547c('0x26')]!==_0x547c('0x38')){var _0x322e12={};_0x322e12[_0x5249bb['name']]={'$like':'%'+_0x10b26c[_0x547c('0x29')]['filter']+'%'};return _0x322e12;}})});}_0x1fdf66=_[_0x547c('0x37')]({},_0x1fdf66,_0x10b26c[_0x547c('0x39')]);var _0x4e1164={'where':_0x1fdf66[_0x547c('0x36')]};return db['ChatOfflineMessage'][_0x547c('0x3a')](_0x4e1164)['then'](function(_0x26017f){_0x19ae42['count']=_0x26017f;if(_0x10b26c[_0x547c('0x29')][_0x547c('0x3b')]){_0x1fdf66['include']=[{'all':!![]}];}return db[_0x547c('0x24')][_0x547c('0x3c')](_0x1fdf66);})[_0x547c('0x1d')](function(_0x48414a){_0x19ae42['rows']=_0x48414a;return _0x19ae42;})['then'](respondWithFilteredResult(_0x10c8a3,_0x1fdf66))[_0x547c('0x3d')](handleError(_0x10c8a3,null));};exports[_0x547c('0x3e')]=function(_0x39efc4,_0x5c9685){var _0xe59f0a={'raw':!![],'where':{'id':_0x39efc4[_0x547c('0x3f')]['id']}},_0x59a18d={};_0x59a18d['model']=_[_0x547c('0x2a')](db[_0x547c('0x24')][_0x547c('0x25')]);_0x59a18d[_0x547c('0x29')]=_['keys'](_0x39efc4[_0x547c('0x29')]);_0x59a18d[_0x547c('0x2b')]=_['intersection'](_0x59a18d[_0x547c('0x28')],_0x59a18d['query']);_0xe59f0a[_0x547c('0x2d')]=_['intersection'](_0x59a18d['model'],qs['fields'](_0x39efc4[_0x547c('0x29')][_0x547c('0x2e')]));_0xe59f0a[_0x547c('0x2d')]=_0xe59f0a[_0x547c('0x2d')][_0x547c('0x2f')]?_0xe59f0a[_0x547c('0x2d')]:_0x59a18d[_0x547c('0x28')];if(_0x39efc4[_0x547c('0x29')][_0x547c('0x3b')]){_0xe59f0a[_0x547c('0x40')]=[{'all':!![]}];}_0xe59f0a=_[_0x547c('0x37')]({},_0xe59f0a,_0x39efc4[_0x547c('0x39')]);return db[_0x547c('0x24')]['find'](_0xe59f0a)[_0x547c('0x1d')](handleEntityNotFound(_0x5c9685,null))[_0x547c('0x1d')](respondWithResult(_0x5c9685,null))[_0x547c('0x3d')](handleError(_0x5c9685,null));};exports['create']=function(_0x37ec9d,_0x167071){return db[_0x547c('0x24')][_0x547c('0x41')](_0x37ec9d[_0x547c('0x42')],{})[_0x547c('0x1d')](respondWithResult(_0x167071,0xc9))['catch'](handleError(_0x167071,null));};exports['update']=function(_0x27b61a,_0x4d0171){if(_0x27b61a[_0x547c('0x42')]['id']){delete _0x27b61a[_0x547c('0x42')]['id'];}return db[_0x547c('0x24')][_0x547c('0x43')]({'where':{'id':_0x27b61a[_0x547c('0x3f')]['id']}})[_0x547c('0x1d')](handleEntityNotFound(_0x4d0171,null))[_0x547c('0x1d')](saveUpdates(_0x27b61a[_0x547c('0x42')],null))[_0x547c('0x1d')](respondWithResult(_0x4d0171,null))[_0x547c('0x3d')](handleError(_0x4d0171,null));};exports[_0x547c('0x44')]=function(_0x584ada,_0x7eeda7){return db['ChatOfflineMessage'][_0x547c('0x43')]({'where':{'id':_0x584ada[_0x547c('0x3f')]['id']}})['then'](handleEntityNotFound(_0x7eeda7,null))[_0x547c('0x1d')](removeEntity(_0x7eeda7,null))[_0x547c('0x3d')](handleError(_0x7eeda7,null));};exports[_0x547c('0x45')]=function(_0x23b1fb,_0x52db1c){return db[_0x547c('0x24')][_0x547c('0x45')]()[_0x547c('0x1d')](respondWithResult(_0x52db1c,null))['catch'](handleError(_0x52db1c,null));};