package com.erp.example.seata.mapper; import com.erp.example.seata.entity.Inventory; import org.apache.ibatis.annotations.*; @Mapper public interface InventoryMapper { @Update("UPDATE inventory SET stock=#{stock}, reserved_stock=#{reservedStock}, update_time=NOW() WHERE product_id=#{productId}") void update(Inventory inventory); @Select("SELECT * FROM inventory WHERE product_id = #{productId}") @Results({ @Result(property = "id", column = "id"), @Result(property = "productId", column = "product_id"), @Result(property = "productName", column = "product_name"), @Result(property = "stock", column = "stock"), @Result(property = "reservedStock", column = "reserved_stock"), @Result(property = "availableStock", column = "available_stock"), @Result(property = "warehouse", column = "warehouse"), @Result(property = "updateTime", column = "update_time") }) Inventory findByProductId(@Param("productId") Long productId); }