Subversion Repositories SmartDukaan

Rev

Blame | Last modification | View Log | RSS feed

package com.spice.profitmandi.service.tag;

import com.spice.profitmandi.dao.entity.catalog.TagListing;
import com.spice.profitmandi.dao.entity.catalog.TagListingPriceLog;

/**
 * The one place a tag listing's DP (selling price), MOP and MRP are changed, so every change is logged to
 * catalog.tag_listing_price_log with its before and after values.
 */
public interface TagListingPriceService {

    /**
     * Sets the prices on the listing and records the change. Does not persist the listing itself.
     *
     * @param mrp       null leaves MRP unchanged
     * @param changedBy auth user id, or null when not user-initiated
     * @return the log row, or null when nothing changed
     */
    TagListingPriceLog setPrices(TagListing tagListing, float sellingPrice, float mop, Float mrp, String source, Integer changedBy);
}