aef04f653d783fee890e8770ec4d80620f98d140
[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 _0x53af=['html','fax','updateUser','lodash','./utils','skipInteractionsQuery','resolve','then','search','parseAdvancedSearchFilter','parseQueryParameters','where','contact','default','fields','filter','read','tags','i.id','ids','tag','length','count','having','clause','order','forEach','DESC','closed','getClosedOrderClause','getFilteredInteractions','catch','tracked','user','query','body'];(function(_0x3ea61c,_0x42150f){var _0x5a9497=function(_0x454713){while(--_0x454713){_0x3ea61c['push'](_0x3ea61c['shift']());}};_0x5a9497(++_0x42150f);}(_0x53af,0x18f));var _0xf53a=function(_0x3ab51d,_0x2fa01d){_0x3ab51d=_0x3ab51d-0x0;var _0x29a04e=_0x53af[_0x3ab51d];return _0x29a04e;};'use strict';var _=require(_0xf53a('0x0'));var sqlUtils=require('./sql-utils');var utils=require(_0xf53a('0x1'));exports['findAll']=function(_0x7fc9d8,_0x53303b,_0x320025,_0x27fc51,_0x125e99){var _0xdfeed2={'count':0x0,'rows':[]};var _0x2e9f71=sqlUtils[_0xf53a('0x2')](_0x7fc9d8,_0x320025,_0x53303b);if(_0x2e9f71){return Promise[_0xf53a('0x3')](_0xdfeed2);}var _0x5f1ba7=sqlUtils['getInteractionsQuery'](_0x7fc9d8);var _0x18d1ff={};return Promise['resolve']()[_0xf53a('0x4')](function(){if(_0x53303b[_0xf53a('0x5')]){return sqlUtils[_0xf53a('0x6')](_0x53303b[_0xf53a('0x5')],_0x125e99);}else{return sqlUtils[_0xf53a('0x7')](_0x7fc9d8,_0x53303b,_0x125e99);}})[_0xf53a('0x4')](function(_0x52f222){_0x5f1ba7[_0xf53a('0x8')](_0x52f222['body']);_0x5f1ba7['where'](_0x52f222[_0xf53a('0x9')]);_0x5f1ba7[_0xf53a('0x8')](_0x52f222[_0xf53a('0xa')]);_0x5f1ba7[_0xf53a('0x8')](_0x52f222[_0xf53a('0xb')]);_0x5f1ba7['where'](_0x52f222[_0xf53a('0xc')]);_0x5f1ba7[_0xf53a('0x8')](_0x52f222['user']);_0x5f1ba7['having'](_0x52f222[_0xf53a('0xd')]);_0x18d1ff=_0x52f222[_0xf53a('0xe')];return sqlUtils['checkAccountsRestrictions'](_0x7fc9d8,_0x320025,_0x53303b);})['then'](function(_0x16d0db){_0x5f1ba7[_0xf53a('0x8')](_0x16d0db);_0x5f1ba7['group'](_0xf53a('0xf'));var _0x72e073=_0x53303b[_0xf53a('0x5')]?_0x18d1ff[_0xf53a('0x10')]:_0x53303b[_0xf53a('0x11')];return sqlUtils['countFilteredInteractions'](_0x5f1ba7,_0x72e073);})['then'](function(_0x4af928){_0xdfeed2['count']=_0x4af928[_0xf53a('0x12')];if(_0xdfeed2[_0xf53a('0x13')]===0x0){return[];}_0x5f1ba7[_0xf53a('0x14')](_0x18d1ff[_0xf53a('0x15')]);if(_0x27fc51[_0xf53a('0x16')]){_0x27fc51[_0xf53a('0x16')][_0xf53a('0x17')](function(_0x2815b6){var _0x458091=_0x2815b6[0x0]==='contactName'?_0x2815b6[0x0]:'i.'+_0x2815b6[0x0];_0x5f1ba7[_0xf53a('0x16')](_0x458091,_0x2815b6[0x1]===_0xf53a('0x18')?![]:!![]);if(_0x2815b6[0x0]===_0xf53a('0x19')){var _0x562a8f=sqlUtils[_0xf53a('0x1a')](_0x7fc9d8,_0x53303b);_0x5f1ba7['order'](_0x562a8f,_0x2815b6[0x1]==='DESC'?![]:!![]);}});}return sqlUtils[_0xf53a('0x1b')](_0x7fc9d8,_0x5f1ba7,_0x53303b,_0x27fc51);})[_0xf53a('0x4')](function(_0x595c15){_0xdfeed2['rows']=_0x595c15;return _0xdfeed2;})[_0xf53a('0x1c')](function(_0xbc4a9b){throw _0xbc4a9b;});};exports[_0xf53a('0x1d')]=function(_0x1628b5,_0x35f16c){return function(_0x525097,_0x1c7f0a,_0x5ba35e){var _0x17a57b=_0x525097[_0xf53a('0x1e')];var _0xd4edc4={};var _0xf774e=_0x525097[_0xf53a('0x1f')];if(_0xd4edc4){_0xd4edc4=_['clone'](_0x525097['body']);_0xd4edc4=_['omit'](_0xd4edc4,[_0xf53a('0x20'),_0xf53a('0x21'),'phone',_0xf53a('0x22'),'mobile']);}utils[_0xf53a('0x23')](_0x17a57b,_0xd4edc4,_0xf774e,_0x1628b5,_0x35f16c);_0x5ba35e(null);};};