I'm not sure if this is really a bug but I thought I'd ask here.  I'm currently investigating the possibility of moving one of our websites onto the nopCommerce platform which will require some integration with our ERP system to maintain some of the product data and stock levels.  While looking at this I noticed this behaviour in nopCommerce (v3.4) regarding stock levels that I wasn't expecting:

  1. Open a product record for editing in the nop admin interface (one that is set to track inventory)
  2. Open another browser tab, browse to the same product in the store, add it to the cart and checkout.  This effectively reduces to product's stock level in the database by 1 since it's an inventory tracked product and someone just bought one.
  3. Go back to the admin interface tab and click on the save and continue button (without having made any changes to the product).
  4. At this point the product's stock level is reset to the number it was at when the product record was opened for editing and the decrease in stock that occurred while the record was being edited is lost.

I was expecting that there would be some sort of entity change tracking in place that would cause the product entity to only update properties that have actually changed but it seems like all the product's properties are being updated whether they have changed or not.  Is this the expected/desired behaviour? (or is it just me seeing this issue - I can't find any other forum posts that even mention it).

Thanks, Pete.