Subversion Repositories SmartDukaan

Rev

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

Rev 18338 Rev 18346
Line 1711... Line 1711...
1711
                self.callHistoryCrm.user_id=self.userId
1711
                self.callHistoryCrm.user_id=self.userId
1712
                self.callHistoryCrm.duration_sec = int(jsonReq.get("callduration"))
1712
                self.callHistoryCrm.duration_sec = int(jsonReq.get("callduration"))
1713
                self.callHistoryCrm.disposition_comments = jsonReq.get('calldispositioncomments')
1713
                self.callHistoryCrm.disposition_comments = jsonReq.get('calldispositioncomments')
1714
                self.callHistoryCrm.call_time = datetime.strptime(jsonReq.get("calltime"), '%d/%m/%Y %H:%M:%S')
1714
                self.callHistoryCrm.call_time = datetime.strptime(jsonReq.get("calltime"), '%d/%m/%Y %H:%M:%S')
1715
                self.callHistoryCrm.mobile_number = jsonReq.get('number')
1715
                self.callHistoryCrm.mobile_number = jsonReq.get('number')
1716
                
1716
                self.inputs = jsonReq.get("inputs")
1717
                dispositionMap = {  'call_later':callLaterAccs,
1717
                dispositionMap = {  'call_later':callLaterAccs,
1718
                            'ringing_no_answer':callLaterAccs,
1718
                            'ringing_no_answer':callLaterAccs,
1719
                            'not_reachable':callLaterAccs,
1719
                            'not_reachable':callLaterAccs,
1720
                            'switch_off':callLaterAccs,
1720
                            'switch_off':callLaterAccs,
1721
                            'technical_issue':accsDisposition,
1721
                            'technical_issue':accsDisposition,
Line 1756... Line 1756...
1756
        elif self.callDisposition == 'placed_order':
1756
        elif self.callDisposition == 'placed_order':
1757
            self.callHistoryCrm.disposition_description='Placed Order from Different Account'    
1757
            self.callHistoryCrm.disposition_description='Placed Order from Different Account'    
1758
        elif self.callDisposition == 'place_order':
1758
        elif self.callDisposition == 'place_order':
1759
            self.callHistoryCrm.disposition_description='Will Place Order'            
1759
            self.callHistoryCrm.disposition_description='Will Place Order'            
1760
        session.commit()
1760
        session.commit()
-
 
1761
        lgr.info( "Disposition Id ----\n"  + str(self.callHistoryCrm.id))
-
 
1762
        s =self.inputs
-
 
1763
        lgr.info( "Input ----\n"  + str(s))
-
 
1764
        jdata = json.loads(s)
-
 
1765
        for d in jdata:
-
 
1766
            for key, value in d.iteritems():
-
 
1767
                lgr.info( "Output " +  key +" " + value)        
1761
        return True
1768
        return True
1762
        
1769
        
1763
    def callLaterAccs(self):
1770
    def callLaterAccs(self):
1764
        self.user.status='retry'
1771
        self.user.status='retry'
1765
        self.user.modified = datetime.now()
1772
        self.user.modified = datetime.now()
Line 1796... Line 1803...
1796
                self.user.status = 'failed'
1803
                self.user.status = 'failed'
1797
                self.user.user_available=1
1804
                self.user.user_available=1
1798
                self.callHistoryCrm.disposition_description = 'Call failed as all attempts exhausted'
1805
                self.callHistoryCrm.disposition_description = 'Call failed as all attempts exhausted'
1799
        self.user.disposition=self.callDisposition        
1806
        self.user.disposition=self.callDisposition        
1800
        session.commit()
1807
        session.commit()
-
 
1808
        lgr.info( "Disposition Id ----\n"  + str(self.callHistoryCrm.id))
-
 
1809
        s =self.inputs
-
 
1810
        lgr.info( "Input ----\n"  + str(s))
-
 
1811
        jdata = json.loads(s)
-
 
1812
        for d in jdata:
-
 
1813
            for key, value in d.iteritems():
-
 
1814
                lgr.info( "Output " +  key +" " + value)        
1801
        return True
1815
        return True
1802
    
1816
    
1803
def insertUserCrmData(project_id):
1817
def insertUserCrmData(project_id):
1804
    if project_id==1:  
1818
    if project_id==1:  
1805
        getCartDetailsUser()
1819
        getCartDetailsUser()
Line 1882... Line 1896...
1882
            print traceback.print_exc()
1896
            print traceback.print_exc()
1883
        finally:
1897
        finally:
1884
            session.close()    
1898
            session.close()    
1885
    
1899
    
1886
def getCartTabsUser():
1900
def getCartTabsUser():
1887
    userList=[]
1901
    userMasterList=[]
1888
    orderUserList=[]
1902
    userList = []
1889
    userMasterMap={}
1903
    userMasterMap={}
1890
    queryfilter = {"$and":
1904
    queryfilter = {"$and":
1891
                   [
1905
                   [
1892
                    {'created':{"$gte":(to_java_date(datetime.now())-2*86400000)}},
1906
                    {'created':{"$gte":(to_java_date(datetime.now())-2*86400000)}},
1893
                    {'created':{"$lte":(to_java_date(datetime.now())- 43200000)}},
1907
                    {'created':{"$lte":(to_java_date(datetime.now())- 43200000)}},
Line 1895... Line 1909...
1895
                    ]
1909
                    ]
1896
                   }
1910
                   }
1897
    result = get_mongo_connection_dtr_data().User.browsinghistories.find(queryfilter).distinct('user_id')
1911
    result = get_mongo_connection_dtr_data().User.browsinghistories.find(queryfilter).distinct('user_id')
1898
    
1912
    
1899
    for r in result:
1913
    for r in result:
1900
        userList.append(r)
1914
        userMasterList.append(r)
1901
    
-
 
1902
    
1915
    
-
 
1916
    queryfilterVisistedCart = {"$and":
-
 
1917
                   [
-
 
1918
                    {"url":{"$regex" : "http://api.profittill.com/cartdetails"}}
-
 
1919
                    ]
-
 
1920
                  }
-
 
1921
    result = get_mongo_connection_dtr_data().User.browsinghistories.find(queryfilterVisistedCart).distinct('user_id')
-
 
1922
    for r in result:
-
 
1923
        userList.append(r)
1903
    
1924
    
1904
    myquery = "select user_id from allorder where store_id='spice' and (category='Accs' or category='Accessories') and user_id in (%s)" % ",".join(map(str,userList))
1925
    myquery = "select user_id from allorder where store_id='spice' and (category='Accs' or category='Accessories') and user_id in (%s)" % ",".join(map(str,userList))
1905
 
1926
 
1906
    result = fetchResult(myquery)
1927
    result = fetchResult(myquery)
1907
    for r in result:
1928
    for r in result:
-
 
1929
        if r[0] in userList:
-
 
1930
            continue
1908
        orderUserList.append(r)
1931
        userList.append(r[0])
1909
    
1932
    
1910
    finalUserList  = list(set(userList) - set(orderUserList))
1933
    finalUserList  = list(set(userMasterList) - set(userList))
-
 
1934
    print finalUserList
1911
    
1935
    finalUserList
1912
    queryfilternew = {"$and":
1936
    queryfilternew = {"$and":
1913
                   [
1937
                   [
1914
                    {'user_id':{"$in":finalUserList}},
1938
                    {'user_id':{"$in":finalUserList}},
1915
                    {'created':{"$gte":(to_java_date(datetime.now())-2*86400000)}},
1939
                    {'created':{"$gte":(to_java_date(datetime.now())-2*86400000)}},
1916
                    {'created':{"$lte":(to_java_date(datetime.now())- 43200000)}},
1940
                    {'created':{"$lte":(to_java_date(datetime.now())- 43200000)}},
Line 1925... Line 1949...
1925
                userMasterMap[i.get('user_id')]=i.get('created')
1949
                userMasterMap[i.get('user_id')]=i.get('created')
1926
        else:
1950
        else:
1927
            userMasterMap[i.get('user_id')]=i.get('created')
1951
            userMasterMap[i.get('user_id')]=i.get('created')
1928
 
1952
 
1929
    d_sorted = sorted(zip(userMasterMap.values(), userMasterMap.keys()))
1953
    d_sorted = sorted(zip(userMasterMap.values(), userMasterMap.keys()))
-
 
1954
    addUserToTable(d_sorted,2)
1930
 
1955
    
1931
def getUserContactDetails(userId):
1956
def getUserContactDetails(userId):
1932
    r = session.query(Users.mobile_number).filter_by(id=userId).first()
1957
    r = session.query(Users.mobile_number).filter_by(id=userId).first()
1933
    if r is None:
1958
    if r is None:
1934
        return None
1959
        return None
1935
    else:
1960
    else: