Built motion from commit 9c91e9f5.|2.6.29
[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 _0x05af=['tags','ids','User','user','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','body','keys','map','compact','concat','createdAt','parse','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','\x20IS\x20NULL','\x20=\x20?','then','tag','filter','get','capitalize','chat','Websites','Accounts','resolve','\x20IS\x20NOT\x20NULL','i.thirdDisposition','i.secondDisposition','i.disposition','unshift','i.substatus','closed','shift','CONCAT_WS(\x27\x27,\x20','join','Interaction','QueryTypes','SELECT','sequelize','query','toString','keyBy','merge','attributes','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','a.mandatoryDisposition','a.email','Account.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','contactName','i.id','i.createdAt','i.updatedAt','i.closed','i.closedAt','i.attach','i.lastMsgAt','i.lastMsgDirection','i.subject','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','i.*','c.firstName','Contact.firstName','c.lastName','Contact.lastName','c.email','Contact.email','c.phone','Contact.phone','c.fax','Contact.fax','o.fullname','Owner.fullname','GROUP_CONCAT(DISTINCT\x20t.id)','TagIds','limit','offset','findOne','enableEmailPreview','all','COUNT(*)','isEmpty','t.id\x20IN\x20?','Sequelize','exports','../parsers/advancedSearch','../parsers/qs','./update-interaction','./utils','../../mysqldb','role','agent','search','select','field','name','color','from','tools_tags','getInteractionFK','user_has_','u.id','u.fullname','ui.','left_join','users','length','where','\x20IN\x20?','getAccountFK','interactions','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','t.id\x20=\x20it.TagId','expr','getSelectedTags','forEach','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','{OPERATOR}','replace','i.id\x20LIKE\x20?','sms','whatsapp','includes','i.phone\x20LIKE\x20?','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(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','sqlOperator','conditions','find','type','default','text','unreadMessages','value','read','and','Contact','operator','$substring','split','contact','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','ContactId','buildExpression','start','end','clause'];(function(_0x485526,_0x594b88){var _0x37dd7d=function(_0x365661){while(--_0x365661){_0x485526['push'](_0x485526['shift']());}};_0x37dd7d(++_0x594b88);}(_0x05af,0x100));var _0xf05a=function(_0x383dbb,_0x17d41b){_0x383dbb=_0x383dbb-0x0;var _0x6e8bde=_0x05af[_0x383dbb];return _0x6e8bde;};'use strict';var _=require('lodash');var squel=require('squel');var as=require(_0xf05a('0x0'));var qs=require(_0xf05a('0x1'));var updateInteraction=require(_0xf05a('0x2'))['updateInteraction'];var utils=require(_0xf05a('0x3'));var db=require(_0xf05a('0x4'))['db'];function skipInteractionsQuery(_0x51b843,_0x389a4d,_0x4a4d56){var _0x527f1a=![];var _0x3b7cd5=utils['getAccountFK'](_0x51b843);if(_0x389a4d[_0xf05a('0x5')]===_0xf05a('0x6')&&!_0x4a4d56[_0xf05a('0x7')]&&!_0x4a4d56[_0x3b7cd5]){_0x527f1a=!![];}return _0x527f1a;}function getTagsQuery(){return squel[_0xf05a('0x8')]()[_0xf05a('0x9')]('id')[_0xf05a('0x9')](_0xf05a('0xa'))[_0xf05a('0x9')](_0xf05a('0xb'))[_0xf05a('0xc')](_0xf05a('0xd'));}function getUsersQuery(_0x43f3f2,_0x376409){var _0x152670=utils[_0xf05a('0xe')](_0x43f3f2);var _0x5f295f=_0xf05a('0xf')+_0x43f3f2+'_interactions';var _0x163d97=squel[_0xf05a('0x8')]()[_0xf05a('0x9')](_0xf05a('0x10'))[_0xf05a('0x9')](_0xf05a('0x11'))['field'](_0xf05a('0x12')+_0x152670)[_0xf05a('0xc')](_0x5f295f,'ui')[_0xf05a('0x13')](_0xf05a('0x14'),'u','u.id\x20=\x20ui.UserId');if(_0x376409[_0xf05a('0x15')]>0x0){_0x163d97[_0xf05a('0x16')](_0xf05a('0x12')+_0x152670+_0xf05a('0x17'),_['map'](_0x376409,'id'));}return _0x163d97;}function getInteractionsQuery(_0x238d78){var _0x2760cd=utils['getInteractionsTables'](_0x238d78);var _0x4c8e81=utils[_0xf05a('0x18')](_0x238d78);var _0x3ac52f=utils[_0xf05a('0xe')](_0x238d78);return squel[_0xf05a('0x8')]()[_0xf05a('0xc')](_0x2760cd[_0xf05a('0x19')],'i')[_0xf05a('0x13')](_0xf05a('0x1a'),'c',_0xf05a('0x1b'))[_0xf05a('0x13')]('users','o',_0xf05a('0x1c'))[_0xf05a('0x13')](_0x2760cd[_0xf05a('0x1d')],'a',_0xf05a('0x1e')+_0x4c8e81)[_0xf05a('0x13')](_0x2760cd[_0xf05a('0x1f')],'me',_0xf05a('0x20')+_0x3ac52f+_0xf05a('0x21'))[_0xf05a('0x13')](_0x2760cd['interactionsTags'],'it','it.'+_0x3ac52f+_0xf05a('0x21'))[_0xf05a('0x13')](_0xf05a('0xd'),'t',_0xf05a('0x22'));}function getSqlClauses(){var _0xfdd53a={'body':squel[_0xf05a('0x23')](),'contact':squel[_0xf05a('0x23')](),'default':squel[_0xf05a('0x23')](),'fields':squel[_0xf05a('0x23')](),'filter':squel[_0xf05a('0x23')](),'read':squel['expr'](),'tags':{'clause':squel['expr'](),'ids':null},'user':squel[_0xf05a('0x23')]()};return _0xfdd53a;}function parseTagParameter(_0x25aefd){var _0x345a23=squel[_0xf05a('0x23')]();if(_0x25aefd){var _0x5b1f91=utils[_0xf05a('0x24')](_0x25aefd);_0x5b1f91[_0xf05a('0x25')](function(_0x44e658){_0x345a23['or'](_0xf05a('0x26'),'%,'+_0x44e658+',%');});}return _0x345a23;}function parseReadParameter(_0x318052){var _0x540a85='';if(_0x318052){_0x540a85='unreadMessages\x20{OPERATOR}\x200';if(_0x318052==='1'){_0x540a85=_0x540a85['replace'](_0xf05a('0x27'),'=');}else{_0x540a85=_0x540a85['replace'](_0xf05a('0x27'),'>');}}return _0x540a85;}function parseSearchFilter(_0x429d91,_0x4c749a){var _0x5bc3bc=squel[_0xf05a('0x23')]();if(_0x4c749a){var _0x29c7b5=_0x4c749a[_0xf05a('0x28')]('\x5c','\x5c\x5c')['replace'](/'/g,'\x27\x27');if(qs['isNumeric'](_0x29c7b5)){_0x5bc3bc['or'](_0xf05a('0x29'),_0x29c7b5+'%');if([_0xf05a('0x2a'),_0xf05a('0x2b')][_0xf05a('0x2c')](_0x429d91)){_0x5bc3bc['or'](_0xf05a('0x2d'),_0x29c7b5+'%');}else if(_0x429d91===_0xf05a('0x2e')){_0x5bc3bc['or']('i.fax\x20LIKE\x20?',_0x29c7b5+'%');}else if(_0x429d91===_0xf05a('0x2f')){_0x5bc3bc['or'](_0xf05a('0x30'),_0x29c7b5+'%');}}else if(_0x429d91===_0xf05a('0x31')&&qs[_0xf05a('0x32')](_0x29c7b5)){_0x5bc3bc['or']('c.email\x20LIKE\x20?',_0x29c7b5+'%');}else{if(_0x429d91===_0xf05a('0x31')){_0x5bc3bc['or'](_0xf05a('0x33'),qs[_0xf05a('0x34')](_0x29c7b5,!![]))['or'](_0xf05a('0x35'),qs[_0xf05a('0x34')](_0x29c7b5));}else if(_0x429d91!==_0xf05a('0x2e')){_0x5bc3bc['or']('MATCH\x20(me.body)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0xf05a('0x34')](_0x29c7b5));}_0x5bc3bc['or'](_0xf05a('0x36'),qs[_0xf05a('0x34')](_0x29c7b5,!![]),null);}}return _0x5bc3bc;}function parseAdvancedSearchFilter(_0x321a68,_0xf80e8c){var _0x4edcba=getSqlClauses();var _0xa34ea7=as['parseSearch'](_0x321a68);var _0x4feb56=_0xa34ea7[_0xf05a('0x37')];for(var _0x25fa3c=0x0;_0x25fa3c<_0xa34ea7[_0xf05a('0x38')][_0xf05a('0x15')];_0x25fa3c++){var _0x10a64b=_0xa34ea7['conditions'][_0x25fa3c];var _0x27bf2d='i';var _0x35be25=_[_0xf05a('0x39')](_0xf80e8c,[_0xf05a('0xa'),_0x10a64b[_0xf05a('0x9')]]);if(_0x35be25){var _0x49470=as['buildExpression'](_0x27bf2d,_0x35be25[_0xf05a('0x3a')],_0x10a64b);_0x4edcba[_0xf05a('0x3b')][_0x4feb56](_0x49470[_0xf05a('0x3c')],_0x49470['value']['start'],_0x49470['value']['end']);}else{switch(_0x10a64b[_0xf05a('0x9')]){case _0xf05a('0x3d'):var _0x12d8bc=parseReadParameter(_0x10a64b[_0xf05a('0x3e')]);_0x4edcba[_0xf05a('0x3f')][_0xf05a('0x40')](_0x12d8bc);break;case _0xf05a('0x41'):if(_0x10a64b[_0xf05a('0x42')]===_0xf05a('0x43')){if(_0x10a64b[_0xf05a('0x3e')][_0xf05a('0x44')]('\x20')[_0xf05a('0x15')]>0x1){_0x4edcba[_0xf05a('0x45')][_0x4feb56](_0xf05a('0x36'),qs['getFullTextValue'](_0x10a64b['value'],!![]),null);}else{var _0xf2a5ba='%'+_0x10a64b[_0xf05a('0x3e')]+'%';_0x4edcba[_0xf05a('0x45')][_0x4feb56](_0xf05a('0x46'),_0xf2a5ba,_0xf2a5ba,_0xf2a5ba);}}else{_0x35be25=_[_0xf05a('0x39')](_0xf80e8c,['name',_0xf05a('0x47')]);_0x10a64b[_0xf05a('0x9')]=_0xf05a('0x47');_0x49470=as[_0xf05a('0x48')](_0x27bf2d,_0x35be25[_0xf05a('0x3a')],_0x10a64b);_0x4edcba[_0xf05a('0x45')][_0x4feb56](_0x49470[_0xf05a('0x3c')],_0x49470[_0xf05a('0x3e')][_0xf05a('0x49')],_0x49470[_0xf05a('0x3e')][_0xf05a('0x4a')]);}break;case'Tag':var _0x5dd35c=_0x10a64b[_0xf05a('0x3e')]['split'](',')['map'](function(_0x1b0000){return Number(_0x1b0000);});var _0x12daca=parseTagParameter(_0x5dd35c);_0x4edcba['tags'][_0xf05a('0x4b')][_0xf05a('0x40')](_0x12daca);_0x4edcba[_0xf05a('0x4c')][_0xf05a('0x4d')]=_0x5dd35c;break;case _0xf05a('0x4e'):if(_0x10a64b[_0xf05a('0x42')]===_0xf05a('0x43')){_0x4edcba[_0xf05a('0x4f')][_0x4feb56](_0xf05a('0x50'),'%'+_0x10a64b[_0xf05a('0x3e')]+'%',null);}else{_0x35be25=_[_0xf05a('0x39')](_0xf80e8c,[_0xf05a('0xa'),_0xf05a('0x51')]);_0x10a64b[_0xf05a('0x9')]=_0xf05a('0x51');_0x49470=as[_0xf05a('0x48')](_0x27bf2d,_0x35be25[_0xf05a('0x3a')],_0x10a64b);_0x4edcba[_0xf05a('0x4f')][_0x4feb56](_0x49470['text'],_0x49470[_0xf05a('0x3e')][_0xf05a('0x49')],_0x49470['value'][_0xf05a('0x4a')]);}break;case'body':case'plainBody':_0x49470=as[_0xf05a('0x48')]('me',null,_0x10a64b);_0x4edcba[_0xf05a('0x52')][_0x4feb56](_0x49470[_0xf05a('0x3c')],_0x49470['value'][_0xf05a('0x49')],_0x49470[_0xf05a('0x3e')][_0xf05a('0x4a')]);break;}}}return _0x4edcba;}function parseModelFields(_0x337c31,_0x5a7a41,_0x108833){var _0x26ff71=utils[_0xf05a('0x18')](_0x337c31);var _0x56ab54=squel[_0xf05a('0x23')]();var _0x189377=_(_0x5a7a41)[_0xf05a('0x53')]()[_0xf05a('0x54')](function(_0x9d5e7d){return _['some'](_0x108833,[_0xf05a('0xa'),_0x9d5e7d])?_0x9d5e7d:undefined;})[_0xf05a('0x55')]()[_0xf05a('0x3e')]();if(_0x189377[_0xf05a('0x15')]>0x0){_0x189377[_0xf05a('0x25')](function(_0x106db4){if(_0x106db4===_0x26ff71){_0x56ab54[_0xf05a('0x40')]('i.'+_0x26ff71+'\x20IN\x20?',[][_0xf05a('0x56')](_0x5a7a41[_0x106db4]));}else if(_0x106db4===_0xf05a('0x57')){var _0x15979a=JSON[_0xf05a('0x58')](_0x5a7a41[_0x106db4])[_0xf05a('0x59')];var _0x369026=JSON[_0xf05a('0x58')](_0x5a7a41[_0x106db4])[_0xf05a('0x5a')];_0x56ab54[_0xf05a('0x40')](_0xf05a('0x5b'),_0x15979a,_0x369026);}else{if(_0x5a7a41[_0x106db4]==='null'){_0x56ab54[_0xf05a('0x40')]('i.'+_0x106db4+_0xf05a('0x5c'));}else{_0x56ab54[_0xf05a('0x40')]('i.'+_0x106db4+_0xf05a('0x5d'),_0x5a7a41[_0x106db4]);}}});}return _0x56ab54;}function parseQueryParameters(_0x5777ad,_0x51fb68,_0x512888){var _0x259d40=getSqlClauses();return Promise['resolve']()[_0xf05a('0x5e')](function(){return parseModelFields(_0x5777ad,_0x51fb68,_0x512888);})[_0xf05a('0x5e')](function(_0x5e8aa1){_0x259d40['fields']['and'](_0x5e8aa1);return parseReadParameter(_0x51fb68[_0xf05a('0x3f')]);})[_0xf05a('0x5e')](function(_0x1386e8){_0x259d40[_0xf05a('0x3f')]['and'](_0x1386e8);return parseTagParameter(_0x51fb68[_0xf05a('0x5f')]);})['then'](function(_0xb407a){_0x259d40['tags'][_0xf05a('0x4b')][_0xf05a('0x40')](_0xb407a);return parseSearchFilter(_0x5777ad,_0x51fb68[_0xf05a('0x60')]);})[_0xf05a('0x5e')](function(_0x50dd09){_0x259d40[_0xf05a('0x60')]=_0x50dd09;return _0x259d40;});}function checkAccountsRestrictions(_0x8859b7,_0x4a448b,_0xbfec96){var _0x41f6a2=utils[_0xf05a('0x18')](_0x8859b7);var _0x342657=_0xf05a('0x61')+_[_0xf05a('0x62')](_0x8859b7)+(_0x8859b7===_0xf05a('0x63')?_0xf05a('0x64'):_0xf05a('0x65'));var _0x68267b=squel[_0xf05a('0x23')]();return Promise[_0xf05a('0x66')]()[_0xf05a('0x5e')](function(){if(_0xbfec96[_0xf05a('0x7')]&&_0x4a448b[_0xf05a('0x5')]===_0xf05a('0x6')){return _0x4a448b[_0x342657]({'attributes':['id'],'raw':!![]});}})['then'](function(_0x27b399){if(_0x27b399){if(_0x27b399[_0xf05a('0x15')]===0x0){_0x68267b[_0xf05a('0x40')]('i.'+_0x41f6a2+_0xf05a('0x5c'));}else{_0x68267b[_0xf05a('0x40')]('i.'+_0x41f6a2+'\x20IN\x20?',_[_0xf05a('0x54')](_0x27b399,'id'));}}else if(!_0xbfec96[_0x41f6a2]){_0x68267b[_0xf05a('0x40')]('i.'+_0x41f6a2+_0xf05a('0x67'));}})[_0xf05a('0x5e')](function(){return _0x68267b;});}function getClosedOrderClause(_0x3b09f0,_0x3abe29){var _0x628513='';var _0x182e48=[_0xf05a('0x68'),_0xf05a('0x69'),_0xf05a('0x6a')];if(_0x3b09f0==='mail'){_0x182e48[_0xf05a('0x6b')](_0xf05a('0x6c'));}if(_0x3abe29[_0xf05a('0x6d')]==='0'&&_0x3b09f0==='mail'){_0x628513=_0xf05a('0x6c');}else{if(_0x3abe29[_0xf05a('0x6d')]==='1'){_0x182e48[_0xf05a('0x6e')]();}_0x628513=_0xf05a('0x6f')+_0x182e48[_0xf05a('0x70')](',\x20')+')';}return _0x628513;}function getFilteredInteractions(_0x567328,_0x5cedbd,_0x13f436,_0x3b6543){var _0x4e256a=utils[_0xf05a('0xe')](_0x567328);var _0x182d4c=_[_0xf05a('0x62')](_0x567328)+_0xf05a('0x71');var _0x374906=[];var _0x2bafc1=getTagsQuery();var _0x5cf4ad={'type':db['Sequelize'][_0xf05a('0x72')][_0xf05a('0x73')],'raw':!![]};var _0x1d57df=[];var _0x487655=[];return db[_0xf05a('0x74')][_0xf05a('0x75')](_0x2bafc1[_0xf05a('0x76')](),_0x5cf4ad)[_0xf05a('0x5e')](function(_0x135e32){_0x374906=_[_0xf05a('0x77')](_0x135e32,'id');_0x5cf4ad=_[_0xf05a('0x78')](_0x5cf4ad,{'model':db[_0x182d4c],'mapToModel':!![],'nest':!![]});if(_0x13f436['fields']){_0x3b6543[_0xf05a('0x79')][_0xf05a('0x25')](function(_0x165b3c){_0x5cedbd[_0xf05a('0x9')]('i.'+_0x165b3c);});}else{_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x7a'),_0xf05a('0x3d'));_0x5cedbd['field']('a.key','Account.key');_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x7b'),'Account.mandatoryDisposition');if(_0x567328===_0xf05a('0x31')){_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x7c'),_0xf05a('0x7d'));_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x7e'),_0xf05a('0x7f'));_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x80'));_0x5cedbd['field'](_0xf05a('0x81'));_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x82'));_0x5cedbd['field'](_0xf05a('0x83'));_0x5cedbd['field'](_0xf05a('0x84'));_0x5cedbd['field'](_0xf05a('0x85'));_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x86'));_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x87'));_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x88'));_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x6a'));_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x69'));_0x5cedbd['field'](_0xf05a('0x68'));_0x5cedbd['field'](_0xf05a('0x6c'));_0x5cedbd[_0xf05a('0x9')]('i.to');_0x5cedbd['field'](_0xf05a('0x89'));_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x8a'));_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x8b'));}else if(_0x567328===_0xf05a('0x2f')){_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x8c'),'contactName');}else{_0x5cedbd[_0xf05a('0x9')]('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',_0xf05a('0x7f'));}if(_0x567328!=='mail'){_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x8d'));}_0x5cedbd['field'](_0xf05a('0x8e'),_0xf05a('0x8f'));_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x90'),_0xf05a('0x91'));_0x5cedbd['field'](_0xf05a('0x92'),_0xf05a('0x93'));_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x94'),_0xf05a('0x95'));_0x5cedbd[_0xf05a('0x9')]('c.mobile','Contact.mobile');_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x96'),_0xf05a('0x97'));_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x98'),_0xf05a('0x99'));_0x5cedbd['field']('o.internal','Owner.internal');_0x5cedbd[_0xf05a('0x9')](_0xf05a('0x9a'),_0xf05a('0x9b'));}if(_0x3b6543[_0xf05a('0x9c')]){_0x5cedbd[_0xf05a('0x9c')](_0x3b6543['limit']);}if(_0x3b6543[_0xf05a('0x9d')]){_0x5cedbd['offset'](_0x3b6543[_0xf05a('0x9d')]);}return db[_0xf05a('0x74')]['query'](_0x5cedbd[_0xf05a('0x76')](),_0x5cf4ad);})[_0xf05a('0x5e')](function(_0x4f4603){_0x1d57df=_0x4f4603;var _0x25bca1=getUsersQuery(_0x567328,_0x1d57df);return db['sequelize'][_0xf05a('0x75')](_0x25bca1[_0xf05a('0x76')](),_0x5cf4ad);})[_0xf05a('0x5e')](function(_0x339959){_0x487655=_['groupBy'](_0x339959,_0x4e256a);if(_0x567328==='mail'){return db['Setting'][_0xf05a('0x9e')]({'attributes':[_0xf05a('0x9f')],'raw':!![]});}})[_0xf05a('0x5e')](function(_0x496d4d){var _0x368b46=_0x496d4d?_0x496d4d[_0xf05a('0x9f')]:undefined;var _0x3260d0=_0x1d57df[_0xf05a('0x54')](function(_0x113552){return updateInteraction(_0x113552,_0x374906,_0x487655,_0x368b46);});return Promise[_0xf05a('0xa0')](_0x3260d0);});}function countFilteredInteractions(_0x58ee93,_0x1b66a4){var _0x20ce71=_0x58ee93['clone']();_0x20ce71['field'](_0xf05a('0xa1'));_0x20ce71[_0xf05a('0x9')](_0xf05a('0x7a'),'unreadMessages');var _0x405de0=utils['getSelectedTags'](_0x1b66a4);if(!_[_0xf05a('0xa2')](_0x405de0)){_0x20ce71[_0xf05a('0x16')](_0xf05a('0xa3'),_0x405de0);}var _0x2c8a93={'type':db[_0xf05a('0xa4')][_0xf05a('0x72')][_0xf05a('0x73')],'raw':!![]};return db['sequelize']['query'](_0x20ce71[_0xf05a('0x76')](),_0x2c8a93);}module[_0xf05a('0xa5')]={'checkAccountsRestrictions':checkAccountsRestrictions,'countFilteredInteractions':countFilteredInteractions,'getClosedOrderClause':getClosedOrderClause,'getFilteredInteractions':getFilteredInteractions,'getInteractionsQuery':getInteractionsQuery,'parseAdvancedSearchFilter':parseAdvancedSearchFilter,'parseQueryParameters':parseQueryParameters,'skipInteractionsQuery':skipInteractionsQuery};