|
|
|
|
@ -155,6 +155,8 @@ public interface WmsReportMapper {
|
|
|
|
|
/**
|
|
|
|
|
* 查询呆滞料库存报表
|
|
|
|
|
*/
|
|
|
|
|
/*从未出库:如果物料从未出库(即没有对应的出库记录),则从首次入库时间开始计算,若距离当前日期已超过180天,则判定为呆滞料。
|
|
|
|
|
长期未出库:如果物料有出库记录,但从最后一次出库时间开始计算,若距离当前日期已超过180天,则判定为呆滞料。*/
|
|
|
|
|
@Select("SELECT " +
|
|
|
|
|
" inv.tenant_id AS tenantId, " +
|
|
|
|
|
" inv.material_id AS materialId, " +
|
|
|
|
|
@ -173,7 +175,7 @@ public interface WmsReportMapper {
|
|
|
|
|
" END AS stagnantDays, " +
|
|
|
|
|
" CASE " +
|
|
|
|
|
" WHEN last_out.lastOutstockTime IS NULL THEN '从未出库' " +
|
|
|
|
|
" WHEN DATEDIFF(DAY, last_out.lastOutstockTime, GETDATE()) > 180 THEN '超过6个月未出库' " +
|
|
|
|
|
" WHEN DATEDIFF(DAY, last_out.lastOutstockTime, GETDATE()) >= #{stagnantDays} THEN '超过' + CAST(#{stagnantDays} AS VARCHAR(10)) + '天未出库' " +
|
|
|
|
|
" ELSE '正常' " +
|
|
|
|
|
" END AS stagnantReason, " +
|
|
|
|
|
" mi.material_spec AS materialSpec, " +
|
|
|
|
|
@ -209,8 +211,8 @@ public interface WmsReportMapper {
|
|
|
|
|
" AND mi.active_flag = '1' " +
|
|
|
|
|
" AND mi.del_flag = '0' " +
|
|
|
|
|
" AND ( " +
|
|
|
|
|
" last_out.lastOutstockTime IS NULL " +
|
|
|
|
|
" OR DATEDIFF(DAY, last_out.lastOutstockTime, GETDATE()) >= 180 " +
|
|
|
|
|
" (last_out.lastOutstockTime IS NULL AND DATEDIFF(DAY, first_in.firstInstockTime, GETDATE()) >= #{stagnantDays}) " +
|
|
|
|
|
" OR (last_out.lastOutstockTime IS NOT NULL AND DATEDIFF(DAY, last_out.lastOutstockTime, GETDATE()) >= #{stagnantDays}) " +
|
|
|
|
|
" ) " +
|
|
|
|
|
" AND (#{tenantId} IS NULL OR inv.tenant_id = #{tenantId}) " +
|
|
|
|
|
" AND (#{materialCategoryId} IS NULL OR mc.material_category_id = #{materialCategoryId}) " +
|
|
|
|
|
@ -227,7 +229,8 @@ public interface WmsReportMapper {
|
|
|
|
|
" first_in.firstInstockTime " +
|
|
|
|
|
"ORDER BY inv.tenant_id, stagnantDays DESC, stagnantInventoryQty DESC")
|
|
|
|
|
List<WmsStagnantInventoryVo> selectStagnantInventory(@Param("tenantId") String tenantId,
|
|
|
|
|
@Param("materialCategoryId") Long materialCategoryId);
|
|
|
|
|
@Param("materialCategoryId") Long materialCategoryId,
|
|
|
|
|
@Param("stagnantDays") Integer stagnantDays);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 查询库存差异报表
|
|
|
|
|
|