Built motion from commit e02f907f.|2.6.14
[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 _0xd0ab=['enableEmailPreview','all','clone','COUNT(*)','isEmpty','lodash','squel','../parsers/advancedSearch','../parsers/qs','updateInteraction','../../mysqldb','role','select','field','name','color','from','tools_tags','getInteractionFK','user_has_','_interactions','u.id','u.fullname','ui.','users','length','where','\x20IN\x20?','map','getInteractionsTables','interactions','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','left_join','accounts','messages','me.','\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','getSelectedTags','forEach','unreadMessages\x20{OPERATOR}\x200','replace','{OPERATOR}','isNumeric','i.id\x20LIKE\x20?','sms','fax','i.fax\x20LIKE\x20?','openchannel','i.from\x20LIKE\x20?','mail','c.email\x20LIKE\x20?','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)','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','parseSearch','conditions','find','type','default','text','start','value','end','read','and','operator','$substring','split','contact','ContactId','buildExpression','Tag','tags','clause','ids','user','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','body','plainBody','getAccountFK','keys','some','compact','concat','createdAt','parse','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20=\x20?','resolve','then','fields','tag','filter','get','Websites','search','agent','\x20IS\x20NOT\x20NULL','i.secondDisposition','unshift','i.substatus','closed','join','capitalize','Interaction','Sequelize','QueryTypes','SELECT','sequelize','query','toString','keyBy','merge','unreadMessages','a.key','a.mandatoryDisposition','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.createdAt','i.updatedAt','i.closed','i.attach','i.lastMsgAt','i.lastMsgDirection','i.subject','i.disposition','i.thirdDisposition','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','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','Contact.firstName','Contact.lastName','c.email','Contact.email','c.phone','Contact.phone','c.mobile','Contact.mobile','c.fax','Contact.fax','o.fullname','Owner.fullname','o.internal','GROUP_CONCAT(DISTINCT\x20t.id)','TagIds','limit','offset','Setting','findOne'];(function(_0x4ea571,_0x524bc2){var _0x122eba=function(_0x2b82be){while(--_0x2b82be){_0x4ea571['push'](_0x4ea571['shift']());}};_0x122eba(++_0x524bc2);}(_0xd0ab,0x147));var _0xbd0a=function(_0x149e18,_0xa2e269){_0x149e18=_0x149e18-0x0;var _0x14112f=_0xd0ab[_0x149e18];return _0x14112f;};'use strict';var _=require(_0xbd0a('0x0'));var squel=require(_0xbd0a('0x1'));var as=require(_0xbd0a('0x2'));var qs=require(_0xbd0a('0x3'));var updateInteraction=require('./update-interaction')[_0xbd0a('0x4')];var utils=require('./utils');var db=require(_0xbd0a('0x5'))['db'];function skipInteractionsQuery(_0x4b86fe,_0x23fb63,_0x478503){var _0x2ee192=![];var _0x52a28c=utils['getAccountFK'](_0x4b86fe);if(_0x23fb63[_0xbd0a('0x6')]==='agent'&&!_0x478503['search']&&!_0x478503[_0x52a28c]){_0x2ee192=!![];}return _0x2ee192;}function getTagsQuery(){return squel[_0xbd0a('0x7')]()[_0xbd0a('0x8')]('id')[_0xbd0a('0x8')](_0xbd0a('0x9'))[_0xbd0a('0x8')](_0xbd0a('0xa'))[_0xbd0a('0xb')](_0xbd0a('0xc'));}function getUsersQuery(_0x411bb4,_0x4c6881){var _0x560674=utils[_0xbd0a('0xd')](_0x411bb4);var _0x1da269=_0xbd0a('0xe')+_0x411bb4+_0xbd0a('0xf');var _0xbb99f=squel[_0xbd0a('0x7')]()[_0xbd0a('0x8')](_0xbd0a('0x10'))[_0xbd0a('0x8')](_0xbd0a('0x11'))[_0xbd0a('0x8')](_0xbd0a('0x12')+_0x560674)[_0xbd0a('0xb')](_0x1da269,'ui')['left_join'](_0xbd0a('0x13'),'u','u.id\x20=\x20ui.UserId');if(_0x4c6881[_0xbd0a('0x14')]>0x0){_0xbb99f[_0xbd0a('0x15')](_0xbd0a('0x12')+_0x560674+_0xbd0a('0x16'),_[_0xbd0a('0x17')](_0x4c6881,'id'));}return _0xbb99f;}function getInteractionsQuery(_0x5da037){var _0x42ab19=utils[_0xbd0a('0x18')](_0x5da037);var _0x469752=utils['getAccountFK'](_0x5da037);var _0x1a14c5=utils[_0xbd0a('0xd')](_0x5da037);return squel[_0xbd0a('0x7')]()[_0xbd0a('0xb')](_0x42ab19[_0xbd0a('0x19')],'i')['left_join']('cm_contacts','c',_0xbd0a('0x1a'))[_0xbd0a('0x1b')]('users','o','o.id\x20=\x20i.UserId')[_0xbd0a('0x1b')](_0x42ab19[_0xbd0a('0x1c')],'a','a.id\x20=\x20i.'+_0x469752)[_0xbd0a('0x1b')](_0x42ab19[_0xbd0a('0x1d')],'me',_0xbd0a('0x1e')+_0x1a14c5+_0xbd0a('0x1f'))['left_join'](_0x42ab19['interactionsTags'],'it','it.'+_0x1a14c5+'\x20=\x20i.id')[_0xbd0a('0x1b')](_0xbd0a('0xc'),'t',_0xbd0a('0x20'));}function getSqlClauses(){var _0x5dbc52={'body':squel[_0xbd0a('0x21')](),'contact':squel['expr'](),'default':squel[_0xbd0a('0x21')](),'fields':squel[_0xbd0a('0x21')](),'filter':squel[_0xbd0a('0x21')](),'read':squel[_0xbd0a('0x21')](),'tags':{'clause':squel[_0xbd0a('0x21')](),'ids':null},'user':squel[_0xbd0a('0x21')]()};return _0x5dbc52;}function parseTagParameter(_0x55378a){var _0x5c10c5=squel['expr']();if(_0x55378a){var _0x42ce34=utils[_0xbd0a('0x22')](_0x55378a);_0x42ce34[_0xbd0a('0x23')](function(_0x102a31){_0x5c10c5['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x102a31+',%');});}return _0x5c10c5;}function parseReadParameter(_0x5226ac){var _0x3a20fa='';if(_0x5226ac){_0x3a20fa=_0xbd0a('0x24');if(_0x5226ac==='1'){_0x3a20fa=_0x3a20fa[_0xbd0a('0x25')](_0xbd0a('0x26'),'=');}else{_0x3a20fa=_0x3a20fa[_0xbd0a('0x25')](_0xbd0a('0x26'),'>');}}return _0x3a20fa;}function parseSearchFilter(_0x27ced9,_0xca745e){var _0x28bb07=squel['expr']();if(_0xca745e){var _0x3803ee=_0xca745e[_0xbd0a('0x25')]('\x5c','\x5c\x5c')[_0xbd0a('0x25')](/'/g,'\x27\x27');if(qs[_0xbd0a('0x27')](_0x3803ee)){_0x28bb07['or'](_0xbd0a('0x28'),_0x3803ee+'%');if([_0xbd0a('0x29'),'whatsapp']['includes'](_0x27ced9)){_0x28bb07['or']('i.phone\x20LIKE\x20?',_0x3803ee+'%');}else if(_0x27ced9===_0xbd0a('0x2a')){_0x28bb07['or'](_0xbd0a('0x2b'),_0x3803ee+'%');}else if(_0x27ced9===_0xbd0a('0x2c')){_0x28bb07['or'](_0xbd0a('0x2d'),_0x3803ee+'%');}}else if(_0x27ced9===_0xbd0a('0x2e')&&qs['isEmail'](_0x3803ee)){_0x28bb07['or'](_0xbd0a('0x2f'),_0x3803ee+'%');}else{if(_0x27ced9===_0xbd0a('0x2e')){_0x28bb07['or'](_0xbd0a('0x30'),qs[_0xbd0a('0x31')](_0x3803ee,!![]))['or'](_0xbd0a('0x32'),qs['getFullTextValue'](_0x3803ee));}else if(_0x27ced9!==_0xbd0a('0x2a')){_0x28bb07['or'](_0xbd0a('0x33'),qs[_0xbd0a('0x31')](_0x3803ee));}_0x28bb07['or'](_0xbd0a('0x34'),qs['getFullTextValue'](_0x3803ee,!![]),null);}}return _0x28bb07;}function parseAdvancedSearchFilter(_0x4b9756,_0x20f777){var _0x162a47=getSqlClauses();var _0x465335=as[_0xbd0a('0x35')](_0x4b9756);var _0x3c6b5d=_0x465335['sqlOperator'];for(var _0x2aa482=0x0;_0x2aa482<_0x465335[_0xbd0a('0x36')][_0xbd0a('0x14')];_0x2aa482++){var _0x6011b6=_0x465335[_0xbd0a('0x36')][_0x2aa482];var _0x2d0be6='i';var _0x1c00fe=_[_0xbd0a('0x37')](_0x20f777,[_0xbd0a('0x9'),_0x6011b6[_0xbd0a('0x8')]]);if(_0x1c00fe){var _0x386203=as['buildExpression'](_0x2d0be6,_0x1c00fe[_0xbd0a('0x38')],_0x6011b6);_0x162a47[_0xbd0a('0x39')][_0x3c6b5d](_0x386203[_0xbd0a('0x3a')],_0x386203['value'][_0xbd0a('0x3b')],_0x386203[_0xbd0a('0x3c')][_0xbd0a('0x3d')]);}else{switch(_0x6011b6[_0xbd0a('0x8')]){case'unreadMessages':var _0xe75aab=parseReadParameter(_0x6011b6['value']);_0x162a47[_0xbd0a('0x3e')][_0xbd0a('0x3f')](_0xe75aab);break;case'Contact':if(_0x6011b6[_0xbd0a('0x40')]===_0xbd0a('0x41')){if(_0x6011b6['value'][_0xbd0a('0x42')]('\x20')['length']>0x1){_0x162a47['contact'][_0x3c6b5d](_0xbd0a('0x34'),qs[_0xbd0a('0x31')](_0x6011b6[_0xbd0a('0x3c')],!![]),null);}else{var _0x55fa16='%'+_0x6011b6['value']+'%';_0x162a47[_0xbd0a('0x43')][_0x3c6b5d]('c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?',_0x55fa16,_0x55fa16,_0x55fa16);}}else{_0x1c00fe=_[_0xbd0a('0x37')](_0x20f777,[_0xbd0a('0x9'),_0xbd0a('0x44')]);_0x6011b6['field']=_0xbd0a('0x44');_0x386203=as[_0xbd0a('0x45')](_0x2d0be6,_0x1c00fe[_0xbd0a('0x38')],_0x6011b6);_0x162a47[_0xbd0a('0x43')][_0x3c6b5d](_0x386203[_0xbd0a('0x3a')],_0x386203['value'][_0xbd0a('0x3b')],_0x386203['value'][_0xbd0a('0x3d')]);}break;case _0xbd0a('0x46'):var _0x1e2da4=_0x6011b6['value'][_0xbd0a('0x42')](',')['map'](function(_0x3f840b){return Number(_0x3f840b);});var _0xcbace1=parseTagParameter(_0x1e2da4);_0x162a47[_0xbd0a('0x47')][_0xbd0a('0x48')][_0xbd0a('0x3f')](_0xcbace1);_0x162a47[_0xbd0a('0x47')][_0xbd0a('0x49')]=_0x1e2da4;break;case'User':if(_0x6011b6[_0xbd0a('0x40')]===_0xbd0a('0x41')){_0x162a47[_0xbd0a('0x4a')][_0x3c6b5d](_0xbd0a('0x4b'),'%'+_0x6011b6[_0xbd0a('0x3c')]+'%',null);}else{_0x1c00fe=_[_0xbd0a('0x37')](_0x20f777,[_0xbd0a('0x9'),'UserId']);_0x6011b6[_0xbd0a('0x8')]=_0xbd0a('0x4c');_0x386203=as['buildExpression'](_0x2d0be6,_0x1c00fe[_0xbd0a('0x38')],_0x6011b6);_0x162a47[_0xbd0a('0x4a')][_0x3c6b5d](_0x386203[_0xbd0a('0x3a')],_0x386203[_0xbd0a('0x3c')][_0xbd0a('0x3b')],_0x386203[_0xbd0a('0x3c')]['end']);}break;case _0xbd0a('0x4d'):case _0xbd0a('0x4e'):_0x386203=as[_0xbd0a('0x45')]('me',null,_0x6011b6);_0x162a47[_0xbd0a('0x4d')][_0x3c6b5d](_0x386203[_0xbd0a('0x3a')],_0x386203[_0xbd0a('0x3c')][_0xbd0a('0x3b')],_0x386203[_0xbd0a('0x3c')][_0xbd0a('0x3d')]);break;}}}return _0x162a47;}function parseModelFields(_0x2cb086,_0x126fc4,_0x3b0345){var _0x15410c=utils[_0xbd0a('0x4f')](_0x2cb086);var _0x22596b=squel[_0xbd0a('0x21')]();var _0x5293d3=_(_0x126fc4)[_0xbd0a('0x50')]()['map'](function(_0x553fe9){return _[_0xbd0a('0x51')](_0x3b0345,['name',_0x553fe9])?_0x553fe9:undefined;})[_0xbd0a('0x52')]()[_0xbd0a('0x3c')]();if(_0x5293d3[_0xbd0a('0x14')]>0x0){_0x5293d3[_0xbd0a('0x23')](function(_0xe762a2){if(_0xe762a2===_0x15410c){_0x22596b[_0xbd0a('0x3f')]('i.'+_0x15410c+_0xbd0a('0x16'),[][_0xbd0a('0x53')](_0x126fc4[_0xe762a2]));}else if(_0xe762a2===_0xbd0a('0x54')){var _0x2a4078=JSON[_0xbd0a('0x55')](_0x126fc4[_0xe762a2])[_0xbd0a('0x56')];var _0x546db4=JSON['parse'](_0x126fc4[_0xe762a2])[_0xbd0a('0x57')];_0x22596b['and'](_0xbd0a('0x58'),_0x2a4078,_0x546db4);}else{if(_0x126fc4[_0xe762a2]===_0xbd0a('0x59')){_0x22596b[_0xbd0a('0x3f')]('i.'+_0xe762a2+'\x20IS\x20NULL');}else{_0x22596b[_0xbd0a('0x3f')]('i.'+_0xe762a2+_0xbd0a('0x5a'),_0x126fc4[_0xe762a2]);}}});}return _0x22596b;}function parseQueryParameters(_0x3f69e4,_0x3f77c9,_0x54c52b){var _0x3024ab=getSqlClauses();return Promise[_0xbd0a('0x5b')]()['then'](function(){return parseModelFields(_0x3f69e4,_0x3f77c9,_0x54c52b);})[_0xbd0a('0x5c')](function(_0x556a2a){_0x3024ab[_0xbd0a('0x5d')][_0xbd0a('0x3f')](_0x556a2a);return parseReadParameter(_0x3f77c9['read']);})[_0xbd0a('0x5c')](function(_0x76b289){_0x3024ab[_0xbd0a('0x3e')][_0xbd0a('0x3f')](_0x76b289);return parseTagParameter(_0x3f77c9[_0xbd0a('0x5e')]);})['then'](function(_0x38be18){_0x3024ab[_0xbd0a('0x47')][_0xbd0a('0x48')][_0xbd0a('0x3f')](_0x38be18);return parseSearchFilter(_0x3f69e4,_0x3f77c9[_0xbd0a('0x5f')]);})['then'](function(_0x1cbc8b){_0x3024ab[_0xbd0a('0x5f')]=_0x1cbc8b;return _0x3024ab;});}function checkAccountsRestrictions(_0x4f34b4,_0x382119,_0x119219){var _0x40432c=utils['getAccountFK'](_0x4f34b4);var _0x3c8440=_0xbd0a('0x60')+_['capitalize'](_0x4f34b4)+(_0x4f34b4==='chat'?_0xbd0a('0x61'):'Accounts');var _0x589a6b=squel['expr']();return Promise[_0xbd0a('0x5b')]()['then'](function(){if(_0x119219[_0xbd0a('0x62')]&&_0x382119['role']===_0xbd0a('0x63')){return _0x382119[_0x3c8440]({'attributes':['id'],'raw':!![]});}})[_0xbd0a('0x5c')](function(_0x480479){if(_0x480479){if(_0x480479['length']===0x0){_0x589a6b[_0xbd0a('0x3f')]('i.'+_0x40432c+'\x20IS\x20NULL');}else{_0x589a6b[_0xbd0a('0x3f')]('i.'+_0x40432c+_0xbd0a('0x16'),_[_0xbd0a('0x17')](_0x480479,'id'));}}else if(!_0x119219[_0x40432c]){_0x589a6b[_0xbd0a('0x3f')]('i.'+_0x40432c+_0xbd0a('0x64'));}})['then'](function(){return _0x589a6b;});}function getClosedOrderClause(_0x1307ad,_0x50fb9b){var _0xe7cb91='';var _0x531822=['i.thirdDisposition',_0xbd0a('0x65'),'i.disposition'];if(_0x1307ad===_0xbd0a('0x2e')){_0x531822[_0xbd0a('0x66')](_0xbd0a('0x67'));}if(_0x50fb9b[_0xbd0a('0x68')]==='0'&&_0x1307ad==='mail'){_0xe7cb91=_0xbd0a('0x67');}else{if(_0x50fb9b['closed']==='1'){_0x531822['shift']();}_0xe7cb91='CONCAT_WS(\x27\x27,\x20'+_0x531822[_0xbd0a('0x69')](',\x20')+')';}return _0xe7cb91;}function getFilteredInteractions(_0x25e849,_0x3dcbc4,_0x187fdb,_0x129a22){var _0x415e8d=utils[_0xbd0a('0xd')](_0x25e849);var _0x149e3b=_[_0xbd0a('0x6a')](_0x25e849)+_0xbd0a('0x6b');var _0x44f7a4=[];var _0x4aec95=getTagsQuery();var _0x1d9086={'type':db[_0xbd0a('0x6c')][_0xbd0a('0x6d')][_0xbd0a('0x6e')],'raw':!![]};var _0x46e386=[];var _0x58cdaa=[];return db[_0xbd0a('0x6f')][_0xbd0a('0x70')](_0x4aec95[_0xbd0a('0x71')](),_0x1d9086)[_0xbd0a('0x5c')](function(_0x298ef1){_0x44f7a4=_[_0xbd0a('0x72')](_0x298ef1,'id');_0x1d9086=_[_0xbd0a('0x73')](_0x1d9086,{'model':db[_0x149e3b],'mapToModel':!![],'nest':!![]});if(_0x187fdb[_0xbd0a('0x5d')]){_0x129a22['attributes'][_0xbd0a('0x23')](function(_0x18d5a3){_0x3dcbc4[_0xbd0a('0x8')]('i.'+_0x18d5a3);});}else{_0x3dcbc4[_0xbd0a('0x8')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)',_0xbd0a('0x74'));_0x3dcbc4['field'](_0xbd0a('0x75'),'Account.key');_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x76'),'Account.mandatoryDisposition');if(_0x25e849===_0xbd0a('0x2e')){_0x3dcbc4[_0xbd0a('0x8')]('a.email',_0xbd0a('0x77'));_0x3dcbc4['field'](_0xbd0a('0x78'),_0xbd0a('0x79'));_0x3dcbc4['field']('i.id');_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x7a'));_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x7b'));_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x7c'));_0x3dcbc4[_0xbd0a('0x8')]('i.closedAt');_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x7d'));_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x7e'));_0x3dcbc4['field'](_0xbd0a('0x7f'));_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x80'));_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x81'));_0x3dcbc4[_0xbd0a('0x8')]('i.secondDisposition');_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x82'));_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x67'));_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x83'));_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x84'));_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x85'));_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x86'));}else if(_0x25e849===_0xbd0a('0x2c')){_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x87'),_0xbd0a('0x79'));}else{_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x88'),'contactName');}if(_0x25e849!==_0xbd0a('0x2e')){_0x3dcbc4[_0xbd0a('0x8')]('i.*');}_0x3dcbc4[_0xbd0a('0x8')]('c.firstName',_0xbd0a('0x89'));_0x3dcbc4[_0xbd0a('0x8')]('c.lastName',_0xbd0a('0x8a'));_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x8b'),_0xbd0a('0x8c'));_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x8d'),_0xbd0a('0x8e'));_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x8f'),_0xbd0a('0x90'));_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x91'),_0xbd0a('0x92'));_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x93'),_0xbd0a('0x94'));_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x95'),'Owner.internal');_0x3dcbc4[_0xbd0a('0x8')](_0xbd0a('0x96'),_0xbd0a('0x97'));}if(_0x129a22['limit']){_0x3dcbc4[_0xbd0a('0x98')](_0x129a22[_0xbd0a('0x98')]);}if(_0x129a22[_0xbd0a('0x99')]){_0x3dcbc4[_0xbd0a('0x99')](_0x129a22['offset']);}return db[_0xbd0a('0x6f')][_0xbd0a('0x70')](_0x3dcbc4[_0xbd0a('0x71')](),_0x1d9086);})[_0xbd0a('0x5c')](function(_0x3ff69e){_0x46e386=_0x3ff69e;var _0x1dab8f=getUsersQuery(_0x25e849,_0x46e386);return db[_0xbd0a('0x6f')][_0xbd0a('0x70')](_0x1dab8f[_0xbd0a('0x71')](),_0x1d9086);})[_0xbd0a('0x5c')](function(_0x1de504){_0x58cdaa=_['groupBy'](_0x1de504,_0x415e8d);if(_0x25e849==='mail'){return db[_0xbd0a('0x9a')][_0xbd0a('0x9b')]({'attributes':[_0xbd0a('0x9c')],'raw':!![]});}})[_0xbd0a('0x5c')](function(_0x10fd4a){var _0x500b6e=_0x10fd4a?_0x10fd4a[_0xbd0a('0x9c')]:undefined;var _0x1dc327=_0x46e386['map'](function(_0x19bf47){return updateInteraction(_0x19bf47,_0x44f7a4,_0x58cdaa,_0x500b6e);});return Promise[_0xbd0a('0x9d')](_0x1dc327);});}function countFilteredInteractions(_0x962696,_0x23acaa){var _0xff2d68=_0x962696[_0xbd0a('0x9e')]();_0xff2d68['field'](_0xbd0a('0x9f'));_0xff2d68[_0xbd0a('0x8')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)',_0xbd0a('0x74'));var _0x3d0ee7=utils[_0xbd0a('0x22')](_0x23acaa);if(!_[_0xbd0a('0xa0')](_0x3d0ee7)){_0xff2d68[_0xbd0a('0x15')]('t.id\x20IN\x20?',_0x3d0ee7);}var _0x530b94={'type':db['Sequelize'][_0xbd0a('0x6d')]['SELECT'],'raw':!![]};return db[_0xbd0a('0x6f')][_0xbd0a('0x70')](_0xff2d68[_0xbd0a('0x71')](),_0x530b94);}module['exports']={'checkAccountsRestrictions':checkAccountsRestrictions,'countFilteredInteractions':countFilteredInteractions,'getClosedOrderClause':getClosedOrderClause,'getFilteredInteractions':getFilteredInteractions,'getInteractionsQuery':getInteractionsQuery,'parseAdvancedSearchFilter':parseAdvancedSearchFilter,'parseQueryParameters':parseQueryParameters,'skipInteractionsQuery':skipInteractionsQuery};