Subversion Repositories SmartDukaan

Rev

Rev 8211 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
8118 rajveer 1
#!/usr/bin/python
2
 
3
'''
4
Send mails to MFN Customers requesting their feedback about their purchases.
5
 
6
Created on 02-Sep-2013
7
@author: Manish Sharma
8
'''
9
 
10
from shop2020.clients.CRMClient import CRMClient
11
from shop2020.model.v1.order.impl import DataService
12
from shop2020.thriftpy.model.v1.order.ttypes import OrderStatus
13
from shop2020.model.v1.order.impl.DataService import Order
14
from datetime import date, timedelta
15
from elixir import *
16
from sqlalchemy.sql.expression import and_, or_, desc, not_, distinct, cast, between
17
from shop2020.thriftpy.crm.ttypes import *
18
from shop2020.clients.HelperClient import HelperClient
19
 
20
import datetime
21
 
22
help_user = 'help@saholic.com'
23
email_addresses=[]
24
 
25
def send_mail_for_MFN_customer_feedback():
26
    DataService.initialize('transaction','192.168.190.114')
27
    crm_client = CRMClient().get_client()
28
    current_time = datetime.datetime.now().date()
29
    time_start= current_time - datetime.timedelta(days=16)
30
    time_end = time_start + datetime.timedelta(days=1)
31
    mfn_orders = Order.query.filter(Order.source == 3).filter((Order.status == OrderStatus.DELIVERY_SUCCESS)).filter(Order.delivery_timestamp.between (time_start,time_end)).filter(Order.delivery_timestamp <= Order.promised_delivery_time)
32
 
33
    for order in mfn_orders:
34
        searchFilter = SearchFilter()
35
        searchFilter.customerEmailId = order.customer_email
36
 
37
        tickets = crm_client.getTickets(searchFilter)
38
        if len(tickets)==0:
39
            email_addresses.append(order.customer_email)
40
 
41
    print email_addresses
42
 
43
    body= """ Dear Customer, <br><br>
44
    Thank you very much for shopping with Saholic at Amazon.in .<br><br>
45
    We hope that you are happy with your purchase and if you are, please spare some time to leave positive feedback for us.<br><br>
46
    Kindly follow below mentioned steps:-<br><br>
47
    1. Login into your Amazon account<br>
48
    2. Go to Your Order Section<br>
49
    3. Click on Seller Feedback<br><br>
50
    Your comments and feedback help us improve our products and services for other customers.<br><br>
51
    Please do not leave any negative feedback. If you have any problems or concerns about your recent purchase, please get in touch with our customer service as soon as possible and we will do everything we can to help.<br><br>
52
    Yours Sincerely,<br>
53
    Saholic Team<br>
54
    """
55
 
56
    bcc = ['amit.sirohi@shop2020.in']
57
 
58
    helper_client = HelperClient().get_client()
59
    if len(email_addresses)>0:
60
        for email_address in email_addresses:
61
            helper_client.saveUserEmailForSending([email_address], help_user, "Feedback Request", body, 'AmazonMFN', 'AmazonFeedback', [], bcc, 1)
62
 
63
def main():
64
    send_mail_for_MFN_customer_feedback()
65
 
66
if __name__ == '__main__':
67
    main()