Subversion Repositories SmartDukaan

Rev

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

Rev 9457 Rev 9483
Line 122... Line 122...
122
        try:
122
        try:
123
            item_id = int(sheet.row_values(rownum)[0])
123
            item_id = int(sheet.row_values(rownum)[0])
124
            supc = sheet.row_values(rownum)[1]
124
            supc = sheet.row_values(rownum)[1]
125
            item = Item.query.filter_by(id=item_id).one()
125
            item = Item.query.filter_by(id=item_id).one()
126
        except Exception as e:
126
        except Exception as e:
127
            print "No item found"
127
            print "No item found.Maybe due to snapdeal item code in place of our sku id.Lets try again."
128
            print e
128
            print e
-
 
129
            try:
-
 
130
                item_id = sheet.row_values(rownum)[0]
-
 
131
                snapdeal_item = SnapdealItem.query.filter_by(skuAtSnapdeal=item_id).one()
-
 
132
                item = Item.query.filter_by(id=snapdeal_item.item_id).one()
-
 
133
            except Exception as ex:
-
 
134
                print "Ahh...Still unable to find"
-
 
135
                print ex
129
            one_line = _SnapdealItemInfo(sheet.row_values(rownum)[0], '', '', 0, '', '','', '', 0, '', False,"item_related")
136
                one_line = _SnapdealItemInfo(sheet.row_values(rownum)[0], '', '', 0, '', '','', '', 0, '', False,"item_related")
130
            all_supc.append(supc)
137
                all_supc.append(supc)
131
            all_lines.append(one_line)
138
                all_lines.append(one_line)
132
            continue
139
                continue
133
            
140
            
134
        category = Category.query.filter_by(id=item.category).one()
141
        category = Category.query.filter_by(id=item.category).one()
135
        parent_category = Category.query.filter_by(parent_category_id=category.parent_category_id).first()
142
        parent_category = Category.query.filter_by(parent_category_id=category.parent_category_id).first()
136
        try:
143
        try:
137
            snapdeal_item = SnapdealItem.query.filter_by(item_id=item_id).one()
144
            snapdeal_item = SnapdealItem.query.filter_by(item_id=item_id).one()
Line 730... Line 737...
730
    sheet.write(0, 10, "Risky", heading_xf)
737
    sheet.write(0, 10, "Risky", heading_xf)
731
    sheet.write(0, 11, "Our SP", heading_xf)
738
    sheet.write(0, 11, "Our SP", heading_xf)
732
    sheet.write(0, 13, "Our TP", heading_xf)
739
    sheet.write(0, 13, "Our TP", heading_xf)
733
    sheet.write(0, 12, "Our Offer Price", heading_xf)
740
    sheet.write(0, 12, "Our Offer Price", heading_xf)
734
    sheet.write(0, 14, "Our Rank", heading_xf)
741
    sheet.write(0, 14, "Our Rank", heading_xf)
735
    sheet.write(0, 15, "Lowest Seller", heading_xf)
-
 
736
    sheet.write(0, 16, "Lowest SP", heading_xf)
-
 
737
    sheet.write(0, 17, "Lowest TP", heading_xf)
-
 
738
    sheet.write(0, 18, "Lowest Offer Price", heading_xf)
-
 
739
    sheet.write(0, 19, "Inventory of Top Vendors", heading_xf)
-
 
740
    sheet.write(0, 20, "Our Snapdeal Inventory", heading_xf)
-
 
741
    sheet.write(0, 21, "Our NLC", heading_xf)
742
    sheet.write(0, 15, "Our NLC", heading_xf)
742
    sheet.write(0, 22, "Lowest Possible TP", heading_xf)
-
 
743
    sheet.write(0, 23, "Lowest Possible SP", heading_xf)
-
 
744
    sheet.write(0, 24, "Competition Basis ", heading_xf)
-
 
745
    sheet.write(0, 25, "Can Compete", heading_xf)
-
 
746
    sheet.write(0, 26, "Target TP", heading_xf)
743
    sheet.write(0, 16, "Margin", heading_xf)
747
    sheet.write(0, 27, "Target SP", heading_xf)  
-
 
748
    sheet.write(0, 28, "Sales Potential", heading_xf)
-
 
749
    
744
    
750
    i, sheet_iterator=1,1
745
    i, sheet_iterator=1,1
751
    for data in negativeMargin:
746
    for data in negativeMargin:
752
        supc_data =data[0]
747
        supc_data =data[0]
753
        one_line = data[1]
748
        one_line = data[1]
Line 759... Line 754...
759
        for x in range (0,slab):
754
        for x in range (0,slab):
760
            courierCost = courierCost + 35
755
            courierCost = courierCost + 35
761
        
756
        
762
        courierCost = courierCost * 1.1236
757
        courierCost = courierCost * 1.1236
763
        
758
        
-
 
759
        '''if one_line.parent_category ==10011:
-
 
760
            lowestTp = (supc_data.lowestSp*(1-.0803))-courierCost
-
 
761
        else:
-
 
762
            lowestTp = supc_data.lowestSp*0.9497-courierCost
-
 
763
        '''
-
 
764
        
-
 
765
        lowest_possible_tp = one_line.our_nlc/0.988+15+6
764
        
766
        
765
        sheet.write(sheet_iterator, 0, one_line.item_id)
767
        sheet.write(sheet_iterator, 0, one_line.item_id)
766
        sheet.write(sheet_iterator, 1, one_line.category_name)
768
        sheet.write(sheet_iterator, 1, one_line.category_name)
767
        sheet.write(sheet_iterator, 2, one_line.product_group)
769
        sheet.write(sheet_iterator, 2, one_line.product_group)
768
        sheet.write(sheet_iterator, 3, supc_data.supc)
770
        sheet.write(sheet_iterator, 3, supc_data.supc)
Line 772... Line 774...
772
        sheet.write(sheet_iterator, 7, one_line.color)
774
        sheet.write(sheet_iterator, 7, one_line.color)
773
        sheet.write(sheet_iterator, 8, one_line.weight)
775
        sheet.write(sheet_iterator, 8, one_line.weight)
774
        sheet.write(sheet_iterator, 9, round(courierCost))
776
        sheet.write(sheet_iterator, 9, round(courierCost))
775
        sheet.write(sheet_iterator, 10, one_line.risky)
777
        sheet.write(sheet_iterator, 10, one_line.risky)
776
        sheet.write(sheet_iterator, 11, supc_data.ourSp)
778
        sheet.write(sheet_iterator, 11, supc_data.ourSp)
777
        sheet.write(sheet_iterator, 13, '-')
779
        sheet.write(sheet_iterator, 13, round(supc_data.ourSp*0.9597-courierCost))
778
        sheet.write(sheet_iterator, 12, supc_data.ourOfferPrice)
780
        sheet.write(sheet_iterator, 12, supc_data.ourOfferPrice)
779
        sheet.write(sheet_iterator, 14, supc_data.rank)
781
        sheet.write(sheet_iterator, 14, supc_data.rank)
780
        sheet.write(sheet_iterator, 15, supc_data.lowestSellerName)
-
 
781
        sheet.write(sheet_iterator, 16, supc_data.lowestSp)
-
 
782
        if one_line.parent_category ==10011:
-
 
783
            lowestTp = (supc_data.lowestSp*(1-.0803))-courierCost
-
 
784
        else:
-
 
785
            lowestTp = supc_data.lowestSp*0.9497-courierCost
-
 
786
        sheet.write(sheet_iterator, 17, round(lowestTp))
-
 
787
        sheet.write(sheet_iterator, 18, supc_data.lowestOfferPrice)
-
 
788
        sheet.write(sheet_iterator, 19, supc_data.otherInventory)
-
 
789
        sheet.write(sheet_iterator, 20, supc_data.ourInventory)
-
 
790
        sheet.write(sheet_iterator, 21, one_line.our_nlc)
782
        sheet.write(sheet_iterator, 15, one_line.our_nlc)
791
        if supc_data.rank==1:
-
 
792
            i+=1
-
 
793
            sheet_iterator+=1
-
 
794
            continue
-
 
795
        lowest_possible_tp = one_line.our_nlc/0.988+15+6
-
 
796
        lowest_possible_sp = (lowest_possible_tp+courierCost)/0.9597
-
 
797
        sheet.write(sheet_iterator, 22, round(lowest_possible_tp))
783
        sheet.write(sheet_iterator, 16, round((supc_data.ourSp*0.9597-courierCost) - lowest_possible_tp))
798
        sheet.write(sheet_iterator, 23, round(lowest_possible_sp))
-
 
799
        competitionBasis ='TP'
-
 
800
        if (supc_data.lowestOfferPrice == supc_data.lowestSp):
-
 
801
            competitionBasis ='SP'
-
 
802
            sheet.write(sheet_iterator, 24, 'SP')
-
 
803
        else:
-
 
804
            sheet.write(sheet_iterator, 24, 'TP')
-
 
805
        proposed_tp = 0
-
 
806
        if lowestTp > lowest_possible_tp:
-
 
807
            sheet.write(sheet_iterator, 25, "Yes")
-
 
808
            if competitionBasis=='SP':
-
 
809
                proposed_sp = max(supc_data.lowestSp - max((10, supc_data.lowestSp*0.001)), lowest_possible_sp)
-
 
810
                proposed_tp = proposed_sp*.9597-courierCost
-
 
811
                sheet.write(sheet_iterator, 26, round(proposed_tp))
-
 
812
                sheet.write(sheet_iterator, 27, round(proposed_sp))
-
 
813
            else:
-
 
814
                proposed_tp  = max(lowestTp - max((10, lowestTp*0.001)), lowest_possible_tp)
-
 
815
                sheet.write(sheet_iterator, 26, round(proposed_tp))
-
 
816
                sheet.write(sheet_iterator, 27, round((proposed_tp+courierCost)/0.9597))
-
 
817
        else:
-
 
818
            sheet.write(sheet_iterator, 25, "No")
-
 
819
        
-
 
820
        if (supc_data.lowestOfferPrice - one_line.our_nlc) < 0:
-
 
821
            sheet.write(sheet_iterator, 28, "HIGH")
-
 
822
        elif (supc_data.lowestOfferPrice - one_line.our_nlc)/supc_data.lowestOfferPrice >=0 and (supc_data.lowestOfferPrice - one_line.our_nlc)/supc_data.lowestOfferPrice <= .02:
-
 
823
            sheet.write(sheet_iterator, 28, "MEDIUM")
-
 
824
        else:
-
 
825
            sheet.write(sheet_iterator, 28, "LOW")
-
 
826
        i= i+1
784
        i= i+1
827
        sheet_iterator+=1
785
        sheet_iterator+=1
828
       
786
       
829
 
787
 
830
def main():
788
def main():