Rev 20046 | Blame | Compare with Previous | Last modification | View Log | RSS feed
'''Created on 01-Dec-2015@author: manas'''import MySQLdbimport xlwtfrom datetime import dateimport smtplibfrom email import encodersfrom email.mime.base import MIMEBasefrom email.mime.multipart import MIMEMultipartfrom email.mime.text import MIMETextDB_HOST = "localhost"DB_USER = "root"DB_PASSWORD = "shop2020"DB_NAME = "dtr"TMP_FILE = "/tmp/Approved_App_Transactions.xls"con = NoneSENDER = "cnc.center@shop2020.in"PASSWORD = "5h0p2o2o"SUBJECT = "Approved App Transactions Related Data "SMTP_SERVER = "smtp.gmail.com"SMTP_PORT = 587APPROVED_TRANSACTIONS="""select approved.transaction_id, approved.transaction_time, approved.app_id,offers.affiliate_offer_id, offers.app_name, approved.offer_price, approved.final_user_payoutfrom approved_app_transactions approved join app_offers offerson approved.app_id=offers.id where retailer_id >0and date(approved.transaction_time) > %s anddate(approved.transaction_time) <= %sorder by date(approved.transaction_time)"""date_format = xlwt.XFStyle()date_format.num_format_str = 'yyyy-mm-dd'datetime_format = xlwt.XFStyle()datetime_format.num_format_str = 'yyyy-mm-dd HH:MM AM/PM'default_format = xlwt.XFStyle()def getDbConnection():return MySQLdb.connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME)def generateApprovedTransactionReport():conn = getDbConnection()cursor = conn.cursor()cursor.execute(APPROVED_TRANSACTIONS,('2015-08-01','2015-11-30'))result = cursor.fetchall()global workbookworkbook = xlwt.Workbook()worksheet = workbook.add_sheet("User")boldStyle = xlwt.XFStyle()f = xlwt.Font()f.bold = TrueboldStyle.font = fcolumn = 0row = 0worksheet.write(0,0,'Transaction Id')worksheet.write(0,1,'Transaction Time Stamp')worksheet.write(0,2,'App Id')worksheet.write(0,3,'App Offer Id')worksheet.write(0,4,'App Name')worksheet.write(0,5,'Offer Price')worksheet.write(0,6,'User Payout Amount')for r in result:row += 1column = 0for data in r :if column==1:worksheet.write(row, column, str(data))else:worksheet.write(row, column, data)column += 1workbook.save(TMP_FILE)def sendmail(email, message, fileName, title):if email == "":returnmailServer = smtplib.SMTP(SMTP_SERVER, SMTP_PORT)mailServer.ehlo()mailServer.starttls()mailServer.ehlo()msg = MIMEMultipart()msg['Subject'] = titlemsg.preamble = titlehtml_msg = MIMEText(message, 'html')msg.attach(html_msg)fileMsg = MIMEBase('application', 'vnd.ms-excel')fileMsg.set_payload(file(TMP_FILE).read())encoders.encode_base64(fileMsg)fileMsg.add_header('Content-Disposition', 'attachment;filename=' + fileName)msg.attach(fileMsg)MAILTO = ['rajender.singh@saholic.com','rajneesh.arora@saholic.com','khushal.bhatia@saholic.com']#MAILTO = ['rajender.singh@saholic.com']mailServer.login(SENDER, PASSWORD)mailServer.sendmail(SENDER, MAILTO, msg.as_string())def main():generateApprovedTransactionReport()sendmail(["rajender.singh@shop2020.in","rajneesh.arora@saholic.com","khushal.bhatia@saholic.com"], "", TMP_FILE, SUBJECT)#sendmail(["rajender.singh@shop2020.in"], "", TMP_FILE, SUBJECT)if __name__ == '__main__':main()