任务分配添加手动模式
This commit is contained in:
@@ -104,4 +104,24 @@ public interface QmsCommonConstant {
|
||||
/** 检验委托 **/
|
||||
String ENTRUST_INSPECTION = "entrust_inspection";
|
||||
|
||||
/** 中心收样 **/
|
||||
String FLOW_NODE_CENTER_RECEIVE = "flw_zx_receive";
|
||||
|
||||
/** 中心送样 **/
|
||||
String FLOW_NODE_CENTER_SEND = "flw_zx_send";
|
||||
|
||||
/** 班组收样 **/
|
||||
String FLOW_NODE_TEAM_RECEIVE = "flw_bz_receive";
|
||||
|
||||
/** 样品编密 **/
|
||||
String FlOW_NODE_SAMPLE_ENCRYPT = "flw_ypbm";
|
||||
|
||||
/** 分析收样 **/
|
||||
String FLOW_NODE_ANALYSIS_RECEIVE = "flw_fx_receive";
|
||||
|
||||
/** 分析送样 **/
|
||||
String FLOW_NODE_ANALYSIS_SEND = "flw_fx_send";
|
||||
|
||||
/** 班组送样 **/
|
||||
String FLOW_NODE_TEAM_SEND = "flw_bz_send";
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@ import static com.zt.plat.framework.common.pojo.CommonResult.success;
|
||||
import java.util.List;
|
||||
|
||||
import com.zt.plat.framework.common.pojo.CommonResult;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.param.SampleTaskAssignManualParam;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.param.SampleTaskAssignMethodParam;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.param.SampleTaskAssignSampleParam;
|
||||
import com.zt.plat.module.qms.business.bus.service.SampleTaskAssignService;
|
||||
@@ -49,6 +50,11 @@ public class SampleTaskAssignController {
|
||||
return success("成功");
|
||||
}
|
||||
|
||||
@PostMapping("/manualAssign")
|
||||
public CommonResult<?> manualAssign(@RequestBody SampleTaskAssignManualParam param) {
|
||||
sampleTaskAssignService.manualAssign(param);
|
||||
return success("成功");
|
||||
}
|
||||
|
||||
@PostMapping("/sampleAssign")
|
||||
public CommonResult<?> sampleAssign(@RequestBody SampleTaskAssignSampleParam param) {
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
package com.zt.plat.module.qms.business.bus.controller.vo;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@@ -23,7 +23,7 @@ public class ReportedDataSource implements Serializable {
|
||||
* 自动上报时间
|
||||
*/
|
||||
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date autoReportedTime;
|
||||
private LocalDateTime autoReportedTime;
|
||||
|
||||
/** 已完成数据来源明细 **/
|
||||
private List<DataSourceDetail> details;
|
||||
@@ -34,7 +34,7 @@ public class ReportedDataSource implements Serializable {
|
||||
* @param reportedOper 上报人
|
||||
* @param reportedTime 上报时间
|
||||
*/
|
||||
public void addDataSource(String sourceCode, String reportedOper, Date reportedTime) {
|
||||
public void addDataSource(String sourceCode, String reportedOper, LocalDateTime reportedTime) {
|
||||
if (this.details == null) {
|
||||
this.details = new ArrayList<>();
|
||||
this.details.add(new DataSourceDetail(sourceCode, reportedOper, reportedTime));
|
||||
@@ -83,6 +83,6 @@ public class ReportedDataSource implements Serializable {
|
||||
* 上报时间
|
||||
*/
|
||||
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date reportedTime;
|
||||
private LocalDateTime reportedTime;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,6 +7,7 @@ import com.zt.plat.module.qms.business.bus.controller.vo.*;
|
||||
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessAssayTaskDO;
|
||||
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessAssayTaskDetailDO;
|
||||
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigAssayMethodDO;
|
||||
import com.zt.plat.module.qms.enums.QmsCommonConstant;
|
||||
import com.zt.plat.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
@@ -58,5 +59,20 @@ public interface BusinessAssayTaskMapper extends BaseMapperX<BusinessAssayTaskDO
|
||||
.eqIfPresent(BusinessAssayTaskDO::getRemark, reqVO.getRemark())
|
||||
.orderByDesc(BusinessAssayTaskDO::getId));
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据分析方法、 分析人和分配人 查询进行中的任务分配单。
|
||||
* @param configAssayMethodId 分析方法
|
||||
* @param assayUser 分析人
|
||||
* @param assignUser 分配人
|
||||
* @return
|
||||
*/
|
||||
default BusinessAssayTaskDO selectAssignInProgressByAssayUserAndAssignUser(Long configAssayMethodId, String assayUser, String assignUser) {
|
||||
return selectOne(new LambdaQueryWrapperX<BusinessAssayTaskDO>()
|
||||
.eq(BusinessAssayTaskDO::getConfigAssayMethodId, configAssayMethodId)
|
||||
.eq(BusinessAssayTaskDO::getAssayOperator, assignUser)
|
||||
.eq(BusinessAssayTaskDO::getTaskAssignOperator, assignUser)
|
||||
.eq(BusinessAssayTaskDO::getTaskAssignStatus, QmsCommonConstant.IN_PROGRESS));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.zt.plat.module.qms.business.bus.liteflow.param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
/**
|
||||
* 手动分配任务
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class SampleTaskAssignManualParam {
|
||||
|
||||
/** 分析人员 **/
|
||||
private AssignAssayUser assignAssayUser;
|
||||
|
||||
/** 检测任务id列表 **/
|
||||
private List<Long> assayTaskDataIdList;
|
||||
}
|
||||
@@ -3,7 +3,6 @@ package com.zt.plat.module.qms.business.bus.liteflow.sample.entrust;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Comparator;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@@ -36,6 +35,7 @@ import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSampleEntrustRegis
|
||||
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubParentSampleMapper;
|
||||
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubSampleAnalysisGroupMapper;
|
||||
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubSampleMapper;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.param.SampleFlowInfo;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.slot.SampleEntrustContext;
|
||||
import com.zt.plat.module.qms.business.config.dal.dataobject.BaseSampleDO;
|
||||
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigAssayMethodDO;
|
||||
@@ -186,6 +186,8 @@ public class SampleEntrustGenSampleDataCmp extends NodeComponent {
|
||||
List<BusinessAssayTaskDataDO> businessAssayTaskDataDOList = new ArrayList<>();
|
||||
List<BusinessAssayProjectDataDO> businessAssayProjectDataDOList = new ArrayList<>();
|
||||
List<BusinessAssayParameterDataDO> businessAssayParameterDataDOList = new ArrayList<>();
|
||||
|
||||
List<SampleFlowInfo> sampleFlowInfoList = new ArrayList<>();
|
||||
|
||||
List<BusinessSampleEntrustDetailDO> sampleEntrustDetailListSort = sampleEntrustDetailList.stream().sorted(Comparator.comparingInt(BusinessSampleEntrustDetailDO::getSort)).collect(Collectors.toList());
|
||||
BusinessBaseSampleDO businessBaseSampleDO = null;
|
||||
@@ -307,6 +309,16 @@ public class SampleEntrustGenSampleDataCmp extends NodeComponent {
|
||||
|
||||
businessSubSampleDOList.add(businessSubSampleDO);
|
||||
|
||||
//子样样品流转信息
|
||||
SampleFlowInfo sampleFlowInfo = new SampleFlowInfo();
|
||||
sampleFlowInfo.setId(businessSubSampleDO.getId());
|
||||
sampleFlowInfo.setSampleName(businessSubSampleDO.getSampleName());
|
||||
sampleFlowInfo.setSampleCode(businessSubSampleDO.getSampleCode());
|
||||
sampleFlowInfo.setIsWeighing(businessSubSampleDO.getIsWeighing());
|
||||
sampleFlowInfo.setSampleWeight(businessSubSampleDO.getLastSampleWeight());
|
||||
|
||||
sampleFlowInfoList.add(sampleFlowInfo);
|
||||
|
||||
//子样对应的分析班组
|
||||
BusinessSubSampleAnalysisGroupDO businessSubSampleAnalysisGroupDO = null;
|
||||
|
||||
@@ -411,6 +423,8 @@ public class SampleEntrustGenSampleDataCmp extends NodeComponent {
|
||||
|
||||
sampleEntrustRegistration.setRegistrationStatus(QmsCommonConstant.SUBMITTED);
|
||||
|
||||
sampleEntrustContext.setSampleFlowInfoList(sampleFlowInfoList);
|
||||
|
||||
businessSampleEntrustRegistrationMapper.updateById(sampleEntrustRegistration);
|
||||
if (CollUtil.isNotEmpty(sampleEntrustDetailList)) {
|
||||
businessSampleEntrustDetailMapper.updateBatch(sampleEntrustDetailList);
|
||||
|
||||
@@ -5,6 +5,7 @@ import com.yomahub.liteflow.core.NodeComponent;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.param.SampleFlowParam;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.slot.SampleEntrustContext;
|
||||
import com.zt.plat.module.qms.business.bus.service.SampleFlowService;
|
||||
import com.zt.plat.module.qms.enums.QmsCommonConstant;
|
||||
|
||||
import jakarta.annotation.Resource;
|
||||
|
||||
@@ -16,7 +17,11 @@ public class SampleEntrustReceiveDataCmp extends NodeComponent {
|
||||
|
||||
@Override
|
||||
public void process() throws Exception {
|
||||
SampleEntrustContext sampleEntrustContext = this.getContextBean(SampleEntrustContext.class);
|
||||
SampleFlowParam sampleFlowParam = new SampleFlowParam();
|
||||
sampleFlowParam.setCurrentSampleFlowKey(QmsCommonConstant.FLOW_NODE_CENTER_RECEIVE);
|
||||
sampleFlowParam.setSampleSourceType(2);
|
||||
sampleFlowParam.setSampleFlowInfoList(sampleEntrustContext.getSampleFlowInfoList());
|
||||
sampleFlowService.sampleFlow(sampleFlowParam);
|
||||
}
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ import com.yomahub.liteflow.core.NodeComponent;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.param.SampleFlowParam;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.slot.SampleEntrustContext;
|
||||
import com.zt.plat.module.qms.business.bus.service.SampleFlowService;
|
||||
import com.zt.plat.module.qms.enums.QmsCommonConstant;
|
||||
|
||||
import jakarta.annotation.Resource;
|
||||
|
||||
@@ -16,7 +17,11 @@ public class SampleEntrustSendDataCmp extends NodeComponent {
|
||||
|
||||
@Override
|
||||
public void process() throws Exception {
|
||||
SampleEntrustContext sampleEntrustContext = this.getContextBean(SampleEntrustContext.class);
|
||||
SampleFlowParam sampleFlowParam = new SampleFlowParam();
|
||||
sampleFlowParam.setCurrentSampleFlowKey(QmsCommonConstant.FLOW_NODE_CENTER_SEND);
|
||||
sampleFlowParam.setSampleSourceType(2);
|
||||
sampleFlowParam.setSampleFlowInfoList(sampleEntrustContext.getSampleFlowInfoList());
|
||||
sampleFlowService.sampleFlow(sampleFlowParam);
|
||||
}
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@ import com.yomahub.liteflow.core.NodeComponent;
|
||||
import com.zt.plat.framework.security.core.LoginUser;
|
||||
import com.zt.plat.framework.security.core.util.SecurityFrameworkUtils;
|
||||
import com.zt.plat.framework.tenant.core.context.TenantContextHolder;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.param.SampleTaskAssignManualParam;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.param.SampleTaskAssignMethodParam;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.param.SampleTaskAssignSampleParam;
|
||||
import com.zt.plat.module.qms.business.bus.liteflow.slot.SampleTaskAssignContext;
|
||||
@@ -43,6 +44,14 @@ public class SampleTaskAssignContextInitCmp extends NodeComponent {
|
||||
sampleTaskAssignContext.setAssignAssayUser(sampleTaskAssignSampleParam.getAssignAssayUser());
|
||||
sampleTaskAssignContext.setAssignSampleIdList(sampleTaskAssignSampleParam.getAssignSampleIdList());
|
||||
}
|
||||
|
||||
if (this.getRequestData() instanceof SampleTaskAssignManualParam) {
|
||||
SampleTaskAssignManualParam sampleTaskAssignManualParam = this.getRequestData();
|
||||
sampleTaskAssignContext.setSampleTaskAssignType(SampleTaskAssignTypeEnum.MANUAL);
|
||||
sampleTaskAssignContext.setAssignAssayUser(sampleTaskAssignManualParam.getAssignAssayUser());
|
||||
sampleTaskAssignContext.setAssayTaskDataIdList(sampleTaskAssignManualParam.getAssayTaskDataIdList());
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -31,14 +31,20 @@ public class SampleTaskAssignDataSaveOrUpdateCmp extends NodeComponent {
|
||||
public void process() throws Exception {
|
||||
SampleTaskAssignContext sampleTaskAssignContext = this.getContextBean(SampleTaskAssignContext.class);
|
||||
|
||||
List<BusinessAssayTaskDO> businessAssayTaskList = sampleTaskAssignContext.getBusinessAssayTaskList();
|
||||
List<BusinessAssayTaskDO> savebusinessAssayTaskList = sampleTaskAssignContext.getSaveBusinessAssayTaskList();
|
||||
|
||||
List<BusinessAssayTaskDO> updateBusinessAssayTaskList = sampleTaskAssignContext.getUpdateBusinessAssayTaskList();
|
||||
|
||||
List<BusinessAssayTaskDetailDO> businessAssayTaskDetailList = sampleTaskAssignContext.getBusinessAssayTaskDetailList();
|
||||
|
||||
List<BusinessAssayTaskDataDO> businessAssayTaskDataList = sampleTaskAssignContext.getBusinessAssayTaskDataList();
|
||||
|
||||
if (CollUtil.isNotEmpty(businessAssayTaskList)) {
|
||||
this.businessAssayTaskMapper.insertBatch(businessAssayTaskList);
|
||||
if (CollUtil.isNotEmpty(savebusinessAssayTaskList)) {
|
||||
this.businessAssayTaskMapper.insertBatch(savebusinessAssayTaskList);
|
||||
}
|
||||
|
||||
if (CollUtil.isNotEmpty(updateBusinessAssayTaskList)) {
|
||||
this.businessAssayTaskMapper.updateBatch(updateBusinessAssayTaskList);
|
||||
}
|
||||
|
||||
if (CollUtil.isNotEmpty(businessAssayTaskDetailList)) {
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user