Built motion from commit b5996064.|2.6.21
[motion2.git] / server / components / interaction / service.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 _0x52fa=['tracked','query','clone','body','html','fax','mobile','updateUser','./sql-utils','./utils','skipInteractionsQuery','resolve','getInteractionsQuery','then','search','contact','where','default','filter','user','having','read','tags','checkAccountsRestrictions','i.id','ids','countFilteredInteractions','length','count','order','forEach','contactName','closed','DESC'];(function(_0x14250d,_0x4e36f3){var _0x259306=function(_0x5990db){while(--_0x5990db){_0x14250d['push'](_0x14250d['shift']());}};_0x259306(++_0x4e36f3);}(_0x52fa,0x90));var _0xa52f=function(_0x56d582,_0x3c150f){_0x56d582=_0x56d582-0x0;var _0xabc75b=_0x52fa[_0x56d582];return _0xabc75b;};'use strict';var _=require('lodash');var sqlUtils=require(_0xa52f('0x0'));var utils=require(_0xa52f('0x1'));exports['findAll']=function(_0x263ad0,_0x2b9e98,_0x339ec8,_0x1a5808,_0x790453){var _0x38bdc2={'count':0x0,'rows':[]};var _0x1cf34a=sqlUtils[_0xa52f('0x2')](_0x263ad0,_0x339ec8,_0x2b9e98);if(_0x1cf34a){return Promise[_0xa52f('0x3')](_0x38bdc2);}var _0x369136=sqlUtils[_0xa52f('0x4')](_0x263ad0);var _0x1b682c={};return Promise[_0xa52f('0x3')]()[_0xa52f('0x5')](function(){if(_0x2b9e98['search']){return sqlUtils['parseAdvancedSearchFilter'](_0x2b9e98[_0xa52f('0x6')],_0x790453);}else{return sqlUtils['parseQueryParameters'](_0x263ad0,_0x2b9e98,_0x790453);}})[_0xa52f('0x5')](function(_0xe9f9ab){_0x369136['where'](_0xe9f9ab['body']);_0x369136['where'](_0xe9f9ab[_0xa52f('0x7')]);_0x369136[_0xa52f('0x8')](_0xe9f9ab[_0xa52f('0x9')]);_0x369136['where'](_0xe9f9ab['fields']);_0x369136[_0xa52f('0x8')](_0xe9f9ab[_0xa52f('0xa')]);_0x369136['where'](_0xe9f9ab[_0xa52f('0xb')]);_0x369136[_0xa52f('0xc')](_0xe9f9ab[_0xa52f('0xd')]);_0x1b682c=_0xe9f9ab[_0xa52f('0xe')];return sqlUtils[_0xa52f('0xf')](_0x263ad0,_0x339ec8,_0x2b9e98);})[_0xa52f('0x5')](function(_0x14c229){_0x369136[_0xa52f('0x8')](_0x14c229);_0x369136['group'](_0xa52f('0x10'));var _0x2e8fcf=_0x2b9e98[_0xa52f('0x6')]?_0x1b682c[_0xa52f('0x11')]:_0x2b9e98['tag'];return sqlUtils[_0xa52f('0x12')](_0x369136,_0x2e8fcf);})[_0xa52f('0x5')](function(_0x3c2de3){_0x38bdc2['count']=_0x3c2de3[_0xa52f('0x13')];if(_0x38bdc2[_0xa52f('0x14')]===0x0){return[];}_0x369136[_0xa52f('0xc')](_0x1b682c['clause']);if(_0x1a5808[_0xa52f('0x15')]){_0x1a5808[_0xa52f('0x15')][_0xa52f('0x16')](function(_0x2b2b7b){var _0x59528b=_0x2b2b7b[0x0]===_0xa52f('0x17')?_0x2b2b7b[0x0]:'i.'+_0x2b2b7b[0x0];_0x369136[_0xa52f('0x15')](_0x59528b,_0x2b2b7b[0x1]==='DESC'?![]:!![]);if(_0x2b2b7b[0x0]===_0xa52f('0x18')){var _0x4829cb=sqlUtils['getClosedOrderClause'](_0x263ad0,_0x2b9e98);_0x369136['order'](_0x4829cb,_0x2b2b7b[0x1]===_0xa52f('0x19')?![]:!![]);}});}return sqlUtils['getFilteredInteractions'](_0x263ad0,_0x369136,_0x2b9e98,_0x1a5808);})[_0xa52f('0x5')](function(_0x4fd826){_0x38bdc2['rows']=_0x4fd826;return _0x38bdc2;})['catch'](function(_0x1665c9){throw _0x1665c9;});};exports[_0xa52f('0x1a')]=function(_0xf3493d,_0x51b3f7){return function(_0x1f2748,_0x176d2c,_0x5a1f2c){var _0x321268=_0x1f2748[_0xa52f('0xb')];var _0x4784f5={};var _0x39af9f=_0x1f2748[_0xa52f('0x1b')];if(_0x4784f5){_0x4784f5=_[_0xa52f('0x1c')](_0x1f2748[_0xa52f('0x1d')]);_0x4784f5=_['omit'](_0x4784f5,[_0xa52f('0x1d'),_0xa52f('0x1e'),'phone',_0xa52f('0x1f'),_0xa52f('0x20')]);}utils[_0xa52f('0x21')](_0x321268,_0x4784f5,_0x39af9f,_0xf3493d,_0x51b3f7);_0x5a1f2c(null);};};