Built motion from commit d5e4af8c.|2.6.23
[motion2.git] / server / components / interaction / sql-utils.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 _0x9b70=['o.fullname','Owner.fullname','o.internal','Owner.internal','TagIds','limit','offset','query','toString','groupBy','Setting','enableEmailPreview','all','clone','COUNT(*)','t.id\x20IN\x20?','QueryTypes','SELECT','exports','lodash','squel','../parsers/advancedSearch','./update-interaction','updateInteraction','../../mysqldb','role','search','select','field','name','from','user_has_','u.id','u.fullname','ui.','users','where','\x20IN\x20?','map','getInteractionsTables','getInteractionFK','interactions','left_join','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','o.id\x20=\x20i.UserId','accounts','a.id\x20=\x20i.','messages','me.','\x20=\x20i.id','interactionsTags','it.','tools_tags','t.id\x20=\x20it.TagId','expr','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','unreadMessages\x20{OPERATOR}\x200','replace','{OPERATOR}','isNumeric','i.id\x20LIKE\x20?','includes','fax','openchannel','i.from\x20LIKE\x20?','mail','isEmail','MATCH\x20(i.to,\x20i.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','MATCH\x20(me.plainBody,\x20me.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','MATCH\x20(me.body)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','parseSearch','sqlOperator','conditions','length','find','buildExpression','type','value','end','unreadMessages','read','operator','$substring','split','contact','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','ContactId','text','start','Tag','tags','clause','and','User','user','UserId','plainBody','body','keys','compact','concat','createdAt','parse','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20IS\x20NULL','\x20=\x20?','resolve','then','fields','tag','filter','getAccountFK','get','chat','Websites','Accounts','\x20IS\x20NOT\x20NULL','i.thirdDisposition','i.secondDisposition','i.disposition','i.substatus','closed','capitalize','Sequelize','sequelize','keyBy','merge','forEach','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','Account.key','a.mandatoryDisposition','Account.mandatoryDisposition','a.email','CASE\x20WHEN\x20i.to\x20IS\x20NOT\x20NULL\x20AND\x20i.to\x20<>\x20\x27\x27\x20AND\x20i.to\x20NOT\x20LIKE\x20CONCAT(\x27%\x27,\x20a.email,\x20\x27%\x27)\x20THEN\x20TRIM(SUBSTRING_INDEX(i.to,\x20\x27<\x27,\x201))\x20WHEN\x20(c.firstName\x20IS\x20NOT\x20NULL\x20AND\x20c.firstName\x20<>\x20\x27\x27)\x20OR\x20(c.lastName\x20IS\x20NOT\x20NULL\x20AND\x20c.lastName\x20<>\x20\x27\x27)\x20THEN\x20CONCAT(IFNULL(c.firstName,\x20\x27\x27),\x20\x27\x20\x27,\x20IFNULL(c.lastName,\x20\x27\x27))\x20ELSE\x20\x27Unknown\x27\x20END','i.id','i.createdAt','i.updatedAt','i.closed','i.closedAt','i.attach','i.lastMsgAt','i.lastMsgDirection','i.subject','i.to','i.ContactId','i.MailAccountId','i.UserId','CASE\x20WHEN\x20i.from\x20IS\x20NOT\x20NULL\x20AND\x20i.from\x20<>\x20\x27\x27\x20THEN\x20i.from\x20WHEN\x20(c.firstName\x20IS\x20NOT\x20NULL\x20AND\x20c.firstName\x20<>\x20\x27\x27)\x20OR\x20(c.lastName\x20IS\x20NOT\x20NULL\x20AND\x20c.lastName\x20<>\x20\x27\x27)\x20THEN\x20CONCAT(IFNULL(c.firstName,\x20\x27\x27),\x20\x27\x20\x27,\x20IFNULL(c.lastName,\x20\x27\x27))\x20ELSE\x20\x27Unknown\x27\x20END','contactName','i.*','c.firstName','c.lastName','Contact.lastName','Contact.email','c.phone','Contact.mobile','c.fax','Contact.fax'];(function(_0x71cd05,_0x36ac11){var _0x59c9e7=function(_0x5472cd){while(--_0x5472cd){_0x71cd05['push'](_0x71cd05['shift']());}};_0x59c9e7(++_0x36ac11);}(_0x9b70,0xb6));var _0x09b7=function(_0xb67251,_0x1f6208){_0xb67251=_0xb67251-0x0;var _0x979d96=_0x9b70[_0xb67251];return _0x979d96;};'use strict';var _=require(_0x09b7('0x0'));var squel=require(_0x09b7('0x1'));var as=require(_0x09b7('0x2'));var qs=require('../parsers/qs');var updateInteraction=require(_0x09b7('0x3'))[_0x09b7('0x4')];var utils=require('./utils');var db=require(_0x09b7('0x5'))['db'];function skipInteractionsQuery(_0x45e6b6,_0x21205a,_0x2db329){var _0x45fc91=![];var _0xb8142=utils['getAccountFK'](_0x45e6b6);if(_0x21205a[_0x09b7('0x6')]==='agent'&&!_0x2db329[_0x09b7('0x7')]&&!_0x2db329[_0xb8142]){_0x45fc91=!![];}return _0x45fc91;}function getTagsQuery(){return squel[_0x09b7('0x8')]()[_0x09b7('0x9')]('id')[_0x09b7('0x9')](_0x09b7('0xa'))[_0x09b7('0x9')]('color')[_0x09b7('0xb')]('tools_tags');}function getUsersQuery(_0x3773c2,_0x460528){var _0x3da116=utils['getInteractionFK'](_0x3773c2);var _0x47ebe6=_0x09b7('0xc')+_0x3773c2+'_interactions';var _0x457b15=squel[_0x09b7('0x8')]()[_0x09b7('0x9')](_0x09b7('0xd'))[_0x09b7('0x9')](_0x09b7('0xe'))[_0x09b7('0x9')](_0x09b7('0xf')+_0x3da116)[_0x09b7('0xb')](_0x47ebe6,'ui')['left_join'](_0x09b7('0x10'),'u','u.id\x20=\x20ui.UserId');if(_0x460528['length']>0x0){_0x457b15[_0x09b7('0x11')]('ui.'+_0x3da116+_0x09b7('0x12'),_[_0x09b7('0x13')](_0x460528,'id'));}return _0x457b15;}function getInteractionsQuery(_0x20a0c7){var _0x353fcc=utils[_0x09b7('0x14')](_0x20a0c7);var _0x19f8f8=utils['getAccountFK'](_0x20a0c7);var _0x22ba8d=utils[_0x09b7('0x15')](_0x20a0c7);return squel[_0x09b7('0x8')]()[_0x09b7('0xb')](_0x353fcc[_0x09b7('0x16')],'i')[_0x09b7('0x17')](_0x09b7('0x18'),'c',_0x09b7('0x19'))[_0x09b7('0x17')](_0x09b7('0x10'),'o',_0x09b7('0x1a'))[_0x09b7('0x17')](_0x353fcc[_0x09b7('0x1b')],'a',_0x09b7('0x1c')+_0x19f8f8)[_0x09b7('0x17')](_0x353fcc[_0x09b7('0x1d')],'me',_0x09b7('0x1e')+_0x22ba8d+_0x09b7('0x1f'))[_0x09b7('0x17')](_0x353fcc[_0x09b7('0x20')],'it',_0x09b7('0x21')+_0x22ba8d+_0x09b7('0x1f'))[_0x09b7('0x17')](_0x09b7('0x22'),'t',_0x09b7('0x23'));}function getSqlClauses(){var _0x544d11={'body':squel['expr'](),'contact':squel[_0x09b7('0x24')](),'default':squel[_0x09b7('0x24')](),'fields':squel[_0x09b7('0x24')](),'filter':squel[_0x09b7('0x24')](),'read':squel[_0x09b7('0x24')](),'tags':{'clause':squel[_0x09b7('0x24')](),'ids':null},'user':squel[_0x09b7('0x24')]()};return _0x544d11;}function parseTagParameter(_0x15273d){var _0xad023d=squel['expr']();if(_0x15273d){var _0x4481d0=utils['getSelectedTags'](_0x15273d);_0x4481d0['forEach'](function(_0x3205b9){_0xad023d['or'](_0x09b7('0x25'),'%,'+_0x3205b9+',%');});}return _0xad023d;}function parseReadParameter(_0x9533d9){var _0x3fe9ba='';if(_0x9533d9){_0x3fe9ba=_0x09b7('0x26');if(_0x9533d9==='1'){_0x3fe9ba=_0x3fe9ba[_0x09b7('0x27')](_0x09b7('0x28'),'=');}else{_0x3fe9ba=_0x3fe9ba[_0x09b7('0x27')]('{OPERATOR}','>');}}return _0x3fe9ba;}function parseSearchFilter(_0x516ab3,_0x4c85e1){var _0x40b4c5=squel[_0x09b7('0x24')]();if(_0x4c85e1){var _0x4544a0=_0x4c85e1[_0x09b7('0x27')]('\x5c','\x5c\x5c')[_0x09b7('0x27')](/'/g,'\x27\x27');if(qs[_0x09b7('0x29')](_0x4544a0)){_0x40b4c5['or'](_0x09b7('0x2a'),_0x4544a0+'%');if(['sms','whatsapp'][_0x09b7('0x2b')](_0x516ab3)){_0x40b4c5['or']('i.phone\x20LIKE\x20?',_0x4544a0+'%');}else if(_0x516ab3===_0x09b7('0x2c')){_0x40b4c5['or']('i.fax\x20LIKE\x20?',_0x4544a0+'%');}else if(_0x516ab3===_0x09b7('0x2d')){_0x40b4c5['or'](_0x09b7('0x2e'),_0x4544a0+'%');}}else if(_0x516ab3===_0x09b7('0x2f')&&qs[_0x09b7('0x30')](_0x4544a0)){_0x40b4c5['or']('c.email\x20LIKE\x20?',_0x4544a0+'%');}else{if(_0x516ab3==='mail'){_0x40b4c5['or'](_0x09b7('0x31'),qs[_0x09b7('0x32')](_0x4544a0,!![]))['or'](_0x09b7('0x33'),qs[_0x09b7('0x32')](_0x4544a0));}else if(_0x516ab3!=='fax'){_0x40b4c5['or'](_0x09b7('0x34'),qs[_0x09b7('0x32')](_0x4544a0));}_0x40b4c5['or']('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0x09b7('0x32')](_0x4544a0,!![]),null);}}return _0x40b4c5;}function parseAdvancedSearchFilter(_0x52f920,_0x25287c){var _0x4cac2a=getSqlClauses();var _0x40de82=as[_0x09b7('0x35')](_0x52f920);var _0x8f18a1=_0x40de82[_0x09b7('0x36')];for(var _0x52ad3d=0x0;_0x52ad3d<_0x40de82[_0x09b7('0x37')][_0x09b7('0x38')];_0x52ad3d++){var _0x43e33d=_0x40de82['conditions'][_0x52ad3d];var _0x190db2='i';var _0x12d292=_[_0x09b7('0x39')](_0x25287c,['name',_0x43e33d['field']]);if(_0x12d292){var _0x44c628=as[_0x09b7('0x3a')](_0x190db2,_0x12d292[_0x09b7('0x3b')],_0x43e33d);_0x4cac2a['default'][_0x8f18a1](_0x44c628['text'],_0x44c628['value']['start'],_0x44c628[_0x09b7('0x3c')][_0x09b7('0x3d')]);}else{switch(_0x43e33d[_0x09b7('0x9')]){case _0x09b7('0x3e'):var _0x10b624=parseReadParameter(_0x43e33d[_0x09b7('0x3c')]);_0x4cac2a[_0x09b7('0x3f')]['and'](_0x10b624);break;case'Contact':if(_0x43e33d[_0x09b7('0x40')]===_0x09b7('0x41')){if(_0x43e33d['value'][_0x09b7('0x42')]('\x20')[_0x09b7('0x38')]>0x1){_0x4cac2a[_0x09b7('0x43')][_0x8f18a1](_0x09b7('0x44'),qs[_0x09b7('0x32')](_0x43e33d[_0x09b7('0x3c')],!![]),null);}else{var _0x32badb='%'+_0x43e33d[_0x09b7('0x3c')]+'%';_0x4cac2a[_0x09b7('0x43')][_0x8f18a1](_0x09b7('0x45'),_0x32badb,_0x32badb,_0x32badb);}}else{_0x12d292=_[_0x09b7('0x39')](_0x25287c,[_0x09b7('0xa'),_0x09b7('0x46')]);_0x43e33d[_0x09b7('0x9')]='ContactId';_0x44c628=as[_0x09b7('0x3a')](_0x190db2,_0x12d292[_0x09b7('0x3b')],_0x43e33d);_0x4cac2a[_0x09b7('0x43')][_0x8f18a1](_0x44c628[_0x09b7('0x47')],_0x44c628[_0x09b7('0x3c')][_0x09b7('0x48')],_0x44c628[_0x09b7('0x3c')][_0x09b7('0x3d')]);}break;case _0x09b7('0x49'):var _0x3c7d71=_0x43e33d[_0x09b7('0x3c')][_0x09b7('0x42')](',')[_0x09b7('0x13')](function(_0x57d367){return Number(_0x57d367);});var _0x334abb=parseTagParameter(_0x3c7d71);_0x4cac2a[_0x09b7('0x4a')][_0x09b7('0x4b')][_0x09b7('0x4c')](_0x334abb);_0x4cac2a[_0x09b7('0x4a')]['ids']=_0x3c7d71;break;case _0x09b7('0x4d'):if(_0x43e33d[_0x09b7('0x40')]==='$substring'){_0x4cac2a[_0x09b7('0x4e')][_0x8f18a1]('CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','%'+_0x43e33d[_0x09b7('0x3c')]+'%',null);}else{_0x12d292=_[_0x09b7('0x39')](_0x25287c,[_0x09b7('0xa'),_0x09b7('0x4f')]);_0x43e33d['field']=_0x09b7('0x4f');_0x44c628=as[_0x09b7('0x3a')](_0x190db2,_0x12d292[_0x09b7('0x3b')],_0x43e33d);_0x4cac2a[_0x09b7('0x4e')][_0x8f18a1](_0x44c628[_0x09b7('0x47')],_0x44c628['value']['start'],_0x44c628[_0x09b7('0x3c')][_0x09b7('0x3d')]);}break;case'body':case _0x09b7('0x50'):_0x44c628=as[_0x09b7('0x3a')]('me',null,_0x43e33d);_0x4cac2a[_0x09b7('0x51')][_0x8f18a1](_0x44c628['text'],_0x44c628[_0x09b7('0x3c')][_0x09b7('0x48')],_0x44c628[_0x09b7('0x3c')][_0x09b7('0x3d')]);break;}}}return _0x4cac2a;}function parseModelFields(_0x3200a9,_0x58c0c5,_0x2d71cc){var _0x25d7fe=utils['getAccountFK'](_0x3200a9);var _0x41ec76=squel['expr']();var _0xf108c0=_(_0x58c0c5)[_0x09b7('0x52')]()[_0x09b7('0x13')](function(_0x2024be){return _['some'](_0x2d71cc,[_0x09b7('0xa'),_0x2024be])?_0x2024be:undefined;})[_0x09b7('0x53')]()[_0x09b7('0x3c')]();if(_0xf108c0[_0x09b7('0x38')]>0x0){_0xf108c0['forEach'](function(_0x49089a){if(_0x49089a===_0x25d7fe){_0x41ec76[_0x09b7('0x4c')]('i.'+_0x25d7fe+_0x09b7('0x12'),[][_0x09b7('0x54')](_0x58c0c5[_0x49089a]));}else if(_0x49089a===_0x09b7('0x55')){var _0x4c2db4=JSON[_0x09b7('0x56')](_0x58c0c5[_0x49089a])['$gte'];var _0xe0012=JSON['parse'](_0x58c0c5[_0x49089a])[_0x09b7('0x57')];_0x41ec76[_0x09b7('0x4c')](_0x09b7('0x58'),_0x4c2db4,_0xe0012);}else{if(_0x58c0c5[_0x49089a]===_0x09b7('0x59')){_0x41ec76[_0x09b7('0x4c')]('i.'+_0x49089a+_0x09b7('0x5a'));}else{_0x41ec76[_0x09b7('0x4c')]('i.'+_0x49089a+_0x09b7('0x5b'),_0x58c0c5[_0x49089a]);}}});}return _0x41ec76;}function parseQueryParameters(_0x1beeb7,_0x4cf033,_0x20a096){var _0x1c6e3b=getSqlClauses();return Promise[_0x09b7('0x5c')]()[_0x09b7('0x5d')](function(){return parseModelFields(_0x1beeb7,_0x4cf033,_0x20a096);})['then'](function(_0x4d3c9c){_0x1c6e3b[_0x09b7('0x5e')][_0x09b7('0x4c')](_0x4d3c9c);return parseReadParameter(_0x4cf033[_0x09b7('0x3f')]);})[_0x09b7('0x5d')](function(_0x24b685){_0x1c6e3b[_0x09b7('0x3f')]['and'](_0x24b685);return parseTagParameter(_0x4cf033[_0x09b7('0x5f')]);})[_0x09b7('0x5d')](function(_0x3cd452){_0x1c6e3b[_0x09b7('0x4a')]['clause']['and'](_0x3cd452);return parseSearchFilter(_0x1beeb7,_0x4cf033['filter']);})['then'](function(_0x191365){_0x1c6e3b[_0x09b7('0x60')]=_0x191365;return _0x1c6e3b;});}function checkAccountsRestrictions(_0x301654,_0xffa14b,_0x41a4d0){var _0x5dd0da=utils[_0x09b7('0x61')](_0x301654);var _0xdff095=_0x09b7('0x62')+_['capitalize'](_0x301654)+(_0x301654===_0x09b7('0x63')?_0x09b7('0x64'):_0x09b7('0x65'));var _0x11daf9=squel[_0x09b7('0x24')]();return Promise[_0x09b7('0x5c')]()[_0x09b7('0x5d')](function(){if(_0x41a4d0['search']&&_0xffa14b['role']==='agent'){return _0xffa14b[_0xdff095]({'attributes':['id'],'raw':!![]});}})[_0x09b7('0x5d')](function(_0x4597c0){if(_0x4597c0){if(_0x4597c0[_0x09b7('0x38')]===0x0){_0x11daf9[_0x09b7('0x4c')]('i.'+_0x5dd0da+_0x09b7('0x5a'));}else{_0x11daf9['and']('i.'+_0x5dd0da+_0x09b7('0x12'),_[_0x09b7('0x13')](_0x4597c0,'id'));}}else if(!_0x41a4d0[_0x5dd0da]){_0x11daf9[_0x09b7('0x4c')]('i.'+_0x5dd0da+_0x09b7('0x66'));}})['then'](function(){return _0x11daf9;});}function getClosedOrderClause(_0x3f9aff,_0x41dff1){var _0x50e349='';var _0x1b34a9=[_0x09b7('0x67'),_0x09b7('0x68'),_0x09b7('0x69')];if(_0x3f9aff===_0x09b7('0x2f')){_0x1b34a9['unshift'](_0x09b7('0x6a'));}if(_0x41dff1[_0x09b7('0x6b')]==='0'&&_0x3f9aff==='mail'){_0x50e349=_0x09b7('0x6a');}else{if(_0x41dff1['closed']==='1'){_0x1b34a9['shift']();}_0x50e349='CONCAT_WS(\x27\x27,\x20'+_0x1b34a9['join'](',\x20')+')';}return _0x50e349;}function getFilteredInteractions(_0x57bd29,_0x17a8fa,_0x516500,_0x6ebc08){var _0x18808d=utils[_0x09b7('0x15')](_0x57bd29);var _0x2d26dd=_[_0x09b7('0x6c')](_0x57bd29)+'Interaction';var _0x279cd6=[];var _0x18f35b=getTagsQuery();var _0x1773a5={'type':db[_0x09b7('0x6d')]['QueryTypes']['SELECT'],'raw':!![]};var _0x38526c=[];var _0x1b1db5=[];return db[_0x09b7('0x6e')]['query'](_0x18f35b['toString'](),_0x1773a5)[_0x09b7('0x5d')](function(_0x2e45aa){_0x279cd6=_[_0x09b7('0x6f')](_0x2e45aa,'id');_0x1773a5=_[_0x09b7('0x70')](_0x1773a5,{'model':db[_0x2d26dd],'mapToModel':!![],'nest':!![]});if(_0x516500['fields']){_0x6ebc08['attributes'][_0x09b7('0x71')](function(_0x5b6e7c){_0x17a8fa['field']('i.'+_0x5b6e7c);});}else{_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x72'),_0x09b7('0x3e'));_0x17a8fa[_0x09b7('0x9')]('a.key',_0x09b7('0x73'));_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x74'),_0x09b7('0x75'));if(_0x57bd29===_0x09b7('0x2f')){_0x17a8fa['field'](_0x09b7('0x76'),'Account.email');_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x77'),'contactName');_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x78'));_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x79'));_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x7a'));_0x17a8fa['field'](_0x09b7('0x7b'));_0x17a8fa['field'](_0x09b7('0x7c'));_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x7d'));_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x7e'));_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x7f'));_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x80'));_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x69'));_0x17a8fa['field'](_0x09b7('0x68'));_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x67'));_0x17a8fa[_0x09b7('0x9')]('i.substatus');_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x81'));_0x17a8fa['field'](_0x09b7('0x82'));_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x83'));_0x17a8fa['field'](_0x09b7('0x84'));}else if(_0x57bd29==='openchannel'){_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x85'),_0x09b7('0x86'));}else{_0x17a8fa['field']('CASE\x20WHEN\x20(c.firstName\x20IS\x20NOT\x20NULL\x20AND\x20c.firstName\x20<>\x20\x27\x27)\x20OR\x20(c.lastName\x20IS\x20NOT\x20NULL\x20AND\x20c.lastName\x20<>\x20\x27\x27)\x20THEN\x20CONCAT(IFNULL(c.firstName,\x20\x27\x27),\x20\x27\x20\x27,\x20IFNULL(c.lastName,\x20\x27\x27))\x20ELSE\x20\x27Unknown\x27\x20END',_0x09b7('0x86'));}if(_0x57bd29!==_0x09b7('0x2f')){_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x87'));}_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x88'),'Contact.firstName');_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x89'),_0x09b7('0x8a'));_0x17a8fa[_0x09b7('0x9')]('c.email',_0x09b7('0x8b'));_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x8c'),'Contact.phone');_0x17a8fa[_0x09b7('0x9')]('c.mobile',_0x09b7('0x8d'));_0x17a8fa['field'](_0x09b7('0x8e'),_0x09b7('0x8f'));_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x90'),_0x09b7('0x91'));_0x17a8fa[_0x09b7('0x9')](_0x09b7('0x92'),_0x09b7('0x93'));_0x17a8fa[_0x09b7('0x9')]('GROUP_CONCAT(DISTINCT\x20t.id)',_0x09b7('0x94'));}if(_0x6ebc08['limit']){_0x17a8fa[_0x09b7('0x95')](_0x6ebc08['limit']);}if(_0x6ebc08[_0x09b7('0x96')]){_0x17a8fa[_0x09b7('0x96')](_0x6ebc08[_0x09b7('0x96')]);}return db['sequelize'][_0x09b7('0x97')](_0x17a8fa[_0x09b7('0x98')](),_0x1773a5);})[_0x09b7('0x5d')](function(_0x5ebb21){_0x38526c=_0x5ebb21;var _0x5705bc=getUsersQuery(_0x57bd29,_0x38526c);return db['sequelize'][_0x09b7('0x97')](_0x5705bc[_0x09b7('0x98')](),_0x1773a5);})[_0x09b7('0x5d')](function(_0x2e44df){_0x1b1db5=_[_0x09b7('0x99')](_0x2e44df,_0x18808d);if(_0x57bd29===_0x09b7('0x2f')){return db[_0x09b7('0x9a')]['findOne']({'attributes':['enableEmailPreview'],'raw':!![]});}})[_0x09b7('0x5d')](function(_0x64a230){var _0x2da568=_0x64a230?_0x64a230[_0x09b7('0x9b')]:undefined;var _0x56d6c2=_0x38526c[_0x09b7('0x13')](function(_0x45ef57){return updateInteraction(_0x45ef57,_0x279cd6,_0x1b1db5,_0x2da568);});return Promise[_0x09b7('0x9c')](_0x56d6c2);});}function countFilteredInteractions(_0x58742a,_0x24b775){var _0x141396=_0x58742a[_0x09b7('0x9d')]();_0x141396[_0x09b7('0x9')](_0x09b7('0x9e'));_0x141396[_0x09b7('0x9')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','unreadMessages');var _0x1b1f57=utils['getSelectedTags'](_0x24b775);if(!_['isEmpty'](_0x1b1f57)){_0x141396[_0x09b7('0x11')](_0x09b7('0x9f'),_0x1b1f57);}var _0x5a9095={'type':db[_0x09b7('0x6d')][_0x09b7('0xa0')][_0x09b7('0xa1')],'raw':!![]};return db[_0x09b7('0x6e')]['query'](_0x141396[_0x09b7('0x98')](),_0x5a9095);}module[_0x09b7('0xa2')]={'checkAccountsRestrictions':checkAccountsRestrictions,'countFilteredInteractions':countFilteredInteractions,'getClosedOrderClause':getClosedOrderClause,'getFilteredInteractions':getFilteredInteractions,'getInteractionsQuery':getInteractionsQuery,'parseAdvancedSearchFilter':parseAdvancedSearchFilter,'parseQueryParameters':parseQueryParameters,'skipInteractionsQuery':skipInteractionsQuery};