Merge remote-tracking branch 'origin/test' into test

This commit is contained in:
FCL
2026-02-27 11:47:04 +08:00
32 changed files with 998 additions and 152 deletions

View File

@@ -44,4 +44,5 @@ public class SampleReportDataQueryController {
JSONObject result = sampleAnalysisAuditService.getCrossAuditDataByTaskId(businessAssayTaskId); JSONObject result = sampleAnalysisAuditService.getCrossAuditDataByTaskId(businessAssayTaskId);
return success(result); return success(result);
} }
} }

View File

@@ -0,0 +1,53 @@
package com.zt.plat.module.qms.business.bus.controller.admin;
import java.util.List;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.zt.plat.framework.business.interceptor.BusinessControllerMarker;
import com.zt.plat.framework.common.pojo.CommonResult;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.framework.datapermission.core.annotation.DeptDataPermissionIgnore;
import com.zt.plat.framework.security.core.LoginUser;
import com.zt.plat.framework.security.core.util.SecurityFrameworkUtils;
import com.zt.plat.module.qms.business.bus.controller.vo.SampleProjectResultDetailReqVO;
import com.zt.plat.module.qms.business.bus.controller.vo.SampleProjectResultDetailRespVO;
import com.zt.plat.module.qms.business.bus.controller.vo.SampleProjectResultPageReqVO;
import com.zt.plat.module.qms.business.bus.controller.vo.SampleProjectResultRespVO;
import com.zt.plat.module.qms.business.bus.service.SampleResultQueryService;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.annotation.Resource;
/**
* 样品结果查询
*/
@Tag(name = "管理后台 - 样品结果查询")
@RestController
@RequestMapping("/qms/bus/sample/result-query")
@Validated
@DeptDataPermissionIgnore(enable = "true")
public class SampleResultQueryController implements BusinessControllerMarker {
@Resource
private SampleResultQueryService sampleResultQueryService;
@GetMapping("/sampleProjectResultQuery")
public CommonResult<PageResult<SampleProjectResultRespVO>> sampleProjectResultQuery(SampleProjectResultPageReqVO reqVO) {
if (reqVO.getAssayDepartmentId() == null) {
LoginUser loginUser = SecurityFrameworkUtils.getLoginUser();
reqVO.setAssayDepartmentId(loginUser.getVisitDeptId());
}
PageResult<SampleProjectResultRespVO> page = sampleResultQueryService.sampleProjectResultQuery(reqVO);
return CommonResult.success(page);
}
@GetMapping("/sampleProjectResultDetailQuery")
public CommonResult<List<SampleProjectResultDetailRespVO>> sampleProjectResultDetailQuery(SampleProjectResultDetailReqVO reqVO) {
List<SampleProjectResultDetailRespVO> list = sampleResultQueryService.sampleProjectResultDetailQuery(reqVO);
return CommonResult.success(list);
}
}

View File

