Commit ab2b5a8b by ghxdhr

Merge branch 'master' of git.patzn.com:wangweidong/patzn-cloud-service-hmhj

parents d8cd9aa2 b4a6fac3
......@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.commons.controller.Account;
import com.patzn.cloud.commons.service.IBaseService;
import com.patzn.cloud.service.hmhj.dto.SamplePrepareDTO;
import com.patzn.cloud.service.hmhj.entity.Entrust;
import com.patzn.cloud.service.hmhj.entity.EntrustSample;
import com.patzn.cloud.service.hmhj.entity.EntrustSamplePrepare;
import com.patzn.cloud.service.hmhj.enums.EntrustSampleItemStatusEnum;
......@@ -30,4 +31,5 @@ public interface IEntrustSamplePrepareService extends IBaseService<EntrustSample
boolean addOrUpdateToSetStatus(Long[] sampleIds, EntrustSamplePrepareStatusEnum statusEnum);
boolean removeBySampleIds(Long[] sampleIds);
}
......@@ -99,4 +99,7 @@ public interface IEntrustService extends IBaseService<Entrust> {
Boolean saveOutEntrust(EntrustDTO dto, Account account);
boolean isCanIntoNextNode(Entrust entrust);
boolean isCanIntoPrevNode(Entrust entrust);
}
......@@ -31,6 +31,7 @@ import com.patzn.cloud.service.lims.base.entity.LmsUserRelGroup;
import com.patzn.cloud.service.lims.base.vo.LmsUserRelGroupVO;
import com.patzn.cloud.service.lims.collection.entity.LmsOriginalRecordInfo;
import com.patzn.cloud.service.lims.common.CompareUtils;
import com.patzn.cloud.service.lims.hmhj.common.EntrustFlowUtils;
import com.patzn.cloud.service.lims.hmhj.common.HSSFWorkbookUtil;
import com.patzn.cloud.service.lims.hmhj.common.LabreOfficeUtil;
import com.patzn.cloud.service.lims.hmhj.mapper.EntrustSampleItemMapper;
......@@ -213,8 +214,7 @@ public class EntrustSampleItemServiceImpl extends BaseServiceImpl<EntrustSampleI
Entrust entrust = getEntrustByItemId(ids[0]);
if (null != entrust && isAllocatedByEntrustId(entrust.getId())) {
// 添加流程数据录入节点
// entrust.setFlowStatus(EntrustFlowEnum.TEST.getName());
if (StringUtils.isNotBlank(entrust.getStatusPath()) && entrust.getStatusPath().contains(entrust.getFlowStatus())) {
if (entrustService.isCanIntoNextNode(entrust)) {
entrustService.submitToNextNode(entrust, account);
} else {
entrustRecordService.record(new Long[]{entrust.getId()}, "任务分配", "数据录入", 0, account, "提交至数据录入");
......@@ -316,7 +316,7 @@ public class EntrustSampleItemServiceImpl extends BaseServiceImpl<EntrustSampleI
entrustSampleService.update(sample, Condition.create().eq("entrust_id", entrustId));
// 提交到下一节点,可能是不更改状态
if (isConfigureStatusPath(entrust)) {
if (entrustService.isCanIntoNextNode(entrust)) {
entrustService.submitToNextNode(entrust, account);
return true;
}
......@@ -1052,10 +1052,6 @@ public class EntrustSampleItemServiceImpl extends BaseServiceImpl<EntrustSampleI
return baseMapper.selectUnallocatedCountByEntrustId(entrustId) == 0;
}
private boolean isConfigureStatusPath(Entrust entrust) {
return StringUtils.isNotBlank(entrust.getStatusPath()) && entrust.getStatusPath().contains(entrust.getFlowStatus());
}
@Override
public Page<LmsUserRelGroupVO> pageGroupUser(Page<LmsUserRelGroupVO> page, LmsUserRelGroup userRelGroup) {
......
......@@ -175,7 +175,7 @@ public class EntrustSamplePrepareServiceImpl extends BaseServiceImpl<EntrustSamp
// 根据样品IDS更新样品编号
// 样品制备 -> 样品接收 相当于从二级编码 变为 三级编码
entrustSampleService.updateSampleCodeByIds(sampleIdsList,3);
entrustSampleService.updateSampleCodeByIds(sampleIdsList, 3);
List<EntrustSample> checkMakeList = entrustSampleService.list(Condition.create().eq("entrust_id", entrust.getId()).eq("status", EntrustSampleStatusEnum.DRAFT));
if (CollectionUtils.isEmpty(checkMakeList)) {
......@@ -193,7 +193,7 @@ public class EntrustSamplePrepareServiceImpl extends BaseServiceImpl<EntrustSamp
// updateEntrust.setId(entrust.getId());
// entrustService.updateById(updateEntrust);
// 根据流程状态提交
if (StringUtils.isNotEmpty(entrust.getStatusPath()) && entrust.getStatusPath().contains(entrust.getFlowStatus())) {
if (entrustService.isCanIntoNextNode(entrust)) {
entrustService.submitToNextNode(entrust, account);
} else {
Entrust updateEntrust = new Entrust();
......@@ -205,11 +205,10 @@ public class EntrustSamplePrepareServiceImpl extends BaseServiceImpl<EntrustSamp
entrustRecordService.record(new Long[]{entrust.getId()}, "样品制备", "样品接收", 0, account, "提交至样品接收");
}
}
return true;
}
@Transactional(rollbackFor = Exception.class)
@Override
public boolean submitSampleReceive(Long[] ids, String receiveType, Account account) {
......@@ -267,7 +266,7 @@ public class EntrustSamplePrepareServiceImpl extends BaseServiceImpl<EntrustSamp
if (CollectionUtils.isEmpty(notOkSampleIds)) {
// 检测开始时间为接收时间
entrust.setTestTimeS(new Date());
if (StringUtils.isNotEmpty(entrust.getStatusPath()) && entrust.getStatusPath().contains(entrust.getFlowStatus())) {
if (entrustService.isCanIntoNextNode(entrust)) {
entrustService.submitToNextNode(entrust, account);
} else {
entrust.setFlowStatus(EntrustFlowEnum.TEST.getName());
......
......@@ -953,7 +953,6 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
if (StringUtils.isBlank(flowStatus) && entrust.getStatus() == EntrustStatusEnum.DRAFT) {
flowStatus = EntrustFlowEnum.DRAFT.getName();
}
RestAssert.fail(StringUtils.isBlank(flowStatus), String.format("编号为【%s】的委托,未配置流程状态信息!", entrust.getCode()));
EntrustFlowEnum nextFlowStatus = EntrustFlowUtils.getNextFlowStatus(flowStatus, statusPath);
EntrustStatusEnum nextStatus = EntrustFlowUtils.getStatus(nextFlowStatus);
RestAssert.fail(null == nextStatus, String.format("编号为【%s】的委托,未配置下一流程状态信息!", entrust.getCode()));
......@@ -1043,6 +1042,7 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
}
@Override
@Transactional(rollbackFor = Exception.class)
public boolean cloneEntrust(Long[] ids, Account account) {
RestAssert.fail(null == ids || ids.length == 0, "请选择要复制的委托记录");
List<Entrust> entrustList = getBatchIds(Arrays.asList(ids));
......@@ -1075,6 +1075,7 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
}
//生成样品编号,可能存在为空的情况
initSampleCode(sample);
sample.setId(null);
sample.setId(IdWorker.getId());
sample.setEntrustId(entrust.getId()).setOrderBy(sampleIndex);
sample.setStatus(EntrustSampleStatusEnum.DRAFT).setProgress(EntrustSampleStatusEnum.DRAFT);
......@@ -1390,4 +1391,18 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
return files;
}
@Override
public boolean isCanIntoNextNode(Entrust entrust) {
// 路径不为空且当前流程状态不为空且存在下一步流程节点
String statusPath = entrust.getStatusPath(), flowStatus = entrust.getFlowStatus();
return org.apache.commons.lang3.StringUtils.isNotBlank(statusPath) && statusPath.contains(flowStatus) && null != EntrustFlowUtils.getNextFlowStatus(flowStatus, statusPath);
}
@Override
public boolean isCanIntoPrevNode(Entrust entrust) {
// 路径不为空且当前流程状态不为空且存在上一步流程节点
String statusPath = entrust.getStatusPath(), flowStatus = entrust.getFlowStatus();
return org.apache.commons.lang3.StringUtils.isNotBlank(statusPath) && statusPath.contains(flowStatus) && null != EntrustFlowUtils.getPrevFlowStatus(flowStatus, statusPath);
}
}
......@@ -83,12 +83,14 @@ public class OriginalTemplateServiceImpl extends BaseServiceImpl<OriginalTemplat
@Override
public Page<OriginalTemplate> page(Page<OriginalTemplate> page, OriginalTemplate originalTemplate) {
String alias = originalTemplate.getAlias();
String name = originalTemplate.getName() , alias = originalTemplate.getAlias();
// 支持模糊搜索
originalTemplate.setAlias(null);
originalTemplate.setName(null);
Wrapper wrapper = new EntityWrapper<>(originalTemplate);
wrapper.like("name", name);
wrapper.like("alias", alias);
wrapper.orderBy("class_type").orderBy("alias");
wrapper.orderBy("class_type").orderBy("name").orderBy("alias");
return this.page(page, wrapper);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment