Ejemplo n.º 1
0
 def handle(self, *args, **options):
     invvalue = pa_Get_Inventory_Value()
     inv30to45 = pa_Get_Parts_Count('total',-29,-45,'DATEPURC')
     inv60to65 = pa_Get_Parts_Count('total',-59,-65,'DATEPURC')
     rocount = sv_Get_RO_Count(type='totalcount')
     oldcount = sv_Get_RO_Count(type='oldcount')
     dm = DailyMetrics(
         pa_invvalue = invvalue,
         sv_ro_count = rocount,
         sv_old_ro_count = oldcount,
         pa_count30to45 = inv30to45,
         pa_count60to65 = inv60to65
     )
     dm.save()
Ejemplo n.º 2
0
    def handle(self, *args, **options):

        def send_email(htmlbody, subject, email_list):
            # using SendGrid's Python Library - https://github.com/sendgrid/sendgrid-python

            x = SGFields.objects.get(id=1)
            u = x.sgusername
            p = x.sgpassword

            sg = sendgrid.SendGridClient(u, p)
            message = sendgrid.Mail()

            """
            message.add_filter('templates', 'enable', '1')
            message.add_filter('templates', 'template_id', 'TEMPLATE-ALPHA-NUMERIC-ID')
            message.add_substitution('key', 'value')
            message.add_to("*****@*****.**")
            message.set_from("*****@*****.**")
            message.set_subject("Sending with SendGrid is Fun")
            message.set_html("and easy to do anywhere, even with Python")
            message.add_to_name("Jesse Dovi")
            message.set_from_name("Dovi Motors Inc.")
            """

            message.add_to(email_list)
            message.set_from_name("Dovi Motors Inc.")
            message.set_from("*****@*****.**")
            message.set_subject(subject)
            message.set_html(htmlbody)

            status, msg = sg.send(message)

            return (status,msg)


        email_type = options['email_type']

        if email_type == "parts_30to45":
            part_list =  pa_Get_Parts_Count('detail',-29,-45,'DATEPURC')

            html = part_list.to_html()
            subject = "Parts 30 to 45 days old"
            email_addresses = ["*****@*****.**","*****@*****.**","*****@*****.**"]
            send_email(html,subject,email_addresses)

        elif email_type == "parts_monthly":
            file_path = ''.join([ADAM_EXPORT_PATH,'Extract.csv'])
            last_modified = time.ctime(os.path.getmtime(file_path))
            modified_message = 'The stock parts file was last updated %s' % last_modified
            context = {
                'headline':'Monthly Aged Parts Reports',
                'body':'This is a reminder to run the monthly aged parts inventory reports.',
                'last_modified': last_modified
            }
            html = render_to_string('mysite/email_notification.html',context)
            subject = "Time to run the monthly aged parts reports"
            email_addresses = ["*****@*****.**","*****@*****.**","*****@*****.**","*****@*****.**"]
            send_email(html,subject,email_addresses)

        elif email_type == "parts_45to50":
            part_list =  pa_Get_Parts_Count('detail',-45,-50,'DATEPURC')

            html = part_list.to_html()
            subject = "Get rid of these pronto!  Parts 45 to 50 days old"
            email_addresses = ["*****@*****.**","*****@*****.**","*****@*****.**"]
            send_email(html,subject,email_addresses)

        elif email_type == "battery":
            #startdate = datetime.datetime.strftime(datetime.date.today() + datetime.timedelta(-21),'%Y-%m-%d')
            #enddate = datetime.datetime.strftime(datetime.date.today() + datetime.timedelta(-14), '%Y-%m-%d')
            startdate = '2016-08-15'
            enddate = '2016-08-31'
            ro_list = get_service_parts_detail(startdate,enddate)
            ro_list.sort('DATE_OUT')
            html = ro_list.to_html()
            subject = "Battery Cores from %s to %s" % (startdate,enddate)
            email_addresses = ["*****@*****.**","*****@*****.**","*****@*****.**"]
            send_email(html,subject,email_addresses)