feat(wms): 增加版本管理功能和操作按钮

在规程主表的操作列中新增“版本与方案”按钮,点击后可跳转至版本管理页面。更新了操作列的宽度以适应新按钮。同时,在后端服务中添加了对规程版本存在性的校验,确保在删除规程时不会影响相关版本数据。
This commit is contained in:
王文昊
2026-04-20 19:14:50 +08:00
parent 62b594026b
commit f501994da6
22 changed files with 1357 additions and 2 deletions

View File

@@ -9,9 +9,11 @@ import com.klp.common.core.page.TableDataInfo;
import com.klp.common.exception.ServiceException;
import com.klp.common.utils.StringUtils;
import com.klp.domain.WmsProcessSpec;
import com.klp.domain.WmsProcessSpecVersion;
import com.klp.domain.bo.WmsProcessSpecBo;
import com.klp.domain.vo.WmsProcessSpecVo;
import com.klp.mapper.WmsProcessSpecMapper;
import com.klp.mapper.WmsProcessSpecVersionMapper;
import com.klp.service.IWmsProcessSpecService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@@ -29,6 +31,7 @@ import java.util.List;
public class WmsProcessSpecServiceImpl implements IWmsProcessSpecService {
private final WmsProcessSpecMapper baseMapper;
private final WmsProcessSpecVersionMapper wmsProcessSpecVersionMapper;
@Override
public WmsProcessSpecVo queryById(Long specId) {
@@ -94,7 +97,13 @@ public class WmsProcessSpecServiceImpl implements IWmsProcessSpecService {
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if (Boolean.TRUE.equals(isValid)) {
// 任务3 可在此校验版本等从表数据
for (Long specId : ids) {
LambdaQueryWrapper<WmsProcessSpecVersion> vq = Wrappers.lambdaQuery();
vq.eq(WmsProcessSpecVersion::getSpecId, specId);
if (wmsProcessSpecVersionMapper.selectCount(vq) > 0) {
throw new ServiceException("规程下存在版本数据,请先删除版本及方案");
}
}
}
return baseMapper.deleteBatchIds(ids) > 0;
}