chenlu
2025-03-07 3ab330b8aefb3cd781c9b8730b4ab7ac65e7e9d7
north-glass-erp/src/main/java/com/example/erp/mapper/mm/MaterialInventoryMapper.java
New file
@@ -0,0 +1,262 @@
package com.example.erp.mapper.mm;
import com.example.erp.dto.mm.FinishedOperateLogDTO;
import com.example.erp.entity.mm.*;
import com.example.erp.entity.pp.OptimizeUse;
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<MaterialInventory,Long> {
    List<Map<String,Object>> getSelectMaterialInventoryDate(@Param("offset") Integer offset,
                                     @Param("pageSize") Integer pageSize,String startDate, String endDate,
                                     @Param("materialInventory") MaterialInventory materialInventory);
    Map<String,Integer> getSelectMaterialInventoryDatePageTotal(Integer offset, Integer pageSize,String startDate, String endDate, MaterialInventory materialInventory);
    List<Map<String,Object>> getSelectMaterialInventoryEngineeringDate(@Param("offset") Integer offset,
                                                            @Param("pageSize") Integer pageSize,String startDate, String endDate,
                                                            @Param("materialInventory") MaterialInventory materialInventory);
    Map<String,Integer> getSelectMaterialInventoryEngineeringDatePageTotal(Integer offset, Integer pageSize,String startDate, String endDate, MaterialInventory materialInventory);
    List<Map<String,Object>> getSelectMaterialInventory(@Param("offset") Integer offset,
                                                       @Param("pageSize") Integer pageSize,
                                                       @Param("materialInventory") MaterialInventory materialInventory, @Param("ids") List<Long> ids);
    Map<String,Integer> getSelectMaterialInventoryPageTotal(Integer offset, Integer pageSize, MaterialInventory materialInventory, @Param("ids") List<Long> ids);
    List<Map<String,Object>> getSelectMaterialInventoryEngineering(@Param("offset") Integer offset,
                                                        @Param("pageSize") Integer pageSize,
                                                        @Param("optimizeUse") OptimizeUse optimizeUse, @Param("ids") List<Long> ids);
    Map<String,Integer> getSelectMaterialInventoryEngineeringPageTotal(Integer offset, Integer pageSize, OptimizeUse optimizeUse, @Param("ids") List<Long> ids);
    Boolean insertMaterialStore(@Param("type") String type,
                                         @Param("json") String json);
    Boolean deleteMaterialInventory(@Param("ids") List<Long> ids);
    Boolean updateMaterialStore(@Param("type") String type,
                                @Param("json") String json, @Param("id") Long id);
    Boolean deleteMaterialOutbound(@Param("materialOutboundId") String materialOutboundId);
    Boolean deleteMaterialLog(@Param("materialOutboundId") String materialOutboundId);
    Integer getMaximum(@Param("type") String type);
    Integer getMaximums(@Param("type") String type);
    Integer getMaterialOutboundCount(@Param("materialOutboundId") String materialOutboundId);
    Integer getReturningWarehouseCount(@Param("returningId") String returningId);
    Integer getMaterialInventoryCount(@Param("materialCode") Long materialCode,@Param("dateOfManufacture") LocalDate dateOfManufacture);
    Integer getMaterialInventoryCountNull(@Param("materialCode") Long materialCode);
    List<MaterialInventory> getMaterialInventoryCountId(@Param("materialCode") Long materialCode,@Param("dateOfManufacture") LocalDate dateOfManufacture);
    List<MaterialInventory> getMaterialInventoryCountNullId(@Param("materialCode") Long materialCode);
    List<MaterialOutboundDetail> getIsNotMaterialOutboundDetail( @Param("materialOutboundId") String materialOutboundId);
    List<ReturningWarehouseDetail> getIsNotReturningWarehouseDetail(@Param("returningId") String returningId);
    Boolean insertMaterialOutbound(@Param("materialOutbound") MaterialOutbound materialOutbound, @Param("number") String number);
    Boolean updateMaterialOutbound(@Param("materialOutbound") MaterialOutbound materialOutbound, @Param("number") String number);
    Boolean insertReturningWarehouse(@Param("returningWarehouse") ReturningWarehouse returningWarehouse, @Param("number") String number);
    Integer getMaterialOutboundDetailMaximum(@Param("materialOutboundId") String materialOutboundId);
    Integer getReturningWarehouseDetailMaximum(@Param("returningId") String returningId);
    Boolean insertMaterialOutboundDetail(@Param("materialOutboundDetail") MaterialOutboundDetail materialOutboundDetail,
                                         @Param("number") String number, @Param("materialOutboundNumber") Integer materialOutboundNumber);
    Boolean insertReturningWarehouseDetail(@Param("returningWarehouseDetail") ReturningWarehouseDetail returningWarehouseDetail,
                                         @Param("number") String number, @Param("returningWarehouseNumber") Integer returningWarehouseNumber);
    Boolean updateReturningWarehouseDetail(@Param("number") String number, @Param("returningWarehouseNumber") Integer returningWarehouseNumber,
                                           @Param("materialInventoryId") Long materialInventoryId);
    Boolean updateMaterialInventoryAvailableOptOut(@Param("useId") Integer useId,
                                                @Param("quantity") Integer quantity);
    Boolean updateMaterialInventoryAvailableOptInt(@Param("useId") Integer useId,
                                                @Param("quantity") Integer quantity);
    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 updateMaterialInventoryInventoryPlanQuantityOut(@Param("inventoryId") Long inventoryId,
                                                @Param("quantity") Integer quantity);
    Boolean updateMaterialInventoryInventoryPlanQuantityInt(@Param("inventoryId") Long inventoryId,
                                                @Param("quantity") Integer quantity);
    Boolean updateMaterialInventoryAvailableInventoryOut(@Param("inventoryId") Long inventoryId,
                                                @Param("quantity") Integer quantity);
    Boolean updateMaterialInventoryAvailableInventoryOutMes(@Param("inventoryId") Long inventoryId,
                                                         @Param("quantity") Integer quantity);
    Boolean updateMaterialInventoryAvailableInventoryInt(@Param("inventoryId") Long inventoryId,
                                                @Param("quantity") Integer quantity);
    Boolean deleteMaterialOutboundDetail(@Param("materialOutboundId") String materialOutboundId);
    Boolean deleteReturningWarehouseDetail(@Param("returningId") String returningId);
    Boolean deleteReturningWarehouse(@Param("returningId") String returningId);
    List<MaterialOutbound> getSelectMaterialOutboundDate(@Param("offset") Integer offset,
                                                           @Param("pageSize") Integer pageSize,String startDate, String endDate,
                                                           @Param("materialOutbound") MaterialOutbound materialOutbound);
    Map<String,Integer> getSelectMaterialOutboundDatePageTotal(Integer offset, Integer pageSize,String startDate, String endDate,MaterialOutbound materialOutbound);
    List<ReturningWarehouse> getSelectReturningWarehouseDate(@Param("offset") Integer offset,
                                                         @Param("pageSize") Integer pageSize,String startDate, String endDate,
                                                         @Param("returningWarehouse") ReturningWarehouse returningWarehouse);
    Map<String,Integer> getSelectReturningWarehouseDatePageTotal(Integer offset, Integer pageSize,String startDate, String endDate,ReturningWarehouse returningWarehouse);
    MaterialOutbound getSelectMaterialOutbound(@Param("offset") Integer offset,
                                                         @Param("pageSize") Integer pageSize,
                                                         @Param("materialOutboundDetail") MaterialOutboundDetail materialOutboundDetail);
    List<MaterialOutboundDetail> SelectMaterialOutboundDetail(@Param("offset") Integer offset,
                                                             @Param("pageSize") Integer pageSize,
                                                             @Param("materialOutboundDetail") MaterialOutboundDetail materialOutboundDetail);
    List<Map<String,Object>> getSelectMaterialOutboundDetail(@Param("offset") Integer offset,
                                                         @Param("pageSize") Integer pageSize,
                                                         @Param("materialOutboundDetail") MaterialOutboundDetail materialOutboundDetail);
    List<Map<String,Object>> getSelectMaterialOutboundEngineering(@Param("offset") Integer offset,
                                                             @Param("pageSize") Integer pageSize,
                                                             @Param("materialOutboundDetail") MaterialOutboundDetail materialOutboundDetail);
    Map<String,Integer> getSelectMaterialOutboundDetailPageTotal(Integer offset, Integer pageSize,MaterialOutboundDetail materialOutboundDetail);
    ReturningWarehouse getSelectReturningWarehouse(@Param("offset") Integer offset,
                                               @Param("pageSize") Integer pageSize,
                                               @Param("returningWarehouseDetail") ReturningWarehouseDetail returningWarehouseDetail);
    List<Map<String,Object>> getSelectReturningWarehouseDetail(@Param("offset") Integer offset,
                                                             @Param("pageSize") Integer pageSize,
                                                             @Param("returningWarehouseDetail") ReturningWarehouseDetail returningWarehouseDetail);
    Map<String,Integer> getSelectReturningWarehouseDetailPageTotal(Integer offset, Integer pageSize,ReturningWarehouseDetail returningWarehouseDetail);
    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 updateReturningWarehouseToExamine(@Param("returningId") String returningId,@Param("reviewedState") int reviewedState,@Param("reviewed") String reviewed);
    Boolean updateReturningWarehouseCounterExamination(@Param("returningId") String returningId,@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 updateMaterialInventoryNull(@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);
    Boolean updateMaterialInventoryReturning(@Param("materialCode") Long materialCode,@Param("singlePieceArea") Double singlePieceArea,
                                    @Param("totalArea") Double totalArea,
                                    @Param("returningWarehouseDetail") ReturningWarehouseDetail returningWarehouseDetail);
    Boolean updateMaterialInventoryReturningNull(@Param("materialCode") Long materialCode,@Param("singlePieceArea") Double singlePieceArea,
                                             @Param("totalArea") Double totalArea,
                                             @Param("returningWarehouseDetail") ReturningWarehouseDetail returningWarehouseDetail);
    Boolean insertMaterialInventoryReturning(@Param("materialCode") Long materialCode,@Param("singlePieceArea") Double singlePieceArea,
                                    @Param("totalArea") Double totalArea,
                                    @Param("returningWarehouseDetail") ReturningWarehouseDetail returningWarehouseDetail);
    Boolean updateMaterialInventoryArea(@Param("materialCode") Long materialCode,@Param("singlePieceArea") Double singlePieceArea);
    List<SurplusMaterials> getSelectSurplusMaterialsDate(@Param("offset") Integer offset,
                                                             @Param("pageSize") Integer pageSize,String startDate, String endDate,
                                                             @Param("surplusMaterials") SurplusMaterials surplusMaterials);
    Map<String,Integer> getSelectSurplusMaterialsDatePageTotal(Integer offset, Integer pageSize,String startDate, String endDate,SurplusMaterials surplusMaterials);
    SurplusMaterials selectSurplusMaterialsCount( @Param("surplusMaterials") SurplusMaterials surplusMaterials);
    Boolean insertSurplusMaterials( @Param("surplusMaterials") SurplusMaterials surplusMaterials);
    Boolean insertSurplusMaterialsLog(@Param("surplusMaterials") SurplusMaterials surplusMaterials,String creator, String type);
    Boolean updateSurplusMaterialsOutQuantity( @Param("surplusMaterials") SurplusMaterials surplusMaterials);
    Boolean updateSurplusMaterialsIntQuantity( @Param("surplusMaterials") SurplusMaterials surplusMaterials);
    Map<String,Object> getPrintCreateOutbound(String materialOutboundId);
    List<Map<String,Object>> getPrintCreateOutboundDetail(String materialOutboundId);
    MaterialInventory getMaterialInventoryById(@Param("id") Long id);
    List<MaterialLog> getMaterialLogReport(@Param("offset") Integer offset,
                                                               @Param("pageSize") Integer pageSize,String startDate, String endDate,
                                                               @Param("materialLog") MaterialLog materialLog,String type);
    Map<String,Integer> getMaterialLogReportTotal(@Param("offset") Integer offset,
                                                                   @Param("pageSize") Integer pageSize,String startDate, String endDate,
                                                                   @Param("materialLog") MaterialLog materialLog,String type);
    List<MaterialLog> exportMaterialLogReport(List<LocalDate> dates, String type);
    List<MaterialOutbound> getSelectMaterialOutboundProjectNo(@Param("projectNo") String projectNo);
    OptimizeUse getSelectOptimizeUses(@Param("projectNo") String projectNo,@Param("width") Double width,@Param("height") Double height);
    List<MaterialOutboundDetail> getSelectMaterialOutboundOptimizeUses(@Param("materialOutboundId") String materialOutboundId,@Param("useId") Integer useId);
    Boolean updateMaterialOutboundOptimizeUses(@Param("useId") Integer useId,@Param("quantity") Integer quantity);
    Boolean insertMaterialOutboundDetailOptimizeUses(@Param("materialOutboundId") String materialOutboundId,@Param("number") Integer number,
                                               @Param("inventoryId") Long inventoryId,@Param("materialCode") Long materialCode,@Param("inventoryArea") String inventory_area,
                                               @Param("useId") Integer useId,@Param("outboundQuantity") Integer outboundQuantity,
                                               @Param("singlePieceArea") Double singlePieceArea,@Param("dateOfManufacture") LocalDate dateOfManufacture);
    Boolean insertMaterialOutboundOptimizeUses(@Param("materialOutboundId") String materialOutboundId,@Param("projectNo") String projectNo,
                                                     @Param("name") String name);
    Boolean updateOptimizeUsesMes(@Param("useId") Integer useId,@Param("quantity") Integer quantity);
    String selectProjectNo(@Param("useId") Integer useId);
}