e1a85e7b39d86613a247045a48deafd31f126c10
[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 _0x7f92=['default','fields','filter','having','read','tags','checkAccountsRestrictions','group','i.id','ids','countFilteredInteractions','count','length','clause','order','forEach','DESC','closed','getFilteredInteractions','catch','user','query','omit','html','phone','fax','mobile','lodash','./sql-utils','getInteractionsQuery','resolve','then','search','parseAdvancedSearchFilter','parseQueryParameters','where','body'];(function(_0x421cf8,_0x23152c){var _0x145c48=function(_0x565862){while(--_0x565862){_0x421cf8['push'](_0x421cf8['shift']());}};_0x145c48(++_0x23152c);}(_0x7f92,0x8a));var _0x27f9=function(_0x49551c,_0x72dff6){_0x49551c=_0x49551c-0x0;var _0x3a34e0=_0x7f92[_0x49551c];return _0x3a34e0;};'use strict';var _=require(_0x27f9('0x0'));var sqlUtils=require(_0x27f9('0x1'));var utils=require('./utils');exports['findAll']=function(_0x179fdb,_0x1704af,_0x2434d8,_0x222b20,_0x4cc5aa){var _0x5a4423={'count':0x0,'rows':[]};var _0x420412=sqlUtils['skipInteractionsQuery'](_0x179fdb,_0x2434d8,_0x1704af);if(_0x420412){return Promise['resolve'](_0x5a4423);}var _0x2bea42=sqlUtils[_0x27f9('0x2')](_0x179fdb);var _0x5b843c={};return Promise[_0x27f9('0x3')]()[_0x27f9('0x4')](function(){if(_0x1704af[_0x27f9('0x5')]){return sqlUtils[_0x27f9('0x6')](_0x1704af[_0x27f9('0x5')],_0x4cc5aa);}else{return sqlUtils[_0x27f9('0x7')](_0x179fdb,_0x1704af,_0x4cc5aa);}})['then'](function(_0x44d3b5){_0x2bea42[_0x27f9('0x8')](_0x44d3b5[_0x27f9('0x9')]);_0x2bea42[_0x27f9('0x8')](_0x44d3b5['contact']);_0x2bea42[_0x27f9('0x8')](_0x44d3b5[_0x27f9('0xa')]);_0x2bea42[_0x27f9('0x8')](_0x44d3b5[_0x27f9('0xb')]);_0x2bea42[_0x27f9('0x8')](_0x44d3b5[_0x27f9('0xc')]);_0x2bea42[_0x27f9('0x8')](_0x44d3b5['user']);_0x2bea42[_0x27f9('0xd')](_0x44d3b5[_0x27f9('0xe')]);_0x5b843c=_0x44d3b5[_0x27f9('0xf')];return sqlUtils[_0x27f9('0x10')](_0x179fdb,_0x2434d8,_0x1704af);})[_0x27f9('0x4')](function(_0x571d21){_0x2bea42[_0x27f9('0x8')](_0x571d21);_0x2bea42[_0x27f9('0x11')](_0x27f9('0x12'));var _0x5b3c7e=_0x1704af[_0x27f9('0x5')]?_0x5b843c[_0x27f9('0x13')]:_0x1704af['tag'];return sqlUtils[_0x27f9('0x14')](_0x2bea42,_0x5b3c7e);})[_0x27f9('0x4')](function(_0x2fd69d){_0x5a4423[_0x27f9('0x15')]=_0x2fd69d[_0x27f9('0x16')];if(_0x5a4423['count']===0x0){return[];}_0x2bea42[_0x27f9('0xd')](_0x5b843c[_0x27f9('0x17')]);if(_0x222b20['order']){_0x222b20[_0x27f9('0x18')][_0x27f9('0x19')](function(_0x40307f){var _0x232fcf=_0x40307f[0x0]==='contactName'?_0x40307f[0x0]:'i.'+_0x40307f[0x0];_0x2bea42[_0x27f9('0x18')](_0x232fcf,_0x40307f[0x1]===_0x27f9('0x1a')?![]:!![]);if(_0x40307f[0x0]===_0x27f9('0x1b')){var _0x38e781=sqlUtils['getClosedOrderClause'](_0x179fdb,_0x1704af);_0x2bea42[_0x27f9('0x18')](_0x38e781,_0x40307f[0x1]===_0x27f9('0x1a')?![]:!![]);}});}return sqlUtils[_0x27f9('0x1c')](_0x179fdb,_0x2bea42,_0x1704af,_0x222b20);})[_0x27f9('0x4')](function(_0x23dbaa){_0x5a4423['rows']=_0x23dbaa;return _0x5a4423;})[_0x27f9('0x1d')](function(_0x68f822){throw _0x68f822;});};exports['tracked']=function(_0xe45245,_0x5ccf87){return function(_0x2377fc,_0x25a107,_0x46383c){var _0x49695d=_0x2377fc[_0x27f9('0x1e')];var _0x1b80ab={};var _0xaec806=_0x2377fc[_0x27f9('0x1f')];if(_0x1b80ab){_0x1b80ab=_['clone'](_0x2377fc[_0x27f9('0x9')]);_0x1b80ab=_[_0x27f9('0x20')](_0x1b80ab,[_0x27f9('0x9'),_0x27f9('0x21'),_0x27f9('0x22'),_0x27f9('0x23'),_0x27f9('0x24')]);}utils['updateUser'](_0x49695d,_0x1b80ab,_0xaec806,_0xe45245,_0x5ccf87);_0x46383c(null);};};