Subversion Repositories SmartDukaan

Rev

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

Rev 16980 Rev 16986
Line 10... Line 10...
10
from dtr.api.Order import process_rejects
10
from dtr.api.Order import process_rejects
11
from dtr.dao import Order, SubOrder, AmazonAffiliateInfo
11
from dtr.dao import Order, SubOrder, AmazonAffiliateInfo
12
from dtr.main import getStore, Store as MStore, ParseException, getBrowserObject, \
12
from dtr.main import getStore, Store as MStore, ParseException, getBrowserObject, \
13
    ungzipResponse, tprint
13
    ungzipResponse, tprint
14
from dtr.sources.flipkart import todict, AFF_REPORT_URL
14
from dtr.sources.flipkart import todict, AFF_REPORT_URL
15
from dtr.storage.DataService import OrdersRaw, Orders, Order_Parse_Info
15
from dtr.storage.DataService import OrdersRaw, Orders, Order_Parse_Info,\
-
 
16
    All_user_addresses
16
from dtr.storage.Mongo import getDealRank
17
from dtr.storage.Mongo import getDealRank
17
from dtr.utils.utils import fetchResponseUsingProxy, readSSh
18
from dtr.utils.utils import fetchResponseUsingProxy, readSSh
18
from elixir import *
19
from elixir import *
19
import base64
20
import base64
20
import dtr
21
import dtr
Line 622... Line 623...
622
            
623
            
623
             
624
             
624
            
625
            
625
    def parseInfo(self,):
626
    def parseInfo(self,):
626
        from pyquery import PyQuery as pq
627
        from pyquery import PyQuery as pq
627
        orders = list(session.query(Orders).filter_by(store_id=self.store_id).filter_by(status='DETAIL_CREATED').all())
628
        orders = list(session.query(Orders).filter_by(store_id=self.store_id).filter_by(status='DETAIL_CREATED').group_by(Orders.user_id).all())
628
        try:
629
        try:
629
            for order in orders:
630
            for order in orders:
630
                try:
631
                try:
631
                    doc = pq(order.rawhtml)
632
                    doc = pq(order.rawhtml)
632
                    #a1= " ".join(["" if not div.text else div.text.replace("\t","").replace("\n","").replace(" ", "") for div in pq(doc('article')[-1])('div')])
633
                    #a1= " ".join(["" if not div.text else div.text.replace("\t","").replace("\n","").replace(" ", "") for div in pq(doc('article')[-1])('div')])
633
                    lists = doc('ul.displayAddressUL li')
634
                    lists = doc('ul.displayAddressUL li')
634
                    orderInfo = Order_Parse_Info()
635
                    orderInfo = All_user_addresses()
635
                    orderInfo.address = lists[-3].text
636
                    orderInfo.address = lists[-3].text
636
                    orderInfo.user_id = order.user_id
637
                    orderInfo.user_id = order.user_id
-
 
638
                    orderInfo.source = 'order' 
637
                    orderInfo.order_id = order.id
639
                    #orderInfo.order_id = order.id
638
                    orderInfo.email = None
640
                    #orderInfo.email = None
639
                    orderInfo.name = lists[0].text 
641
                    #orderInfo.name = lists[0].text 
640
                    orderInfo.mobile = None
642
                    #orderInfo.mobile = None
641
                    adSplit = lists[-2].text.split(",")
643
                    adSplit = lists[-2].text.split(",")
642
                    match = re.match(r"([a-z ]+)([0-9]+)", adSplit[1], re.I)
644
                    match = re.match(r"([a-z ]+)([0-9]+)", adSplit[1], re.I)
643
                    if match:
645
                    if match:
644
                        items = match.groups()
646
                        items = match.groups()
645
                    orderInfo.city = adSplit[0]
647
                    orderInfo.city = adSplit[0].strip()
646
                    orderInfo.pin = items[1]
648
                    orderInfo.pincode = items[1].strip()
647
                    orderInfo.state = items[0].upper()
649
                    orderInfo.state = items[0].strip().title()
648
                    session.commit()
650
                    session.commit()
649
                except:
651
                except:
650
                    session.rollback()
652
                    session.rollback()
651
                    continue
653
                    continue
652
        finally:
654
        finally: