Exemple #1
0
 def run(self):
     types = self.types
     receiver = self.receiver
     model = self.model
     sender = self.sender
     if isinstance(model, timelineTransationStatu):
         if 'app' in types:
             content = '您的项目%s时间轴状态已更新,点击查看最新状态' % model.timeline.proj.projtitleC
             receiver_alias = receiver.usercode
             platform = 'ios'
             bdage = 1
             n_extras = {}
             pushnotification(content, receiver_alias, platform, bdage,
                              n_extras)
         if 'email' in types:
             destination = receiver.email
             projectsign = 'LkZix2'
             vars = {
                 'projectC': model.timeline.proj.projtitleC,
                 'projectE': model.timeline.proj.projtitleE
             }
             xsendEmail(destination, projectsign, vars)
         if 'sms' in types:
             destination = receiver.mobile
             projectsign = 'WzSYg'
             vars = {'project': model.timeline.proj.projtitleC}
             xsendSms(destination, projectsign, vars)
         if 'webmsg' in types:
             content = '您的项目%s时间轴状态已更新,点击查看最新状态' % model.timeline.proj.projtitleC
             title = '时间轴状态更新'
             messagetype = 1
             saveMessage(content, messagetype, title, receiver, sender)
Exemple #2
0
 def run(self):
     types = self.types
     receiver = self.receiver
     model = self.model
     sender = self.sender
     if isinstance(model, timelineTransationStatu):
         if 'app' in types:
             content = ''
             receiver_alias = receiver.usercode
             platform = 'ios'
             bdage = 1
             n_extras = {}
             pushnotification(content, receiver_alias, platform, bdage,
                              n_extras)
         if 'email' in types:
             destination = receiver.email
             projectsign = ''
             vars = {}
             xsendEmail(destination, projectsign, vars)
         if 'sms' in types:
             destination = receiver.mobile
             projectsign = 'WzSYg'
             vars = {'code': 'sss', 'time': '10'}
             xsendSms(destination, projectsign, vars)
         if 'webmsg' in types:
             content = ''
             title = ''
             messagetype = 1
             saveMessage(content, messagetype, title, receiver, sender)
Exemple #3
0
 def run(self):
     types = self.types
     receiver = self.receiver
     model = self.model
     sender = self.sender
     if isinstance(model, dataroomdirectoryorfile):
         if 'app' in types:
             content = 'DataRoom有文件更新,点击查看详情'
             receiver_alias = receiver.usercode
             platform = 'ios'
             bdage = 1
             n_extras = {}
             pushnotification(content, receiver_alias, platform, bdage,
                              n_extras)
         if 'email' in types:
             destination = receiver.email
             projectsign = 'umZlP3'
             vars = {
                 'projectC': model.dataroom.proj.projtitleC,
                 'projectE': model.dataroom.proj.projtitleE
             }
             xsendEmail(destination, projectsign, vars)
         if 'sms' in types:
             destination = receiver.mobile
             projectsign = 'WzSYg'
             vars = {'project': model.dataroom.proj.projtitleC}
             xsendSms(destination, projectsign, vars)
         if 'webmsg' in types:
             content = '您的项目%s,DataRoom有文件更新,请登录后查看' % model.dataroom.proj.projtitleC
             title = 'DataRoom有文件更新,点击查看详情'
             messagetype = 1
             saveMessage(content, messagetype, title, receiver, sender)
Exemple #4
0
 def run(self):
     types = self.types
     receiver = self.receiver
     model = self.model
     sender = self.sender
     if isinstance(model, MyUser):
         if 'app' in types:
             content = '我们已收到您提交的注册申请。我们将在24小时内与您取得联系,进行用户信息审核,并明确您的意向和需求。请您耐心等待!审核结果将通过邮件和短信通知您。感谢您对多维海拓的关注!'
             receiver_alias = receiver.mobile
             platform = 'ios'
             bdage = 1
             n_extras = {}
             pushnotification(content=content,
                              receiver_alias=receiver_alias,
                              platform=platform,
                              bdage=bdage,
                              n_extras=n_extras)
         if 'email' in types:
             destination = receiver.email
             projectsign = 'J6VK41'
             vars = {}
             xsendEmail(destination, projectsign, vars)
         if 'webmsg' in types:
             content = '我们已收到您提交的注册申请。我们将在24小时内与您取得联系,进行用户信息审核,并明确您的意向和需求。请您耐心等待!审核结果将通过邮件和短信通知您。感谢您对多维海拓的关注!'
             title = '账号注册成功,审核工作会在24小时内开始。'
             messagetype = 1
             saveMessage(content, messagetype, title, receiver, sender)
Exemple #5
0
 def run(self):
     types = self.types
     receiver = self.receiver
     model = self.model
     sender = self.sender
     if isinstance(model, UserRelation):
         if 'app' in types:
             content = '交易师已更换'
             receiver_alias = receiver.usercode
             platform = 'ios'
             bdage = 1
             n_extras = {}
             pushnotification(content, receiver_alias, platform, bdage,
                              n_extras)
         if 'email' in types:
             destination = receiver.email
             projectsign = 'evsM7'
             vars = {
                 'nameC': model.traderuser.usernameC,
                 'nameE': model.traderuser.usernameE
             }
             xsendEmail(destination, projectsign, vars)
         if 'sms' in types:
             destination = receiver.mobile
             projectsign = 'WzSYg'
             vars = {'user': model.traderuser.usernameC}
             xsendSms(destination, projectsign, vars)
         if 'webmsg' in types:
             content = '您的交易师已更换为%s,感谢您的信任与支持' % model.traderuser.usernameC
             title = '交易师已更换'
             messagetype = 1
             saveMessage(content, messagetype, title, receiver, sender)
Exemple #6
0
 def run(self):
     types = self.types
     receiver = self.receiver
     model = self.model
     sender = self.sender
     if isinstance(model, UserRelation):
         lang = 'cn'
         username = model.traderuser.usernameC
         if self.receiver.country:
             if self.receiver.country.areaCode not in [
                     '86', u'86', None, '', u''
             ]:
                 lang = 'en'
                 username = model.traderuser.usernameE
         msgdic = MESSAGE_DICT['traderadd']
         title = msgdic['title_%s' % lang]
         content = msgdic['content_%s' % lang] % username
         messagetype = msgdic['messagetype']
         if 'app' in types and sendAppmsg:
             try:
                 receiver_alias = receiver.id
                 bdage = 1
                 n_extras = {}
                 pushnotification(content, receiver_alias, bdage,
                                  n_extras)
             except Exception:
                 logexcption()
         if 'email' in types and sendEmail and checkEmailTrue(
                 receiver.email):
             try:
                 destination = receiver.email
                 projectsign = 'X6JEv3'
                 vars = {
                     'nameC': model.traderuser.usernameC,
                     'nameE': model.traderuser.usernameE
                 }
                 xsendEmail(destination, projectsign, vars)
             except Exception:
                 logexcption()
         if 'sms' in types and sendSms:
             try:
                 destination = receiver.mobile
                 projectsign = 'pT0yA4'
                 vars = {'user': model.traderuser.usernameC}
                 xsendSms(destination, projectsign, vars)
             except Exception:
                 logexcption()
         if 'webmsg' in types and sendWebmsg:
             try:
                 saveMessage(content,
                             messagetype,
                             title,
                             receiver,
                             sender,
                             modeltype='UserRelation',
                             sourceid=model.id)
             except Exception:
                 logexcption()
Exemple #7
0
 def run(self):
     receiver = self.receiver
     model = self.model
     sender = self.sender
     if isinstance(model, favoriteProject):
         if model.favoritetype_id != 2:
             msgconfig = favoriteTypeConf[str(model.favoritetype_id)]
             paths = msgconfig['paths']
             if 'app' in paths:
                 content = (msgconfig['app']['content']
                            ) % model.proj.projtitleC
                 receiver_alias = receiver.usercode
                 platform = 'ios'
                 bdage = 1
                 n_extras = {}
                 pushnotification(content, receiver_alias, platform,
                                  bdage, n_extras)
             if 'email' in paths:
                 destination = receiver.email
                 projectsign = msgconfig['email']['projectsign']
                 if model.favoritetype_id in [3, 5]:
                     vars = {
                         'NameC': receiver.usernameC,
                         'NameE': receiver.usernameE,
                         'projectC': model.proj.projtitleC,
                         'projectE': model.proj.projtitleE
                     }
                 else:
                     vars = {
                         'projectC': model.proj.projtitleC,
                         'projectE': model.proj.projtitleE
                     }
                 xsendEmail(destination, projectsign, vars)
             if 'sms' in paths:
                 destination = receiver.mobile
                 projectsign = msgconfig['sms']['projectsign']
                 if model.favoritetype_id in [3, 5]:
                     vars = {
                         'user': receiver.usernameC,
                         'project': model.proj.projtitleC,
                     }
                 else:
                     vars = {'project': model.proj.projtitleC}
                 xsendSms(destination, projectsign, vars)
             if 'webmsg' in paths:
                 if model.favoritetype_id in [
                         1,
                 ]:
                     content = (msgconfig['webmsg']['content']
                                ) % model.proj.projtitleC
                 else:
                     content = (msgconfig['webmsg']['content']) % (
                         receiver.usernameC, model.proj.projtitleC)
                 title = msgconfig['webmsg']['title']
                 messagetype = msgconfig['webmsg']['messagetype']
                 saveMessage(content, messagetype, title, receiver,
                             sender)
 def run(self):
     types = self.types
     receiver = self.receiver
     model = self.model
     sender = self.sender
     lang = 'cn'
     projtitle = '空'
     if model.proj:
         projtitle = model.proj.projtitleC
     if self.receiver.country:
         if self.receiver.country.areaCode not in [
                 '86', u'86', None, '', u''
         ]:
             lang = 'en'
             if model.proj:
                 projtitle = model.proj.projtitleE
     msgdic = MESSAGE_DICT['orgBDMessage']
     title = msgdic['title_%s' % lang]
     content = msgdic['content_%s' % lang] % projtitle
     messagetype = msgdic['messagetype']
     if 'app' in types and sendAppmsg:
         try:
             receiver_alias = receiver.id
             bdage = 1
             n_extras = {
                 'info': {
                     'proj': model.proj_id if model.proj else None,
                     'projtitle': projtitle,
                     'org': model.org_id if model.org else None,
                     'orgname':
                     model.org.orgnameC if model.org else None
                 },
                 'type': 'OrgBD'
             }
             pushnotification(content, receiver_alias, bdage, n_extras)
         except Exception:
             logexcption()
     if 'webmsg' in types and sendWebmsg:
         try:
             saveMessage(content,
                         messagetype,
                         title,
                         receiver,
                         sender,
                         modeltype='OrgBD',
                         sourceid=model.id)
         except Exception:
             logexcption()
     if 'sms' in types and sendSms:
         try:
             destination = receiver.mobile
             projectsign = msgdic['sms_sign']
             vars = {'proj': model.proj.projtitleC}
             xsendSms(destination, projectsign, vars)
         except Exception:
             logexcption()
        def run(self):
            types = self.types
            receiver = self.receiver
            model = self.model

            if isinstance(model, dataroom_User_file):
                if 'email' in types and sendEmail and checkEmailTrue(
                        receiver.email):
                    try:
                        destination = receiver.email
                        if receiver.datasource_id == 3:
                            projectsign = 'yMgMP'
                        elif receiver.datasource_id == 4:
                            projectsign = 'ewq604'
                        elif receiver.datasource_id == 5:
                            projectsign = 'aJbDc1'
                        else:
                            projectsign = 'umZlP3'
                        vars = {
                            'name':
                            receiver.usernameC,
                            'projectC':
                            getDataroomTitleWithSuperLink(
                                model.dataroom, 'cn'),
                            'projectE':
                            getDataroomTitleWithSuperLink(
                                model.dataroom, 'en')
                        }
                        xsendEmail(destination, projectsign, vars)
                    except Exception:
                        logexcption()
                if 'webmsg' in types and sendWebmsg:  # 发送通知以后,将站内信发送给该DataRoom项目的承揽承做PM
                    try:
                        msg_content = '已向用户【%s】发送了项目【%s】的dataroom邮件通知' % (
                            receiver.usernameC, model.dataroom.proj.projtitleC)
                        msg_title = '发送dataroom邮件通知记录'
                        user_ids = []
                        for proj_trader in model.dataroom.proj.proj_traders.filter(
                                is_deleted=False):
                            user_ids.append(proj_trader.user.id)
                        if model.dataroom.proj.PM:
                            user_ids.append(model.dataroom.proj.PM.id)
                        msg_receiverusers = MyUser.objects.filter(
                            id__in=user_ids).distinct()
                        for msg_receiver in msg_receiverusers:
                            saveMessage(msg_content,
                                        12,
                                        msg_title,
                                        msg_receiver,
                                        sender,
                                        modeltype='dataroomEmailMsg',
                                        sourceid=model.id)
                    except Exception:
                        logexcption()
Exemple #10
0
 def run(self):
     types = self.types
     receiver = self.receiver
     model = self.model
     sender = self.sender
     if isinstance(model, MyUser):
         if 'app' in types:
             if model.userstatus.id == 2:
                 content = '您在海拓注册的%s账号已经通过审核,欢迎加入海拓交易平台。' % model.usernameC
             else:
                 content = '您在海拓注册的%s账号%s,如有疑问,请咨询相关工作人员。。' % (
                     model.usernameC, model.userstatu.nameC)
             receiver_alias = receiver.mobile
             platform = 'ios'
             bdage = 1
             n_extras = {}
             pushnotification(content=content,
                              receiver_alias=receiver_alias,
                              platform=platform,
                              bdage=bdage,
                              n_extras=n_extras)
         if 'email' in types:
             if model.userstatus.id == 2:
                 destination = receiver.email
                 projectsign = 'uszOI1'
                 vars = {
                     'nameC': model.usernameC,
                     'nameE': model.usernameE
                 }
                 xsendEmail(destination, projectsign, vars)
             if model.userstatus.id == 3:
                 destination = receiver.email
                 projectsign = 'ZNRYV3'
                 vars = {
                     'nameC': model.usernameC,
                     'nameE': model.usernameE
                 }
                 xsendEmail(destination, projectsign, vars)
         if 'sms' in types:
             if model.userstatus.id == 2:
                 destination = receiver.mobile
                 projectsign = 'WzSYg'
                 vars = {'user': model.usernameC}
                 xsendSms(destination, projectsign, vars)
         if 'webmsg' in types:
             if model.userstatus.id == 2:
                 content = '您在海拓注册的%s账号已经通过审核,欢迎加入海拓交易平台。' % model.usernameC
                 title = '账号状态更改'
             else:
                 content = '您在海拓注册的%s账号%s,如有疑问,请咨询相关工作人员。。' % (
                     model.usernameC, model.userstatu.nameC)
                 title = '账号状态更改'
             messagetype = 1
             saveMessage(content, messagetype, title, receiver, sender)
Exemple #11
0
 def run(self):
     types = self.types
     receiver = self.receiver
     model = self.model
     sender = self.sender
     if isinstance(model, dataroom_User_file):
         if 'app' in types and sendAppmsg:
             try:
                 content = 'DataRoom有文件更新,点击查看详情'
                 receiver_alias = receiver.id
                 bdage = 1
                 n_extras = {}
                 pushnotification(content, receiver_alias, bdage,
                                  n_extras)
             except Exception:
                 logexcption()
         if 'email' in types and sendEmail and checkEmailTrue(
                 receiver.email):
             try:
                 destination = receiver.email
                 projectsign = 'umZlP3'
                 vars = {
                     'projectC':
                     getProjTitleWithSuperLink(model.dataroom.proj),
                     'projectE':
                     getProjTitleWithSuperLink(model.dataroom.proj,
                                               'en')
                 }
                 xsendEmail(destination, projectsign, vars)
             except Exception:
                 logexcption()
         if 'sms' in types and sendSms:
             try:
                 destination = receiver.mobile
                 projectsign = 'huvrW4'
                 vars = {'project': model.dataroom.proj.projtitleC}
                 xsendSms(destination, projectsign, vars)
             except Exception:
                 logexcption()
         if 'webmsg' in types and sendWebmsg:
             try:
                 content = '您的项目%s,DataRoom有文件更新,请登录后查看' % model.dataroom.proj.projtitleC
                 title = 'DataRoom有文件更新,点击查看详情'
                 messagetype = 7
                 saveMessage(content,
                             messagetype,
                             title,
                             receiver,
                             sender,
                             modeltype='dataroom_User_file',
                             sourceid=model.id)
             except Exception:
                 logexcption()
Exemple #12
0
 def run(self):
     types = self.types
     receiver = self.receiver
     model = self.model
     sender = self.sender
     if isinstance(model, MyUser):
         lang = 'cn'
         datasourcename = model.datasource.nameC
         username = model.usernameC
         if self.receiver.country:
             if self.receiver.country.areaCode not in [
                     '86', u'86', None, '', u''
             ]:
                 lang = 'en'
                 datasourcename = model.datasource.nameE
                 username = model.usernameE
         msgdic = MESSAGE_DICT['userregister']
         title = msgdic['title_%s' % lang]
         content = msgdic['content_%s' % lang] % (datasourcename,
                                                  username)
         messagetype = msgdic['messagetype']
         if 'app' in types and sendAppmsg:
             try:
                 receiver_alias = receiver.id
                 bdage = 1
                 n_extras = {}
                 pushnotification(content=content,
                                  receiver_alias=receiver_alias,
                                  bdage=bdage,
                                  n_extras=n_extras)
             except Exception:
                 logexcption()
         if 'email' in types and sendEmail and checkEmailTrue(
                 receiver.email):
             try:
                 destination = receiver.email
                 projectsign = 'J6VK41'
                 vars = {}
                 xsendEmail(destination, projectsign, vars)
             except Exception:
                 logexcption()
         if 'webmsg' in types and sendWebmsg:
             try:
                 saveMessage(content,
                             messagetype,
                             title,
                             receiver,
                             sender,
                             modeltype='MyUser',
                             sourceid=model.id)
             except Exception:
                 logexcption()
Exemple #13
0
 def run(self):
     types = self.types
     receiver = self.receiver
     model = self.model
     sender = self.sender
     if isinstance(model, UserFriendship):
         if 'app' in types:
             content = 'test 3.0'
             receiver_alias = receiver.mobile
             platform = 'ios'
             bdage = 1
             n_extras = {}
             pushnotification(content, receiver_alias, platform, bdage,
                              n_extras)
         if 'webmsg' in types:
             content = 'test 3.0 content'
             title = 'test 3.0'
             messagetype = 1
             saveMessage(content, messagetype, title, receiver, sender)
Exemple #14
0
 def run(self):
     types = self.types
     receiver = self.receiver
     model = self.model
     sender = self.sender
     lang = 'cn'
     if self.receiver.country:
         if self.receiver.country.areaCode not in [
                 '86', u'86', None, '', u''
         ]:
             lang = 'en'
     msgdic = MESSAGE_DICT['timelinealertcycleexpire']
     title = msgdic['title_%s' % lang]
     content = msgdic['content_%s' % lang]
     messagetype = msgdic['messagetype']
     if 'app' in types and sendAppmsg:
         try:
             receiver_alias = receiver.id
             bdage = 1
             n_extras = {}
             pushnotification(content, receiver_alias, bdage, n_extras)
         except Exception:
             logexcption()
     if 'webmsg' in types and sendWebmsg:
         try:
             saveMessage(content,
                         messagetype,
                         title,
                         receiver,
                         sender,
                         modeltype='OrgBD',
                         sourceid=model.id)
         except Exception:
             logexcption()
     if 'sms' in types and sendSms:
         try:
             destination = receiver.mobile
             projectsign = msgdic['sms_sign']
             vars = {}
             xsendSms(destination, projectsign, vars)
         except Exception:
             logexcption()
def sendmessage_schedulemsg(model, receiver, types, sender=None):
    """
    :param model: schedule type
    :param receiver: myuser type
    :param types: list
    :param sender: myuser type
    :return: None
    """
    if checkReceiverToSendMsg(receiver) and receiver.datasource_id not in [
            3, 4
    ]:
        if isinstance(model, schedule):
            lang = 'cn'
            if receiver.country:
                if receiver.country.areaCode not in [
                        '86', u'86', None, '', u''
                ]:
                    lang = 'en'
            msgdic = MESSAGE_DICT['schedulemsg']
            title = msgdic['title_%s' % lang]
            content = msgdic['content_%s' % lang]
            messagetype = msgdic['messagetype']
            if 'app' in types and sendAppmsg:
                try:
                    receiver_alias = receiver.id
                    bdage = 1
                    n_extras = {}
                    pushnotification(content, receiver_alias, bdage, n_extras)
                except Exception:
                    logexcption()
            if 'webmsg' in types and sendWebmsg:
                try:
                    saveMessage(content,
                                messagetype,
                                title,
                                receiver,
                                sender,
                                modeltype='schedule',
                                sourceid=model.id)
                except Exception:
                    logexcption()
Exemple #16
0
 def run(self):
     types = self.types
     receiver = self.receiver
     model = self.model
     sender = self.sender
     if isinstance(model, project):
         lang = 'cn'
         projtitle = model.projtitleC
         if self.receiver.country:
             if self.receiver.country.areaCode not in [
                     '86', u'86', None, '', u''
             ]:
                 lang = 'en'
                 projtitle = model.projtitleE
         msgdic = MESSAGE_DICT['projectpublish']
         title = msgdic['title_%s' % lang]
         content = msgdic['content_%s' % lang] % projtitle
         messagetype = msgdic['messagetype']
         if 'email' in types and sendEmail and checkEmailTrue(
                 receiver.email):
             try:
                 destination = receiver.email
                 projectsign = 'IszFR1'
                 vars = {
                     'projectC': getProjTitleWithSuperLink(model),
                     'projectE': getProjTitleWithSuperLink(model, 'en')
                 }
                 xsendEmail(destination, projectsign, vars)
             except Exception:
                 logexcption()
         if 'webmsg' in types and sendWebmsg:
             try:
                 saveMessage(content,
                             messagetype,
                             title,
                             receiver,
                             sender,
                             modeltype='project',
                             sourceid=model.id)
             except Exception:
                 logexcption()
Exemple #17
0
 def run(self):
     types = self.types
     receiver = self.receiver
     model = self.model
     sender = self.sender
     if hasattr(messageconfig, configtype):
         data = messageconfig[configtype]
         if isinstance(model, data['modeltype']):
             if 'app' in types:
                 appdata = data['app']
                 content = appdata['content']
                 receiver_alias = receiver.usercode
                 platform = appdata['platform']
                 bdage = appdata['bdage']
                 n_extras = appdata['n_extras']
                 pushnotification(content, receiver_alias, platform,
                                  bdage, n_extras)
             if 'email' in types:
                 emaildata = data['email']
                 destination = receiver.email
                 projectsign = emaildata['projectsign']
                 vars = emaildata['vars']
                 xsendEmail(destination, projectsign, vars)
             if 'sms' in types:
                 smsdata = data['sms']
                 destination = receiver.email
                 projectsign = smsdata['projectsign']
                 vars = smsdata['vars']
                 xsendSms(destination, projectsign, vars)
             if 'webmsg' in types:
                 webmsgdata = data['webmsg']
                 content = webmsgdata['content']
                 title = webmsgdata['title']
                 messagetype = webmsgdata['messagetype']
                 saveMessage(content, messagetype, title, receiver,
                             sender)
     else:
         print u'%s not found' % configtype
         pass
Exemple #18
0
 def run(self):
     types = self.types
     receiver = self.receiver
     model = self.model
     sender = self.sender
     if isinstance(model, UserFriendship):
         lang = 'cn'
         if self.receiver.country:
             if self.receiver.country.areaCode not in [
                     '86', u'86', None, '', u''
             ]:
                 lang = 'en'
         msgdic = MESSAGE_DICT['usermakefriends']
         title = msgdic['title_%s' % lang]
         content = msgdic['content_%s' % lang]
         messagetype = msgdic['messagetype']
         if 'app' in types and sendAppmsg:
             try:
                 receiver_alias = receiver.id
                 bdage = 1
                 n_extras = {}
                 pushnotification(content, receiver_alias, bdage,
                                  n_extras)
             except Exception:
                 logexcption()
         if 'webmsg' in types and sendWebmsg:
             try:
                 saveMessage(content,
                             messagetype,
                             title,
                             receiver,
                             sender,
                             modeltype='UserFriendship',
                             sourceid=model.id)
             except Exception:
                 logexcption()
        def run(self):
            types = self.types
            receiver = self.receiver
            model = self.model

            if isinstance(model, dataroom_User_file):
                if model.lastgettime:
                    seefiles_queryset = model.dataroomuser_seeFiles.all(
                    ).filter(is_deleted=False,
                             createdtime__gte=model.lastgettime)
                else:
                    seefiles_queryset = model.dataroomuser_seeFiles.all(
                    ).filter(is_deleted=False)
                if 'email' in types and sendEmail and checkEmailTrue(
                        receiver.email):
                    try:
                        destination = receiver.email
                        projectsign = 'oQGaH3'
                        filestr = ''
                        projectUrl = getDataroomTitleWithSuperLink(
                            model.dataroom, 'cn')
                        dataroomUrl = '%s/app/dataroom/detail?id=%s&isClose=false&projectID=%s' % (
                            getbase_domain(model.datasource),
                            model.dataroom.id, model.dataroom.proj.id)
                        if seefiles_queryset.exists():
                            for seefile in seefiles_queryset:
                                filestr = filestr + '<a href=\'%s\'>%s</a>' % (
                                    dataroomUrl,
                                    seefile.file.filename) + '<br>'
                        vars = {
                            'name': receiver.usernameC,
                            'projectC': projectUrl,
                            'file': filestr
                        }
                        xsendEmail(destination, projectsign, vars)
                    except Exception:
                        logexcption()
                if 'webmsg' in types and sendWebmsg:  # 发送通知以后,将站内信发送给该DataRoom项目的承揽承做PM
                    try:
                        filestr = '新增文件如下:' + '<br>'
                        if seefiles_queryset.exists():
                            for seefile in seefiles_queryset:
                                filestr = filestr + seefile.file.filename + '<br>'
                        msg_content = '已向用户【%s】发送了项目【%s】的dataroom文件更新邮件通知' % (
                            receiver.usernameC, model.dataroom.proj.projtitleC
                        ) + '<br><br>' + filestr
                        msg_title = '发送dataroom文件更新邮件通知记录'
                        user_ids = []
                        for proj_trader in model.dataroom.proj.proj_traders.filter(
                                is_deleted=False):
                            user_ids.append(proj_trader.user.id)
                        if model.dataroom.proj.PM:
                            user_ids.append(model.dataroom.proj.PM.id)
                        msg_receiverusers = MyUser.objects.filter(
                            id__in=user_ids).distinct()
                        for msg_receiver in msg_receiverusers:
                            saveMessage(msg_content,
                                        13,
                                        msg_title,
                                        msg_receiver,
                                        sender,
                                        modeltype='dataroomFileUpdateEmailMsg',
                                        sourceid=model.id)
                            # 13 区分dataroom邮件通知的12类型,站内信用到了12类型的消息
                    except Exception:
                        logexcption()
Exemple #20
0
 def run(self):
     types = self.types
     receiver = self.receiver
     model = self.model
     sender = self.sender
     if isinstance(model, timelineTransationStatu):
         lang = 'cn'
         projtitle = model.timeline.proj.projtitleC
         if self.receiver.country:
             if self.receiver.country.areaCode not in [
                     '86', u'86', None, '', u''
             ]:
                 lang = 'en'
                 projtitle = model.timeline.proj.projtitleE
         msgdic = MESSAGE_DICT['timelineauditstatuchange']
         title = msgdic['title_%s' % lang]
         content = msgdic['content_%s' % lang] % projtitle
         messagetype = msgdic['messagetype']
         if 'app' in types and sendAppmsg:
             try:
                 receiver_alias = receiver.id
                 bdage = 1
                 n_extras = {}
                 pushnotification(content, receiver_alias, bdage,
                                  n_extras)
             except Exception:
                 logexcption()
         if 'email' in types and sendEmail and checkEmailTrue(
                 receiver.email):
             try:
                 destination = receiver.email
                 projectsign = 'LkZix2'
                 vars = {
                     'projectC':
                     getProjTitleWithSuperLink(model.timeline.proj),
                     'projectE':
                     getProjTitleWithSuperLink(model.timeline.proj,
                                               'en')
                 }
                 xsendEmail(destination, projectsign, vars)
             except Exception:
                 logexcption()
         if 'sms' in types and sendSms:
             try:
                 destination = receiver.mobile
                 projectsign = 'tNEV93'
                 vars = {'project': projtitle}
                 xsendSms(destination, projectsign, vars)
             except Exception:
                 logexcption()
         if 'webmsg' in types and sendWebmsg:
             try:
                 saveMessage(content,
                             messagetype,
                             title,
                             receiver,
                             sender,
                             modeltype='timelineTransationStatu',
                             sourceid=model.id)
             except Exception:
                 logexcption()
Exemple #21
0
 def run(self):
     receiver = self.receiver
     model = self.model
     sender = self.sender
     paths = self.paths
     if isinstance(model, favoriteProject):
         if model.favoritetype_id != 4 and model.favoritetype_id != 2:
             lang = 'cn'
             sendername = sender.usernameC
             projtitle = model.proj.projtitleC
             if self.receiver.country:
                 if self.receiver.country.areaCode not in [
                         '86', u'86', None, '', u''
                 ]:
                     lang = 'en'
                     sendername = sender.usernameE
                     projtitle = model.proj.projtitleE
             if model.favoritetype_id == 1:
                 msgdic = MESSAGE_DICT['systemrecommendproject']
                 vars = 1
             elif model.favoritetype_id == 3:
                 msgdic = MESSAGE_DICT['traderrecommendproject']
             elif model.favoritetype_id == 5:
                 msgdic = MESSAGE_DICT['investorinvestproject']
             else:
                 return
             if model.favoritetype_id in [3, 5]:
                 content = msgdic['content_%s' % lang] % (sendername,
                                                          projtitle)
             else:
                 content = msgdic['content_%s' % lang] % projtitle
             title = msgdic['title_%s' % lang]
             if 'app' in paths and sendAppmsg:
                 try:
                     receiver_alias = receiver.id
                     bdage = 1
                     n_extras = {}
                     pushnotification(content, receiver_alias, bdage,
                                      n_extras)
                 except Exception:
                     logexcption()
             if 'email' in paths and sendEmail and checkEmailTrue(
                     receiver.email):
                 try:
                     destination = receiver.email
                     projectsign = msgdic['email_sign']
                     if model.favoritetype_id in [3, 5]:
                         vars = {
                             'NameC':
                             sender.usernameC,
                             'NameE':
                             sender.usernameE,
                             'projectC':
                             getProjTitleWithSuperLink(model.proj),
                             'projectE':
                             getProjTitleWithSuperLink(
                                 model.proj, 'en')
                         }
                     else:
                         vars = {
                             'projectC':
                             getProjTitleWithSuperLink(model.proj),
                             'projectE':
                             getProjTitleWithSuperLink(
                                 model.proj, 'en')
                         }
                     xsendEmail(destination, projectsign, vars)
                 except Exception:
                     logexcption()
             if 'sms' in paths and sendSms:
                 try:
                     destination = receiver.mobile
                     projectsign = msgdic['sms_sign']
                     if model.favoritetype_id in [3, 5]:
                         vars = {
                             'user': sendername,
                             'project': projtitle,
                         }
                     else:
                         vars = {'project': model.proj.projtitleC}
                     xsendSms(destination, projectsign, vars)
                 except Exception:
                     logexcption()
             if 'webmsg' in paths and sendWebmsg:
                 try:
                     messagetype = msgdic['messagetype']
                     saveMessage(content,
                                 messagetype,
                                 title,
                                 receiver,
                                 sender,
                                 modeltype='favoriteProject',
                                 sourceid=model.id)
                 except Exception:
                     logexcption()
Exemple #22
0
        def run(self):
            types = self.types
            receiver = self.receiver
            model = self.model
            sender = self.sender
            if isinstance(model, MyUser):
                lang = 'cn'
                datasourcename = model.datasource.nameC
                username = model.usernameC
                if self.receiver.country:
                    if self.receiver.country.areaCode not in [
                            '86', u'86', None, '', u''
                    ]:
                        lang = 'en'
                        datasourcename = model.datasource.nameE
                        username = model.usernameE
                if model.userstatus.id == 2:
                    msgdic = MESSAGE_DICT['userauditpass']
                elif model.userstatus.id == 3:
                    msgdic = MESSAGE_DICT['userauditunpass']
                else:
                    return
                title = msgdic['title_%s' % lang]
                content = msgdic['content_%s' % lang] % (datasourcename,
                                                         username)
                messagetype = msgdic['messagetype']

                if 'app' in types and sendAppmsg:
                    try:
                        receiver_alias = receiver.id
                        bdage = 1
                        n_extras = {}
                        pushnotification(content=content,
                                         receiver_alias=receiver_alias,
                                         bdage=bdage,
                                         n_extras=n_extras)
                    except Exception:
                        logexcption()
                if 'email' in types and sendEmail and checkEmailTrue(
                        receiver.email):
                    try:
                        if model.userstatus.id == 2:
                            destination = receiver.email
                            projectsign = 'uszOI1'
                            vars = {
                                'nameC': model.usernameC,
                                'nameE': model.usernameE
                            }
                            xsendEmail(destination, projectsign, vars)
                        if model.userstatus.id == 3:
                            destination = receiver.email
                            projectsign = 'ZNRYV3'
                            vars = {
                                'nameC': model.usernameC,
                                'nameE': model.usernameE
                            }
                            xsendEmail(destination, projectsign, vars)
                    except Exception:
                        logexcption()
                if 'sms' in types and sendSms:
                    try:
                        if model.userstatus.id == 2:
                            destination = receiver.mobile
                            projectsign = 'EXIDv1'
                            vars = {'user': username}
                            xsendSms(destination, projectsign, vars)
                    except Exception:
                        logexcption()
                if 'webmsg' in types and sendWebmsg:
                    try:
                        saveMessage(content,
                                    messagetype,
                                    title,
                                    receiver,
                                    sender,
                                    modeltype='MyUser',
                                    sourceid=model.id)
                    except Exception:
                        logexcption()