Subversion Repositories SmartDukaan

Rev

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

Rev 5388 Rev 5402
Line 818... Line 818...
818
        update_trust_level(order)
818
        update_trust_level(order)
819
    session.commit()
819
    session.commit()
820
 
820
 
821
def mark_order_as_delivered(orderId, deliveryTimestamp, receiver):
821
def mark_order_as_delivered(orderId, deliveryTimestamp, receiver):
822
    order = Order.get_by(id=orderId)
822
    order = Order.get_by(id=orderId)
823
    if order == None or order.status not in [OrderStatus.SHIPPED_FROM_WH, OrderStatus.SHIPPED_TO_LOGST, OrderStatus.SHIPPED_TO_DESTINATION_CITY, OrderStatus.REACHED_DESTINATION_CITY, OrderStatus.FIRST_DELIVERY_ATTEMPT_MADE, OrderStatus.DOA_PICKUP_REQUEST_RAISED, OrderStatus.DOA_PICKUP_CONFIRMED, OrderStatus.RET_REQUEST_RECEIVED, OrderStatus.RET_PICKUP_CONFIRMED, OrderStatus.RET_REQUEST_AUTHORIZED, OrderStatus.RET_PICKUP_REQUEST_RAISED, OrderStatus.RTO_IN_TRANSIT]:
823
    if order == None or order.status not in [OrderStatus.SHIPPED_FROM_WH, OrderStatus.SHIPPED_TO_LOGST, OrderStatus.SHIPPED_TO_DESTINATION_CITY, OrderStatus.REACHED_DESTINATION_CITY, OrderStatus.FIRST_DELIVERY_ATTEMPT_MADE, OrderStatus.DOA_PICKUP_REQUEST_RAISED, OrderStatus.DOA_PICKUP_CONFIRMED, OrderStatus.RET_REQUEST_RECEIVED, OrderStatus.RET_PICKUP_CONFIRMED, OrderStatus.RET_REQUEST_AUTHORIZED, OrderStatus.RET_PICKUP_REQUEST_RAISED, OrderStatus.RTO_IN_TRANSIT, OrderStatus.BILLED]:
824
        raise TransactionServiceException(101, "Either wrond order id or invalid state " + str(orderId))
824
        raise TransactionServiceException(101, "Either wrond order id or invalid state " + str(orderId))
825
    
825
   
-
 
826
    # Provider is 4 is for self pickup and hardcoded. We should figure out a way to not to hard code.   
-
 
827
    if order.status == OrderStatus.BILLED and order.logistics_provider_id != 4:
-
 
828
            raise TransactionServiceException(101, "Order is not marked for self pickup: " + str(orderId))
-
 
829
         
826
    if order.status in [OrderStatus.SHIPPED_FROM_WH, OrderStatus.SHIPPED_TO_LOGST, OrderStatus.SHIPPED_TO_DESTINATION_CITY, OrderStatus.REACHED_DESTINATION_CITY, OrderStatus.FIRST_DELIVERY_ATTEMPT_MADE, OrderStatus.RTO_IN_TRANSIT]:
830
    if order.status in [OrderStatus.SHIPPED_FROM_WH, OrderStatus.SHIPPED_TO_LOGST, OrderStatus.SHIPPED_TO_DESTINATION_CITY, OrderStatus.REACHED_DESTINATION_CITY, OrderStatus.FIRST_DELIVERY_ATTEMPT_MADE, OrderStatus.RTO_IN_TRANSIT, OrderStatus.BILLED]:
827
        order.delivery_timestamp = deliveryTimestamp
831
        order.delivery_timestamp = deliveryTimestamp
828
        order.receiver = receiver
832
        order.receiver = receiver
829
    order.status = OrderStatus.DELIVERY_SUCCESS
833
    order.status = OrderStatus.DELIVERY_SUCCESS
830
    order.statusDescription = "Order delivered"
834
    order.statusDescription = "Order delivered"
831
    update_trust_level(order)
835
    update_trust_level(order)