Subversion Repositories SmartDukaan

Rev

Rev 1248 | Rev 1422 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
353 ashish 1
'''
2
Created on 14-Jul-2010
3
 
4
@author: ashish
5
'''
6
from shop2020.helpers.impl import DataAccessor
7
from shop2020.helpers.impl.DataAccessor import getSubstitutedMessage, getMessage,\
494 rajveer 8
    updateMessage, addMessage, add_user, authenticate_user, delete_user, update_password,\
1395 varun.gupt 9
    save_user_email_for_sending, initialize, close_session
759 chandransh 10
from shop2020.helpers.impl.DataService import LogisticsUser
11
from shop2020.thriftpy.utils.ttypes import HelperServiceException
12
from shop2020.helpers.impl.Converters import to_t_luser
900 rajveer 13
from shop2020.config.client.ConfigClient import ConfigClient
353 ashish 14
 
900 rajveer 15
 
353 ashish 16
class HelperServiceHandler():
17
 
18
 
1248 chandransh 19
    def __init__(self, dbname='helper'):
20
        initialize(dbname)
900 rajveer 21
 
22
        '''
23
        try:
24
            config_client = ConfigClient()
25
            self.customer_care_mail = config_client.get_property('saholic_customer_care_mail')
26
        except:    
27
            self.customer_care_mail = "help@saholic.com"
28
        ''' 
353 ashish 29
 
1395 varun.gupt 30
    def saveUserEmailForSending(self, emailTo, emailFrom, subject, body, source, emailType):
31
        try:
32
            save_user_email_for_sending(emailTo, emailFrom, subject, body, source, emailType)
33
        finally:
34
            close_session()
35
 
353 ashish 36
    def sendMail(self, mail):
766 rajveer 37
        try:
38
            DataAccessor.sendMail(mail)
39
        finally:
40
            close_session()
41
 
353 ashish 42
    def sendText(self, message):
43
        """
44
        Parameters:
45
         - message
46
        """
766 rajveer 47
        try:
48
            DataAccessor.sendText(message)
49
        finally:
50
            close_session()
51
 
353 ashish 52
    def addMessage(self, message):
53
        """
54
        Parameters:
55
         - message
56
        """
766 rajveer 57
        try:
58
            addMessage(message)
59
        finally:
60
            close_session()
61
 
353 ashish 62
    def updateMessage(self, id, message):
63
        """
64
        Parameters:
65
         - id
66
         - message
67
        """
766 rajveer 68
        try:
69
            return updateMessage(id, message)
70
        finally:
71
            close_session()
72
 
353 ashish 73
    def getMessage(self, id):
74
        """
75
        Parameters:
76
         - id
77
        """
766 rajveer 78
        try:
79
            return getMessage(id)
80
        finally:
81
            close_session()
82
 
353 ashish 83
    def getSubstitutedMessage(self, id, params):
84
        """
85
        Parameters:
86
         - id
87
         - params
88
        """
766 rajveer 89
        try:
90
            return getSubstitutedMessage(id, params)
91
        finally:
92
            close_session()
93
 
494 rajveer 94
    def addUser(self, username, password, warehouseId):
95
        """
96
        Parameters:
97
         - username
98
         - password
99
         - warehouseId
100
        """
766 rajveer 101
        try:
102
            return add_user(username, password, warehouseId)
103
        finally:
104
            close_session()
494 rajveer 105
 
106
    def deleteUser(self, username):
107
        """
108
        Parameters:
109
         - username
110
        """
766 rajveer 111
        try:
112
            return delete_user(username)
113
        finally:
114
            close_session()
115
 
494 rajveer 116
    def authenticateUser(self, username, password):
117
        """
118
        Parameters:
119
         - username
120
         - password
121
        """
766 rajveer 122
        try:
123
            return authenticate_user(username, password)
124
        finally:
125
            close_session()
126
 
494 rajveer 127
 
128
    def updatePassword(self, username, oldPassword, newPassword):
129
        """
130
        Parameters:
131
         - username
132
         - oldPassword
133
         - newPassword
134
        """
766 rajveer 135
        try:
136
            update_password(username, oldPassword, newPassword)
137
        finally:
138
            close_session()
759 chandransh 139
 
140
    def authenticateLogisticsUser(self, username, password):
141
        """
142
        Returns the LogisticsUser struct associated with the given username and password if they match.
143
        Throws an exception otherwise.
144
 
145
        Parameters:
146
         - username
147
         - password
148
        """
149
        try:
150
            luser = LogisticsUser.get_by(username=username, password=password)
151
            return to_t_luser(luser)
152
        except:
766 rajveer 153
            raise HelperServiceException(101, "No such user")
154
        finally:
155
            close_session()
156
 
157
    def closeSession(self, ):
158
        close_session()