| Line 1785... |
Line 1785... |
| 1785 |
def accsOrderDisposition(self):
|
1785 |
def accsOrderDisposition(self):
|
| 1786 |
self.user.status='done'
|
1786 |
self.user.status='done'
|
| 1787 |
self.user.user_available = 1
|
1787 |
self.user.user_available = 1
|
| 1788 |
self.user.disposition=self.callDisposition
|
1788 |
self.user.disposition=self.callDisposition
|
| 1789 |
self.user.modified = datetime.now()
|
1789 |
self.user.modified = datetime.now()
|
| - |
|
1790 |
a = CrmTicketDtr()
|
| 1790 |
if self.callDisposition == 'product_availability':
|
1791 |
if self.callDisposition == 'product_availability':
|
| 1791 |
self.callHistoryCrm.disposition_description='Product Not available'
|
1792 |
self.callHistoryCrm.disposition_description='Product Not available'
|
| 1792 |
elif self.callDisposition == 'return_replacement':
|
1793 |
elif self.callDisposition == 'return_replacement':
|
| 1793 |
self.callHistoryCrm.disposition_description='Return or replacement pending'
|
1794 |
self.callHistoryCrm.disposition_description='Return or replacement pending'
|
| 1794 |
utils.sendCrmProjectMail(self.userId,self.callHistoryCrm.disposition_description,self.callHistoryCrm.disposition_comments)
|
1795 |
utils.sendCrmProjectMail(self.userId,self.callHistoryCrm.disposition_description,self.callHistoryCrm.disposition_comments)
|
| 1795 |
CrmTicketDtr.addTicket(self, self.userId, self.callHistoryCrm.disposition_description, self.callHistoryCrm.disposition_comments)
|
1796 |
a.addTicket(self, self.userId, self.callHistoryCrm.disposition_description, self.callHistoryCrm.disposition_comments)
|
| 1796 |
elif self.callDisposition == 'already_purchased':
|
1797 |
elif self.callDisposition == 'already_purchased':
|
| 1797 |
self.callHistoryCrm.disposition_description='Already purchased required stock'
|
1798 |
self.callHistoryCrm.disposition_description='Already purchased required stock'
|
| 1798 |
elif self.callDisposition == 'product_quality_issue':
|
1799 |
elif self.callDisposition == 'product_quality_issue':
|
| 1799 |
self.callHistoryCrm.disposition_description='Product Quality issue'
|
1800 |
self.callHistoryCrm.disposition_description='Product Quality issue'
|
| 1800 |
utils.sendCrmProjectMail(self.userId,self.callHistoryCrm.disposition_description,self.callHistoryCrm.disposition_comments)
|
1801 |
utils.sendCrmProjectMail(self.userId,self.callHistoryCrm.disposition_description,self.callHistoryCrm.disposition_comments)
|
| - |
|
1802 |
a.addTicket(self, self.userId, self.callHistoryCrm.disposition_description, self.callHistoryCrm.disposition_comments)
|
| 1801 |
elif self.callDisposition == 'delayed_delivery':
|
1803 |
elif self.callDisposition == 'delayed_delivery':
|
| 1802 |
self.callHistoryCrm.disposition_description='Delayed Delivery'
|
1804 |
self.callHistoryCrm.disposition_description='Delayed Delivery'
|
| 1803 |
utils.sendCrmProjectMail(self.userId,self.callHistoryCrm.disposition_description,self.callHistoryCrm.disposition_comments)
|
1805 |
utils.sendCrmProjectMail(self.userId,self.callHistoryCrm.disposition_description,self.callHistoryCrm.disposition_comments)
|
| - |
|
1806 |
a.addTicket(self, self.userId, self.callHistoryCrm.disposition_description, self.callHistoryCrm.disposition_comments)
|
| 1804 |
elif self.callDisposition == 'other_complaint':
|
1807 |
elif self.callDisposition == 'other_complaint':
|
| 1805 |
self.callHistoryCrm.disposition_description='Other complaint with profitmandi'
|
1808 |
self.callHistoryCrm.disposition_description='Other complaint with profitmandi'
|
| 1806 |
utils.sendCrmProjectMail(self.userId,self.callHistoryCrm.disposition_description,self.callHistoryCrm.disposition_comments)
|
1809 |
utils.sendCrmProjectMail(self.userId,self.callHistoryCrm.disposition_description,self.callHistoryCrm.disposition_comments)
|
| - |
|
1810 |
a.addTicket(self, self.userId, self.callHistoryCrm.disposition_description, self.callHistoryCrm.disposition_comments)
|
| 1807 |
elif self.callDisposition == 'not_dealing_accessories':
|
1811 |
elif self.callDisposition == 'not_dealing_accessories':
|
| 1808 |
self.callHistoryCrm.disposition_description='Not Dealing in Accessories/Not Interested'
|
1812 |
self.callHistoryCrm.disposition_description='Not Dealing in Accessories/Not Interested'
|
| 1809 |
session.commit()
|
1813 |
session.commit()
|
| 1810 |
jdata = self.inputs
|
1814 |
jdata = self.inputs
|
| 1811 |
jdata = json.loads(jdata)
|
1815 |
jdata = json.loads(jdata)
|
| Line 1959... |
Line 1963... |
| 1959 |
if userPresent.project_id==project_id:
|
1963 |
if userPresent.project_id==project_id:
|
| 1960 |
if userPresent.modified.date()>=(datetime.now().date()-timedelta(days=30)):
|
1964 |
if userPresent.modified.date()>=(datetime.now().date()-timedelta(days=30)):
|
| 1961 |
continue
|
1965 |
continue
|
| 1962 |
else:
|
1966 |
else:
|
| 1963 |
pass
|
1967 |
pass
|
| 1964 |
elif userPresent.modified.date()>=(datetime.now().date()-timedelta(days=3)):
|
1968 |
elif userPresent.modified.date()>=(datetime.now().date()-timedelta(days=30)):
|
| 1965 |
continue
|
1969 |
continue
|
| 1966 |
else:
|
1970 |
else:
|
| 1967 |
continue
|
1971 |
continue
|
| 1968 |
counter=counter+1
|
1972 |
counter=counter+1
|
| 1969 |
userMasterData = UserCrmCallingData()
|
1973 |
userMasterData = UserCrmCallingData()
|
| Line 2119... |
Line 2123... |
| 2119 |
|
2123 |
|
| 2120 |
d_sorted = sorted(zip(userMasterMap.values(), userMasterMap.keys()))
|
2124 |
d_sorted = sorted(zip(userMasterMap.values(), userMasterMap.keys()))
|
| 2121 |
addUserToTable(d_sorted,2)
|
2125 |
addUserToTable(d_sorted,2)
|
| 2122 |
|
2126 |
|
| 2123 |
def getUserContactDetails(userId):
|
2127 |
def getUserContactDetails(userId):
|
| - |
|
2128 |
try:
|
| 2124 |
r = session.query(Users.mobile_number).filter_by(id=userId).first()
|
2129 |
r = session.query(Users.mobile_number).filter_by(id=userId).first()
|
| 2125 |
if r is None:
|
2130 |
if r is None:
|
| 2126 |
return None
|
2131 |
return None
|
| 2127 |
else:
|
2132 |
else:
|
| 2128 |
return r[0]
|
2133 |
return r[0]
|
| - |
|
2134 |
finally:
|
| - |
|
2135 |
session.close()
|
| 2129 |
|
2136 |
|
| 2130 |
def getUsername(userId):
|
2137 |
def getUsername(userId):
|
| - |
|
2138 |
try:
|
| 2131 |
r = session.query(Users.first_name).filter_by(id=userId).first()
|
2139 |
r = session.query(Users.first_name).filter_by(id=userId).first()
|
| 2132 |
if r is None:
|
2140 |
if r is None:
|
| 2133 |
return None
|
2141 |
return None
|
| 2134 |
else:
|
2142 |
else:
|
| 2135 |
return r[0]
|
2143 |
return r[0]
|
| 2136 |
|
2144 |
finally:
|
| - |
|
2145 |
session.close()
|
| 2137 |
def checkPincodeServicable(userId):
|
2146 |
def checkPincodeServicable(userId):
|
| 2138 |
checkAddressUser = "select distinct pincode from all_user_addresses where user_id= (%s)"
|
2147 |
checkAddressUser = "select distinct pincode from all_user_addresses where user_id= (%s)"
|
| 2139 |
result = fetchResult(checkAddressUser,userId)
|
2148 |
result = fetchResult(checkAddressUser,userId)
|
| 2140 |
if len(result)==0:
|
2149 |
if len(result)==0:
|
| 2141 |
return True
|
2150 |
return True
|
| Line 2177... |
Line 2186... |
| 2177 |
if result ==():
|
2186 |
if result ==():
|
| 2178 |
obj.lastActiveCartTime = None
|
2187 |
obj.lastActiveCartTime = None
|
| 2179 |
else:
|
2188 |
else:
|
| 2180 |
print result
|
2189 |
print result
|
| 2181 |
obj.lastActiveCartTime =datetime.strftime(result[0][0], '%d/%m/%Y %H:%M:%S')
|
2190 |
obj.lastActiveCartTime =datetime.strftime(result[0][0], '%d/%m/%Y %H:%M:%S')
|
| - |
|
2191 |
conn.close()
|
| - |
|
2192 |
|
| 2182 |
conn.close()
|
2193 |
session.close()
|
| 2183 |
return obj
|
2194 |
return obj
|
| 2184 |
|
2195 |
|
| 2185 |
class CrmTicketDtr():
|
2196 |
class CrmTicketDtr():
|
| 2186 |
def on_post(self,req,resp):
|
2197 |
def on_post(self,req,resp):
|
| - |
|
2198 |
try:
|
| 2187 |
customerFeedbackBackMap = {}
|
2199 |
customerFeedbackBackMap = {}
|
| 2188 |
customerFeedbackBackMap['user_id']=req.get_param("user_id")
|
2200 |
customerFeedbackBackMap['user_id']=req.get_param("user_id")
|
| 2189 |
user = session.query(Users).filter_by(id=customerFeedbackBackMap.get('user_id')).first()
|
2201 |
user = session.query(Users).filter_by(id=customerFeedbackBackMap.get('user_id')).first()
|
| 2190 |
if user is not None:
|
2202 |
if user is not None:
|
| 2191 |
customerFeedbackBackMap['email']=user.email
|
2203 |
customerFeedbackBackMap['email']=user.email
|
| 2192 |
customerFeedbackBackMap['mobile_number']=user.mobile_number
|
2204 |
customerFeedbackBackMap['mobile_number']=user.mobile_number
|
| 2193 |
customerFeedbackBackMap['customer_name']=user.first_name + ' ' + user.last_name
|
2205 |
customerFeedbackBackMap['customer_name']=user.first_name + ' ' + user.last_name
|
| 2194 |
customerFeedbackBackMap['subject'] = req.get_param("subject")
|
2206 |
customerFeedbackBackMap['subject'] = req.get_param("subject")
|
| 2195 |
customerFeedbackBackMap['message'] = req.get_param("message")
|
2207 |
customerFeedbackBackMap['message'] = req.get_param("message")
|
| 2196 |
customerFeedbackBackMap['created'] = datetime.now()
|
2208 |
customerFeedbackBackMap['created'] = datetime.now()
|
| 2197 |
if utils.generateCrmTicket(customerFeedbackBackMap):
|
2209 |
if utils.generateCrmTicket(customerFeedbackBackMap):
|
| 2198 |
resp.body={"result":"success"}
|
2210 |
resp.body={"result":"success"}
|
| - |
|
2211 |
else:
|
| - |
|
2212 |
resp.body={"result":"failure"}
|
| 2199 |
else:
|
2213 |
else:
|
| 2200 |
resp.body={"result":"failure"}
|
2214 |
resp.body={"result":"failure"}
|
| 2201 |
else:
|
2215 |
except:
|
| - |
|
2216 |
print traceback.print_exc()
|
| - |
|
2217 |
finally:
|
| 2202 |
resp.body={"result":"failure"}
|
2218 |
session.close()
|
| 2203 |
|
- |
|
| 2204 |
def addTicket(self,user_id,subject,message):
|
2219 |
def addTicket(self,user_id,subject,message):
|
| - |
|
2220 |
try:
|
| 2205 |
customerFeedbackBackMap = {}
|
2221 |
customerFeedbackBackMap = {}
|
| 2206 |
customerFeedbackBackMap['user_id']=user_id
|
2222 |
customerFeedbackBackMap['user_id']=user_id
|
| 2207 |
user = session.query(Users).filter_by(id=user_id).first()
|
2223 |
user = session.query(Users).filter_by(id=user_id).first()
|
| 2208 |
if user is not None:
|
2224 |
if user is not None:
|
| 2209 |
customerFeedbackBackMap['email']=user.email
|
2225 |
customerFeedbackBackMap['email']=user.email
|
| 2210 |
customerFeedbackBackMap['mobile_number']=user.mobile_number
|
2226 |
customerFeedbackBackMap['mobile_number']=user.mobile_number
|
| 2211 |
customerFeedbackBackMap['customer_name']=user.first_name + ' ' + user.last_name
|
2227 |
customerFeedbackBackMap['customer_name']=user.first_name + ' ' + user.last_name
|
| 2212 |
customerFeedbackBackMap['subject'] = subject
|
2228 |
customerFeedbackBackMap['subject'] = subject
|
| 2213 |
customerFeedbackBackMap['message'] = message
|
2229 |
customerFeedbackBackMap['message'] = message
|
| 2214 |
customerFeedbackBackMap['created'] = datetime.now()
|
2230 |
customerFeedbackBackMap['created'] = datetime.now()
|
| 2215 |
utils.generateCrmTicket(customerFeedbackBackMap)
|
2231 |
utils.generateCrmTicket(customerFeedbackBackMap)
|
| 2216 |
else:
|
2232 |
else:
|
| 2217 |
print 'User is not present'
|
2233 |
print 'User is not present'
|
| - |
|
2234 |
except:
|
| - |
|
2235 |
print traceback.print_exc()
|
| - |
|
2236 |
finally:
|
| - |
|
2237 |
session.close()
|
| 2218 |
|
2238 |
|
| 2219 |
class UnitDeal():
|
2239 |
class UnitDeal():
|
| 2220 |
def on_get(self,req,resp, id):
|
2240 |
def on_get(self,req,resp, id):
|
| 2221 |
result = Mongo.getDealById(id)
|
2241 |
result = Mongo.getDealById(id)
|
| 2222 |
resp.body = dumps(result)
|
2242 |
resp.body = dumps(result)
|