ce81baccfd7c3cf7aa4bfe28615420d89e8f5002
[motion2.git] / server / api / chatTransferReport / chatTransferReport.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 _0xadbe=['apply','reject','save','update','then','error','stack','name','send','index','map','ChatTransferReport','rawAttributes','type','key','model','query','keys','intersection','attributes','fields','length','order','sort','filters','merge','where','VIRTUAL','filter','options','includeAll','findAll','rows','show','params','find','create','body','catch','destroy','describe','html-pdf','rimraf','zip-dir','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','crypto','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','Content-Range'];(function(_0x15d668,_0x322ee5){var _0x595232=function(_0x3ef2e8){while(--_0x3ef2e8){_0x15d668['push'](_0x15d668['shift']());}};_0x595232(++_0x322ee5);}(_0xadbe,0x75));var _0xeadb=function(_0x57e532,_0x67bf3c){_0x57e532=_0x57e532-0x0;var _0x48bad3=_0xadbe[_0x57e532];return _0x48bad3;};'use strict';var pdf=require(_0xeadb('0x0'));var emlformat=require('eml-format');var rimraf=require(_0xeadb('0x1'));var zipdir=require(_0xeadb('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xeadb('0x3'));var moment=require(_0xeadb('0x4'));var BPromise=require(_0xeadb('0x5'));var Mustache=require(_0xeadb('0x6'));var util=require(_0xeadb('0x7'));var path=require(_0xeadb('0x8'));var sox=require(_0xeadb('0x9'));var csv=require(_0xeadb('0xa'));var ejs=require(_0xeadb('0xb'));var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require(_0xeadb('0xc'));var jsforce=require('jsforce');var deskjs=require(_0xeadb('0xd'));var toCsv=require('to-csv');var querystring=require(_0xeadb('0xe'));var Papa=require(_0xeadb('0xf'));var Redis=require(_0xeadb('0x10'));var authService=require(_0xeadb('0x11'));var qs=require(_0xeadb('0x12'));var as=require(_0xeadb('0x13'));var hardwareService=require(_0xeadb('0x14'));var logger=require(_0xeadb('0x15'))(_0xeadb('0x16'));var utils=require(_0xeadb('0x17'));var config=require(_0xeadb('0x18'));var db=require(_0xeadb('0x19'))['db'];function respondWithStatusCode(_0x566854,_0x4773af){_0x4773af=_0x4773af||0xcc;return function(_0x4c41cb){if(_0x4c41cb){return _0x566854[_0xeadb('0x1a')](_0x4773af);}return _0x566854[_0xeadb('0x1b')](_0x4773af)[_0xeadb('0x1c')]();};}function respondWithResult(_0x26914c,_0x39d0a0){_0x39d0a0=_0x39d0a0||0xc8;return function(_0xbf88b1){if(_0xbf88b1){return _0x26914c[_0xeadb('0x1b')](_0x39d0a0)[_0xeadb('0x1d')](_0xbf88b1);}};}function respondWithFilteredResult(_0x39bbe6,_0x390911){return function(_0x337573){if(_0x337573){var _0x453002=_0x337573[_0xeadb('0x1e')],_0x5551d5=_0x390911[_0xeadb('0x1f')],_0x5395f5=_0x390911[_0xeadb('0x1f')]+_0x390911[_0xeadb('0x20')],_0x4077f7;if(_0x5395f5>=_0x453002){_0x5395f5=_0x453002;_0x4077f7=0xc8;}else{_0x4077f7=0xce;}_0x39bbe6[_0xeadb('0x1b')](_0x4077f7);return _0x39bbe6[_0xeadb('0x21')](_0xeadb('0x22'),_0x5551d5+'-'+_0x5395f5+'/'+_0x453002)[_0xeadb('0x1d')](_0x337573);}return null;};}function patchUpdates(_0x9c076e){return function(_0x18cee3){try{jsonpatch[_0xeadb('0x23')](_0x18cee3,_0x9c076e,!![]);}catch(_0xbde056){return BPromise[_0xeadb('0x24')](_0xbde056);}return _0x18cee3[_0xeadb('0x25')]();};}function saveUpdates(_0x2a1650,_0x21ae8c){return function(_0xa4c071){if(_0xa4c071){return _0xa4c071[_0xeadb('0x26')](_0x2a1650)[_0xeadb('0x27')](function(_0x18da48){return _0x18da48;});}return null;};}function removeEntity(_0x314115,_0x287029){return function(_0x4b62e3){if(_0x4b62e3){return _0x4b62e3['destroy']()[_0xeadb('0x27')](function(){_0x314115['status'](0xcc)[_0xeadb('0x1c')]();});}};}function handleEntityNotFound(_0x18c462,_0x4d5de9){return function(_0x9a8310){if(!_0x9a8310){_0x18c462[_0xeadb('0x1a')](0x194);}return _0x9a8310;};}function handleError(_0x28b18b,_0x2f6137){_0x2f6137=_0x2f6137||0x1f4;return function(_0x2849a3){logger[_0xeadb('0x28')](_0x2849a3[_0xeadb('0x29')]);if(_0x2849a3[_0xeadb('0x2a')]){delete _0x2849a3['name'];}_0x28b18b[_0xeadb('0x1b')](_0x2f6137)[_0xeadb('0x2b')](_0x2849a3);};}exports[_0xeadb('0x2c')]=function(_0x4862f1,_0x4bb347){var _0x1d2dc7={},_0xb9f8c9={},_0xd917f5={'count':0x0,'rows':[]};var _0x2ee3a2=_[_0xeadb('0x2d')](db[_0xeadb('0x2e')][_0xeadb('0x2f')],function(_0x44cae1){return{'name':_0x44cae1['fieldName'],'type':_0x44cae1[_0xeadb('0x30')][_0xeadb('0x31')]};});_0xb9f8c9[_0xeadb('0x32')]=_[_0xeadb('0x2d')](_0x2ee3a2,_0xeadb('0x2a'));_0xb9f8c9[_0xeadb('0x33')]=_[_0xeadb('0x34')](_0x4862f1[_0xeadb('0x33')]);_0xb9f8c9['filters']=_[_0xeadb('0x35')](_0xb9f8c9[_0xeadb('0x32')],_0xb9f8c9[_0xeadb('0x33')]);_0x1d2dc7[_0xeadb('0x36')]=_['intersection'](_0xb9f8c9[_0xeadb('0x32')],qs[_0xeadb('0x37')](_0x4862f1['query'][_0xeadb('0x37')]));_0x1d2dc7[_0xeadb('0x36')]=_0x1d2dc7[_0xeadb('0x36')][_0xeadb('0x38')]?_0x1d2dc7[_0xeadb('0x36')]:_0xb9f8c9[_0xeadb('0x32')];if(!_0x4862f1[_0xeadb('0x33')]['hasOwnProperty']('nolimit')){_0x1d2dc7['limit']=qs[_0xeadb('0x20')](_0x4862f1['query']['limit']);_0x1d2dc7[_0xeadb('0x1f')]=qs[_0xeadb('0x1f')](_0x4862f1['query'][_0xeadb('0x1f')]);}_0x1d2dc7[_0xeadb('0x39')]=qs['sort'](_0x4862f1['query'][_0xeadb('0x3a')]);_0x1d2dc7['where']=qs[_0xeadb('0x3b')](_['pick'](_0x4862f1['query'],_0xb9f8c9[_0xeadb('0x3b')]),_0x2ee3a2);if(_0x4862f1[_0xeadb('0x33')]['filter']){_0x1d2dc7['where']=_[_0xeadb('0x3c')](_0x1d2dc7[_0xeadb('0x3d')],{'$or':_[_0xeadb('0x2d')](_0x2ee3a2,function(_0x53ac18){if(_0x53ac18[_0xeadb('0x30')]!==_0xeadb('0x3e')){var _0x2c1d6c={};_0x2c1d6c[_0x53ac18['name']]={'$like':'%'+_0x4862f1['query'][_0xeadb('0x3f')]+'%'};return _0x2c1d6c;}})});}_0x1d2dc7=_[_0xeadb('0x3c')]({},_0x1d2dc7,_0x4862f1[_0xeadb('0x40')]);var _0x2a26ba={'where':_0x1d2dc7[_0xeadb('0x3d')]};return db[_0xeadb('0x2e')]['count'](_0x2a26ba)[_0xeadb('0x27')](function(_0x3dc278){_0xd917f5[_0xeadb('0x1e')]=_0x3dc278;if(_0x4862f1['query'][_0xeadb('0x41')]){_0x1d2dc7['include']=[{'all':!![]}];}return db['ChatTransferReport'][_0xeadb('0x42')](_0x1d2dc7);})[_0xeadb('0x27')](function(_0x2868ed){_0xd917f5[_0xeadb('0x43')]=_0x2868ed;return _0xd917f5;})['then'](respondWithFilteredResult(_0x4bb347,_0x1d2dc7))['catch'](handleError(_0x4bb347,null));};exports[_0xeadb('0x44')]=function(_0x1eba3c,_0x226b94){var _0x15cea8={'raw':!![],'where':{'id':_0x1eba3c[_0xeadb('0x45')]['id']}},_0x172bc2={};_0x172bc2['model']=_[_0xeadb('0x34')](db[_0xeadb('0x2e')][_0xeadb('0x2f')]);_0x172bc2[_0xeadb('0x33')]=_['keys'](_0x1eba3c[_0xeadb('0x33')]);_0x172bc2[_0xeadb('0x3b')]=_['intersection'](_0x172bc2[_0xeadb('0x32')],_0x172bc2[_0xeadb('0x33')]);_0x15cea8[_0xeadb('0x36')]=_[_0xeadb('0x35')](_0x172bc2[_0xeadb('0x32')],qs[_0xeadb('0x37')](_0x1eba3c[_0xeadb('0x33')][_0xeadb('0x37')]));_0x15cea8['attributes']=_0x15cea8[_0xeadb('0x36')]['length']?_0x15cea8[_0xeadb('0x36')]:_0x172bc2[_0xeadb('0x32')];if(_0x1eba3c['query'][_0xeadb('0x41')]){_0x15cea8['include']=[{'all':!![]}];}_0x15cea8=_[_0xeadb('0x3c')]({},_0x15cea8,_0x1eba3c[_0xeadb('0x40')]);return db[_0xeadb('0x2e')][_0xeadb('0x46')](_0x15cea8)[_0xeadb('0x27')](handleEntityNotFound(_0x226b94,null))[_0xeadb('0x27')](respondWithResult(_0x226b94,null))['catch'](handleError(_0x226b94,null));};exports[_0xeadb('0x47')]=function(_0x3bb45c,_0x192236){return db[_0xeadb('0x2e')]['create'](_0x3bb45c[_0xeadb('0x48')],{})['then'](respondWithResult(_0x192236,0xc9))[_0xeadb('0x49')](handleError(_0x192236,null));};exports[_0xeadb('0x26')]=function(_0x2d5422,_0x275a66){if(_0x2d5422[_0xeadb('0x48')]['id']){delete _0x2d5422[_0xeadb('0x48')]['id'];}return db['ChatTransferReport'][_0xeadb('0x46')]({'where':{'id':_0x2d5422[_0xeadb('0x45')]['id']}})[_0xeadb('0x27')](handleEntityNotFound(_0x275a66,null))['then'](saveUpdates(_0x2d5422[_0xeadb('0x48')],null))['then'](respondWithResult(_0x275a66,null))['catch'](handleError(_0x275a66,null));};exports[_0xeadb('0x4a')]=function(_0x3ee8e1,_0x58db58){return db[_0xeadb('0x2e')][_0xeadb('0x46')]({'where':{'id':_0x3ee8e1[_0xeadb('0x45')]['id']}})[_0xeadb('0x27')](handleEntityNotFound(_0x58db58,null))[_0xeadb('0x27')](removeEntity(_0x58db58,null))['catch'](handleError(_0x58db58,null));};exports[_0xeadb('0x4b')]=function(_0x4fcc73,_0x416b52){return db[_0xeadb('0x2e')]['describe']()['then'](respondWithResult(_0x416b52,null))[_0xeadb('0x49')](handleError(_0x416b52,null));};