package jnpf.dmsService; import jnpf.dmsMapper.DmsWenjianChongdaMapper; import jnpf.exception.DataException; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; /** 调用方已锁原打印记录;与重打prepare/begin/cancel的锁顺序一致。 */ @Service @RequiredArgsConstructor public class DmsWenjianChongdaGuard { private final DmsWenjianChongdaMapper mapper; public void requireUnlocked(String tenantId, String recordId) throws DataException { if (mapper.selectActive(tenantId, recordId) != null) throw new DataException("该记录有未完成的重打,请原发起人先完成重打登记,或取消尚未发送的任务后再操作"); } }