package jnpf.limsService;
|
|
import jnpf.base.service.SuperService;
|
import jnpf.limsEntity.LimsQingyandanEntity;
|
import jnpf.limsEntity.LimsSxtQuyangJihuaRenwuJianyanXiangKuaizhaoEntity;
|
|
import java.util.List;
|
|
public interface LimsQingyandanService extends SuperService<LimsQingyandanEntity> {
|
|
/**
|
* 通过 formData 查找请验单:优先ID,兜底业务字段
|
*/
|
LimsQingyandanEntity findByFormData(LimsQingyandanEntity formData);
|
|
/**
|
* 通过检验流水号查找请验单
|
*/
|
LimsQingyandanEntity findByLiushuihao(String liushuihao);
|
|
/**
|
* 提交请验单:创建取样记录 + 更新状态
|
*/
|
void submit(LimsQingyandanEntity qingyandan);
|
|
/**
|
*
|
* 稳定性检验创建取样记录+检查项目
|
*/
|
void wendingxingSubmit(LimsQingyandanEntity qingyandan);
|
|
/**
|
* 水系统自动创建请验单:创建取样记录 + 更新状态
|
*/
|
LimsQingyandanEntity sxtAutoSubmit(LimsQingyandanEntity qingyandan);
|
|
/**
|
* 水系统任务快照自动创建请验单。该入口不查询当前质量标准或请验配置。
|
*/
|
LimsQingyandanEntity sxtRenwuKuaizhaoAutoSubmit(
|
LimsQingyandanEntity qingyandan,
|
List<LimsSxtQuyangJihuaRenwuJianyanXiangKuaizhaoEntity> jianyanKuaizhaoList);
|
|
/**
|
* 编辑请验单:更新业务字段 + 状态改为 confirmed + 创建取样记录
|
*/
|
void edit(LimsQingyandanEntity qingyandan, LimsQingyandanEntity formData);
|
|
/**
|
* 取样:在请验单本行写入取样录入字段(实际量 + 取样信息),
|
* quyang_status → fetched,jieyang_status → pending_receive(进入待接样)。
|
* 质量标准复制来的量/单位字段不被表单覆盖。
|
*/
|
void fetch(LimsQingyandanEntity qingyandan, LimsQingyandanEntity formData);
|
|
/**
|
* 接样退回:退回到取样阶段重新取样。
|
* quyang_status → pending_fetch,jieyang_status 清空,biz_status 不变;
|
* 写入接样退回原因 / 退回人;检验项保留不删。
|
*/
|
boolean jieyangReject(LimsQingyandanEntity qingyandan, String tuihuiyuanyin, String bizSign);
|
|
/**
|
* 接样:在请验单本行写入接样录入字段,jieyang_status → received。
|
* 检验项 submit 时已创建,本步不创建、不改检验项状态。
|
*/
|
void jieyangReceive(LimsQingyandanEntity qingyandan, LimsQingyandanEntity formData);
|
|
/**
|
* 用户自主撤回:仅 confirmed 状态可原子更新为 cancelled,成功后软删除检验项。
|
*
|
* @return true 表示撤回实际生效;false 表示状态已变化、记录不存在或已删除
|
*/
|
boolean cancel(LimsQingyandanEntity qingyandan);
|
|
/**
|
* 下游退回:软删除取样记录 + 状态改为 cancelled,
|
* 同时写入退回原因、退回人(当前用户)、退回人签名
|
*/
|
boolean reject(LimsQingyandanEntity qingyandan, String tuihuiyuanyin, String bizSign);
|
|
/**
|
* 废弃:状态改为 deleted
|
*/
|
void delete(LimsQingyandanEntity qingyandan);
|
}
|