package com.example.erp.mapper.mm; import com.example.erp.entity.mm.MaterialInventory; import com.example.erp.entity.mm.MaterialOutbound; import com.example.erp.entity.mm.MaterialOutboundDetail; import com.example.erp.entity.mm.MaterialStore; import com.example.erp.entity.sd.Delivery; import com.example.erp.entity.sd.DeliveryDetail; import com.example.erp.entity.sd.OrderDetail; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.springframework.data.repository.CrudRepository; import java.time.LocalDate; import java.util.List; import java.util.Map; @Mapper public interface MaterialInventoryMapper extends CrudRepository { List> getSelectMaterialInventoryDate(@Param("offset") Integer offset, @Param("pageSize") Integer pageSize,String startDate, String endDate, @Param("materialInventory") MaterialInventory materialInventory); Map getSelectMaterialInventoryDatePageTotal(Integer offset, Integer pageSize,String startDate, String endDate, MaterialInventory materialInventory); List> getSelectMaterialInventory(@Param("offset") Integer offset, @Param("pageSize") Integer pageSize, @Param("materialInventory") MaterialInventory materialInventory); Map getSelectMaterialInventoryPageTotal(Integer offset, Integer pageSize, MaterialInventory materialInventory); Boolean insertMaterialStore(@Param("type") String type, @Param("json") String json); Boolean updateMaterialStore(@Param("type") String type, @Param("json") String json, @Param("id") Long id); Boolean deleteMaterialOutbound(@Param("materialOutboundId") String materialOutboundId); Integer getmaximum(@Param("type") String type); Integer getMaterialOutboundCount(@Param("materialOutboundId") String materialOutboundId); Integer getMaterialInventoryCount(@Param("materialCode") Long materialCode,@Param("dateOfManufacture") LocalDate dateOfManufacture); List getIsNotMaterialOutboundDetail( @Param("materialOutboundId") String materialOutboundId); Boolean insertMaterialInventoryMapper(@Param("materialOutbound") MaterialOutbound materialOutbound, @Param("number") String number); Integer getMaterialOutboundDetailMaximum(@Param("materialOutboundId") String materialOutboundId); Boolean insertMaterialOutboundDetail(@Param("materialOutboundDetail") MaterialOutboundDetail materialOutboundDetail, @Param("number") String number, @Param("materialOutboundNumber") Integer materialOutboundNumber); Boolean updateMaterialInventoryAvailableOut(@Param("inventoryId") Long inventoryId, @Param("quantity") Integer quantity); Boolean updateMaterialInventoryAvailableInt(@Param("inventoryId") Long inventoryId, @Param("quantity") Integer quantity); Boolean updateMaterialInventoryInventoryOut(@Param("inventoryId") Long inventoryId, @Param("quantity") Integer quantity); Boolean updateMaterialInventoryInventoryInt(@Param("inventoryId") Long inventoryId, @Param("quantity") Integer quantity); Boolean deleteMaterialOutboundDetail(@Param("materialOutboundId") String materialOutboundId); List getSelectMaterialOutboundDate(@Param("offset") Integer offset, @Param("pageSize") Integer pageSize,String startDate, String endDate, @Param("materialOutbound") MaterialOutbound materialOutbound); Map getSelectMaterialOutboundDatePageTotal(Integer offset, Integer pageSize,String startDate, String endDate,MaterialOutbound materialOutbound); MaterialOutbound getSelectMaterialOutbound(@Param("offset") Integer offset, @Param("pageSize") Integer pageSize, @Param("materialOutboundDetail") MaterialOutboundDetail materialOutboundDetail); List> getSelectMaterialOutboundDetail(@Param("offset") Integer offset, @Param("pageSize") Integer pageSize, @Param("materialOutboundDetail") MaterialOutboundDetail materialOutboundDetail); Map getSelectMaterialOutboundDetailPageTotal(Integer offset, Integer pageSize,MaterialOutboundDetail materialOutboundDetail); Boolean updateMaterialOutboundToExamine(@Param("materialOutboundId") String materialOutboundId,@Param("reviewedState") int reviewedState,@Param("reviewed") String reviewed); Boolean updateMaterialOutboundCounterExamination(@Param("materialOutboundId") String materialOutboundId,@Param("reviewedState") int reviewedState,@Param("reviewed") String reviewed); Boolean updateMaterialInventory(@Param("materialCode") Long materialCode,@Param("singlePieceArea") Double singlePieceArea, @Param("totalArea") Double totalArea, @Param("materialInventory") MaterialInventory materialInventory); Boolean insertMaterialInventory(@Param("materialCode") Long materialCode,@Param("singlePieceArea") Double singlePieceArea, @Param("totalArea") Double totalArea, @Param("materialInventory") MaterialInventory materialInventory); }