| | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | import com.ruoyi.stock.dto.OilOutAvailableDto; |
| | | import com.ruoyi.stock.dto.StockOutRecordDto; |
| | | import com.ruoyi.stock.pojo.StockOutRecord; |
| | | |
| | | import jakarta.servlet.http.HttpServletResponse; |
| | | import java.math.BigDecimal; |
| | | import java.util.List; |
| | | |
| | | /** |
| | |
| | | int batchApprove(List<Long> ids, Integer approvalStatus); |
| | | |
| | | int batchReAudit(List<Long> ids); |
| | | |
| | | /** |
| | | * 录入「本次送完货后剩余油量」。 |
| | | * 只更新 residual_oil,不动其他列;走 {@link #update} 会把未传的字段全部置空,故单独开一个接口 |
| | | * |
| | | * @param id 出库记录id |
| | | * @param residualOil 剩余油量(吨),不能为空、不能小于0、不能大于出库数量 |
| | | */ |
| | | int updateResidualOil(Long id, BigDecimal residualOil); |
| | | |
| | | /** |
| | | * 油品出库可用量:下次发货 = 上次剩余油量 + 当前库存量 |
| | | * |
| | | * @param query 需带 vehicleId、productModelId,batchNo 可选 |
| | | * @return 上次剩余油量 / 当前库存 / 可用量 |
| | | */ |
| | | OilOutAvailableDto getOilOutAvailableQty(StockOutRecordDto query); |
| | | |
| | | /** |
| | | * 按来源明细id批量查询出库记录,不受数据权限约束。 |
| | | * 供业务单据做「出库是否已审批」这类自身状态机校验,换账号执行也必须看到同一批记录 |
| | | * |
| | | * @param recordIds 来源明细id,为空返回空集合 |
| | | * @param recordType 出库类型,见 StockInQualifiedRecordTypeEnum |
| | | */ |
| | | List<StockOutRecord> listByRecordIds(List<Long> recordIds, String recordType); |
| | | |
| | | /** |
| | | * 释放来源明细关联的出库记录:审批通过过的按批次归还库存量,然后删除记录。 |
| | | * 待审批/驳回的记录没扣过库存,删掉即释放占用 |
| | | * |
| | | * @return 删除的记录数 |
| | | */ |
| | | int releaseByRecordIds(List<Long> recordIds, String recordType); |
| | | } |