@@ -0,0 +1,14 @@
package com.zt.plat.module.qms.business.bus.controller.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
public class SampleProjectResultDetailReqVO {
@Schema(description = "样品分样ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "25701")
private Long businessSubParentSampleId;
@Schema(description = "检测方法分析项目配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "7653")
private Long configAssayMethodProjectId;
}

View File

@@ -0,0 +1,47 @@
package com.zt.plat.module.qms.business.bus.controller.vo;
import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
import java.time.LocalDateTime;
import org.springframework.format.annotation.DateTimeFormat;
import com.zt.plat.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* 样品检测项目结果分页条件VO
*/
@Data
public class SampleProjectResultPageReqVO extends PageParam {
private static final long serialVersionUID = 7153959501553288866L;
@Schema(description = "分析部门ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "2493")
private Long assayDepartmentId;
@Schema(description = "样品名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
private String sampleName;
@Schema(description = "样品编号", requiredMode = Schema.RequiredMode.REQUIRED)
private String sampleCode;
@Schema(description = "检测项目缩写", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四")
private String projectSimpleName;
@Schema(description = "收样人")
private String sampleReceiver;
@Schema(description = "收样时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] sampleReceiveTime;
@Schema(description = "上报人")
private String reporter;
@Schema(description = "上报时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] reportTime;
}

View File

@@ -0,0 +1,99 @@
package com.zt.plat.module.qms.business.bus.controller.vo;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* 样品检测项目结果响应
*/
@Data
public class SampleProjectResultRespVO {
@Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "18701")
private Long id;
@Schema(description = "样品分样ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "25701")
@ExcelProperty("样品分样ID")
private Long businessSubParentSampleId;
@Schema(description = "检测方法配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "13131")
@ExcelProperty("检测方法配置ID")
private Long configAssayMethodId;
@Schema(description = "检测方法分析项目配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "7653")
@ExcelProperty("检测方法分析项目配置ID")
private Long configAssayMethodProjectId;
@Schema(description = "样品名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
private String sampleName;
@Schema(description = "样品编号", requiredMode = Schema.RequiredMode.REQUIRED)
private String sampleCode;
@Schema(description = "分析编号")
private String sampleAssayCode;
@Schema(description = "归库编号")
private String sampleReturnCode;
@Schema(description = "检测项目名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿")
@ExcelProperty("检测项目名称")
private String projectName;
@Schema(description = "检测项目缩写", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四")
@ExcelProperty("检测项目缩写")
private String projectSimpleName;
@Schema(description = "显示名称", example = "李四")
@ExcelProperty("显示名称")
private String projectShowName;
@Schema(description = "键值")
@ExcelProperty("键值")
private String projectKey;
@Schema(description = "单位")
@ExcelProperty("单位")
private String dictionaryProjectUnit;
@Schema(description = "分析部门ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "2493")
@ExcelProperty("分析部门ID")
private Long assayDepartmentId;
@Schema(description = "分析部门名称", example = "赵六")
@ExcelProperty("分析部门名称")
private String assayDepartmentName;
@Schema(description = "收样人")
@ExcelProperty("收样人")
private String sampleReceiver;
@Schema(description = "收样时间")
@ExcelProperty("收样时间")
private LocalDateTime sampleReceiveTime;
@Schema(description = "判定值")
@ExcelProperty("判定值")
private String assessmentValue;
@Schema(description = "方法检出下限值")
private String minimumLimitValue;
@Schema(description = "是否已上报", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("是否已上报")
private Integer isReported;
@Schema(description = "上报人")
@ExcelProperty("上报人")
private String reporter;
@Schema(description = "上报时间")
@ExcelProperty("上报时间")
private LocalDateTime reportTime;
}

View File

@@ -0,0 +1,22 @@
package com.zt.plat.module.qms.business.bus.dal.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zt.plat.module.qms.business.bus.controller.vo.SampleProjectResultDetailReqVO;
import com.zt.plat.module.qms.business.bus.controller.vo.SampleProjectResultDetailRespVO;
import com.zt.plat.module.qms.business.bus.controller.vo.SampleProjectResultPageReqVO;
import com.zt.plat.module.qms.business.bus.controller.vo.SampleProjectResultRespVO;
@Mapper
public interface SampleResultQueryMapper {
Page<SampleProjectResultRespVO> sampleProjectResultQuery(IPage<?> page, @Param("reqVO") SampleProjectResultPageReqVO reqVO);
List<SampleProjectResultDetailRespVO> sampleProjectResultDetailQuery(@Param("reqVO") SampleProjectResultDetailReqVO reqVO);
}

View File

@@ -67,11 +67,13 @@ import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubSampleAssessmen
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubSampleAssessmentProjectMapper; import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubSampleAssessmentProjectMapper;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubSampleMapper; import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubSampleMapper;
import com.zt.plat.module.qms.business.config.controller.vo.*; import com.zt.plat.module.qms.business.config.controller.vo.*;
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigAssayMethodParameterDO;
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigAssayMethodProjectAssessmentDO; import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigAssayMethodProjectAssessmentDO;
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigAssayMethodProjectParameterDO; import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigAssayMethodProjectParameterDO;
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigRuleDO; import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigRuleDO;
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigSubSampleDO; import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigSubSampleDO;
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigSubSampleParentMethodDO; import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigSubSampleParentMethodDO;
import com.zt.plat.module.qms.business.config.dal.mapper.ConfigAssayMethodParameterMapper;
import com.zt.plat.module.qms.business.config.dal.mapper.ConfigAssayMethodProjectAssessmentMapper; import com.zt.plat.module.qms.business.config.dal.mapper.ConfigAssayMethodProjectAssessmentMapper;
import com.zt.plat.module.qms.business.config.dal.mapper.ConfigAssayMethodProjectCoefficientMapper; import com.zt.plat.module.qms.business.config.dal.mapper.ConfigAssayMethodProjectCoefficientMapper;
import com.zt.plat.module.qms.business.config.dal.mapper.ConfigAssayMethodProjectMapper; import com.zt.plat.module.qms.business.config.dal.mapper.ConfigAssayMethodProjectMapper;
@@ -889,7 +891,7 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
//执行自动上报 //执行自动上报
if (automaticBusinessSubSampleAssessmentList.size() > 0) { if (automaticBusinessSubSampleAssessmentList.size() > 0) {
for (BusinessSubSampleAssessmentDO automaticBusinessSubSampleAssessment : automaticBusinessSubSampleAssessmentList) { for (BusinessSubSampleAssessmentDO automaticBusinessSubSampleAssessment : automaticBusinessSubSampleAssessmentList) {
this.assessmentDataReporting(automaticBusinessSubSampleAssessment.getBusinessSubSampleId(), businessAssayTaskDO.getConfigAssayMethodId(), automaticBusinessSubSampleAssessment.getRetestCount()); this.assessmentDataReporting(automaticBusinessSubSampleAssessment.getBusinessSubSampleId(), automaticBusinessSubSampleAssessment.getConfigAssayMethodId(), automaticBusinessSubSampleAssessment.getRetestCount());
} }
} }
@@ -1063,6 +1065,9 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
@Resource @Resource
private ConfigSubSampleMapper configSubSampleMapper; private ConfigSubSampleMapper configSubSampleMapper;
@Resource
private ConfigAssayMethodParameterMapper configAssayMethodParameterMapper;
@Resource @Resource
private BusinessSubSampleMapper businessSubSampleMapper; private BusinessSubSampleMapper businessSubSampleMapper;
@@ -1153,11 +1158,13 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
businessAssayTaskParameterDataDO.setBusinessAssayTaskDataId(newBusinessAssayTaskDataDO.getId()); businessAssayTaskParameterDataDO.setBusinessAssayTaskDataId(newBusinessAssayTaskDataDO.getId());
businessAssayTaskParameterDataDO.setConfigAssayMethodParameterId(currentBusinessAssayTaskParameterData.getConfigAssayMethodParameterId()); businessAssayTaskParameterDataDO.setConfigAssayMethodParameterId(currentBusinessAssayTaskParameterData.getConfigAssayMethodParameterId());
businessAssayTaskParameterDataDO.setDataType(currentBusinessAssayTaskParameterData.getDataType()); businessAssayTaskParameterDataDO.setDataType(currentBusinessAssayTaskParameterData.getDataType());
businessAssayTaskParameterDataDO.setDecimalPosition(currentBusinessAssayTaskParameterData.getDecimalPosition()); businessAssayTaskParameterDataDO.setDecimalPosition(currentBusinessAssayTaskParameterData.getDecimalPosition());
// if (StringUtils.isNotBlank(configAssayMethodParameterDO.getDefaultValue())) { ConfigAssayMethodParameterDO configAssayMethodParameterDO = configAssayMethodParameterMapper.selectById(currentBusinessAssayTaskParameterData.getConfigAssayMethodParameterId());
// businessAssayTaskParameterDataDO.setValue(configAssayMethodParameterDO.getDefaultValue());
// } if (configAssayMethodParameterDO != null && StringUtils.isNotBlank(configAssayMethodParameterDO.getDefaultValue())) {
businessAssayTaskParameterDataDO.setValue(configAssayMethodParameterDO.getDefaultValue());
}
if (getParamList != null) { if (getParamList != null) {
ConfigSubSampleMethodConfItem targetAttribute = getParamList.stream().filter(f -> StringUtils.isNotBlank(f.getTarget().getAttribute()) && f.getTarget().getAttribute().equals(currentBusinessAssayTaskParameterData.getKey())).findFirst().orElse(null); ConfigSubSampleMethodConfItem targetAttribute = getParamList.stream().filter(f -> StringUtils.isNotBlank(f.getTarget().getAttribute()) && f.getTarget().getAttribute().equals(currentBusinessAssayTaskParameterData.getKey())).findFirst().orElse(null);
if (targetAttribute != null) { if (targetAttribute != null) {

View File

@@ -0,0 +1,17 @@
package com.zt.plat.module.qms.business.bus.service;
import java.util.List;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.module.qms.business.bus.controller.vo.SampleProjectResultDetailReqVO;
import com.zt.plat.module.qms.business.bus.controller.vo.SampleProjectResultDetailRespVO;
import com.zt.plat.module.qms.business.bus.controller.vo.SampleProjectResultPageReqVO;
import com.zt.plat.module.qms.business.bus.controller.vo.SampleProjectResultRespVO;
public interface SampleResultQueryService {
PageResult<SampleProjectResultRespVO> sampleProjectResultQuery(SampleProjectResultPageReqVO reqVO);
List<SampleProjectResultDetailRespVO> sampleProjectResultDetailQuery(SampleProjectResultDetailReqVO reqVO);
}

View File

@@ -0,0 +1,38 @@
package com.zt.plat.module.qms.business.bus.service;
import java.util.List;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zt.plat.framework.common.pojo.PageParam;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.framework.mybatis.core.util.MyBatisUtils;
import com.zt.plat.module.qms.business.bus.controller.vo.SampleProjectResultDetailReqVO;
import com.zt.plat.module.qms.business.bus.controller.vo.SampleProjectResultDetailRespVO;
import com.zt.plat.module.qms.business.bus.controller.vo.SampleProjectResultPageReqVO;
import com.zt.plat.module.qms.business.bus.controller.vo.SampleProjectResultRespVO;
import com.zt.plat.module.qms.business.bus.dal.mapper.SampleResultQueryMapper;
import jakarta.annotation.Resource;
@Service
public class SampleResultQueryServiceImpl implements SampleResultQueryService {
@Resource
private SampleResultQueryMapper sampleResultQueryMapper;
@Override
public PageResult<SampleProjectResultRespVO> sampleProjectResultQuery(SampleProjectResultPageReqVO reqVO) {
IPage<SampleProjectResultRespVO> mpPage = MyBatisUtils.buildPage((PageParam)reqVO);
Page<SampleProjectResultRespVO> pageResult = sampleResultQueryMapper.sampleProjectResultQuery(mpPage, reqVO);
return new PageResult<SampleProjectResultRespVO>(pageResult.getRecords(), pageResult.getTotal());
}
@Override
public List<SampleProjectResultDetailRespVO> sampleProjectResultDetailQuery(SampleProjectResultDetailReqVO reqVO) {
return sampleResultQueryMapper.sampleProjectResultDetailQuery(reqVO);
}
}

Some files were not shown because too many files have changed in this diff Show More