(ifnull(swq.maxDrugCount,0) - ifnull(isfi.reCount,0)) as suggestOutCount
from
(select relId,sum(reCodeCount) as reCount,sum(availableCount) as availableCount,supId,workPlaceQueueCode,workPlaceCode,busType from io_split_fifo_inv
(select relId,sum(reCodeCount) as reCount,sum(availableCount) as availableCount,sum(reCount) as remCount,supId,workPlaceQueueCode,workPlaceCode,busType from io_split_fifo_inv
group by relId,supId,workPlaceQueueCode,workPlaceCode,busType
CASE WHEN bp.ggxh IS NULL THEN bp.bzgg ELSE bp.ggxh END AS ggxh,
bp.bzgg,
bu.useLevelUnit,
bp.ylqxzcrbarmc,
bp.nameCode,
bp.manufactory,
bp.measname,
bp.zczbhhzbapzbh,
bp.ybbm,
bp.zxxsdycpbs
from
(select relId,sum(reCodeCount) as reCount,sum(availableCount) as availableCount,sum(reCount) as remCount,supId,workPlaceQueueCode,workPlaceCode,busType from io_split_fifo_inv
group by relId,supId,workPlaceQueueCode,workPlaceCode,busType
) as isfi
LEFT JOIN basic_udirel bu ON bu.id = isfi.relId
LEFT JOIN basic_products bp ON bu.uuid = bp.uuid
<where>
<iftest="relId != null">
AND isfi.relId = #{relId}
</if>
<iftest="nameCode != '' and nameCode != null">
AND bp.nameCode = #{nameCode}
</if>
<iftest="zczbhhzbapzbh != '' and zczbhhzbapzbh != null">
AND bp.zczbhhzbapzbh like concat('%', #{zczbhhzbapzbh}, '%')
</if>
<iftest="ylqxzcrbarmc != '' and ylqxzcrbarmc != null">
AND (
bp.ylqxzcrbarmc like concat('%', #{ylqxzcrbarmc}, '%')
or bp.manufactory like concat('%', #{ylqxzcrbarmc}, '%'))
</if>
<iftest="batchNo != '' and batchNo != null">
AND isfi.batchNo = #{batchNo}
</if>
<iftest="invCode != null">
AND isfi.invCode = #{invCode}
</if>
<iftest="supId != null">
AND isfi.supId = #{supId}
</if>
<iftest="fifoSplit != null">
AND isfi.fifoSplit = #{fifoSplit}
</if>
<iftest="productType != null">
AND isfi.productType = #{productType}
</if>
<iftest="workPlaceCode != null">
AND isfi.workPlaceCode = #{workPlaceCode}
</if>
<iftest="busType != null and busType != ''">
AND isfi.busType = #{busType}
</if>
<iftest="cpmctymc != null and cpmctymc != ''">
AND bp.cpmctymc like concat('%', #{cpmctymc}, '%')
</if>
<iftest="keyWords != null and keyWords != ''">
AND (
isfi.workPlaceCode like concat('%', #{keyWords}, '%')
or isfi.workPlaceQueueCode like concat('%', #{keyWords}, '%')
or bp.nameCode like concat('%', #{keyWords}, '%')
or isfi.batchNo like concat('%', #{keyWords}, '%')
or bp.cpmctymc like concat('%', #{keyWords}, '%')
or bp.ggxh like concat('%', #{keyWords}, '%')
or bp.bzgg like concat('%', #{keyWords}, '%')
or bp.nameCode like concat('%', #{keyWords}, '%')
or bp.zczbhhzbapzbh like concat('%', #{keyWords}, '%')
or bp.ylqxzcrbarmc like concat('%', #{keyWords}, '%')
or bp.manufactory like concat('%',#{keyWords},'%')