维修数量增加限制
This commit is contained in:
parent
a26d40d9ea
commit
55435560c3
|
|
@ -443,4 +443,11 @@ public interface RepairMapper {
|
||||||
List<RepairProjectInfo> getRepairProjectList(RepairProjectInfo bean);
|
List<RepairProjectInfo> getRepairProjectList(RepairProjectInfo bean);
|
||||||
|
|
||||||
List<PartDetails> getPartUsingList(PartDetails bean);
|
List<PartDetails> getPartUsingList(PartDetails bean);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据任务id查询待修数量
|
||||||
|
* @param bean
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
RepairDeviceVO getRepairNumByTaskId(RepairDeviceVO bean);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -684,6 +684,43 @@ public class RepairServiceImpl implements RepairService {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//校验本次维修数量不能大于待维修数量
|
||||||
|
if (bean.getTaskId() != null && bean.getTypeId() != null) {
|
||||||
|
// 查询该任务待维修数量
|
||||||
|
RepairDeviceVO repairDeviceVO = repairMapper.getRepairNumByTaskId(bean);
|
||||||
|
BigDecimal thisRepairNum = BigDecimal.ZERO;
|
||||||
|
|
||||||
|
// 计算本次维修数量
|
||||||
|
if (bean.getNumberInRepairPartList().size() > 0) {
|
||||||
|
if (null != bean.getNumberInRepairPartList().get(0).getRepairNum() && 0 < bean.getNumberInRepairPartList().get(0).getRepairNum().compareTo(BigDecimal.ZERO)) {
|
||||||
|
thisRepairNum = thisRepairNum.add(bean.getNumberInRepairPartList().get(0).getRepairNum());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (bean.getNumberOutRepairPartList().size() > 0) {
|
||||||
|
if (null != bean.getNumberOutRepairPartList().get(0).getRepairNum() && 0 < bean.getNumberOutRepairPartList().get(0).getRepairNum().compareTo(BigDecimal.ZERO)) {
|
||||||
|
thisRepairNum = thisRepairNum.add(bean.getNumberOutRepairPartList().get(0).getRepairNum());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (bean.getNumberScrapRepairPartList().size() > 0) {
|
||||||
|
if (null != bean.getNumberScrapRepairPartList().get(0).getScrapNum() && 0 < bean.getNumberScrapRepairPartList().get(0).getScrapNum().compareTo(BigDecimal.ZERO)) {
|
||||||
|
thisRepairNum = thisRepairNum.add(bean.getNumberScrapRepairPartList().get(0).getScrapNum());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 比较 repairHomeInfo.getRepairNum() 和 thisRepairNum 的值
|
||||||
|
if (repairDeviceVO != null && repairDeviceVO.getRepairNum() != null) {
|
||||||
|
int comparisonResult = thisRepairNum.compareTo(repairDeviceVO.getRepairNum());
|
||||||
|
|
||||||
|
if (comparisonResult > 0) {
|
||||||
|
// thisRepairNum 大于 repairHomeInfo.getRepairNum()
|
||||||
|
return AjaxResult.success("维修已完成");
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// repairHomeInfo 或 repairHomeInfo.getRepairNum() 为 null 的处理
|
||||||
|
throw new ServiceException("此维修记录不存在,请检查后提交");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 更新维修人员信息
|
// 更新维修人员信息
|
||||||
if (!CollectionUtils.isEmpty(bean.getRepairList())) {
|
if (!CollectionUtils.isEmpty(bean.getRepairList())) {
|
||||||
RepairPartDetails repairPartDetails = bean.getRepairList().get(0);
|
RepairPartDetails repairPartDetails = bean.getRepairList().get(0);
|
||||||
|
|
|
||||||
|
|
@ -1591,4 +1591,12 @@
|
||||||
</if>
|
</if>
|
||||||
order by rpd.create_time desc
|
order by rpd.create_time desc
|
||||||
</select>
|
</select>
|
||||||
|
<select id="getRepairNumByTaskId" resultType="com.bonus.material.repair.domain.vo.RepairDeviceVO">
|
||||||
|
SELECT rad.id,
|
||||||
|
rad.repair_num - (rad.repaired_num + rad.scrap_num) as repairNum
|
||||||
|
FROM repair_apply_details rad
|
||||||
|
WHERE rad.task_id = #{taskId}
|
||||||
|
and rad.type_id = #{typeId}
|
||||||
|
and rad.is_ds = '0'
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue