Subversion Repositories SmartDukaan

Rev

Rev 18709 | Rev 18713 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 18709 Rev 18712
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)