Compare commits

..

5 Commits

52 changed files with 2235 additions and 797 deletions

View File

@@ -102,7 +102,8 @@ public interface ErrorCodeConstants {
ErrorCode BUSINESS_ASSAY_TASK_DATA_NOT_EXISTS = new ErrorCode(1_032_100_000, "子样检测任务业务不存在");
ErrorCode BUSINESS_ASSAY_PROJECT_DATA_NOT_EXISTS = new ErrorCode(1_032_100_000, "检测项目数据业务不存在");
ErrorCode BUSINESS_ASSAY_PARAMETER_DATA_NOT_EXISTS = new ErrorCode(1_032_100_000, "检测参数数据业务不存在");
ErrorCode BUSINESS_SUB_SAMPLE_ASSESSMENT_NOT_EXISTS = new ErrorCode(1_032_100_000, "子样判定数据业务不存在");
ErrorCode BUSINESS_SUB_SAMPLE_ASSESSMENT_NOT_EXISTS = new ErrorCode(1_032_100_000, "子样判定业务不存在");
ErrorCode BUSINESS_SUB_SAMPLE_ASSESSMENT_PROJECT_NOT_EXISTS = new ErrorCode(1_032_100_000, "子样判定检测项目数据业务不存在");
ErrorCode BUSINESS_SAMPLE_HANDOVER_NOT_EXISTS = new ErrorCode(1_032_100_000, "样品交接单业务不存在");
ErrorCode BUSINESS_SAMPLE_HANDOVER_DETAIL_NOT_EXISTS = new ErrorCode(1_032_100_000, "样品交接明细不存在");
ErrorCode BUSINESS_ASSAY_TASK_NOT_EXISTS = new ErrorCode(1_032_100_000, "检测任务分配业务不存在");
@@ -116,6 +117,7 @@ public interface ErrorCodeConstants {
ErrorCode BUSINESS_STANDARD_SAMPLE_PROJECT_NOT_EXISTS = new ErrorCode(1_032_100_000, "标准样检测项目业务不存在");
ErrorCode BUSINESS_SUB_PARENT_SAMPLE_ASSESSMENT_NOT_EXISTS = new ErrorCode(1_032_100_000, "班组判定数据业务不存在");
ErrorCode BUSINESS_SUB_PARENT_SAMPLE_ASSESSMENT_PROJECT_NOT_EXISTS = new ErrorCode(1_032_100_000, "班组判定检测项目数据业务不存在");
ErrorCode BUSINESS_SUB_SAMPLE_PARENT_RECHECK_NOT_EXISTS = new ErrorCode(1_032_100_000, "分样复检业务数据不存在");

View File

@@ -158,9 +158,30 @@ public interface QmsCommonConstant {
/** 品质控制 **/
String ASSAY_PROJECT_USAGE_QUALITY_CONTROL = "quality_control";
/** 结果判定-初始值 **/
String ASMT_INITIAL = "initial";
/** 结果判定-待上报 **/
String ASMT_PENDING_REPORT = "pending_report";
/** 结果判定-待判定 **/
String ASMT_PENDING_ASSESSMENT = "pending_assessment";
/** 结果判定-复测中 **/
String ASMT_RE_INSPECTED = "re_inspected";
/** 结果判定-已上报 */
String ASMT_REPORTED = "reported";
/** 检验完成状态-完成 **/
String CHECKED = "checked";
/** 检验完成状态-未完成 **/
String UNCHECKED = "unchecked";
/** 自动 **/
String AUTOMATIC = "automatic";
/** 手动 **/
String MANUAL = "manual";
}

View File

@@ -42,14 +42,14 @@ public class BusinessSubParentSampleAssessmentController implements BusinessCont
@PostMapping("/create")
@Operation(summary = "创建班组判定数据业务")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:create')")
@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:create')")
public CommonResult<BusinessSubParentSampleAssessmentRespVO> createBusinessSubParentSampleAssessment(@Valid @RequestBody BusinessSubParentSampleAssessmentSaveReqVO createReqVO) {
return success(businessSubParentSampleAssessmentService.createBusinessSubParentSampleAssessment(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新班组判定数据业务")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:update')")
@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:update')")
public CommonResult<Boolean> updateBusinessSubParentSampleAssessment(@Valid @RequestBody BusinessSubParentSampleAssessmentSaveReqVO updateReqVO) {
businessSubParentSampleAssessmentService.updateBusinessSubParentSampleAssessment(updateReqVO);
return success(true);
@@ -58,7 +58,7 @@ public class BusinessSubParentSampleAssessmentController implements BusinessCont
@DeleteMapping("/delete")
@Operation(summary = "删除班组判定数据业务")
@Parameter(name = "id", description = "编号", required = true)
//@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:delete')")
@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:delete')")
public CommonResult<Boolean> deleteBusinessSubParentSampleAssessment(@RequestParam("id") Long id) {
businessSubParentSampleAssessmentService.deleteBusinessSubParentSampleAssessment(id);
return success(true);
@@ -67,7 +67,7 @@ public class BusinessSubParentSampleAssessmentController implements BusinessCont
@DeleteMapping("/delete-list")
@Parameter(name = "ids", description = "编号", required = true)
@Operation(summary = "批量删除班组判定数据业务")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:delete')")
@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:delete')")
public CommonResult<Boolean> deleteBusinessSubParentSampleAssessmentList(@RequestBody BatchDeleteReqVO req) {
businessSubParentSampleAssessmentService.deleteBusinessSubParentSampleAssessmentListByIds(req.getIds());
return success(true);
@@ -76,7 +76,7 @@ public class BusinessSubParentSampleAssessmentController implements BusinessCont
@GetMapping("/get")
@Operation(summary = "获得班组判定数据业务")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:query')")
@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:query')")
public CommonResult<BusinessSubParentSampleAssessmentRespVO> getBusinessSubParentSampleAssessment(@RequestParam("id") Long id) {
BusinessSubParentSampleAssessmentDO businessSubParentSampleAssessment = businessSubParentSampleAssessmentService.getBusinessSubParentSampleAssessment(id);
return success(BeanUtils.toBean(businessSubParentSampleAssessment, BusinessSubParentSampleAssessmentRespVO.class));
@@ -84,7 +84,7 @@ public class BusinessSubParentSampleAssessmentController implements BusinessCont
@GetMapping("/page")
@Operation(summary = "获得班组判定数据业务分页")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:query')")
@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:query')")
public CommonResult<PageResult<BusinessSubParentSampleAssessmentRespVO>> getBusinessSubParentSampleAssessmentPage(@Valid BusinessSubParentSampleAssessmentPageReqVO pageReqVO) {
PageResult<BusinessSubParentSampleAssessmentDO> pageResult = businessSubParentSampleAssessmentService.getBusinessSubParentSampleAssessmentPage(pageReqVO);
return success(BeanUtils.toBean(pageResult, BusinessSubParentSampleAssessmentRespVO.class));
@@ -92,7 +92,7 @@ public class BusinessSubParentSampleAssessmentController implements BusinessCont
@GetMapping("/export-excel")
@Operation(summary = "导出班组判定数据业务 Excel")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:export')")
@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:export')")
@ApiAccessLog(operateType = EXPORT)
public void exportBusinessSubParentSampleAssessmentExcel(@Valid BusinessSubParentSampleAssessmentPageReqVO pageReqVO,
HttpServletResponse response) throws IOException {

View File

@@ -0,0 +1,106 @@
package com.zt.plat.module.qms.business.bus.controller.admin;
import org.springframework.web.bind.annotation.*;
import jakarta.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import com.zt.plat.framework.business.interceptor.BusinessControllerMarker;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import jakarta.validation.constraints.*;
import jakarta.validation.*;
import jakarta.servlet.http.*;
import java.util.*;
import java.io.IOException;
import com.zt.plat.framework.common.pojo.vo.BatchDeleteReqVO;
import com.zt.plat.framework.common.pojo.PageParam;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.framework.common.pojo.CommonResult;
import com.zt.plat.framework.common.util.object.BeanUtils;
import static com.zt.plat.framework.common.pojo.CommonResult.success;
import com.zt.plat.framework.excel.core.util.ExcelUtils;
import com.zt.plat.module.qms.business.bus.controller.vo.*;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubParentSampleAssessmentProjectDO;
import com.zt.plat.module.qms.business.bus.service.BusinessSubParentSampleAssessmentProjectService;
import com.zt.plat.framework.apilog.core.annotation.ApiAccessLog;
import static com.zt.plat.framework.apilog.core.enums.OperateTypeEnum.*;
@Tag(name = "管理后台 - 班组判定检测项目数据业务")
@RestController
@RequestMapping("/qms/business-sub-parent-sample-assessment-project")
@Validated
public class BusinessSubParentSampleAssessmentProjectController implements BusinessControllerMarker {
@Resource
private BusinessSubParentSampleAssessmentProjectService businessSubParentSampleAssessmentProjectService;
@PostMapping("/create")
@Operation(summary = "创建班组判定检测项目数据业务")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:create')")
public CommonResult<BusinessSubParentSampleAssessmentProjectRespVO> createBusinessSubParentSampleAssessment(@Valid @RequestBody BusinessSubParentSampleAssessmentProjectSaveReqVO createReqVO) {
return success(businessSubParentSampleAssessmentProjectService.createBusinessSubParentSampleAssessment(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新班组判定检测项目数据业务")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:update')")
public CommonResult<Boolean> updateBusinessSubParentSampleAssessment(@Valid @RequestBody BusinessSubParentSampleAssessmentProjectSaveReqVO updateReqVO) {
businessSubParentSampleAssessmentProjectService.updateBusinessSubParentSampleAssessment(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除班组判定检测项目数据业务")
@Parameter(name = "id", description = "编号", required = true)
//@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:delete')")
public CommonResult<Boolean> deleteBusinessSubParentSampleAssessment(@RequestParam("id") Long id) {
businessSubParentSampleAssessmentProjectService.deleteBusinessSubParentSampleAssessment(id);
return success(true);
}
@DeleteMapping("/delete-list")
@Parameter(name = "ids", description = "编号", required = true)
@Operation(summary = "批量删除班组判定检测项目数据业务")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:delete')")
public CommonResult<Boolean> deleteBusinessSubParentSampleAssessmentList(@RequestBody BatchDeleteReqVO req) {
businessSubParentSampleAssessmentProjectService.deleteBusinessSubParentSampleAssessmentListByIds(req.getIds());
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得班组判定检测项目数据业务")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:query')")
public CommonResult<BusinessSubParentSampleAssessmentProjectRespVO> getBusinessSubParentSampleAssessment(@RequestParam("id") Long id) {
BusinessSubParentSampleAssessmentProjectDO businessSubParentSampleAssessment = businessSubParentSampleAssessmentProjectService.getBusinessSubParentSampleAssessment(id);
return success(BeanUtils.toBean(businessSubParentSampleAssessment, BusinessSubParentSampleAssessmentProjectRespVO.class));
}
@GetMapping("/page")
@Operation(summary = "获得班组判定检测项目数据业务分页")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:query')")
public CommonResult<PageResult<BusinessSubParentSampleAssessmentProjectRespVO>> getBusinessSubParentSampleAssessmentPage(@Valid BusinessSubParentSampleAssessmentProjectPageReqVO pageReqVO) {
PageResult<BusinessSubParentSampleAssessmentProjectDO> pageResult = businessSubParentSampleAssessmentProjectService.getBusinessSubParentSampleAssessmentPage(pageReqVO);
return success(BeanUtils.toBean(pageResult, BusinessSubParentSampleAssessmentProjectRespVO.class));
}
@GetMapping("/export-excel")
@Operation(summary = "导出班组判定检测项目数据业务 Excel")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-parent-sample-assessment:export')")
@ApiAccessLog(operateType = EXPORT)
public void exportBusinessSubParentSampleAssessmentExcel(@Valid BusinessSubParentSampleAssessmentProjectPageReqVO pageReqVO,
HttpServletResponse response) throws IOException {
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
List<BusinessSubParentSampleAssessmentProjectDO> list = businessSubParentSampleAssessmentProjectService.getBusinessSubParentSampleAssessmentPage(pageReqVO).getList();
// 导出 Excel
ExcelUtils.write(response, "班组判定检测项目数据业务.xls", "数据", BusinessSubParentSampleAssessmentProjectRespVO.class,
BeanUtils.toBean(list, BusinessSubParentSampleAssessmentProjectRespVO.class));
}
}

View File

@@ -1,8 +1,5 @@
package com.zt.plat.module.qms.business.bus.controller.admin;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentPageReqVO;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentRespVO;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentSaveReqVO;
import org.springframework.web.bind.annotation.*;
import jakarta.annotation.Resource;
import org.springframework.validation.annotation.Validated;
@@ -32,7 +29,7 @@ import com.zt.plat.module.qms.business.bus.service.BusinessSubSampleAssessmentSe
import com.zt.plat.framework.apilog.core.annotation.ApiAccessLog;
import static com.zt.plat.framework.apilog.core.enums.OperateTypeEnum.*;
@Tag(name = "管理后台 - 子样判定数据业务")
@Tag(name = "管理后台 - 子样判定业务")
@RestController
@RequestMapping("/qms/business-sub-sample-assessment")
@Validated
@@ -43,24 +40,24 @@ public class BusinessSubSampleAssessmentController implements BusinessController
private BusinessSubSampleAssessmentService businessSubSampleAssessmentService;
@PostMapping("/create")
@Operation(summary = "创建子样判定数据业务")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:create')")
@Operation(summary = "创建子样判定业务")
@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:create')")
public CommonResult<BusinessSubSampleAssessmentRespVO> createBusinessSubSampleAssessment(@Valid @RequestBody BusinessSubSampleAssessmentSaveReqVO createReqVO) {
return success(businessSubSampleAssessmentService.createBusinessSubSampleAssessment(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新子样判定数据业务")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:update')")
@Operation(summary = "更新子样判定业务")
@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:update')")
public CommonResult<Boolean> updateBusinessSubSampleAssessment(@Valid @RequestBody BusinessSubSampleAssessmentSaveReqVO updateReqVO) {
businessSubSampleAssessmentService.updateBusinessSubSampleAssessment(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除子样判定数据业务")
@Operation(summary = "删除子样判定业务")
@Parameter(name = "id", description = "编号", required = true)
//@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:delete')")
@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:delete')")
public CommonResult<Boolean> deleteBusinessSubSampleAssessment(@RequestParam("id") Long id) {
businessSubSampleAssessmentService.deleteBusinessSubSampleAssessment(id);
return success(true);
@@ -68,40 +65,40 @@ public class BusinessSubSampleAssessmentController implements BusinessController
@DeleteMapping("/delete-list")
@Parameter(name = "ids", description = "编号", required = true)
@Operation(summary = "批量删除子样判定数据业务")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:delete')")
@Operation(summary = "批量删除子样判定业务")
@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:delete')")
public CommonResult<Boolean> deleteBusinessSubSampleAssessmentList(@RequestBody BatchDeleteReqVO req) {
businessSubSampleAssessmentService.deleteBusinessSubSampleAssessmentListByIds(req.getIds());
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得子样判定数据业务")
@Operation(summary = "获得子样判定业务")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:query')")
@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:query')")
public CommonResult<BusinessSubSampleAssessmentRespVO> getBusinessSubSampleAssessment(@RequestParam("id") Long id) {
BusinessSubSampleAssessmentDO businessSubSampleAssessment = businessSubSampleAssessmentService.getBusinessSubSampleAssessment(id);
return success(BeanUtils.toBean(businessSubSampleAssessment, BusinessSubSampleAssessmentRespVO.class));
}
@GetMapping("/page")
@Operation(summary = "获得子样判定数据业务分页")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:query')")
@Operation(summary = "获得子样判定业务分页")
@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:query')")
public CommonResult<PageResult<BusinessSubSampleAssessmentRespVO>> getBusinessSubSampleAssessmentPage(@Valid BusinessSubSampleAssessmentPageReqVO pageReqVO) {
PageResult<BusinessSubSampleAssessmentDO> pageResult = businessSubSampleAssessmentService.getBusinessSubSampleAssessmentPage(pageReqVO);
return success(BeanUtils.toBean(pageResult, BusinessSubSampleAssessmentRespVO.class));
}
@GetMapping("/export-excel")
@Operation(summary = "导出子样判定数据业务 Excel")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:export')")
@Operation(summary = "导出子样判定业务 Excel")
@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:export')")
@ApiAccessLog(operateType = EXPORT)
public void exportBusinessSubSampleAssessmentExcel(@Valid BusinessSubSampleAssessmentPageReqVO pageReqVO,
HttpServletResponse response) throws IOException {
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
List<BusinessSubSampleAssessmentDO> list = businessSubSampleAssessmentService.getBusinessSubSampleAssessmentPage(pageReqVO).getList();
// 导出 Excel
ExcelUtils.write(response, "子样判定数据业务.xls", "数据", BusinessSubSampleAssessmentRespVO.class,
ExcelUtils.write(response, "子样判定业务.xls", "数据", BusinessSubSampleAssessmentRespVO.class,
BeanUtils.toBean(list, BusinessSubSampleAssessmentRespVO.class));
}

View File

@@ -0,0 +1,108 @@
package com.zt.plat.module.qms.business.bus.controller.admin;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentProjectPageReqVO;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentProjectRespVO;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentProjectSaveReqVO;
import org.springframework.web.bind.annotation.*;
import jakarta.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import com.zt.plat.framework.business.interceptor.BusinessControllerMarker;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import jakarta.validation.*;
import jakarta.servlet.http.*;
import java.util.*;
import java.io.IOException;
import com.zt.plat.framework.common.pojo.vo.BatchDeleteReqVO;
import com.zt.plat.framework.common.pojo.PageParam;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.framework.common.pojo.CommonResult;
import com.zt.plat.framework.common.util.object.BeanUtils;
import static com.zt.plat.framework.common.pojo.CommonResult.success;
import com.zt.plat.framework.excel.core.util.ExcelUtils;
import com.zt.plat.module.qms.business.bus.controller.vo.*;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAssessmentProjectDO;
import com.zt.plat.module.qms.business.bus.service.BusinessSubSampleAssessmentProjectService;
import com.zt.plat.framework.apilog.core.annotation.ApiAccessLog;
import static com.zt.plat.framework.apilog.core.enums.OperateTypeEnum.*;
@Tag(name = "管理后台 - 子样判定检测项目数据业务")
@RestController
@RequestMapping("/qms/business-sub-sample-assessment-project")
@Validated
public class BusinessSubSampleAssessmentProjectController implements BusinessControllerMarker {
@Resource
private BusinessSubSampleAssessmentProjectService businessSubSampleAssessmentProjectService;
@PostMapping("/create")
@Operation(summary = "创建子样判定检测项目数据业务")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:create')")
public CommonResult<BusinessSubSampleAssessmentProjectRespVO> createBusinessSubSampleAssessment(@Valid @RequestBody BusinessSubSampleAssessmentProjectSaveReqVO createReqVO) {
return success(businessSubSampleAssessmentProjectService.createBusinessSubSampleAssessment(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新子样判定检测项目数据业务")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:update')")
public CommonResult<Boolean> updateBusinessSubSampleAssessment(@Valid @RequestBody BusinessSubSampleAssessmentProjectSaveReqVO updateReqVO) {
businessSubSampleAssessmentProjectService.updateBusinessSubSampleAssessment(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除子样判定检测项目数据业务")
@Parameter(name = "id", description = "编号", required = true)
//@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:delete')")
public CommonResult<Boolean> deleteBusinessSubSampleAssessment(@RequestParam("id") Long id) {
businessSubSampleAssessmentProjectService.deleteBusinessSubSampleAssessment(id);
return success(true);
}
@DeleteMapping("/delete-list")
@Parameter(name = "ids", description = "编号", required = true)
@Operation(summary = "批量删除子样判定检测项目数据业务")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:delete')")
public CommonResult<Boolean> deleteBusinessSubSampleAssessmentList(@RequestBody BatchDeleteReqVO req) {
businessSubSampleAssessmentProjectService.deleteBusinessSubSampleAssessmentListByIds(req.getIds());
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得子样判定检测项目数据业务")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:query')")
public CommonResult<BusinessSubSampleAssessmentProjectRespVO> getBusinessSubSampleAssessment(@RequestParam("id") Long id) {
BusinessSubSampleAssessmentProjectDO businessSubSampleAssessment = businessSubSampleAssessmentProjectService.getBusinessSubSampleAssessment(id);
return success(BeanUtils.toBean(businessSubSampleAssessment, BusinessSubSampleAssessmentProjectRespVO.class));
}
@GetMapping("/page")
@Operation(summary = "获得子样判定检测项目数据业务分页")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:query')")
public CommonResult<PageResult<BusinessSubSampleAssessmentProjectRespVO>> getBusinessSubSampleAssessmentPage(@Valid BusinessSubSampleAssessmentProjectPageReqVO pageReqVO) {
PageResult<BusinessSubSampleAssessmentProjectDO> pageResult = businessSubSampleAssessmentProjectService.getBusinessSubSampleAssessmentPage(pageReqVO);
return success(BeanUtils.toBean(pageResult, BusinessSubSampleAssessmentProjectRespVO.class));
}
@GetMapping("/export-excel")
@Operation(summary = "导出子样判定检测项目数据业务 Excel")
//@PreAuthorize("@ss.hasPermission('qms:business-sub-sample-assessment:export')")
@ApiAccessLog(operateType = EXPORT)
public void exportBusinessSubSampleAssessmentExcel(@Valid BusinessSubSampleAssessmentProjectPageReqVO pageReqVO,
HttpServletResponse response) throws IOException {
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
List<BusinessSubSampleAssessmentProjectDO> list = businessSubSampleAssessmentProjectService.getBusinessSubSampleAssessmentPage(pageReqVO).getList();
// 导出 Excel
ExcelUtils.write(response, "子样判定检测项目数据业务.xls", "数据", BusinessSubSampleAssessmentProjectRespVO.class,
BeanUtils.toBean(list, BusinessSubSampleAssessmentProjectRespVO.class));
}
}

View File

@@ -47,10 +47,8 @@ public class SampleAnalysisAuditController {
}
@GetMapping("/getSampleResultAssessmentList")
public CommonResult<JSONObject> getSampleResultAssessmentList(Long configAssayMethodId, String assessmentStatus) {
JSONObject result = sampleAnalysisAuditService.getSampleResultAssessmentList(configAssayMethodId, assessmentStatus);
public CommonResult<JSONObject> getSampleResultAssessmentList(Long configAssayMethodId, String asmtReportedStatus) {
JSONObject result = sampleAnalysisAuditService.getSampleResultAssessmentList(configAssayMethodId, asmtReportedStatus);
return success(result);
}

View File

@@ -29,4 +29,10 @@ public class BusinessAssayTaskDataExtendRespVO extends BusinessAssayTaskDataResp
@Schema(description = "任务单模板key")
private String configReportTemplateKey;
private Integer asmtIsReported;
private Integer asmtIsRecheck;
private String asmtReportedStatus;
}

View File

@@ -13,4 +13,18 @@ public class BusinessAssayTaskDataGroupRespVO {
private Integer sampleTaskCount;
/** 判定未完 **/
private Integer asmtInitialCount;
/** 判定待上报 **/
private Integer asmtPendingReportCount;
/** 判定待判定 **/
private Integer asmtPendingAssessmentCount;
/** 判定复测 **/
private Integer asmtReInspectedCount;
/** 判定已上报 **/
private Integer asmtReportedCount;
}

View File

@@ -22,6 +22,9 @@ public class BusinessAssayTaskDataPageReqVO extends PageParam {
@Schema(description = "分样子样ID", example = "20464")
private Long businessSubSampleId;
@Schema(description = "分样子样判定ID", example = "14560")
private Long businessSubSampleAssessmentId;
@Schema(description = "检测方法配置ID", example = "9130")
private Long configAssayMethodId;

View File

@@ -22,6 +22,9 @@ public class BusinessAssayTaskDataReqVO {
@Schema(description = "分样子样ID", example = "20464")
private Long businessSubSampleId;
@Schema(description = "分样子样判定ID", example = "14560")
private Long businessSubSampleAssessmentId;
@Schema(description = "检测方法配置ID", example = "9130")
private Long configAssayMethodId;
@@ -89,4 +92,9 @@ public class BusinessAssayTaskDataReqVO {
@Schema(description = "备注")
private String remark;
//=== 扩展字段,判定上报状态
@Schema(description = "判定上报状态")
private String asmtReportedStatus;
}

View File

@@ -28,6 +28,9 @@ public class BusinessAssayTaskDataRespVO {
@ExcelProperty("分样子样ID")
private Long businessSubSampleId;
@Schema(description = "分样子样判定ID", example = "14560")
private Long businessSubSampleAssessmentId;
@Schema(description = "检测方法配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "9130")
@ExcelProperty("检测方法配置ID")
private Long configAssayMethodId;

View File

@@ -26,6 +26,9 @@ public class BusinessAssayTaskDataSaveReqVO {
@NotNull(message = "分样子样ID不能为空")
private Long businessSubSampleId;
@Schema(description = "分样子样判定ID", example = "14560")
private Long businessSubSampleAssessmentId;
@Schema(description = "检测方法配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "9130")
@NotNull(message = "检测方法配置ID不能为空")
private Long configAssayMethodId;

View File

@@ -13,45 +13,21 @@ import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH
@Data
public class BusinessSubParentSampleAssessmentPageReqVO extends PageParam {
@Schema(description = "样品分样ID", example = "23188")
@Schema(description = "样品分样ID", example = "25701")
private Long businessSubParentSampleId;
@Schema(description = "检测项目ID,字典表【T_DIC_PRJ】", example = "17642")
private Long dictionaryProjectId;
@Schema(description = "检测方法分析项目配置ID", example = "7653")
private Long configAssayMethodProjectId;
@Schema(description = "检测方法配置ID", example = "16271")
@Schema(description = "检测方法配置ID", example = "13131")
private Long configAssayMethodId;
@Schema(description = "用途,ingredient-配料、report-报出、ingredient_report-配料及报出")
private String usage;
@Schema(description = "符号,=、>、<、等")
private String symbol;
@Schema(description = "任务类型,【字典】【jy_sample_task_type】常规、抽查...", example = "2")
@Schema(description = "任务类型,【字典】【jy_sample_task_type】常规、抽查...", example = "1")
private String taskType;
@Schema(description = "分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...", example = "1")
private String assayType;
@Schema(description = "数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间", example = "2")
private String dataType;
@Schema(description = "小数位")
private Integer decimalPosition;
@Schema(description = "判定值")
private String assessmentValue;
@Schema(description = "判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差", example = "2")
@Schema(description = "判定状态,in_progress-进行中 normal-正常", example = "1")
private String assessmentStatus;
@Schema(description = "方法检出下限值")
private String minimumLimitValue;
@Schema(description = "是否已上报")
private Integer isReported;
@@ -62,6 +38,9 @@ public class BusinessSubParentSampleAssessmentPageReqVO extends PageParam {
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] reportTime;
@Schema(description = "结果处理方式,automatic-自动报出(不超差)manual-手动报出modify-允许修改")
private String resultTreatmentWay;
@Schema(description = "所属部门")
private String systemDepartmentCode;
@@ -69,7 +48,7 @@ public class BusinessSubParentSampleAssessmentPageReqVO extends PageParam {
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "乐观锁", example = "16999")
@Schema(description = "乐观锁", example = "13008")
private Integer updateCount;
@Schema(description = "备注")

View File

@@ -4,7 +4,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
public class BusinessSubParentSampleAssessmentExtendRespVO extends BusinessSubParentSampleAssessmentRespVO {
public class BusinessSubParentSampleAssessmentProjectExtendRespVO extends BusinessSubParentSampleAssessmentProjectRespVO {
@Schema(description = "检测项目key")
private String dictionaryProjectKey;

View File

@@ -0,0 +1,78 @@
package com.zt.plat.module.qms.business.bus.controller.vo;
import lombok.*;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.zt.plat.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 班组判定检测项目数据业务分页 Request VO")
@Data
public class BusinessSubParentSampleAssessmentProjectPageReqVO extends PageParam {
@Schema(description = "样品分样ID", example = "23188")
private Long businessSubParentSampleId;
@Schema(description = "检测项目ID,字典表【T_DIC_PRJ】", example = "17642")
private Long dictionaryProjectId;
@Schema(description = "检测方法分析项目配置ID", example = "7653")
private Long configAssayMethodProjectId;
@Schema(description = "检测方法配置ID", example = "16271")
private Long configAssayMethodId;
@Schema(description = "用途,ingredient-配料、report-报出、ingredient_report-配料及报出")
private String usage;
@Schema(description = "符号,=、>、<、等")
private String symbol;
@Schema(description = "任务类型,【字典】【jy_sample_task_type】常规、抽查...", example = "2")
private String taskType;
@Schema(description = "分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...", example = "1")
private String assayType;
@Schema(description = "数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间", example = "2")
private String dataType;
@Schema(description = "小数位")
private Integer decimalPosition;
@Schema(description = "判定值")
private String assessmentValue;
@Schema(description = "判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差", example = "2")
private String assessmentStatus;
@Schema(description = "方法检出下限值")
private String minimumLimitValue;
@Schema(description = "是否已上报")
private Integer isReported;
@Schema(description = "上报人")
private String reporter;
@Schema(description = "上报时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] reportTime;
@Schema(description = "所属部门")
private String systemDepartmentCode;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "乐观锁", example = "16999")
private Integer updateCount;
@Schema(description = "备注")
private String remark;
}

View File

@@ -0,0 +1,94 @@
package com.zt.plat.module.qms.business.bus.controller.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;
@Schema(description = "管理后台 - 班组判定检测项目数据业务 Response VO")
@Data
@ExcelIgnoreUnannotated
public class BusinessSubParentSampleAssessmentProjectRespVO {
@Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "5014")
@ExcelProperty("ID")
private Long id;
@Schema(description = "样品分样ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "23188")
@ExcelProperty("样品分样ID")
private Long businessSubParentSampleId;
@Schema(description = "检测项目ID,字典表【T_DIC_PRJ】", requiredMode = Schema.RequiredMode.REQUIRED, example = "17642")
@ExcelProperty("检测项目ID,字典表【T_DIC_PRJ】")
private Long dictionaryProjectId;
@Schema(description = "检测方法分析项目配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "7653")
@ExcelProperty("检测方法分析项目配置ID")
private Long configAssayMethodProjectId;
@Schema(description = "检测方法配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "16271")
@ExcelProperty("检测方法配置ID")
private Long configAssayMethodId;
@Schema(description = "用途,ingredient-配料、report-报出、ingredient_report-配料及报出")
private String usage;
@Schema(description = "符号,=、>、<、等")
private String symbol;
@Schema(description = "任务类型,【字典】【jy_sample_task_type】常规、抽查...", example = "2")
private String taskType;
@Schema(description = "分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...", example = "1")
private String assayType;
@Schema(description = "数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@ExcelProperty("数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间")
private String dataType;
@Schema(description = "小数位")
@ExcelProperty("小数位")
private Integer decimalPosition;
@Schema(description = "判定值")
@ExcelProperty("判定值")
private String assessmentValue;
@Schema(description = "判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@ExcelProperty("判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差")
private String assessmentStatus;
@Schema(description = "方法检出下限值")
private String minimumLimitValue;
@Schema(description = "是否已上报", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("是否已上报")
private Integer isReported;
@Schema(description = "上报人", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("上报人")
private String reporter;
@Schema(description = "上报时间", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("上报时间")
private LocalDateTime reportTime;
@Schema(description = "所属部门")
@ExcelProperty("所属部门")
private String systemDepartmentCode;
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("创建时间")
private LocalDateTime createTime;
@Schema(description = "乐观锁", requiredMode = Schema.RequiredMode.REQUIRED, example = "16999")
@ExcelProperty("乐观锁")
private Integer updateCount;
@Schema(description = "备注")
@ExcelProperty("备注")
private String remark;
}

View File

@@ -0,0 +1,84 @@
package com.zt.plat.module.qms.business.bus.controller.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import jakarta.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
@Schema(description = "管理后台 - 班组判定检测项目数据业务新增/修改 Request VO")
@Data
public class BusinessSubParentSampleAssessmentProjectSaveReqVO {
@Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "5014")
private Long id;
@Schema(description = "样品分样ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "23188")
@NotNull(message = "样品分样ID不能为空")
private Long businessSubParentSampleId;
@Schema(description = "检测项目ID,字典表【T_DIC_PRJ】", requiredMode = Schema.RequiredMode.REQUIRED, example = "17642")
@NotNull(message = "检测项目ID,字典表【T_DIC_PRJ】不能为空")
private Long dictionaryProjectId;
@Schema(description = "检测方法分析项目配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "7653")
@NotNull(message = "检测方法分析项目配置ID不能为空")
private Long configAssayMethodProjectId;
@Schema(description = "检测方法配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "16271")
@NotNull(message = "检测方法配置ID不能为空")
private Long configAssayMethodId;
@Schema(description = "用途,ingredient-配料、report-报出、ingredient_report-配料及报出")
private String usage;
@Schema(description = "符号,=、>、<、等")
private String symbol;
@Schema(description = "任务类型,【字典】【jy_sample_task_type】常规、抽查...", example = "2")
private String taskType;
@Schema(description = "分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...", example = "1")
private String assayType;
@Schema(description = "数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@NotEmpty(message = "数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间不能为空")
private String dataType;
@Schema(description = "小数位")
private Integer decimalPosition;
@Schema(description = "判定值")
private String assessmentValue;
@Schema(description = "判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@NotEmpty(message = "判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差不能为空")
private String assessmentStatus;
@Schema(description = "方法检出下限值")
private String minimumLimitValue;
@Schema(description = "是否已上报", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "是否已上报不能为空")
private Integer isReported;
@Schema(description = "上报人", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "上报人不能为空")
private String reporter;
@Schema(description = "上报时间", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "上报时间不能为空")
private LocalDateTime reportTime;
@Schema(description = "所属部门")
private String systemDepartmentCode;
@Schema(description = "乐观锁", requiredMode = Schema.RequiredMode.REQUIRED, example = "16999")
@NotNull(message = "乐观锁不能为空")
private Integer updateCount;
@Schema(description = "备注")
private String remark;
}

View File

@@ -12,69 +12,46 @@ import com.alibaba.excel.annotation.*;
@ExcelIgnoreUnannotated
public class BusinessSubParentSampleAssessmentRespVO {
@Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "5014")
@Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "29068")
@ExcelProperty("ID")
private Long id;
@Schema(description = "样品分样ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "23188")
@Schema(description = "样品分样ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "25701")
@ExcelProperty("样品分样ID")
private Long businessSubParentSampleId;
@Schema(description = "检测项目ID,字典表【T_DIC_PRJ】", requiredMode = Schema.RequiredMode.REQUIRED, example = "17642")
@ExcelProperty("检测项目ID,字典表【T_DIC_PRJ】")
private Long dictionaryProjectId;
@Schema(description = "检测方法分析项目配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "7653")
@ExcelProperty("检测方法分析项目配置ID")
private Long configAssayMethodProjectId;
@Schema(description = "检测方法配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "16271")
@Schema(description = "检测方法配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "13131")
@ExcelProperty("检测方法配置ID")
private Long configAssayMethodId;
@Schema(description = "用途,ingredient-配料、report-报出、ingredient_report-配料及报出")
private String usage;
@Schema(description = "符号,=、>、<、等")
private String symbol;
@Schema(description = "任务类型,【字典】【jy_sample_task_type】常规、抽查...", example = "2")
@Schema(description = "任务类型,【字典】【jy_sample_task_type】常规、抽查...", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@ExcelProperty("任务类型,【字典】【jy_sample_task_type】常规、抽查...")
private String taskType;
@Schema(description = "分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...", example = "1")
@Schema(description = "分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@ExcelProperty("分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...")
private String assayType;
@Schema(description = "数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@ExcelProperty("数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间")
private String dataType;
@Schema(description = "小数位")
@ExcelProperty("小数位")
private Integer decimalPosition;
@Schema(description = "判定值")
@ExcelProperty("判定值")
private String assessmentValue;
@Schema(description = "判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@ExcelProperty("判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差")
@Schema(description = "判定状态,in_progress-进行中 normal-正常", example = "1")
@ExcelProperty("判定状态,in_progress-进行中 normal-正常")
private String assessmentStatus;
@Schema(description = "方法检出下限值")
private String minimumLimitValue;
@Schema(description = "是否已上报", requiredMode = Schema.RequiredMode.REQUIRED)
@Schema(description = "是否已上报")
@ExcelProperty("是否已上报")
private Integer isReported;
@Schema(description = "上报人", requiredMode = Schema.RequiredMode.REQUIRED)
@Schema(description = "上报人")
@ExcelProperty("上报人")
private String reporter;
@Schema(description = "上报时间", requiredMode = Schema.RequiredMode.REQUIRED)
@Schema(description = "上报时间")
@ExcelProperty("上报时间")
private LocalDateTime reportTime;
@Schema(description = "结果处理方式,automatic-自动报出(不超差)manual-手动报出modify-允许修改")
@ExcelProperty("结果处理方式,automatic-自动报出(不超差)manual-手动报出modify-允许修改")
private String resultTreatmentWay;
@Schema(description = "所属部门")
@ExcelProperty("所属部门")
private String systemDepartmentCode;
@@ -83,7 +60,7 @@ public class BusinessSubParentSampleAssessmentRespVO {
@ExcelProperty("创建时间")
private LocalDateTime createTime;
@Schema(description = "乐观锁", requiredMode = Schema.RequiredMode.REQUIRED, example = "16999")
@Schema(description = "乐观锁", requiredMode = Schema.RequiredMode.REQUIRED, example = "13008")
@ExcelProperty("乐观锁")
private Integer updateCount;

View File

@@ -11,70 +11,44 @@ import java.time.LocalDateTime;
@Data
public class BusinessSubParentSampleAssessmentSaveReqVO {
@Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "5014")
@Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "29068")
private Long id;
@Schema(description = "样品分样ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "23188")
@Schema(description = "样品分样ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "25701")
@NotNull(message = "样品分样ID不能为空")
private Long businessSubParentSampleId;
@Schema(description = "检测项目ID,字典表【T_DIC_PRJ】", requiredMode = Schema.RequiredMode.REQUIRED, example = "17642")
@NotNull(message = "检测项目ID,字典表【T_DIC_PRJ】不能为空")
private Long dictionaryProjectId;
@Schema(description = "检测方法分析项目配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "7653")
@NotNull(message = "检测方法分析项目配置ID不能为空")
private Long configAssayMethodProjectId;
@Schema(description = "检测方法配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "16271")
@Schema(description = "检测方法配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "13131")
@NotNull(message = "检测方法配置ID不能为空")
private Long configAssayMethodId;
@Schema(description = "用途,ingredient-配料、report-报出、ingredient_report-配料及报出")
private String usage;
@Schema(description = "符号,=、>、<、等")
private String symbol;
@Schema(description = "任务类型,【字典】【jy_sample_task_type】常规、抽查...", example = "2")
@Schema(description = "任务类型,【字典】【jy_sample_task_type】常规、抽查...", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@NotEmpty(message = "任务类型,【字典】【jy_sample_task_type】常规、抽查...不能为空")
private String taskType;
@Schema(description = "分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...", example = "1")
@Schema(description = "分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@NotEmpty(message = "分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...不能为空")
private String assayType;
@Schema(description = "数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@NotEmpty(message = "数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间不能为空")
private String dataType;
@Schema(description = "小数位")
private Integer decimalPosition;
@Schema(description = "判定值")
private String assessmentValue;
@Schema(description = "判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@NotEmpty(message = "判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差不能为空")
@Schema(description = "判定状态,in_progress-进行中 normal-正常", example = "1")
private String assessmentStatus;
@Schema(description = "方法检出下限值")
private String minimumLimitValue;
@Schema(description = "是否已上报", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "是否已上报不能为空")
@Schema(description = "是否已上报")
private Integer isReported;
@Schema(description = "上报人", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "上报人不能为空")
@Schema(description = "上报人")
private String reporter;
@Schema(description = "上报时间", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "上报时间不能为空")
@Schema(description = "上报时间")
private LocalDateTime reportTime;
@Schema(description = "结果处理方式,automatic-自动报出(不超差)manual-手动报出modify-允许修改")
private String resultTreatmentWay;
@Schema(description = "所属部门")
private String systemDepartmentCode;
@Schema(description = "乐观锁", requiredMode = Schema.RequiredMode.REQUIRED, example = "16999")
@Schema(description = "乐观锁", requiredMode = Schema.RequiredMode.REQUIRED, example = "13008")
@NotNull(message = "乐观锁不能为空")
private Integer updateCount;

View File

@@ -9,55 +9,37 @@ import java.time.LocalDateTime;
import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 子样判定数据业务分页 Request VO")
@Schema(description = "管理后台 - 子样判定业务分页 Request VO")
@Data
public class BusinessSubSampleAssessmentPageReqVO extends PageParam {
@Schema(description = "分样id")
@Schema(description = "样品分样ID", example = "29115")
private Long businessSubParentSampleId;
@Schema(description = "分样子样ID", example = "7025")
@Schema(description = "分样子样ID", example = "30256")
private Long businessSubSampleId;
@Schema(description = "检测项目ID,字典表【T_DIC_PRJ】", example = "21744")
private Long dictionaryProjectId;
@Schema(description = "检测方法分析项目配置ID", example = "14847")
private Long configAssayMethodProjectId;
@Schema(description = "检测方法配置ID", example = "8091")
@Schema(description = "检测方法配置ID", example = "16304")
private Long configAssayMethodId;
@Schema(description = "用途,ingredient-配料、report-报出、ingredient_report-配料及报出")
private String usage;
@Schema(description = "符号,=、>、<、等")
private String symbol;
@Schema(description = "任务类型,【字典】【jy_sample_task_type】常规、抽查...", example = "2")
@Schema(description = "任务类型,【字典】【jy_sample_task_type】常规、抽查...", example = "1")
private String taskType;
@Schema(description = "分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...", example = "1")
private String assayType;
@Schema(description = "数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间", example = "1")
private String dataType;
@Schema(description = "小数位")
private Integer decimalPosition;
@Schema(description = "判定值")
private String assessmentValue;
@Schema(description = "判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差", example = "1")
@Schema(description = "判定状态,in_progress-进行中 normal-正常exceeds_tolerance-超差", example = "2")
private String assessmentStatus;
@Schema(description = "方法检出下限值")
private String minimumLimitValue;
@Schema(description = "是否复测,1-是0-否")
private Integer isRecheck;
@Schema(description = "是否已上报")
@Schema(description = "是否已上报,1-是0-否")
private Integer isReported;
@Schema(description = "上报状态,初始状态-initial、待上报-pending_report、待判定-pending_assessment、已复检-re_inspected、已上报-reported", example = "1")
private String reportedStatus;
@Schema(description = "上报人")
private String reporter;
@@ -65,6 +47,9 @@ public class BusinessSubSampleAssessmentPageReqVO extends PageParam {
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] reportTime;
@Schema(description = "结果处理方式,automatic-自动报出(不超差)manual-手动报出modify-允许修改")
private String resultTreatmentWay;
@Schema(description = "所属部门")
private String systemDepartmentCode;
@@ -72,7 +57,7 @@ public class BusinessSubSampleAssessmentPageReqVO extends PageParam {
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "乐观锁", example = "12836")
@Schema(description = "乐观锁", example = "6438")
private Integer updateCount;
@Schema(description = "备注")

View File

@@ -4,7 +4,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
public class BusinessSubSampleAssessmentExtendRespVO extends BusinessSubSampleAssessmentRespVO {
public class BusinessSubSampleAssessmentProjectExtendRespVO extends BusinessSubSampleAssessmentProjectRespVO {
/** 分析方法名称 **/
@Schema(description = "分析方法名称")

View File

@@ -0,0 +1,84 @@
package com.zt.plat.module.qms.business.bus.controller.vo;
import lombok.*;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.zt.plat.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 子样判定检测项目数据业务分页 Request VO")
@Data
public class BusinessSubSampleAssessmentProjectPageReqVO extends PageParam {
@Schema(description = "分样id")
private Long businessSubParentSampleId;
@Schema(description = "分样子样ID", example = "7025")
private Long businessSubSampleId;
@Schema(description = "分样子样判定ID", example = "14560")
private Long businessSubSampleAssessmentId;
@Schema(description = "检测项目ID,字典表【T_DIC_PRJ】", example = "21744")
private Long dictionaryProjectId;
@Schema(description = "检测方法分析项目配置ID", example = "14847")
private Long configAssayMethodProjectId;
@Schema(description = "检测方法配置ID", example = "8091")
private Long configAssayMethodId;
@Schema(description = "用途,ingredient-配料、report-报出、ingredient_report-配料及报出")
private String usage;
@Schema(description = "符号,=、>、<、等")
private String symbol;
@Schema(description = "任务类型,【字典】【jy_sample_task_type】常规、抽查...", example = "2")
private String taskType;
@Schema(description = "分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...", example = "1")
private String assayType;
@Schema(description = "数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间", example = "1")
private String dataType;
@Schema(description = "小数位")
private Integer decimalPosition;
@Schema(description = "判定值")
private String assessmentValue;
@Schema(description = "判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差", example = "1")
private String assessmentStatus;
@Schema(description = "方法检出下限值")
private String minimumLimitValue;
@Schema(description = "是否已上报")
private Integer isReported;
@Schema(description = "上报人")
private String reporter;
@Schema(description = "上报时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] reportTime;
@Schema(description = "所属部门")
private String systemDepartmentCode;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "乐观锁", example = "12836")
private Integer updateCount;
@Schema(description = "备注")
private String remark;
}

View File

@@ -0,0 +1,103 @@
package com.zt.plat.module.qms.business.bus.controller.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;
@Schema(description = "管理后台 - 子样判定检测项目数据业务 Response VO")
@Data
@ExcelIgnoreUnannotated
public class BusinessSubSampleAssessmentProjectRespVO {
@Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "23478")
@ExcelProperty("ID")
private Long id;
@Schema(description = "分样id")
private Long businessSubParentSampleId;
@Schema(description = "分样子样ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "7025")
@ExcelProperty("分样子样ID")
private Long businessSubSampleId;
@Schema(description = "分样子样判定ID", example = "14560")
@ExcelProperty("分样子样判定ID")
private Long businessSubSampleAssessmentId;
@Schema(description = "检测项目ID,字典表【T_DIC_PRJ】", requiredMode = Schema.RequiredMode.REQUIRED, example = "21744")
@ExcelProperty("检测项目ID,字典表【T_DIC_PRJ】")
private Long dictionaryProjectId;
@Schema(description = "检测方法分析项目配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "14847")
@ExcelProperty("检测方法分析项目配置ID")
private Long configAssayMethodProjectId;
@Schema(description = "检测方法配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "8091")
@ExcelProperty("检测方法配置ID")
private Long configAssayMethodId;
@Schema(description = "用途,ingredient-配料、report-报出、ingredient_report-配料及报出")
private String usage;
@Schema(description = "符号,=、>、<、等")
private String symbol;
@Schema(description = "任务类型,【字典】【jy_sample_task_type】常规、抽查...", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@ExcelProperty("任务类型,【字典】【jy_sample_task_type】常规、抽查...")
private String taskType;
@Schema(description = "分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@ExcelProperty("分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...")
private String assayType;
@Schema(description = "数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@ExcelProperty("数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间")
private String dataType;
@Schema(description = "小数位")
@ExcelProperty("小数位")
private Integer decimalPosition;
@Schema(description = "判定值")
@ExcelProperty("判定值")
private String assessmentValue;
@Schema(description = "判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差", example = "1")
@ExcelProperty("判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差")
private String assessmentStatus;
@Schema(description = "方法检出下限值")
private String minimumLimitValue;
@Schema(description = "是否已上报", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("是否已上报")
private Integer isReported;
@Schema(description = "上报人", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("上报人")
private String reporter;
@Schema(description = "上报时间", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("上报时间")
private LocalDateTime reportTime;
@Schema(description = "所属部门", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("所属部门")
private String systemDepartmentCode;
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("创建时间")
private LocalDateTime createTime;
@Schema(description = "乐观锁", requiredMode = Schema.RequiredMode.REQUIRED, example = "12836")
@ExcelProperty("乐观锁")
private Integer updateCount;
@Schema(description = "备注")
@ExcelProperty("备注")
private String remark;
}

View File

@@ -0,0 +1,90 @@
package com.zt.plat.module.qms.business.bus.controller.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import jakarta.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
@Schema(description = "管理后台 - 子样判定检测项目数据业务新增/修改 Request VO")
@Data
public class BusinessSubSampleAssessmentProjectSaveReqVO {
@Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "23478")
private Long id;
@Schema(description = "分样id")
private Long businessSubParentSampleId;
@Schema(description = "分样子样ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "7025")
@NotNull(message = "分样子样ID不能为空")
private Long businessSubSampleId;
@Schema(description = "分样子样判定ID", example = "14560")
private Long businessSubSampleAssessmentId;
@Schema(description = "检测项目ID,字典表【T_DIC_PRJ】", requiredMode = Schema.RequiredMode.REQUIRED, example = "21744")
@NotNull(message = "检测项目ID,字典表【T_DIC_PRJ】不能为空")
private Long dictionaryProjectId;
@Schema(description = "检测方法分析项目配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "14847")
@NotNull(message = "检测方法分析项目配置ID不能为空")
private Long configAssayMethodProjectId;
@Schema(description = "检测方法配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "8091")
@NotNull(message = "检测方法配置ID不能为空")
private Long configAssayMethodId;
@Schema(description = "用途,ingredient-配料、report-报出、ingredient_report-配料及报出")
private String usage;
@Schema(description = "符号,=、>、<、等")
private String symbol;
@Schema(description = "任务类型,【字典】【jy_sample_task_type】常规、抽查...", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@NotEmpty(message = "任务类型,【字典】【jy_sample_task_type】常规、抽查...不能为空")
private String taskType;
@Schema(description = "分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@NotEmpty(message = "分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...不能为空")
private String assayType;
@Schema(description = "数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@NotEmpty(message = "数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间不能为空")
private String dataType;
@Schema(description = "小数位")
private Integer decimalPosition;
@Schema(description = "判定值")
private String assessmentValue;
@Schema(description = "判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差", example = "1")
private String assessmentStatus;
@Schema(description = "方法检出下限值")
private String minimumLimitValue;
@Schema(description = "是否已上报", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "是否已上报不能为空")
private Integer isReported;
@Schema(description = "上报人", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "上报人不能为空")
private String reporter;
@Schema(description = "上报时间", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "上报时间不能为空")
private LocalDateTime reportTime;
@Schema(description = "所属部门", requiredMode = Schema.RequiredMode.REQUIRED)
private String systemDepartmentCode;
@Schema(description = "乐观锁", requiredMode = Schema.RequiredMode.REQUIRED, example = "12836")
private Integer updateCount;
@Schema(description = "备注")
private String remark;
}

View File

@@ -7,41 +7,28 @@ import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;
@Schema(description = "管理后台 - 子样判定数据业务 Response VO")
@Schema(description = "管理后台 - 子样判定业务 Response VO")
@Data
@ExcelIgnoreUnannotated
public class BusinessSubSampleAssessmentRespVO {
@Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "23478")
@Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "5736")
@ExcelProperty("ID")
private Long id;
@Schema(description = "分样id")
@Schema(description = "样品分样ID", example = "29115")
@ExcelProperty("样品分样ID")
private Long businessSubParentSampleId;
@Schema(description = "分样子样ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "7025")
@Schema(description = "分样子样ID", example = "30256")
@ExcelProperty("分样子样ID")
private Long businessSubSampleId;
@Schema(description = "检测项目ID,字典表【T_DIC_PRJ】", requiredMode = Schema.RequiredMode.REQUIRED, example = "21744")
@ExcelProperty("检测项目ID,字典表【T_DIC_PRJ】")
private Long dictionaryProjectId;
@Schema(description = "检测方法分析项目配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "14847")
@ExcelProperty("检测方法分析项目配置ID")
private Long configAssayMethodProjectId;
@Schema(description = "检测方法配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "8091")
@Schema(description = "检测方法配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "16304")
@ExcelProperty("检测方法配置ID")
private Long configAssayMethodId;
@Schema(description = "用途,ingredient-配料、report-报出、ingredient_report-配料及报出")
private String usage;
@Schema(description = "符号,=、>、<、等")
private String symbol;
@Schema(description = "任务类型,【字典】【jy_sample_task_type】常规、抽查...", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@Schema(description = "任务类型,【字典】【jy_sample_task_type】常规、抽查...", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@ExcelProperty("任务类型,【字典】【jy_sample_task_type】常规、抽查...")
private String taskType;
@@ -49,38 +36,33 @@ public class BusinessSubSampleAssessmentRespVO {
@ExcelProperty("分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...")
private String assayType;
@Schema(description = "数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@ExcelProperty("数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间")
private String dataType;
@Schema(description = "小数位")
@ExcelProperty("小数位")
private Integer decimalPosition;
@Schema(description = "判定值")
@ExcelProperty("判定值")
private String assessmentValue;
@Schema(description = "判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差", example = "1")
@ExcelProperty("判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差")
@Schema(description = "判定状态,in_progress-进行中 normal-正常exceeds_tolerance-超差", example = "2")
@ExcelProperty("判定状态,in_progress-进行中 normal-正常exceeds_tolerance-超差")
private String assessmentStatus;
@Schema(description = "方法检出下限值")
private String minimumLimitValue;
@Schema(description = "是否复测,1-是0-否")
@ExcelProperty("是否复测,1-是0-否")
private Integer isRecheck;
@Schema(description = "是否已上报", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("是否已上报")
@Schema(description = "是否已上报,1-是0-否")
@ExcelProperty("是否已上报,1-是0-否")
private Integer isReported;
@Schema(description = "上报", requiredMode = Schema.RequiredMode.REQUIRED)
@Schema(description = "上报状态,初始状态-initial、待上报-pending_report、待判定-pending_assessment、已复检-re_inspected、已上报-reported", example = "1")
private String reportedStatus;
@Schema(description = "上报人")
@ExcelProperty("上报人")
private String reporter;
@Schema(description = "上报时间", requiredMode = Schema.RequiredMode.REQUIRED)
@Schema(description = "上报时间")
@ExcelProperty("上报时间")
private LocalDateTime reportTime;
@Schema(description = "所属部门", requiredMode = Schema.RequiredMode.REQUIRED)
@Schema(description = "结果处理方式,automatic-自动报出(不超差)manual-手动报出modify-允许修改")
private String resultTreatmentWay;
@Schema(description = "所属部门")
@ExcelProperty("所属部门")
private String systemDepartmentCode;
@@ -88,7 +70,7 @@ public class BusinessSubSampleAssessmentRespVO {
@ExcelProperty("创建时间")
private LocalDateTime createTime;
@Schema(description = "乐观锁", requiredMode = Schema.RequiredMode.REQUIRED, example = "12836")
@Schema(description = "乐观锁", requiredMode = Schema.RequiredMode.REQUIRED, example = "6438")
@ExcelProperty("乐观锁")
private Integer updateCount;

View File

@@ -7,39 +7,24 @@ import jakarta.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
@Schema(description = "管理后台 - 子样判定数据业务新增/修改 Request VO")
@Schema(description = "管理后台 - 子样判定业务新增/修改 Request VO")
@Data
public class BusinessSubSampleAssessmentSaveReqVO {
@Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "23478")
@Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "5736")
private Long id;
@Schema(description = "分样id")
@Schema(description = "样品分样ID", example = "29115")
private Long businessSubParentSampleId;
@Schema(description = "分样子样ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "7025")
@NotNull(message = "分样子样ID不能为空")
@Schema(description = "分样子样ID", example = "30256")
private Long businessSubSampleId;
@Schema(description = "检测项目ID,字典表【T_DIC_PRJ】", requiredMode = Schema.RequiredMode.REQUIRED, example = "21744")
@NotNull(message = "检测项目ID,字典表【T_DIC_PRJ】不能为空")
private Long dictionaryProjectId;
@Schema(description = "检测方法分析项目配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "14847")
@NotNull(message = "检测方法分析项目配置ID不能为空")
private Long configAssayMethodProjectId;
@Schema(description = "检测方法配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "8091")
@Schema(description = "检测方法配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "16304")
@NotNull(message = "检测方法配置ID不能为空")
private Long configAssayMethodId;
@Schema(description = "用途,ingredient-配料、report-报出、ingredient_report-配料及报出")
private String usage;
@Schema(description = "符号,=、>、<、等")
private String symbol;
@Schema(description = "任务类型,【字典】【jy_sample_task_type】常规、抽查...", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@Schema(description = "任务类型,【字典】【jy_sample_task_type】常规、抽查...", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@NotEmpty(message = "任务类型,【字典】【jy_sample_task_type】常规、抽查...不能为空")
private String taskType;
@@ -47,38 +32,32 @@ public class BusinessSubSampleAssessmentSaveReqVO {
@NotEmpty(message = "分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...不能为空")
private String assayType;
@Schema(description = "数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@NotEmpty(message = "数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间不能为空")
private String dataType;
@Schema(description = "小数位")
private Integer decimalPosition;
@Schema(description = "判定值")
private String assessmentValue;
@Schema(description = "判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差", example = "1")
@Schema(description = "判定状态,in_progress-进行中 normal-正常exceeds_tolerance-超差", example = "2")
private String assessmentStatus;
@Schema(description = "方法检出下限值")
private String minimumLimitValue;
@Schema(description = "是否复测,1-是0-否")
private Integer isRecheck;
@Schema(description = "是否已上报", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "是否已上报不能为空")
@Schema(description = "是否已上报,1-是0-否")
private Integer isReported;
@Schema(description = "上报", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "上报人不能为空")
@Schema(description = "上报状态,初始状态-initial、待上报-pending_report、待判定-pending_assessment、已复检-re_inspected、已上报-reported", example = "1")
private String reportedStatus;
@Schema(description = "上报人")
private String reporter;
@Schema(description = "上报时间", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "上报时间不能为空")
@Schema(description = "上报时间")
private LocalDateTime reportTime;
@Schema(description = "所属部门", requiredMode = Schema.RequiredMode.REQUIRED)
@Schema(description = "结果处理方式,automatic-自动报出(不超差)manual-手动报出modify-允许修改")
private String resultTreatmentWay;
@Schema(description = "所属部门")
private String systemDepartmentCode;
@Schema(description = "乐观锁", requiredMode = Schema.RequiredMode.REQUIRED, example = "12836")
@Schema(description = "乐观锁", requiredMode = Schema.RequiredMode.REQUIRED, example = "6438")
@NotNull(message = "乐观锁不能为空")
private Integer updateCount;
@Schema(description = "备注")

View File

@@ -2,11 +2,7 @@ package com.zt.plat.module.qms.business.bus.dal.dataobject;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import com.zt.plat.framework.mybatis.core.dataobject.BusinessBaseDO;
/**
@@ -50,6 +46,11 @@ public class BusinessAssayTaskDataDO extends BusinessBaseDO {
@TableField("BSN_SB_SMP_ID")
private Long businessSubSampleId;
/**
* 分样子样判定ID
*/
@TableField("BSN_SB_SMP_ASMT_ID")
private Long businessSubSampleAssessmentId;
/**
* 检测方法配置ID
*/
@TableField("CFG_ASY_MTHD_ID")

View File

@@ -38,31 +38,11 @@ public class BusinessSubParentSampleAssessmentDO extends BusinessBaseDO {
@TableField("BSN_SB_PRN_SMP_ID")
private Long businessSubParentSampleId;
/**
* 检测项目ID,字典表【T_DIC_PRJ】
*/
@TableField("DIC_PRJ_ID")
private Long dictionaryProjectId;
/**
* 检测方法分析项目配置ID
*/
@TableField("CFG_ASY_MTHD_PRJ_ID")
private Long configAssayMethodProjectId;
/**
* 检测方法配置ID
*/
@TableField("CFG_ASY_MTHD_ID")
private Long configAssayMethodId;
/**
* 用途,ingredient-配料、report-报出、ingredient_report-配料及报出
*/
@TableField("USG")
private String usage;
/**
* 符号,=、>、<、等
*/
@TableField("SMB")
private String symbol;
/**
* 任务类型,【字典】【jy_sample_task_type】常规、抽查...
*/
@TableField("TSK_TP")
@@ -73,31 +53,11 @@ public class BusinessSubParentSampleAssessmentDO extends BusinessBaseDO {
@TableField("ASY_TP")
private String assayType;
/**
* 数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间
*/
@TableField("DAT_TP")
private String dataType;
/**
* 小数位
*/
@TableField("DEC_POS")
private Integer decimalPosition;
/**
* 判定值
*/
@TableField("ASMT_VAL")
private String assessmentValue;
/**
* 判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差
* 判定状态,in_progress-进行中 normal-正常
*/
@TableField("ASMT_STS")
private String assessmentStatus;
/**
* 方法检出下限值
*/
@TableField("MIN_LIM_VAL")
private String minimumLimitValue;
/**
* 是否已上报
*/
@TableField("IS_RPOD")
@@ -113,6 +73,11 @@ public class BusinessSubParentSampleAssessmentDO extends BusinessBaseDO {
@TableField("RPT_TM")
private LocalDateTime reportTime;
/**
* 结果处理方式,automatic-自动报出(不超差)manual-手动报出modify-允许修改
*/
@TableField("RSLT_TMT_WY")
private String resultTreatmentWay;
/**
* 所属部门
*/
@TableField("SYS_DEPT_CD")

View File

@@ -0,0 +1,131 @@
package com.zt.plat.module.qms.business.bus.dal.dataobject;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import com.zt.plat.framework.mybatis.core.dataobject.BusinessBaseDO;
/**
* 班组判定检测项目数据业务 DO
*
* @author 后台管理
*/
@TableName("t_bsn_sb_prn_smp_asmt_prj")
@KeySequence("t_bsn_sb_prn_smp_asmt_prj_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
/**
* 支持业务基类继承isBusiness=true 时继承 BusinessBaseDO否则继承 BaseDO
*/
public class BusinessSubParentSampleAssessmentProjectDO extends BusinessBaseDO {
/**
* ID
*/
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/**
* 样品分样ID
*/
@TableField("BSN_SB_PRN_SMP_ID")
private Long businessSubParentSampleId;
/**
* 检测项目ID,字典表【T_DIC_PRJ】
*/
@TableField("DIC_PRJ_ID")
private Long dictionaryProjectId;
/**
* 检测方法分析项目配置ID
*/
@TableField("CFG_ASY_MTHD_PRJ_ID")
private Long configAssayMethodProjectId;
/**
* 检测方法配置ID
*/
@TableField("CFG_ASY_MTHD_ID")
private Long configAssayMethodId;
/**
* 用途,ingredient-配料、report-报出、ingredient_report-配料及报出
*/
@TableField("USG")
private String usage;
/**
* 符号,=、>、<、等
*/
@TableField("SMB")
private String symbol;
/**
* 任务类型,【字典】【jy_sample_task_type】常规、抽查...
*/
@TableField("TSK_TP")
private String taskType;
/**
* 分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...
*/
@TableField("ASY_TP")
private String assayType;
/**
* 数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间
*/
@TableField("DAT_TP")
private String dataType;
/**
* 小数位
*/
@TableField("DEC_POS")
private Integer decimalPosition;
/**
* 判定值
*/
@TableField("ASMT_VAL")
private String assessmentValue;
/**
* 判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差
*/
@TableField("ASMT_STS")
private String assessmentStatus;
/**
* 方法检出下限值
*/
@TableField("MIN_LIM_VAL")
private String minimumLimitValue;
/**
* 是否已上报
*/
@TableField("IS_RPOD")
private Integer isReported;
/**
* 上报人
*/
@TableField("RPTR")
private String reporter;
/**
* 上报时间
*/
@TableField("RPT_TM")
private LocalDateTime reportTime;
/**
* 所属部门
*/
@TableField("SYS_DEPT_CD")
private String systemDepartmentCode;
/**
* 乐观锁
*/
@TableField("UPD_CNT")
private Integer updateCount;
/**
* 备注
*/
@TableField("RMK")
private String remark;
}

View File

@@ -2,13 +2,11 @@ package com.zt.plat.module.qms.business.bus.dal.dataobject;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import com.zt.plat.framework.mybatis.core.dataobject.BusinessBaseDO;
/**
* 子样判定数据业务 DO
* 子样判定业务 DO
*
* @author 后台管理
*/
@@ -33,6 +31,11 @@ public class BusinessSubSampleAssessmentDO extends BusinessBaseDO {
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/**
* 样品主样ID
*/
@TableField("BSN_BSE_SMP_ID")
private Long businessBaseSampleId;
/**
* 样品分样ID
*/
@TableField("BSN_SB_PRN_SMP_ID")
@@ -43,31 +46,16 @@ public class BusinessSubSampleAssessmentDO extends BusinessBaseDO {
@TableField("BSN_SB_SMP_ID")
private Long businessSubSampleId;
/**
* 检测项目ID,字典表【T_DIC_PRJ】
* 班组判定数据业务ID
*/
@TableField("DIC_PRJ_ID")
private Long dictionaryProjectId;
/**
* 检测方法分析项目配置ID
*/
@TableField("CFG_ASY_MTHD_PRJ_ID")
private Long configAssayMethodProjectId;
@TableField("BSN_SB_PRN_SMP_ASMT_ID")
private Long businessSubParentSampleAssessmentId;
/**
* 检测方法配置ID
*/
@TableField("CFG_ASY_MTHD_ID")
private Long configAssayMethodId;
/**
* 用途,ingredient-配料、report-报出、ingredient_report-配料及报出
*/
@TableField("USG")
private String usage;
/**
* 符号,=、>、<、等
*/
@TableField("SMB")
private String symbol;
/**
* 任务类型,【字典】【jy_sample_task_type】常规、抽查...
*/
@TableField("TSK_TP")
@@ -78,36 +66,26 @@ public class BusinessSubSampleAssessmentDO extends BusinessBaseDO {
@TableField("ASY_TP")
private String assayType;
/**
* 数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间
*/
@TableField("DAT_TP")
private String dataType;
/**
* 小数位
*/
@TableField("DEC_POS")
private Integer decimalPosition;
/**
* 判定值
*/
@TableField(value = "ASMT_VAL", updateStrategy = FieldStrategy.ALWAYS)
private String assessmentValue;
/**
* 判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差
* 判定状态,in_progress-进行中 normal-正常exceeds_tolerance-超差
*/
@TableField("ASMT_STS")
private String assessmentStatus;
/**
* 方法检出下限值
* 是否复测,1-是0-否
*/
@TableField("MIN_LIM_VAL")
private String minimumLimitValue;
@TableField("IS_RCHK")
private Integer isRecheck;
/**
* 是否已上报
* 是否已上报,1-是0-否
*/
@TableField("IS_RPOD")
private Integer isReported;
/**
* 上报状态,初始状态-initial、待上报-pending_report、待判定-pending_assessment、已复检-re_inspected、已上报-reported
*/
@TableField("RPOD_STS")
private String reportedStatus;
/**
* 上报人
*/
@TableField("RPTR")
@@ -118,6 +96,11 @@ public class BusinessSubSampleAssessmentDO extends BusinessBaseDO {
@TableField("RPT_TM")
private LocalDateTime reportTime;
/**
* 结果处理方式,automatic-自动报出(不超差)manual-手动报出modify-允许修改
*/
@TableField("RSLT_TMT_WY")
private String resultTreatmentWay;
/**
* 所属部门
*/
@TableField("SYS_DEPT_CD")

View File

@@ -0,0 +1,141 @@
package com.zt.plat.module.qms.business.bus.dal.dataobject;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import com.zt.plat.framework.mybatis.core.dataobject.BusinessBaseDO;
/**
* 子样判定检测项目数据业务 DO
*
* @author 后台管理
*/
@TableName("t_bsn_sb_smp_asmt_prj")
@KeySequence("t_bsn_sb_smp_asmt_prj_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
/**
* 支持业务基类继承isBusiness=true 时继承 BusinessBaseDO否则继承 BaseDO
*/
public class BusinessSubSampleAssessmentProjectDO extends BusinessBaseDO {
/**
* ID
*/
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/**
* 样品分样ID
*/
@TableField("BSN_SB_PRN_SMP_ID")
private Long businessSubParentSampleId;
/**
* 分样子样ID
*/
@TableField("BSN_SB_SMP_ID")
private Long businessSubSampleId;
/**
* 分样子样判定ID
*/
@TableField("BSN_SB_SMP_ASMT_ID")
private Long businessSubSampleAssessmentId;
/**
* 检测项目ID,字典表【T_DIC_PRJ】
*/
@TableField("DIC_PRJ_ID")
private Long dictionaryProjectId;
/**
* 检测方法分析项目配置ID
*/
@TableField("CFG_ASY_MTHD_PRJ_ID")
private Long configAssayMethodProjectId;
/**
* 检测方法配置ID
*/
@TableField("CFG_ASY_MTHD_ID")
private Long configAssayMethodId;
/**
* 用途,ingredient-配料、report-报出、ingredient_report-配料及报出
*/
@TableField("USG")
private String usage;
/**
* 符号,=、>、<、等
*/
@TableField("SMB")
private String symbol;
/**
* 任务类型,【字典】【jy_sample_task_type】常规、抽查...
*/
@TableField("TSK_TP")
private String taskType;
/**
* 分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...
*/
@TableField("ASY_TP")
private String assayType;
/**
* 数据类型,字典表【T_DIC_BSN】string-字符串int-整数decimal-小数,date-日期datetime-时间
*/
@TableField("DAT_TP")
private String dataType;
/**
* 小数位
*/
@TableField("DEC_POS")
private Integer decimalPosition;
/**
* 判定值
*/
@TableField(value = "ASMT_VAL", updateStrategy = FieldStrategy.ALWAYS)
private String assessmentValue;
/**
* 判定状态in_progress-进行中 normal-正常exceeds_tolerance-超差
*/
@TableField("ASMT_STS")
private String assessmentStatus;
/**
* 方法检出下限值
*/
@TableField("MIN_LIM_VAL")
private String minimumLimitValue;
/**
* 是否已上报
*/
@TableField("IS_RPOD")
private Integer isReported;
/**
* 上报人
*/
@TableField("RPTR")
private String reporter;
/**
* 上报时间
*/
@TableField("RPT_TM")
private LocalDateTime reportTime;
/**
* 所属部门
*/
@TableField("SYS_DEPT_CD")
private String systemDepartmentCode;
/**
* 乐观锁
*/
@TableField("UPD_CNT")
private Integer updateCount;
/**
* 备注
*/
@TableField("RMK")
private String remark;
}

View File

@@ -16,6 +16,7 @@ import com.zt.plat.module.qms.business.bus.controller.vo.BusinessAssayTaskDataRe
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessAssayTaskDataDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAnalysisGroupDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAssessmentDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAssessmentProjectDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleDO;
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigAssayMethodDO;
import com.zt.plat.module.qms.enums.QmsCommonConstant;
@@ -49,6 +50,7 @@ public interface BusinessAssayTaskDataMapper extends BaseMapperX<BusinessAssayTa
.eqIfPresent(BusinessAssayTaskDataDO::getBusinessBaseSampleId, reqVO.getBusinessBaseSampleId())
.eqIfPresent(BusinessAssayTaskDataDO::getBusinessSubParentSampleId, reqVO.getBusinessSubParentSampleId())
.eqIfPresent(BusinessAssayTaskDataDO::getBusinessSubSampleId, reqVO.getBusinessSubSampleId())
.eqIfPresent(BusinessAssayTaskDataDO::getBusinessSubSampleAssessmentId, reqVO.getBusinessSubSampleAssessmentId())
.eqIfPresent(BusinessAssayTaskDataDO::getConfigAssayMethodId, reqVO.getConfigAssayMethodId())
.eqIfPresent(BusinessAssayTaskDataDO::getBusinessAssayTaskId, reqVO.getBusinessAssayTaskId())
.eqIfPresent(BusinessAssayTaskDataDO::getTaskType, reqVO.getTaskType())
@@ -87,6 +89,7 @@ public interface BusinessAssayTaskDataMapper extends BaseMapperX<BusinessAssayTa
.eqIfPresent(BusinessAssayTaskDataDO::getBusinessSubSampleId, reqVO.getBusinessSubSampleId())
.eqIfPresent(BusinessAssayTaskDataDO::getConfigAssayMethodId, reqVO.getConfigAssayMethodId())
.eqIfPresent(BusinessAssayTaskDataDO::getBusinessAssayTaskId, reqVO.getBusinessAssayTaskId())
.eqIfPresent(BusinessAssayTaskDataDO::getBusinessSubSampleAssessmentId, reqVO.getBusinessSubSampleAssessmentId())
.eqIfPresent(BusinessAssayTaskDataDO::getTaskType, reqVO.getTaskType())
.eqIfPresent(BusinessAssayTaskDataDO::getAssayType, reqVO.getAssayType())
.eqIfPresent(BusinessAssayTaskDataDO::getAssayProject, reqVO.getAssayProject())
@@ -135,6 +138,7 @@ public interface BusinessAssayTaskDataMapper extends BaseMapperX<BusinessAssayTa
MPJLambdaWrapper<BusinessAssayTaskDataDO> mpjLambdaWrapper = new MPJLambdaWrapper<BusinessAssayTaskDataDO>()
.leftJoin(ConfigAssayMethodDO.class, ConfigAssayMethodDO::getId, BusinessAssayTaskDataDO::getConfigAssayMethodId)
.leftJoin(BusinessSubSampleDO.class, BusinessSubSampleDO::getId, BusinessAssayTaskDataDO::getBusinessSubSampleId)
.leftJoin(BusinessSubSampleAssessmentDO.class, BusinessSubSampleAssessmentDO::getId, BusinessAssayTaskDataDO::getBusinessSubSampleAssessmentId)
.leftJoin(BusinessSubSampleAnalysisGroupDO.class, on -> on
.eq(BusinessSubSampleAnalysisGroupDO::getBusinessSubSampleId, BusinessAssayTaskDataDO::getBusinessSubSampleId)
.eq(BusinessSubSampleAnalysisGroupDO::getAssayDepartmentId, BusinessAssayTaskDataDO::getAssayDepartmentId))
@@ -144,6 +148,9 @@ public interface BusinessAssayTaskDataMapper extends BaseMapperX<BusinessAssayTa
.selectAs(BusinessSubSampleDO::getSampleName, BusinessAssayTaskDataExtendRespVO::getSampleName)
.selectAs(BusinessSubSampleDO::getSampleCode, BusinessAssayTaskDataExtendRespVO::getSampleCode)
.selectAs(BusinessSubSampleDO::getSampleAssayCode, BusinessAssayTaskDataExtendRespVO::getSampleAssayCode)
.selectAs(BusinessSubSampleAssessmentDO::getIsRecheck, BusinessAssayTaskDataExtendRespVO::getAsmtIsRecheck)
.selectAs(BusinessSubSampleAssessmentDO::getIsReported, BusinessAssayTaskDataExtendRespVO::getAsmtIsReported)
.selectAs(BusinessSubSampleAssessmentDO::getReportedStatus, BusinessAssayTaskDataExtendRespVO::getAsmtReportedStatus)
.selectAs(BusinessSubSampleAnalysisGroupDO::getSampleReceiver, BusinessAssayTaskDataExtendRespVO::getSampleReceiver)
.selectAs(BusinessSubSampleAnalysisGroupDO::getSampleReceiveTime, BusinessAssayTaskDataExtendRespVO::getSampleReceiveTime);
if (ObjectUtil.isNotEmpty(reqVO.getBusinessBaseSampleId())) {
@@ -155,46 +162,20 @@ public interface BusinessAssayTaskDataMapper extends BaseMapperX<BusinessAssayTa
if (ObjectUtil.isNotEmpty(reqVO.getConfigAssayMethodId())) {
mpjLambdaWrapper.eq(BusinessAssayTaskDataDO::getConfigAssayMethodId, reqVO.getConfigAssayMethodId());
}
mpjLambdaWrapper.ne(BusinessSubSampleAnalysisGroupDO::getSampleStatus, "已收样");
if (ObjectUtil.isNotEmpty(reqVO.getAsmtReportedStatus())) {
mpjLambdaWrapper.eq(BusinessSubSampleAssessmentDO::getReportedStatus, reqVO.getAsmtReportedStatus());
switch(reqVO.getAsmtReportedStatus()) {
case QmsCommonConstant.ASMT_INITIAL:
case QmsCommonConstant.ASMT_PENDING_REPORT:
case QmsCommonConstant.ASMT_PENDING_ASSESSMENT:
mpjLambdaWrapper.eq(BusinessAssayTaskDataDO::getIsAssignTasked, QmsCommonConstant.YES);//已任务指派
break;
}
}
mpjLambdaWrapper.eq(BusinessSubSampleAnalysisGroupDO::getSampleStatus, "已收样");//已收样
mpjLambdaWrapper.orderByAsc(BusinessAssayTaskDataDO::getBusinessSubSampleId).orderByAsc(BusinessAssayTaskDataDO::getReportTime);
return selectJoinList(BusinessAssayTaskDataExtendRespVO.class, mpjLambdaWrapper);
// return selectJoinList(BusinessAssayTaskDataExtendRespVO.class, new MPJLambdaWrapperX<BusinessAssayTaskDataDO>()
// .leftJoin(ConfigAssayMethodDO.class, ConfigAssayMethodDO::getId, BusinessAssayTaskDataDO::getConfigAssayMethodId)
// .leftJoin(BusinessSubSampleDO.class, BusinessSubSampleDO::getId, BusinessAssayTaskDataDO::getBusinessSubSampleId)
// .selectAll(BusinessAssayTaskDataDO.class)
// .selectAs(ConfigAssayMethodDO::getName, BusinessAssayTaskDataExtendRespVO::getConfigAssayMethodName)
// .selectAs(BusinessSubSampleDO::getSampleName, BusinessAssayTaskDataExtendRespVO::getSampleName)
// .selectAs(BusinessSubSampleDO::getSampleCode, BusinessAssayTaskDataExtendRespVO::getSampleCode)
// .selectAs(BusinessSubSampleDO::getSampleAssayCode, BusinessAssayTaskDataExtendRespVO::getSampleAssayCode)
// .eqIfPresent(BusinessAssayTaskDataDO::getBusinessBaseSampleId, reqVO.getBusinessBaseSampleId())
// .eqIfPresent(BusinessAssayTaskDataDO::getBusinessSubParentSampleId, reqVO.getBusinessSubParentSampleId())
// .eqIfPresent(BusinessAssayTaskDataDO::getBusinessSubSampleId, reqVO.getBusinessSubSampleId())
// .eqIfPresent(BusinessAssayTaskDataDO::getConfigAssayMethodId, reqVO.getConfigAssayMethodId())
// .eqIfPresent(BusinessAssayTaskDataDO::getBusinessAssayTaskId, reqVO.getBusinessAssayTaskId())
// .eqIfPresent(BusinessAssayTaskDataDO::getTaskType, reqVO.getTaskType())
// .eqIfPresent(BusinessAssayTaskDataDO::getAssayType, reqVO.getAssayType())
// .eqIfPresent(BusinessAssayTaskDataDO::getAssayProject, reqVO.getAssayProject())
// .eqIfPresent(BusinessAssayTaskDataDO::getAssayDepartmentId, reqVO.getAssayDepartmentId())
// .likeIfPresent(BusinessAssayTaskDataDO::getAssayDepartmentName, reqVO.getAssayDepartmentName())
// .eqIfPresent(BusinessAssayTaskDataDO::getAssayOperator, reqVO.getAssayOperator())
// .betweenIfPresent(BusinessAssayTaskDataDO::getAssignTaskTime, reqVO.getAssignTaskTime())
// .eqIfPresent(BusinessAssayTaskDataDO::getIsAssignTasked, reqVO.getIsAssignTasked())
// .eqIfPresent(BusinessAssayTaskDataDO::getIsReported, reqVO.getIsReported())
// .eqIfPresent(BusinessAssayTaskDataDO::getReporter, reqVO.getReporter())
// .betweenIfPresent(BusinessAssayTaskDataDO::getReportTime, reqVO.getReportTime())
// .eqIfPresent(BusinessAssayTaskDataDO::getConfigSampleFlowId, reqVO.getConfigSampleFlowId())
// .eqIfPresent(BusinessAssayTaskDataDO::getSampleFlowNodeKey, reqVO.getSampleFlowNodeKey())
// .betweenIfPresent(BusinessAssayTaskDataDO::getSampleFlowNodeTime, reqVO.getSampleFlowNodeTime())
// .eqIfPresent(BusinessAssayTaskDataDO::getAnalysisCount, reqVO.getAnalysisCount())
// .eqIfPresent(BusinessAssayTaskDataDO::getUpdateCount, reqVO.getUpdateCount())
// .eqIfPresent(BusinessAssayTaskDataDO::getSystemDepartmentCode, reqVO.getSystemDepartmentCode())
// .betweenIfPresent(BusinessAssayTaskDataDO::getCreateTime, reqVO.getCreateTime())
// .eqIfPresent(BusinessAssayTaskDataDO::getRemark, reqVO.getRemark())
// .orderByAsc(BusinessAssayTaskDataDO::getBusinessSubSampleId)
// .orderByAsc(BusinessAssayTaskDataDO::getReportTime));
}
/**

View File

@@ -2,18 +2,12 @@ package com.zt.plat.module.qms.business.bus.dal.mapper;
import java.util.*;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.zt.plat.framework.mybatis.core.query.MPJLambdaWrapperX;
import com.zt.plat.module.qms.business.bus.controller.vo.*;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubParentSampleAssessmentDO;
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigAssayMethodDO;
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigAssayMethodProjectDO;
import com.zt.plat.module.qms.business.dic.dal.dataobject.DictionaryProjectDO;
import com.zt.plat.framework.mybatis.core.mapper.BaseMapperX;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* 班组判定数据业务 Mapper
@@ -23,25 +17,17 @@ import org.apache.ibatis.annotations.Param;
@Mapper
public interface BusinessSubParentSampleAssessmentMapper extends BaseMapperX<BusinessSubParentSampleAssessmentDO> {
List<BusinessSubParentSampleAssessmentGroupRespVO> selectUnReportMethodGroupList(@Param("reqVO") BusinessSubParentSampleAssessmentGroupReqVO reqVO);
default PageResult<BusinessSubParentSampleAssessmentDO> selectPage(BusinessSubParentSampleAssessmentPageReqVO reqVO) {
return selectPage(reqVO, new LambdaQueryWrapperX<BusinessSubParentSampleAssessmentDO>()
.eqIfPresent(BusinessSubParentSampleAssessmentDO::getBusinessSubParentSampleId, reqVO.getBusinessSubParentSampleId())
.eqIfPresent(BusinessSubParentSampleAssessmentDO::getDictionaryProjectId, reqVO.getDictionaryProjectId())
.eqIfPresent(BusinessSubParentSampleAssessmentDO::getConfigAssayMethodProjectId, reqVO.getConfigAssayMethodProjectId())
.eqIfPresent(BusinessSubParentSampleAssessmentDO::getConfigAssayMethodId, reqVO.getConfigAssayMethodId())
.eqIfPresent(BusinessSubParentSampleAssessmentDO::getUsage, reqVO.getUsage())
.eqIfPresent(BusinessSubParentSampleAssessmentDO::getSymbol, reqVO.getSymbol())
.eqIfPresent(BusinessSubParentSampleAssessmentDO::getTaskType, reqVO.getTaskType())
.eqIfPresent(BusinessSubParentSampleAssessmentDO::getAssayType, reqVO.getAssayType())
.eqIfPresent(BusinessSubParentSampleAssessmentDO::getDataType, reqVO.getDataType())
.eqIfPresent(BusinessSubParentSampleAssessmentDO::getDecimalPosition, reqVO.getDecimalPosition())
.eqIfPresent(BusinessSubParentSampleAssessmentDO::getAssessmentValue, reqVO.getAssessmentValue())
.eqIfPresent(BusinessSubParentSampleAssessmentDO::getAssessmentStatus, reqVO.getAssessmentStatus())
.eqIfPresent(BusinessSubParentSampleAssessmentDO::getIsReported, reqVO.getIsReported())
.eqIfPresent(BusinessSubParentSampleAssessmentDO::getReporter, reqVO.getReporter())
.betweenIfPresent(BusinessSubParentSampleAssessmentDO::getReportTime, reqVO.getReportTime())
.eqIfPresent(BusinessSubParentSampleAssessmentDO::getResultTreatmentWay, reqVO.getResultTreatmentWay())
.eqIfPresent(BusinessSubParentSampleAssessmentDO::getSystemDepartmentCode, reqVO.getSystemDepartmentCode())
.betweenIfPresent(BusinessSubParentSampleAssessmentDO::getCreateTime, reqVO.getCreateTime())
.eqIfPresent(BusinessSubParentSampleAssessmentDO::getUpdateCount, reqVO.getUpdateCount())
@@ -49,29 +35,4 @@ public interface BusinessSubParentSampleAssessmentMapper extends BaseMapperX<Bus
.orderByDesc(BusinessSubParentSampleAssessmentDO::getId));
}
default List<BusinessSubParentSampleAssessmentExtendRespVO> selectByBusinessSubParentSampleIdAndConfigAssayMethodId(List<Long> businessSubParentSampleIds, Long configAssayMethodId) {
return selectJoinList(BusinessSubParentSampleAssessmentExtendRespVO.class, new MPJLambdaWrapperX<BusinessSubParentSampleAssessmentDO>()
.leftJoin(ConfigAssayMethodProjectDO.class, ConfigAssayMethodProjectDO::getId, BusinessSubParentSampleAssessmentDO::getConfigAssayMethodProjectId)
.leftJoin(DictionaryProjectDO.class, DictionaryProjectDO::getId, BusinessSubParentSampleAssessmentDO::getDictionaryProjectId)
.leftJoin(ConfigAssayMethodDO.class, ConfigAssayMethodDO::getId, BusinessSubParentSampleAssessmentDO::getConfigAssayMethodId)
.selectAll(BusinessSubParentSampleAssessmentDO.class)
.selectAs(ConfigAssayMethodProjectDO::getDictionaryProjectUnit, BusinessSubSampleAssessmentExtendRespVO::getDictionaryProjectUnit)
.selectAs(DictionaryProjectDO::getKey, BusinessSubSampleAssessmentExtendRespVO::getDictionaryProjectKey)
.selectAs(DictionaryProjectDO::getSimpleName, BusinessSubSampleAssessmentExtendRespVO::getSimpleName)
.selectAs(DictionaryProjectDO::getShowName, BusinessSubSampleAssessmentExtendRespVO::getShowName)
.selectAs(ConfigAssayMethodDO::getName, BusinessSubSampleAssessmentExtendRespVO::getConfigAssayMethodName)
.in(BusinessSubParentSampleAssessmentDO::getBusinessSubParentSampleId, businessSubParentSampleIds)
.eq(BusinessSubParentSampleAssessmentDO::getConfigAssayMethodId, configAssayMethodId));
}
default List<BusinessSubParentSampleAssessmentDO> selectByConfigAssayMethodId(Long configAssayMethodId) {
return selectList(new LambdaQueryWrapper<BusinessSubParentSampleAssessmentDO>()
.eq(BusinessSubParentSampleAssessmentDO::getConfigAssayMethodId, configAssayMethodId));
}
List<NoReportSubParentSampleAssessmentRespVO> selectNoReportSubParentSampleAssessment(@Param("configAssayMethodId") Long configAssayMethodId);
List<RecheckSubSampleParentMethodRespVO> getRecheckAssayMethodList(@Param("baseSampleId") Long baseSampleId, @Param("businessSubParentSampleId") Long businessSubParentSampleId, @Param("configAssayMethodId") Long configAssayMethodId);
}

View File

@@ -0,0 +1,77 @@
package com.zt.plat.module.qms.business.bus.dal.mapper;
import java.util.*;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.zt.plat.framework.mybatis.core.query.MPJLambdaWrapperX;
import com.zt.plat.module.qms.business.bus.controller.vo.*;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubParentSampleAssessmentProjectDO;
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigAssayMethodDO;
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigAssayMethodProjectDO;
import com.zt.plat.module.qms.business.dic.dal.dataobject.DictionaryProjectDO;
import com.zt.plat.framework.mybatis.core.mapper.BaseMapperX;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* 班组判定检测项目数据业务 Mapper
*
* @author 后台管理
*/
@Mapper
public interface BusinessSubParentSampleAssessmentProjectMapper extends BaseMapperX<BusinessSubParentSampleAssessmentProjectDO> {
List<BusinessSubParentSampleAssessmentGroupRespVO> selectUnReportMethodGroupList(@Param("reqVO") BusinessSubParentSampleAssessmentGroupReqVO reqVO);
default PageResult<BusinessSubParentSampleAssessmentProjectDO> selectPage(BusinessSubParentSampleAssessmentProjectPageReqVO reqVO) {
return selectPage(reqVO, new LambdaQueryWrapperX<BusinessSubParentSampleAssessmentProjectDO>()
.eqIfPresent(BusinessSubParentSampleAssessmentProjectDO::getBusinessSubParentSampleId, reqVO.getBusinessSubParentSampleId())
.eqIfPresent(BusinessSubParentSampleAssessmentProjectDO::getDictionaryProjectId, reqVO.getDictionaryProjectId())
.eqIfPresent(BusinessSubParentSampleAssessmentProjectDO::getConfigAssayMethodProjectId, reqVO.getConfigAssayMethodProjectId())
.eqIfPresent(BusinessSubParentSampleAssessmentProjectDO::getConfigAssayMethodId, reqVO.getConfigAssayMethodId())
.eqIfPresent(BusinessSubParentSampleAssessmentProjectDO::getUsage, reqVO.getUsage())
.eqIfPresent(BusinessSubParentSampleAssessmentProjectDO::getSymbol, reqVO.getSymbol())
.eqIfPresent(BusinessSubParentSampleAssessmentProjectDO::getTaskType, reqVO.getTaskType())
.eqIfPresent(BusinessSubParentSampleAssessmentProjectDO::getAssayType, reqVO.getAssayType())
.eqIfPresent(BusinessSubParentSampleAssessmentProjectDO::getDataType, reqVO.getDataType())
.eqIfPresent(BusinessSubParentSampleAssessmentProjectDO::getDecimalPosition, reqVO.getDecimalPosition())
.eqIfPresent(BusinessSubParentSampleAssessmentProjectDO::getAssessmentValue, reqVO.getAssessmentValue())
.eqIfPresent(BusinessSubParentSampleAssessmentProjectDO::getAssessmentStatus, reqVO.getAssessmentStatus())
.eqIfPresent(BusinessSubParentSampleAssessmentProjectDO::getIsReported, reqVO.getIsReported())
.eqIfPresent(BusinessSubParentSampleAssessmentProjectDO::getReporter, reqVO.getReporter())
.betweenIfPresent(BusinessSubParentSampleAssessmentProjectDO::getReportTime, reqVO.getReportTime())
.eqIfPresent(BusinessSubParentSampleAssessmentProjectDO::getSystemDepartmentCode, reqVO.getSystemDepartmentCode())
.betweenIfPresent(BusinessSubParentSampleAssessmentProjectDO::getCreateTime, reqVO.getCreateTime())
.eqIfPresent(BusinessSubParentSampleAssessmentProjectDO::getUpdateCount, reqVO.getUpdateCount())
.eqIfPresent(BusinessSubParentSampleAssessmentProjectDO::getRemark, reqVO.getRemark())
.orderByDesc(BusinessSubParentSampleAssessmentProjectDO::getId));
}
default List<BusinessSubParentSampleAssessmentProjectExtendRespVO> selectByBusinessSubParentSampleIdAndConfigAssayMethodId(List<Long> businessSubParentSampleIds, Long configAssayMethodId) {
return selectJoinList(BusinessSubParentSampleAssessmentProjectExtendRespVO.class, new MPJLambdaWrapperX<BusinessSubParentSampleAssessmentProjectDO>()
.leftJoin(ConfigAssayMethodProjectDO.class, ConfigAssayMethodProjectDO::getId, BusinessSubParentSampleAssessmentProjectDO::getConfigAssayMethodProjectId)
.leftJoin(DictionaryProjectDO.class, DictionaryProjectDO::getId, BusinessSubParentSampleAssessmentProjectDO::getDictionaryProjectId)
.leftJoin(ConfigAssayMethodDO.class, ConfigAssayMethodDO::getId, BusinessSubParentSampleAssessmentProjectDO::getConfigAssayMethodId)
.selectAll(BusinessSubParentSampleAssessmentProjectDO.class)
.selectAs(ConfigAssayMethodProjectDO::getDictionaryProjectUnit, BusinessSubSampleAssessmentProjectExtendRespVO::getDictionaryProjectUnit)
.selectAs(DictionaryProjectDO::getKey, BusinessSubSampleAssessmentProjectExtendRespVO::getDictionaryProjectKey)
.selectAs(DictionaryProjectDO::getSimpleName, BusinessSubSampleAssessmentProjectExtendRespVO::getSimpleName)
.selectAs(DictionaryProjectDO::getShowName, BusinessSubSampleAssessmentProjectExtendRespVO::getShowName)
.selectAs(ConfigAssayMethodDO::getName, BusinessSubSampleAssessmentProjectExtendRespVO::getConfigAssayMethodName)
.in(BusinessSubParentSampleAssessmentProjectDO::getBusinessSubParentSampleId, businessSubParentSampleIds)
.eq(BusinessSubParentSampleAssessmentProjectDO::getConfigAssayMethodId, configAssayMethodId));
}
default List<BusinessSubParentSampleAssessmentProjectDO> selectByConfigAssayMethodId(Long configAssayMethodId) {
return selectList(new LambdaQueryWrapper<BusinessSubParentSampleAssessmentProjectDO>()
.eq(BusinessSubParentSampleAssessmentProjectDO::getConfigAssayMethodId, configAssayMethodId));
}
List<NoReportSubParentSampleAssessmentRespVO> selectNoReportSubParentSampleAssessment(@Param("configAssayMethodId") Long configAssayMethodId);
List<RecheckSubSampleParentMethodRespVO> getRecheckAssayMethodList(@Param("baseSampleId") Long baseSampleId, @Param("businessSubParentSampleId") Long businessSubParentSampleId, @Param("configAssayMethodId") Long configAssayMethodId);
}

View File

@@ -1,24 +1,16 @@
package com.zt.plat.module.qms.business.bus.dal.mapper;
import java.util.*;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.zt.plat.framework.mybatis.core.query.MPJLambdaWrapperX;
import com.zt.plat.module.qms.business.bus.controller.vo.*;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubParentSampleAssessmentDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAssessmentDO;
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigAssayMethodDO;
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigAssayMethodProjectDO;
import com.zt.plat.module.qms.business.dic.dal.dataobject.DictionaryProjectDO;
import com.zt.plat.module.qms.enums.QmsCommonConstant;
import com.zt.plat.framework.mybatis.core.mapper.BaseMapperX;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* 子样判定数据业务 Mapper
* 子样判定业务 Mapper
*
* @author 后台管理
*/
@@ -29,18 +21,13 @@ public interface BusinessSubSampleAssessmentMapper extends BaseMapperX<BusinessS
return selectPage(reqVO, new LambdaQueryWrapperX<BusinessSubSampleAssessmentDO>()
.eqIfPresent(BusinessSubSampleAssessmentDO::getBusinessSubParentSampleId, reqVO.getBusinessSubParentSampleId())
.eqIfPresent(BusinessSubSampleAssessmentDO::getBusinessSubSampleId, reqVO.getBusinessSubSampleId())
.eqIfPresent(BusinessSubSampleAssessmentDO::getDictionaryProjectId, reqVO.getDictionaryProjectId())
.eqIfPresent(BusinessSubSampleAssessmentDO::getConfigAssayMethodProjectId, reqVO.getConfigAssayMethodProjectId())
.eqIfPresent(BusinessSubSampleAssessmentDO::getConfigAssayMethodId, reqVO.getConfigAssayMethodId())
.eqIfPresent(BusinessSubSampleAssessmentDO::getUsage, reqVO.getUsage())
.eqIfPresent(BusinessSubSampleAssessmentDO::getSymbol, reqVO.getSymbol())
.eqIfPresent(BusinessSubSampleAssessmentDO::getTaskType, reqVO.getTaskType())
.eqIfPresent(BusinessSubSampleAssessmentDO::getAssayType, reqVO.getAssayType())
.eqIfPresent(BusinessSubSampleAssessmentDO::getDataType, reqVO.getDataType())
.eqIfPresent(BusinessSubSampleAssessmentDO::getDecimalPosition, reqVO.getDecimalPosition())
.eqIfPresent(BusinessSubSampleAssessmentDO::getAssessmentValue, reqVO.getAssessmentValue())
.eqIfPresent(BusinessSubSampleAssessmentDO::getAssessmentStatus, reqVO.getAssessmentStatus())
.eqIfPresent(BusinessSubSampleAssessmentDO::getIsRecheck, reqVO.getIsRecheck())
.eqIfPresent(BusinessSubSampleAssessmentDO::getIsReported, reqVO.getIsReported())
.eqIfPresent(BusinessSubSampleAssessmentDO::getReportedStatus, reqVO.getReportedStatus())
.eqIfPresent(BusinessSubSampleAssessmentDO::getReporter, reqVO.getReporter())
.betweenIfPresent(BusinessSubSampleAssessmentDO::getReportTime, reqVO.getReportTime())
.eqIfPresent(BusinessSubSampleAssessmentDO::getSystemDepartmentCode, reqVO.getSystemDepartmentCode())
@@ -50,55 +37,16 @@ public interface BusinessSubSampleAssessmentMapper extends BaseMapperX<BusinessS
.orderByDesc(BusinessSubSampleAssessmentDO::getId));
}
default List<BusinessSubSampleAssessmentExtendRespVO> selectByBusinessSubParentSampleIdAndConfigAssayMethodId(Long businessSubParentSampleId, Long configAssayMethodId) {
return selectJoinList(BusinessSubSampleAssessmentExtendRespVO.class, new MPJLambdaWrapperX<BusinessSubSampleAssessmentDO>()
.leftJoin(ConfigAssayMethodDO.class, ConfigAssayMethodDO::getId, BusinessSubSampleAssessmentDO::getConfigAssayMethodId)
.leftJoin(ConfigAssayMethodProjectDO.class, ConfigAssayMethodProjectDO::getId, BusinessSubSampleAssessmentDO::getConfigAssayMethodProjectId)
.leftJoin(DictionaryProjectDO.class, DictionaryProjectDO::getId, BusinessSubSampleAssessmentDO::getDictionaryProjectId)
.selectAll(BusinessSubSampleAssessmentDO.class)
.selectAs(ConfigAssayMethodDO::getName, BusinessSubSampleAssessmentExtendRespVO::getConfigAssayMethodName)
.selectAs(ConfigAssayMethodProjectDO::getDictionaryProjectUnit, BusinessSubSampleAssessmentExtendRespVO::getDictionaryProjectUnit)
.selectAs(DictionaryProjectDO::getKey, BusinessSubSampleAssessmentExtendRespVO::getDictionaryProjectKey)
.selectAs(DictionaryProjectDO::getSimpleName, BusinessSubSampleAssessmentExtendRespVO::getSimpleName)
.selectAs(DictionaryProjectDO::getShowName, BusinessSubSampleAssessmentExtendRespVO::getShowName)
.eq(BusinessSubSampleAssessmentDO::getBusinessSubParentSampleId, businessSubParentSampleId)
.eq(BusinessSubSampleAssessmentDO::getConfigAssayMethodId, configAssayMethodId));
}
default List<BusinessSubSampleAssessmentExtendRespVO> selectByBusinessSubParentSampleIdsAndConfigAssayMethodId(List<Long> businessSubParentSampleIds, Long configAssayMethodId) {
return selectJoinList(BusinessSubSampleAssessmentExtendRespVO.class, new MPJLambdaWrapperX<BusinessSubSampleAssessmentDO>()
.leftJoin(ConfigAssayMethodDO.class, ConfigAssayMethodDO::getId, BusinessSubSampleAssessmentDO::getConfigAssayMethodId)
.leftJoin(ConfigAssayMethodProjectDO.class, ConfigAssayMethodProjectDO::getId, BusinessSubSampleAssessmentDO::getConfigAssayMethodProjectId)
.leftJoin(DictionaryProjectDO.class, DictionaryProjectDO::getId, BusinessSubSampleAssessmentDO::getDictionaryProjectId)
.selectAll(BusinessSubSampleAssessmentDO.class)
.selectAs(ConfigAssayMethodDO::getName, BusinessSubSampleAssessmentExtendRespVO::getConfigAssayMethodName)
.selectAs(ConfigAssayMethodProjectDO::getDictionaryProjectUnit, BusinessSubSampleAssessmentExtendRespVO::getDictionaryProjectUnit)
.selectAs(DictionaryProjectDO::getKey, BusinessSubSampleAssessmentExtendRespVO::getDictionaryProjectKey)
.selectAs(DictionaryProjectDO::getSimpleName, BusinessSubSampleAssessmentExtendRespVO::getSimpleName)
.selectAs(DictionaryProjectDO::getShowName, BusinessSubSampleAssessmentExtendRespVO::getShowName)
.in(BusinessSubSampleAssessmentDO::getBusinessSubParentSampleId, businessSubParentSampleIds)
.eq(BusinessSubSampleAssessmentDO::getConfigAssayMethodId, configAssayMethodId));
}
default List<BusinessSubSampleAssessmentExtendRespVO> selectByBusinessSubSampleIdAndConfigAssayMethodId(Long businessSubSampleId, Long configAssayMethodId) {
return selectJoinList(BusinessSubSampleAssessmentExtendRespVO.class, new MPJLambdaWrapperX<BusinessSubSampleAssessmentDO>()
.leftJoin(ConfigAssayMethodProjectDO.class, ConfigAssayMethodProjectDO::getId, BusinessSubSampleAssessmentDO::getConfigAssayMethodProjectId)
.leftJoin(DictionaryProjectDO.class, DictionaryProjectDO::getId, BusinessSubSampleAssessmentDO::getDictionaryProjectId)
.selectAll(BusinessSubSampleAssessmentDO.class)
.selectAs(ConfigAssayMethodProjectDO::getDictionaryProjectUnit, BusinessSubSampleAssessmentExtendRespVO::getDictionaryProjectUnit)
.selectAs(DictionaryProjectDO::getKey, BusinessSubSampleAssessmentExtendRespVO::getDictionaryProjectKey)
.selectAs(DictionaryProjectDO::getSimpleName, BusinessSubSampleAssessmentExtendRespVO::getSimpleName)
.selectAs(DictionaryProjectDO::getShowName, BusinessSubSampleAssessmentExtendRespVO::getShowName)
.eq(BusinessSubSampleAssessmentDO::getBusinessSubSampleId, businessSubSampleId)
.eq(BusinessSubSampleAssessmentDO::getConfigAssayMethodId, configAssayMethodId));
}
default BusinessSubSampleAssessmentDO selectByBusinessSubSampleIdAndConfigAssayMethodIdAndConfigAssayMethodProjectId(Long businessSubSampleId, Long configAssayMethodId, Long configAssayMethodProjectId) {
default BusinessSubSampleAssessmentDO selectByBusinessSubSampleIdsAndConfigAssayMethodId(Long businessSubSampleId, Long configAssayMethodId) {
return selectOne(new LambdaQueryWrapperX<BusinessSubSampleAssessmentDO>()
.eq(BusinessSubSampleAssessmentDO::getBusinessSubSampleId, businessSubSampleId)
.eq(BusinessSubSampleAssessmentDO::getConfigAssayMethodId, configAssayMethodId)
.eq(BusinessSubSampleAssessmentDO::getConfigAssayMethodProjectId, configAssayMethodProjectId));
.eq(BusinessSubSampleAssessmentDO::getConfigAssayMethodId, configAssayMethodId));
}
default List<BusinessSubSampleAssessmentDO> selectByBusinessSubSampleIdsAndConfigAssayMethodId(List<Long> businessSubSampleIds, Long configAssayMethodId) {
return selectList(new LambdaQueryWrapperX<BusinessSubSampleAssessmentDO>()
.in(BusinessSubSampleAssessmentDO::getBusinessSubSampleId, businessSubSampleIds)
.eq(BusinessSubSampleAssessmentDO::getConfigAssayMethodId, configAssayMethodId));
}
}

View File

@@ -0,0 +1,102 @@
package com.zt.plat.module.qms.business.bus.dal.mapper;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.zt.plat.framework.mybatis.core.query.MPJLambdaWrapperX;
import com.zt.plat.module.qms.business.bus.controller.vo.*;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAssessmentProjectDO;
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigAssayMethodDO;
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigAssayMethodProjectDO;
import com.zt.plat.module.qms.business.dic.dal.dataobject.DictionaryProjectDO;
import com.zt.plat.framework.mybatis.core.mapper.BaseMapperX;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
/**
* 子样判定检测项目数据业务 Mapper
*
* @author 后台管理
*/
@Mapper
public interface BusinessSubSampleAssessmentProjectMapper extends BaseMapperX<BusinessSubSampleAssessmentProjectDO> {
default PageResult<BusinessSubSampleAssessmentProjectDO> selectPage(BusinessSubSampleAssessmentProjectPageReqVO reqVO) {
return selectPage(reqVO, new LambdaQueryWrapperX<BusinessSubSampleAssessmentProjectDO>()
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getBusinessSubParentSampleId, reqVO.getBusinessSubParentSampleId())
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getBusinessSubSampleId, reqVO.getBusinessSubSampleId())
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getBusinessSubSampleAssessmentId, reqVO.getBusinessSubSampleAssessmentId())
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getDictionaryProjectId, reqVO.getDictionaryProjectId())
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getConfigAssayMethodProjectId, reqVO.getConfigAssayMethodProjectId())
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getConfigAssayMethodId, reqVO.getConfigAssayMethodId())
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getUsage, reqVO.getUsage())
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getSymbol, reqVO.getSymbol())
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getTaskType, reqVO.getTaskType())
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getAssayType, reqVO.getAssayType())
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getDataType, reqVO.getDataType())
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getDecimalPosition, reqVO.getDecimalPosition())
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getAssessmentValue, reqVO.getAssessmentValue())
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getAssessmentStatus, reqVO.getAssessmentStatus())
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getIsReported, reqVO.getIsReported())
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getReporter, reqVO.getReporter())
.betweenIfPresent(BusinessSubSampleAssessmentProjectDO::getReportTime, reqVO.getReportTime())
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getSystemDepartmentCode, reqVO.getSystemDepartmentCode())
.betweenIfPresent(BusinessSubSampleAssessmentProjectDO::getCreateTime, reqVO.getCreateTime())
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getUpdateCount, reqVO.getUpdateCount())
.eqIfPresent(BusinessSubSampleAssessmentProjectDO::getRemark, reqVO.getRemark())
.orderByDesc(BusinessSubSampleAssessmentProjectDO::getId));
}
default List<BusinessSubSampleAssessmentProjectExtendRespVO> selectByBusinessSubParentSampleIdAndConfigAssayMethodId(Long businessSubParentSampleId, Long configAssayMethodId) {
return selectJoinList(BusinessSubSampleAssessmentProjectExtendRespVO.class, new MPJLambdaWrapperX<BusinessSubSampleAssessmentProjectDO>()
.leftJoin(ConfigAssayMethodDO.class, ConfigAssayMethodDO::getId, BusinessSubSampleAssessmentProjectDO::getConfigAssayMethodId)
.leftJoin(ConfigAssayMethodProjectDO.class, ConfigAssayMethodProjectDO::getId, BusinessSubSampleAssessmentProjectDO::getConfigAssayMethodProjectId)
.leftJoin(DictionaryProjectDO.class, DictionaryProjectDO::getId, BusinessSubSampleAssessmentProjectDO::getDictionaryProjectId)
.selectAll(BusinessSubSampleAssessmentProjectDO.class)
.selectAs(ConfigAssayMethodDO::getName, BusinessSubSampleAssessmentProjectExtendRespVO::getConfigAssayMethodName)
.selectAs(ConfigAssayMethodProjectDO::getDictionaryProjectUnit, BusinessSubSampleAssessmentProjectExtendRespVO::getDictionaryProjectUnit)
.selectAs(DictionaryProjectDO::getKey, BusinessSubSampleAssessmentProjectExtendRespVO::getDictionaryProjectKey)
.selectAs(DictionaryProjectDO::getSimpleName, BusinessSubSampleAssessmentProjectExtendRespVO::getSimpleName)
.selectAs(DictionaryProjectDO::getShowName, BusinessSubSampleAssessmentProjectExtendRespVO::getShowName)
.eq(BusinessSubSampleAssessmentProjectDO::getBusinessSubParentSampleId, businessSubParentSampleId)
.eq(BusinessSubSampleAssessmentProjectDO::getConfigAssayMethodId, configAssayMethodId));
}
default List<BusinessSubSampleAssessmentProjectExtendRespVO> selectByBusinessSubParentSampleIdsAndConfigAssayMethodId(List<Long> businessSubParentSampleIds, Long configAssayMethodId) {
return selectJoinList(BusinessSubSampleAssessmentProjectExtendRespVO.class, new MPJLambdaWrapperX<BusinessSubSampleAssessmentProjectDO>()
.leftJoin(ConfigAssayMethodDO.class, ConfigAssayMethodDO::getId, BusinessSubSampleAssessmentProjectDO::getConfigAssayMethodId)
.leftJoin(ConfigAssayMethodProjectDO.class, ConfigAssayMethodProjectDO::getId, BusinessSubSampleAssessmentProjectDO::getConfigAssayMethodProjectId)
.leftJoin(DictionaryProjectDO.class, DictionaryProjectDO::getId, BusinessSubSampleAssessmentProjectDO::getDictionaryProjectId)
.selectAll(BusinessSubSampleAssessmentProjectDO.class)
.selectAs(ConfigAssayMethodDO::getName, BusinessSubSampleAssessmentProjectExtendRespVO::getConfigAssayMethodName)
.selectAs(ConfigAssayMethodProjectDO::getDictionaryProjectUnit, BusinessSubSampleAssessmentProjectExtendRespVO::getDictionaryProjectUnit)
.selectAs(DictionaryProjectDO::getKey, BusinessSubSampleAssessmentProjectExtendRespVO::getDictionaryProjectKey)
.selectAs(DictionaryProjectDO::getSimpleName, BusinessSubSampleAssessmentProjectExtendRespVO::getSimpleName)
.selectAs(DictionaryProjectDO::getShowName, BusinessSubSampleAssessmentProjectExtendRespVO::getShowName)
.in(BusinessSubSampleAssessmentProjectDO::getBusinessSubParentSampleId, businessSubParentSampleIds)
.eq(BusinessSubSampleAssessmentProjectDO::getConfigAssayMethodId, configAssayMethodId));
}
default List<BusinessSubSampleAssessmentProjectExtendRespVO> selectByBusinessSubSampleIdAndConfigAssayMethodId(Long businessSubSampleId, Long configAssayMethodId) {
return selectJoinList(BusinessSubSampleAssessmentProjectExtendRespVO.class, new MPJLambdaWrapperX<BusinessSubSampleAssessmentProjectDO>()
.leftJoin(ConfigAssayMethodProjectDO.class, ConfigAssayMethodProjectDO::getId, BusinessSubSampleAssessmentProjectDO::getConfigAssayMethodProjectId)
.leftJoin(DictionaryProjectDO.class, DictionaryProjectDO::getId, BusinessSubSampleAssessmentProjectDO::getDictionaryProjectId)
.selectAll(BusinessSubSampleAssessmentProjectDO.class)
.selectAs(ConfigAssayMethodProjectDO::getDictionaryProjectUnit, BusinessSubSampleAssessmentProjectExtendRespVO::getDictionaryProjectUnit)
.selectAs(DictionaryProjectDO::getKey, BusinessSubSampleAssessmentProjectExtendRespVO::getDictionaryProjectKey)
.selectAs(DictionaryProjectDO::getSimpleName, BusinessSubSampleAssessmentProjectExtendRespVO::getSimpleName)
.selectAs(DictionaryProjectDO::getShowName, BusinessSubSampleAssessmentProjectExtendRespVO::getShowName)
.eq(BusinessSubSampleAssessmentProjectDO::getBusinessSubSampleId, businessSubSampleId)
.eq(BusinessSubSampleAssessmentProjectDO::getConfigAssayMethodId, configAssayMethodId));
}
default BusinessSubSampleAssessmentProjectDO selectByBusinessSubSampleIdAndConfigAssayMethodIdAndConfigAssayMethodProjectId(Long businessSubSampleId, Long configAssayMethodId, Long configAssayMethodProjectId) {
return selectOne(new LambdaQueryWrapperX<BusinessSubSampleAssessmentProjectDO>()
.eq(BusinessSubSampleAssessmentProjectDO::getBusinessSubSampleId, businessSubSampleId)
.eq(BusinessSubSampleAssessmentProjectDO::getConfigAssayMethodId, configAssayMethodId)
.eq(BusinessSubSampleAssessmentProjectDO::getConfigAssayMethodProjectId, configAssayMethodProjectId));
}
}

View File

@@ -23,8 +23,10 @@ import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSampleAssayRes
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSampleEntrustDetailDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSampleEntrustProjectDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSampleEntrustRegistrationDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubParentSampleAssessmentDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubParentSampleDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAnalysisGroupDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAssessmentDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleDO;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessAssayParameterDataMapper;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessAssayProjectDataMapper;
@@ -35,8 +37,10 @@ import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSampleAssayResultM
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSampleEntrustDetailMapper;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSampleEntrustProjectMapper;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSampleEntrustRegistrationMapper;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubParentSampleAssessmentMapper;
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.BusinessSubSampleAssessmentMapper;
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;
@@ -105,6 +109,9 @@ public class SampleEntrustGenSampleDataCmp extends NodeComponent {
@Resource
private BusinessSubParentSampleMapper businessSubParentSampleMapper;
@Resource
private BusinessSubParentSampleAssessmentMapper businessSubParentSampleAssessmentMapper;
@Resource
private ConfigSubSampleMapper configSubSampleMapper;
@@ -129,6 +136,9 @@ public class SampleEntrustGenSampleDataCmp extends NodeComponent {
@Resource
private BusinessAssayProjectDataMapper businessAssayProjectDataMapper;
@Resource
private BusinessSubSampleAssessmentMapper businessSubSampleAssessmentMapper;
@Resource
private ConfigAssayMethodProjectParameterMapper configAssayMethodProjectParameterMapper;
@@ -222,10 +232,14 @@ public class SampleEntrustGenSampleDataCmp extends NodeComponent {
List<BusinessBaseSampleDO> businessBaseSampleDOList = new ArrayList<>();
//分样
List<BusinessSubParentSampleDO> businessSubParentSampleDOList = new ArrayList<>();
//分样判定数据
List<BusinessSubParentSampleAssessmentDO> businessSubParentSampleAssessmentDOList = new ArrayList<>();
//分样子样
List<BusinessSubSampleDO> businessSubSampleDOList = new ArrayList<>();
//分样子样分析班组
List<BusinessSubSampleAnalysisGroupDO> businessSubSampleAnalysisGroupDOList = new ArrayList<>();
//分样子样判定数据
List<BusinessSubSampleAssessmentDO> businessSubSampleAssessmentDOList = new ArrayList<>();
//子样检测任务
List<BusinessAssayTaskDataDO> businessAssayTaskDataDOList = new ArrayList<>();
//检测任务的分析项目
@@ -440,12 +454,33 @@ public class SampleEntrustGenSampleDataCmp extends NodeComponent {
businessSubSampleAnalysisGroupDOList.add(businessSubSampleAnalysisGroupDO);
}
//根据检测方法循环
BusinessAssayTaskDataDO businessAssayTaskDataDO = null;
//根据任务数判断是平行还是
String assayType = configSubSampleMethodDO.getTaskCount() > 1 ? QmsCommonConstant.ASSAY_TYPE_SINGLE_PARALLEL : QmsCommonConstant.ASSAY_TYPE_SINGLE_CUP;
//分样判定数据
BusinessSubParentSampleAssessmentDO businessSubParentSampleAssessmentDO = new BusinessSubParentSampleAssessmentDO();
businessSubParentSampleAssessmentDO.setId(IdWorker.getId());
businessSubParentSampleAssessmentDO.setBusinessSubParentSampleId(businessSubSampleDO.getBusinessSubParentSampleId());
businessSubParentSampleAssessmentDO.setConfigAssayMethodId(configAssayMethodId);
businessSubParentSampleAssessmentDO.setAssayType(assayType);
businessSubParentSampleAssessmentDO.setTaskType("常规");
businessSubParentSampleAssessmentDOList.add(businessSubParentSampleAssessmentDO);
//子样判定数据
BusinessSubSampleAssessmentDO businessSubSampleAssessmentDO = new BusinessSubSampleAssessmentDO();
businessSubSampleAssessmentDO.setId(IdWorker.getId());
businessSubSampleAssessmentDO.setBusinessBaseSampleId(businessSubSampleDO.getBusinessBaseSampleId());
businessSubSampleAssessmentDO.setBusinessSubParentSampleId(businessSubSampleDO.getBusinessSubParentSampleId());
businessSubSampleAssessmentDO.setBusinessSubSampleId(businessSubSampleDO.getId());
businessSubSampleAssessmentDO.setBusinessSubParentSampleAssessmentId(businessSubParentSampleAssessmentDO.getId());
businessSubSampleAssessmentDO.setConfigAssayMethodId(configAssayMethodId);
businessSubSampleAssessmentDO.setAssayType(assayType);
businessSubSampleAssessmentDO.setTaskType("常规");
businessSubSampleAssessmentDOList.add(businessSubSampleAssessmentDO);
//根据检测方法循环
BusinessAssayTaskDataDO businessAssayTaskDataDO = null;
//根据任务数循环
for (int i = 0; i < configSubSampleMethodDO.getTaskCount(); i++) {
//子样检测任务
@@ -454,6 +489,7 @@ public class SampleEntrustGenSampleDataCmp extends NodeComponent {
businessAssayTaskDataDO.setBusinessBaseSampleId(businessSubSampleDO.getBusinessBaseSampleId());
businessAssayTaskDataDO.setBusinessSubParentSampleId(businessSubSampleDO.getBusinessSubParentSampleId());
businessAssayTaskDataDO.setBusinessSubSampleId(businessSubSampleDO.getId());
businessAssayTaskDataDO.setBusinessSubSampleAssessmentId(businessSubSampleAssessmentDO.getId());
businessAssayTaskDataDO.setConfigAssayMethodId(configAssayMethodId);
businessAssayTaskDataDO.setAssayType(assayType);
businessAssayTaskDataDO.setTaskType("常规");
@@ -520,6 +556,7 @@ public class SampleEntrustGenSampleDataCmp extends NodeComponent {
}
//判定是商检 分析金银 需要创建综合样样品为第1个
if (isSjEntrust && isAssayAuAg && sort == 0 && isCreateZhy && configAssayMethodZhy != null) {
Long configAssayMethodIdZhy = configAssayMethodZhy.getId();
Long assayDepartmentIdZhy = configAssayMethodZhy.getAssayDepartmentId();
@@ -541,12 +578,22 @@ public class SampleEntrustGenSampleDataCmp extends NodeComponent {
businessSubSampleAnalysisGroupDOList.add(businessSubSampleAnalysisGroupDO);
}
//根据检测方法循环
BusinessAssayTaskDataDO businessAssayTaskDataDO = null;
//根据任务数判断是平行还是
String assayType = configSubSampleMethodDO.getTaskCount() > 1 ? QmsCommonConstant.ASSAY_TYPE_SINGLE_PARALLEL : QmsCommonConstant.ASSAY_TYPE_SINGLE_CUP;
BusinessSubSampleAssessmentDO businessSubSampleAssessmentDO = new BusinessSubSampleAssessmentDO();
businessSubSampleAssessmentDO.setId(IdWorker.getId());
businessSubSampleAssessmentDO.setBusinessBaseSampleId(businessSubSampleDO.getBusinessBaseSampleId());
businessSubSampleAssessmentDO.setBusinessSubParentSampleId(businessSubSampleDO.getBusinessSubParentSampleId());
businessSubSampleAssessmentDO.setBusinessSubSampleId(businessSubSampleDO.getId());
businessSubSampleAssessmentDO.setConfigAssayMethodId(configAssayMethodZhy.getId());
businessSubSampleAssessmentDO.setAssayType(assayType);
businessSubSampleAssessmentDO.setTaskType("常规");
businessSubSampleAssessmentDOList.add(businessSubSampleAssessmentDO);
//根据检测方法循环
BusinessAssayTaskDataDO businessAssayTaskDataDO = null;
//根据任务数循环
for (int i = 0; i < configSubSampleMethodDO.getTaskCount(); i++) {
//子样检测任务
@@ -555,6 +602,7 @@ public class SampleEntrustGenSampleDataCmp extends NodeComponent {
businessAssayTaskDataDO.setBusinessBaseSampleId(businessSubSampleDO.getBusinessBaseSampleId());
businessAssayTaskDataDO.setBusinessSubParentSampleId(businessSubSampleDO.getBusinessSubParentSampleId());
businessAssayTaskDataDO.setBusinessSubSampleId(businessSubSampleDO.getId());
businessAssayTaskDataDO.setBusinessSubSampleAssessmentId(businessSubSampleAssessmentDO.getId());//子样判定id
businessAssayTaskDataDO.setConfigAssayMethodId(configAssayMethodZhy.getId());
businessAssayTaskDataDO.setAssayType(assayType);
businessAssayTaskDataDO.setTaskType("常规");
@@ -628,6 +676,10 @@ public class SampleEntrustGenSampleDataCmp extends NodeComponent {
log.info("插入 businessSubParentSampleDOList 前 tenant_id = {}", TenantContextHolder.getTenantId());
businessSubParentSampleMapper.insertBatch(businessSubParentSampleDOList);
}
if (CollUtil.isNotEmpty(businessSubParentSampleAssessmentDOList)) {
log.info("插入 businessSubParentSampleAssessmentDOList 前 tenant_id = {}", TenantContextHolder.getTenantId());
businessSubParentSampleAssessmentMapper.insertBatch(businessSubParentSampleAssessmentDOList);
}
if (CollUtil.isNotEmpty(businessSubSampleDOList)) {
log.info("插入 businessSubSampleDOList 前 tenant_id = {}", TenantContextHolder.getTenantId());
businessSubSampleMapper.insertBatch(businessSubSampleDOList);
@@ -636,6 +688,10 @@ public class SampleEntrustGenSampleDataCmp extends NodeComponent {
log.info("插入 businessSubSampleAnalysisGroupDOList 前 tenant_id = {}", TenantContextHolder.getTenantId());
businessSubSampleAnalysisGroupMapper.insertBatch(businessSubSampleAnalysisGroupDOList);
}
if (CollUtil.isNotEmpty(businessSubSampleAssessmentDOList)) {
log.info("插入 businessSubSampleAssessmentDOList 前 tenant_id = {}", TenantContextHolder.getTenantId());
businessSubSampleAssessmentMapper.insertBatch(businessSubSampleAssessmentDOList);
}
if (CollUtil.isNotEmpty(businessAssayTaskDataDOList)) {
log.info("插入 businessAssayTaskDataDOList 前 tenant_id = {}", TenantContextHolder.getTenantId());
businessAssayTaskDataMapper.insertBatch(businessAssayTaskDataDOList);

View File

@@ -0,0 +1,62 @@
package com.zt.plat.module.qms.business.bus.service;
import java.util.*;
import jakarta.validation.*;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.module.qms.business.bus.controller.vo.*;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubParentSampleAssessmentProjectDO;
import com.zt.plat.framework.common.pojo.PageParam;
/**
* 班组判定检测项目数据业务 Service 接口
*
* @author 后台管理
*/
public interface BusinessSubParentSampleAssessmentProjectService {
/**
* 创建班组判定检测项目数据业务
*
* @param createReqVO 创建信息
* @return 编号
*/
BusinessSubParentSampleAssessmentProjectRespVO createBusinessSubParentSampleAssessment(@Valid BusinessSubParentSampleAssessmentProjectSaveReqVO createReqVO);
/**
* 更新班组判定检测项目数据业务
*
* @param updateReqVO 更新信息
*/
void updateBusinessSubParentSampleAssessment(@Valid BusinessSubParentSampleAssessmentProjectSaveReqVO updateReqVO);
/**
* 删除班组判定检测项目数据业务
*
* @param id 编号
*/
void deleteBusinessSubParentSampleAssessment(Long id);
/**
* 批量删除班组判定检测项目数据业务
*
* @param ids 编号
*/
void deleteBusinessSubParentSampleAssessmentListByIds(List<Long> ids);
/**
* 获得班组判定检测项目数据业务
*
* @param id 编号
* @return 班组判定检测项目数据业务
*/
BusinessSubParentSampleAssessmentProjectDO getBusinessSubParentSampleAssessment(Long id);
/**
* 获得班组判定检测项目数据业务分页
*
* @param pageReqVO 分页查询
* @return 班组判定检测项目数据业务分页
*/
PageResult<BusinessSubParentSampleAssessmentProjectDO> getBusinessSubParentSampleAssessmentPage(BusinessSubParentSampleAssessmentProjectPageReqVO pageReqVO);
}

View File

@@ -0,0 +1,86 @@
package com.zt.plat.module.qms.business.bus.service;
import cn.hutool.core.collection.CollUtil;
import org.springframework.stereotype.Service;
import jakarta.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import java.util.*;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.framework.common.util.object.BeanUtils;
import com.zt.plat.module.qms.business.bus.controller.vo.*;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubParentSampleAssessmentProjectDO;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubParentSampleAssessmentProjectMapper;
import static com.zt.plat.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.zt.plat.module.qms.enums.ErrorCodeConstants.*;
/**
* 班组判定检测项目数据业务 Service 实现类
*
* @author 后台管理
*/
@Service
@Validated
public class BusinessSubParentSampleAssessmentProjectServiceImpl implements BusinessSubParentSampleAssessmentProjectService {
@Resource
private BusinessSubParentSampleAssessmentProjectMapper businessSubParentSampleAssessmentProjectMapper;
@Override
public BusinessSubParentSampleAssessmentProjectRespVO createBusinessSubParentSampleAssessment(BusinessSubParentSampleAssessmentProjectSaveReqVO createReqVO) {
// 插入
BusinessSubParentSampleAssessmentProjectDO businessSubParentSampleAssessment = BeanUtils.toBean(createReqVO, BusinessSubParentSampleAssessmentProjectDO.class);
businessSubParentSampleAssessmentProjectMapper.insert(businessSubParentSampleAssessment);
// 返回
return BeanUtils.toBean(businessSubParentSampleAssessment, BusinessSubParentSampleAssessmentProjectRespVO.class);
}
@Override
public void updateBusinessSubParentSampleAssessment(BusinessSubParentSampleAssessmentProjectSaveReqVO updateReqVO) {
// 校验存在
validateBusinessSubParentSampleAssessmentExists(updateReqVO.getId());
// 更新
BusinessSubParentSampleAssessmentProjectDO updateObj = BeanUtils.toBean(updateReqVO, BusinessSubParentSampleAssessmentProjectDO.class);
businessSubParentSampleAssessmentProjectMapper.updateById(updateObj);
}
@Override
public void deleteBusinessSubParentSampleAssessment(Long id) {
// 校验存在
validateBusinessSubParentSampleAssessmentExists(id);
// 删除
businessSubParentSampleAssessmentProjectMapper.deleteById(id);
}
@Override
public void deleteBusinessSubParentSampleAssessmentListByIds(List<Long> ids) {
// 校验存在
validateBusinessSubParentSampleAssessmentExists(ids);
// 删除
businessSubParentSampleAssessmentProjectMapper.deleteByIds(ids);
}
private void validateBusinessSubParentSampleAssessmentExists(List<Long> ids) {
List<BusinessSubParentSampleAssessmentProjectDO> list = businessSubParentSampleAssessmentProjectMapper.selectByIds(ids);
if (CollUtil.isEmpty(list) || list.size() != ids.size()) {
throw exception(BUSINESS_SUB_PARENT_SAMPLE_ASSESSMENT_PROJECT_NOT_EXISTS);
}
}
private void validateBusinessSubParentSampleAssessmentExists(Long id) {
if (businessSubParentSampleAssessmentProjectMapper.selectById(id) == null) {
throw exception(BUSINESS_SUB_PARENT_SAMPLE_ASSESSMENT_PROJECT_NOT_EXISTS);
}
}
@Override
public BusinessSubParentSampleAssessmentProjectDO getBusinessSubParentSampleAssessment(Long id) {
return businessSubParentSampleAssessmentProjectMapper.selectById(id);
}
@Override
public PageResult<BusinessSubParentSampleAssessmentProjectDO> getBusinessSubParentSampleAssessmentPage(BusinessSubParentSampleAssessmentProjectPageReqVO pageReqVO) {
return businessSubParentSampleAssessmentProjectMapper.selectPage(pageReqVO);
}
}

View File

@@ -4,14 +4,19 @@ import cn.hutool.core.collection.CollUtil;
import org.springframework.stereotype.Service;
import jakarta.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.framework.common.pojo.PageParam;
import com.zt.plat.framework.common.util.object.BeanUtils;
import com.zt.plat.module.qms.business.bus.controller.vo.*;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubParentSampleAssessmentDO;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubParentSampleAssessmentMapper;
import static com.zt.plat.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.zt.plat.framework.common.util.collection.CollectionUtils.convertList;
import static com.zt.plat.framework.common.util.collection.CollectionUtils.diffList;
import static com.zt.plat.module.qms.enums.ErrorCodeConstants.*;
/**

View File

@@ -0,0 +1,66 @@
package com.zt.plat.module.qms.business.bus.service;
import java.util.*;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentProjectPageReqVO;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentProjectRespVO;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentProjectSaveReqVO;
import jakarta.validation.*;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.module.qms.business.bus.controller.vo.*;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAssessmentProjectDO;
import com.zt.plat.framework.common.pojo.PageParam;
/**
* 子样判定检测项目数据业务 Service 接口
*
* @author 后台管理
*/
public interface BusinessSubSampleAssessmentProjectService {
/**
* 创建子样判定检测项目数据业务
*
* @param createReqVO 创建信息
* @return 编号
*/
BusinessSubSampleAssessmentProjectRespVO createBusinessSubSampleAssessment(@Valid BusinessSubSampleAssessmentProjectSaveReqVO createReqVO);
/**
* 更新子样判定检测项目数据业务
*
* @param updateReqVO 更新信息
*/
void updateBusinessSubSampleAssessment(@Valid BusinessSubSampleAssessmentProjectSaveReqVO updateReqVO);
/**
* 删除子样判定检测项目数据业务
*
* @param id 编号
*/
void deleteBusinessSubSampleAssessment(Long id);
/**
* 批量删除子样判定检测项目数据业务
*
* @param ids 编号
*/
void deleteBusinessSubSampleAssessmentListByIds(List<Long> ids);
/**
* 获得子样判定检测项目数据业务
*
* @param id 编号
* @return 子样判定检测项目数据业务
*/
BusinessSubSampleAssessmentProjectDO getBusinessSubSampleAssessment(Long id);
/**
* 获得子样判定检测项目数据业务分页
*
* @param pageReqVO 分页查询
* @return 子样判定检测项目数据业务分页
*/
PageResult<BusinessSubSampleAssessmentProjectDO> getBusinessSubSampleAssessmentPage(BusinessSubSampleAssessmentProjectPageReqVO pageReqVO);
}

View File

@@ -0,0 +1,93 @@
package com.zt.plat.module.qms.business.bus.service;
import cn.hutool.core.collection.CollUtil;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentProjectPageReqVO;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentProjectRespVO;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentProjectSaveReqVO;
import org.springframework.stereotype.Service;
import jakarta.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import java.util.*;
import com.zt.plat.module.qms.business.bus.controller.vo.*;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAssessmentProjectDO;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubSampleAssessmentProjectMapper;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.framework.common.pojo.PageParam;
import com.zt.plat.framework.common.util.object.BeanUtils;
import static com.zt.plat.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.zt.plat.framework.common.util.collection.CollectionUtils.convertList;
import static com.zt.plat.framework.common.util.collection.CollectionUtils.diffList;
import static com.zt.plat.module.qms.enums.ErrorCodeConstants.*;
/**
* 子样判定检测项目数据业务 Service 实现类
*
* @author 后台管理
*/
@Service
@Validated
public class BusinessSubSampleAssessmentProjectServiceImpl implements BusinessSubSampleAssessmentProjectService {
@Resource
private BusinessSubSampleAssessmentProjectMapper businessSubSampleAssessmentProjectMapper;
@Override
public BusinessSubSampleAssessmentProjectRespVO createBusinessSubSampleAssessment(BusinessSubSampleAssessmentProjectSaveReqVO createReqVO) {
// 插入
BusinessSubSampleAssessmentProjectDO businessSubSampleAssessment = BeanUtils.toBean(createReqVO, BusinessSubSampleAssessmentProjectDO.class);
businessSubSampleAssessmentProjectMapper.insert(businessSubSampleAssessment);
// 返回
return BeanUtils.toBean(businessSubSampleAssessment, BusinessSubSampleAssessmentProjectRespVO.class);
}
@Override
public void updateBusinessSubSampleAssessment(BusinessSubSampleAssessmentProjectSaveReqVO updateReqVO) {
// 校验存在
validateBusinessSubSampleAssessmentExists(updateReqVO.getId());
// 更新
BusinessSubSampleAssessmentProjectDO updateObj = BeanUtils.toBean(updateReqVO, BusinessSubSampleAssessmentProjectDO.class);
businessSubSampleAssessmentProjectMapper.updateById(updateObj);
}
@Override
public void deleteBusinessSubSampleAssessment(Long id) {
// 校验存在
validateBusinessSubSampleAssessmentExists(id);
// 删除
businessSubSampleAssessmentProjectMapper.deleteById(id);
}
@Override
public void deleteBusinessSubSampleAssessmentListByIds(List<Long> ids) {
// 校验存在
validateBusinessSubSampleAssessmentExists(ids);
// 删除
businessSubSampleAssessmentProjectMapper.deleteByIds(ids);
}
private void validateBusinessSubSampleAssessmentExists(List<Long> ids) {
List<BusinessSubSampleAssessmentProjectDO> list = businessSubSampleAssessmentProjectMapper.selectByIds(ids);
if (CollUtil.isEmpty(list) || list.size() != ids.size()) {
throw exception(BUSINESS_SUB_SAMPLE_ASSESSMENT_PROJECT_NOT_EXISTS);
}
}
private void validateBusinessSubSampleAssessmentExists(Long id) {
if (businessSubSampleAssessmentProjectMapper.selectById(id) == null) {
throw exception(BUSINESS_SUB_SAMPLE_ASSESSMENT_PROJECT_NOT_EXISTS);
}
}
@Override
public BusinessSubSampleAssessmentProjectDO getBusinessSubSampleAssessment(Long id) {
return businessSubSampleAssessmentProjectMapper.selectById(id);
}
@Override
public PageResult<BusinessSubSampleAssessmentProjectDO> getBusinessSubSampleAssessmentPage(BusinessSubSampleAssessmentProjectPageReqVO pageReqVO) {
return businessSubSampleAssessmentProjectMapper.selectPage(pageReqVO);
}
}

View File

@@ -1,10 +1,6 @@
package com.zt.plat.module.qms.business.bus.service;
import java.util.*;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentPageReqVO;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentRespVO;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentSaveReqVO;
import jakarta.validation.*;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.module.qms.business.bus.controller.vo.*;
@@ -12,14 +8,14 @@ import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAsses
import com.zt.plat.framework.common.pojo.PageParam;
/**
* 子样判定数据业务 Service 接口
* 子样判定业务 Service 接口
*
* @author 后台管理
*/
public interface BusinessSubSampleAssessmentService {
/**
* 创建子样判定数据业务
* 创建子样判定业务
*
* @param createReqVO 创建信息
* @return 编号
@@ -27,39 +23,39 @@ public interface BusinessSubSampleAssessmentService {
BusinessSubSampleAssessmentRespVO createBusinessSubSampleAssessment(@Valid BusinessSubSampleAssessmentSaveReqVO createReqVO);
/**
* 更新子样判定数据业务
* 更新子样判定业务
*
* @param updateReqVO 更新信息
*/
void updateBusinessSubSampleAssessment(@Valid BusinessSubSampleAssessmentSaveReqVO updateReqVO);
/**
* 删除子样判定数据业务
* 删除子样判定业务
*
* @param id 编号
*/
void deleteBusinessSubSampleAssessment(Long id);
/**
* 批量删除子样判定数据业务
* 批量删除子样判定业务
*
* @param ids 编号
*/
void deleteBusinessSubSampleAssessmentListByIds(List<Long> ids);
/**
* 获得子样判定数据业务
* 获得子样判定业务
*
* @param id 编号
* @return 子样判定数据业务
* @return 子样判定业务
*/
BusinessSubSampleAssessmentDO getBusinessSubSampleAssessment(Long id);
/**
* 获得子样判定数据业务分页
* 获得子样判定业务分页
*
* @param pageReqVO 分页查询
* @return 子样判定数据业务分页
* @return 子样判定业务分页
*/
PageResult<BusinessSubSampleAssessmentDO> getBusinessSubSampleAssessmentPage(BusinessSubSampleAssessmentPageReqVO pageReqVO);

View File

@@ -1,20 +1,18 @@
package com.zt.plat.module.qms.business.bus.service;
import cn.hutool.core.collection.CollUtil;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentPageReqVO;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentRespVO;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentSaveReqVO;
import org.springframework.stereotype.Service;
import jakarta.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import com.zt.plat.module.qms.business.bus.controller.vo.*;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAssessmentDO;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubSampleAssessmentMapper;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.framework.common.pojo.PageParam;
import com.zt.plat.framework.common.util.object.BeanUtils;
import com.zt.plat.module.qms.business.bus.controller.vo.*;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAssessmentDO;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubSampleAssessmentMapper;
import static com.zt.plat.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.zt.plat.framework.common.util.collection.CollectionUtils.convertList;
@@ -22,7 +20,7 @@ import static com.zt.plat.framework.common.util.collection.CollectionUtils.diffL
import static com.zt.plat.module.qms.enums.ErrorCodeConstants.*;
/**
* 子样判定数据业务 Service 实现类
* 子样判定业务 Service 实现类
*
* @author 后台管理
*/

View File

@@ -22,7 +22,7 @@ public interface SampleAnalysisAuditService {
void crossAuditByByTaskId(Long businessAssayTaskId, String auditStatus);
JSONObject getSampleResultAssessmentList(Long configAssayMethodId, String assessmentStatus);
JSONObject getSampleResultAssessmentList(Long configAssayMethodId, String asmtReportedStatus);
JSONObject getParallelResultAssessment(Long businessSubSampleId, Long configAssayMethodId);

View File

@@ -41,9 +41,10 @@ import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessAssayTaskDetai
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessBaseSampleDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessQCCoefficientDataDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessQCManagementDataDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubParentSampleAssessmentDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubParentSampleAssessmentProjectDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubParentSampleDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAssessmentDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAssessmentProjectDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleDO;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessAssayParameterDataMapper;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessAssayProjectDataMapper;
@@ -57,9 +58,10 @@ import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessQCCoefficientParam
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessQCManagementDataMapper;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessQCManagementParameterDataMapper;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessQCManagementProjectDataMapper;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubParentSampleAssessmentMapper;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubParentSampleAssessmentProjectMapper;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubParentSampleMapper;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubSampleAssessmentMapper;
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.config.controller.vo.*;
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigAssayMethodProjectAssessmentDO;
@@ -135,12 +137,12 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
@Resource
private ConfigAssayMethodProjectAssessmentMapper configAssayMethodProjectAssessmentMapper;
// @Resource
// private BusinessTeamAssessmentMapper businessTeamAssessmentMapper;
@Resource
private BusinessSubSampleAssessmentMapper businessSubSampleAssessmentMapper;
@Resource
private BusinessSubSampleAssessmentProjectMapper businessSubSampleAssessmentProjectMapper;
@Resource
private ConfigAssayMethodProjectMapper configAssayMethodProjectMapper;
@@ -148,7 +150,7 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
private ConfigSubSampleMethodMapper configSubSampleMethodMapper;
@Override
public JSONObject getSampleResultAssessmentList(Long configAssayMethodId, String assessmentStatus) {
public JSONObject getSampleResultAssessmentList(Long configAssayMethodId, String asmtReportedStatus) {
List<ConfigAssayMethodProjectExtendRespVO> configAssayMethodProjectDOList = configAssayMethodProjectMapper.selectByConfigAssayMethodId(configAssayMethodId);
List<Map<String, Object>> columnList = new ArrayList<>();
@@ -168,6 +170,7 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
List<Map<String, Object>> dataList = new ArrayList<>();
BusinessAssayTaskDataReqVO search = new BusinessAssayTaskDataReqVO();
search.setConfigAssayMethodId(configAssayMethodId);
search.setAsmtReportedStatus(asmtReportedStatus);
List<BusinessAssayTaskDataExtendRespVO> resultAssessmentList = businessAssayTaskDataMapper.selectResultAssessmentList(search);
for (BusinessAssayTaskDataExtendRespVO businessAssayTaskDataExtendRespVO : resultAssessmentList) {
@@ -186,8 +189,8 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
//为空则未添加过判定记录
if (assessmentMap == null) {
if (QmsCommonConstant.ASSAY_TYPE_SINGLE_PARALLEL.equals(businessAssayTaskDataExtendRespVO.getAssayType())) {//平行
List<BusinessSubSampleAssessmentExtendRespVO> businessSubSampleAssessmentList = businessSubSampleAssessmentMapper.selectByBusinessSubSampleIdAndConfigAssayMethodId(businessAssayTaskDataExtendRespVO.getBusinessSubSampleId(), configAssayMethodId);
for (BusinessSubSampleAssessmentExtendRespVO businessSubSampleAssessment : businessSubSampleAssessmentList) {
List<BusinessSubSampleAssessmentProjectExtendRespVO> businessSubSampleAssessmentList = businessSubSampleAssessmentProjectMapper.selectByBusinessSubSampleIdAndConfigAssayMethodId(businessAssayTaskDataExtendRespVO.getBusinessSubSampleId(), configAssayMethodId);
for (BusinessSubSampleAssessmentProjectExtendRespVO businessSubSampleAssessment : businessSubSampleAssessmentList) {
businessAssayTaskDataAssessmentMap.put("id", businessSubSampleAssessment.getId());
businessAssayTaskDataAssessmentMap.put("assessmentStatus", businessSubSampleAssessment.getAssessmentStatus());
businessAssayTaskDataAssessmentMap.put("assessmentStatus_" + businessSubSampleAssessment.getSimpleName(), businessSubSampleAssessment.getAssessmentStatus());
@@ -215,10 +218,6 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
}
if (StringUtils.isNotBlank(assessmentStatus)) {
dataList = dataList.stream().filter(f -> assessmentStatus.equals(f.get("assessmentStatus"))).collect(Collectors.toList());
}
JSONObject json = new JSONObject();
json.put("columns", columnList);
@@ -257,9 +256,9 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
}
//查询判定值
List<BusinessSubSampleAssessmentExtendRespVO> businessSubSampleAssessmentList = businessSubSampleAssessmentMapper.selectByBusinessSubSampleIdAndConfigAssayMethodId(businessSubSampleId, configAssayMethodId);
List<BusinessSubSampleAssessmentProjectExtendRespVO> businessSubSampleAssessmentList = businessSubSampleAssessmentProjectMapper.selectByBusinessSubSampleIdAndConfigAssayMethodId(businessSubSampleId, configAssayMethodId);
for (BusinessSubSampleAssessmentExtendRespVO businessSubSampleAssessment : businessSubSampleAssessmentList) {
for (BusinessSubSampleAssessmentProjectExtendRespVO businessSubSampleAssessment : businessSubSampleAssessmentList) {
Map<String, Object> businessSubSampleAssessmentMap = BeanUtil.beanToMap(businessSubSampleAssessment);
List<BusinessAssayProjectDataExtendRespVO> businessAssayProjectDataSingleList = businessAssayProjectDataList.stream().filter(f -> f.getDictionaryProjectId().equals(businessSubSampleAssessment.getDictionaryProjectId())).collect(Collectors.toList());
for (BusinessAssayProjectDataExtendRespVO businessAssayProjectDataExtendRespVO : businessAssayProjectDataSingleList) {
@@ -416,14 +415,19 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
}
@Override
@Transactional(rollbackFor = Exception.class)
public void crossAuditByByTaskId(Long businessAssayTaskId, String auditStatus) {
//当前登录用户昵称
String nickName = SecurityFrameworkUtils.getLoginUserNickname();
//自动上报的子样
List<Long> automaticBusinessSubSampleIdList = new ArrayList<>();
//判定记录
List<BusinessSubSampleAssessmentDO> saveBusinessSubSampleAssessmentDOList = new ArrayList<>();
List<BusinessSubSampleAssessmentDO> updateBusinessSubSampleAssessmentDOList = new ArrayList<>();
List<BusinessSubSampleAssessmentProjectDO> saveBusinessSubSampleAssessmentProjectDOList = new ArrayList<>();
List<BusinessSubSampleAssessmentProjectDO> updateBusinessSubSampleAssessmentProjectDOList = new ArrayList<>();
BusinessAssayTaskDO businessAssayTaskDO = businessAssayTaskMapper.selectById(businessAssayTaskId);
if (QmsCommonConstant.APPROVE.equals(auditStatus)) {
@@ -434,6 +438,8 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
//查询分析任务明细
List<BusinessAssayTaskDataDO> businessAssayTaskDataDOList = businessAssayTaskDataMapper.selectByBusinessAssayTaskId(businessAssayTaskId);
List<Long> businessSubSampleIdList = businessAssayTaskDataDOList.stream().map(m -> m.getBusinessSubSampleId()).distinct().collect(Collectors.toList());
List<BusinessSubSampleAssessmentDO> businessSubSampleAssessmentDOList = businessSubSampleAssessmentMapper.selectByBusinessSubSampleIdsAndConfigAssayMethodId(businessSubSampleIdList, businessAssayTaskDO.getConfigAssayMethodId());
//根据子样分组
Map<Long, List<BusinessAssayTaskDataDO>> businessAssayTaskDataDOMap = businessAssayTaskDataDOList.stream().collect(Collectors.groupingBy(BusinessAssayTaskDataDO::getBusinessSubSampleId));
//循环分组
@@ -444,6 +450,10 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
List<Long> businessAssayTaskDataIdList = businessAssayTaskDataList.stream().map(m -> m.getId()).collect(Collectors.toList());
BusinessAssayTaskDataDO businessAssayTaskDataDO = businessAssayTaskDataList.get(0);
BusinessSubSampleDO businessSubSampleDO = businessSubSampleMapper.selectById(businessSubSampleId);
//获取子样分析方法配置
ConfigSubSampleMethodDO configSubSampleMethodDO = configSubSampleMethodMapper.selectByConfigSubSampleIdAndConfigAssayMethodId(businessSubSampleDO.getConfigSubSampleId(), businessAssayTaskDataDO.getConfigAssayMethodId());
if (QmsCommonConstant.ASSAY_TYPE_SINGLE_PARALLEL.equals(businessAssayTaskDataDO.getAssayType())) {
//根据子样id及分析方法id查询未上报的分析任务
List<BusinessAssayTaskDataDO> unReportedList = businessAssayTaskDataMapper.selectIsReportedList(businessAssayTaskDataIdList, businessAssayTaskDataDO.getBusinessSubSampleId(), businessAssayTaskDataDO.getConfigAssayMethodId(), QmsCommonConstant.NO);
@@ -457,6 +467,14 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
businessAssayTaskDataIdList.addAll(reportedBusinessAssayTaskDataIdList);
}
//查询判定业务
BusinessSubSampleAssessmentDO businessSubSampleAssessmentDO = updateBusinessSubSampleAssessmentDOList.stream().filter(f -> f.getId().equals(businessAssayTaskDataDO.getBusinessSubSampleAssessmentId())).findFirst().orElse(null);
if (businessSubSampleAssessmentDO == null) {
businessSubSampleAssessmentDO = businessSubSampleAssessmentDOList.stream().filter(f -> f.getId().equals(businessAssayTaskDataDO.getBusinessSubSampleAssessmentId())).findFirst().orElse(null);
updateBusinessSubSampleAssessmentDOList.add(businessSubSampleAssessmentDO);
}
//状态设置为待上报
businessSubSampleAssessmentDO.setReportedStatus(QmsCommonConstant.ASMT_PENDING_REPORT);
//查询分析项目
List<BusinessAssayProjectDataDO> businessAssayProjectDataDOList = businessAssayProjectDataMapper.selectList(new LambdaQueryWrapperX<BusinessAssayProjectDataDO>().in(BusinessAssayProjectDataDO::getBusinessAssayTaskDataId, businessAssayTaskDataIdList));
Map<Long, List<BusinessAssayProjectDataDO>> businessAssayProjectDataDOMap = businessAssayProjectDataDOList.stream().collect(Collectors.groupingBy(BusinessAssayProjectDataDO::getDictionaryProjectId));
@@ -467,26 +485,26 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
List<ConfigAssayMethodProjectAssessmentDO> configAssayMethodProjectAssessmentDOList = configAssayMethodProjectAssessmentMapper.selectList(new LambdaQueryWrapperX<ConfigAssayMethodProjectAssessmentDO>().eq(ConfigAssayMethodProjectAssessmentDO::getConfigAssayMethodId, businessAssayTaskDataDO.getConfigAssayMethodId()).eq(ConfigAssayMethodProjectAssessmentDO::getConfigAssayMethodProjectId, businessAssayProjectDataDO.getConfigAssayMethodProjectId()));
//查询判定结果数据
BusinessSubSampleAssessmentDO businessSubSampleAssessmentDO = businessSubSampleAssessmentMapper.selectByBusinessSubSampleIdAndConfigAssayMethodIdAndConfigAssayMethodProjectId(businessSubSampleId, businessAssayTaskDataDO.getConfigAssayMethodId(), businessAssayProjectDataDO.getConfigAssayMethodProjectId());
if (businessSubSampleAssessmentDO == null) {
businessSubSampleAssessmentDO = new BusinessSubSampleAssessmentDO();
BusinessSubSampleAssessmentProjectDO businessSubSampleAssessmentProjectDO = businessSubSampleAssessmentProjectMapper.selectByBusinessSubSampleIdAndConfigAssayMethodIdAndConfigAssayMethodProjectId(businessSubSampleId, businessAssayTaskDataDO.getConfigAssayMethodId(), businessAssayProjectDataDO.getConfigAssayMethodProjectId());
if (businessSubSampleAssessmentProjectDO == null) {
businessSubSampleAssessmentProjectDO = new BusinessSubSampleAssessmentProjectDO();
saveBusinessSubSampleAssessmentDOList.add(businessSubSampleAssessmentDO);
saveBusinessSubSampleAssessmentProjectDOList.add(businessSubSampleAssessmentProjectDO);
} else {
updateBusinessSubSampleAssessmentDOList.add(businessSubSampleAssessmentDO);
updateBusinessSubSampleAssessmentProjectDOList.add(businessSubSampleAssessmentProjectDO);
}
businessSubSampleAssessmentDO.setBusinessSubParentSampleId(businessAssayTaskDataDO.getBusinessSubParentSampleId());
businessSubSampleAssessmentDO.setBusinessSubSampleId(businessAssayTaskDataDO.getBusinessSubSampleId());
businessSubSampleAssessmentDO.setConfigAssayMethodId(businessAssayTaskDataDO.getConfigAssayMethodId());
businessSubSampleAssessmentDO.setConfigAssayMethodProjectId(businessAssayProjectDataDO.getConfigAssayMethodProjectId());
businessSubSampleAssessmentDO.setDictionaryProjectId(dictionaryProjectId);
businessSubSampleAssessmentDO.setDataType(businessAssayProjectDataDO.getDataType());
businessSubSampleAssessmentDO.setDecimalPosition(businessAssayProjectDataDO.getDecimalPosition());
businessSubSampleAssessmentDO.setAssayType(businessAssayTaskDataDO.getAssayType());
businessSubSampleAssessmentDO.setTaskType(businessAssayTaskDataDO.getTaskType());
businessSubSampleAssessmentDO.setUsage(businessAssayProjectDataDO.getUsage());
businessSubSampleAssessmentDO.setSymbol(businessAssayProjectDataDO.getSymbol());
businessSubSampleAssessmentDO.setAssessmentStatus(QmsCommonConstant.NORMAL);
businessSubSampleAssessmentProjectDO.setBusinessSubParentSampleId(businessAssayTaskDataDO.getBusinessSubParentSampleId());
businessSubSampleAssessmentProjectDO.setBusinessSubSampleId(businessAssayTaskDataDO.getBusinessSubSampleId());
businessSubSampleAssessmentProjectDO.setConfigAssayMethodId(businessAssayTaskDataDO.getConfigAssayMethodId());
businessSubSampleAssessmentProjectDO.setConfigAssayMethodProjectId(businessAssayProjectDataDO.getConfigAssayMethodProjectId());
businessSubSampleAssessmentProjectDO.setDictionaryProjectId(dictionaryProjectId);
businessSubSampleAssessmentProjectDO.setDataType(businessAssayProjectDataDO.getDataType());
businessSubSampleAssessmentProjectDO.setDecimalPosition(businessAssayProjectDataDO.getDecimalPosition());
businessSubSampleAssessmentProjectDO.setAssayType(businessAssayTaskDataDO.getAssayType());
businessSubSampleAssessmentProjectDO.setTaskType(businessAssayTaskDataDO.getTaskType());
businessSubSampleAssessmentProjectDO.setUsage(businessAssayProjectDataDO.getUsage());
businessSubSampleAssessmentProjectDO.setSymbol(businessAssayProjectDataDO.getSymbol());
businessSubSampleAssessmentProjectDO.setAssessmentStatus(QmsCommonConstant.NORMAL);
// 排序并处理 null
List<BigDecimal> sortedValues = val1.stream()
@@ -503,7 +521,7 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
BigDecimal representativeValue = calculateRepresentativeValue(sortedValues, elementScale);
//设置判定值
businessSubSampleAssessmentDO.setAssessmentValue(representativeValue.toPlainString());
businessSubSampleAssessmentProjectDO.setAssessmentValue(representativeValue.toPlainString());
// 查找匹配的允差规则
ConfigAssayMethodProjectAssessmentDO matchedRule = findMatchingRule(configAssayMethodProjectAssessmentDOList, representativeValue);
@@ -523,14 +541,19 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
for (int i = 0; i < sortedValues.size() - 1; i++) {
BigDecimal diff = sortedValues.get(i + 1).subtract(sortedValues.get(i)).abs();
if (diff.compareTo(allowValue) > 0) {
businessSubSampleAssessmentDO.setAssessmentStatus(QmsCommonConstant.EXCEEDS_TOLERANCE);
businessSubSampleAssessmentProjectDO.setAssessmentStatus(QmsCommonConstant.EXCEEDS_TOLERANCE);
//存在超差,设置为待判定
businessSubSampleAssessmentDO.setReportedStatus(QmsCommonConstant.ASMT_PENDING_ASSESSMENT);
break;
}
}
}
//如果为自动上报
if (QmsCommonConstant.AUTOMATIC.equals(configSubSampleMethodDO.getResultTreatmentWay())) {
automaticBusinessSubSampleIdList.add(businessSubSampleId);
}
}
@@ -539,36 +562,54 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
} else if (QmsCommonConstant.ASSAY_TYPE_DOUBLE_CUP.equals(businessAssayTaskDataDO.getAssayType())) {
} else {//单杯
//查询判定业务
BusinessSubSampleAssessmentDO businessSubSampleAssessmentDO = updateBusinessSubSampleAssessmentDOList.stream().filter(f -> f.getId().equals(businessAssayTaskDataDO.getBusinessSubSampleAssessmentId())).findFirst().orElse(null);
if (businessSubSampleAssessmentDO == null) {
businessSubSampleAssessmentDO = businessSubSampleAssessmentDOList.stream().filter(f -> f.getId().equals(businessAssayTaskDataDO.getBusinessSubSampleAssessmentId())).findFirst().orElse(null);
updateBusinessSubSampleAssessmentDOList.add(businessSubSampleAssessmentDO);
}
//修改状态为待上报
businessSubSampleAssessmentDO.setReportedStatus(QmsCommonConstant.ASMT_PENDING_REPORT);
//查询分析项目
List<BusinessAssayProjectDataDO> businessAssayProjectDataDOList = businessAssayProjectDataMapper.selectList(new LambdaQueryWrapperX<BusinessAssayProjectDataDO>().in(BusinessAssayProjectDataDO::getBusinessAssayTaskDataId, businessAssayTaskDataIdList));
for (BusinessAssayProjectDataDO businessAssayProjectDataDO : businessAssayProjectDataDOList) {
//查询判定结果数据
BusinessSubSampleAssessmentDO businessSubSampleAssessmentDO = businessSubSampleAssessmentMapper.selectByBusinessSubSampleIdAndConfigAssayMethodIdAndConfigAssayMethodProjectId(businessSubSampleId, businessAssayTaskDataDO.getConfigAssayMethodId(), businessAssayProjectDataDO.getConfigAssayMethodProjectId());
if (businessSubSampleAssessmentDO == null) {
businessSubSampleAssessmentDO = new BusinessSubSampleAssessmentDO();
BusinessSubSampleAssessmentProjectDO businessSubSampleAssessmentProjectDO = businessSubSampleAssessmentProjectMapper.selectByBusinessSubSampleIdAndConfigAssayMethodIdAndConfigAssayMethodProjectId(businessSubSampleId, businessAssayTaskDataDO.getConfigAssayMethodId(), businessAssayProjectDataDO.getConfigAssayMethodProjectId());
if (businessSubSampleAssessmentProjectDO == null) {
businessSubSampleAssessmentProjectDO = new BusinessSubSampleAssessmentProjectDO();
saveBusinessSubSampleAssessmentDOList.add(businessSubSampleAssessmentDO);
saveBusinessSubSampleAssessmentProjectDOList.add(businessSubSampleAssessmentProjectDO);
} else {
updateBusinessSubSampleAssessmentDOList.add(businessSubSampleAssessmentDO);
updateBusinessSubSampleAssessmentProjectDOList.add(businessSubSampleAssessmentProjectDO);
}
businessSubSampleAssessmentDO.setBusinessSubParentSampleId(businessAssayTaskDataDO.getBusinessSubParentSampleId());
businessSubSampleAssessmentDO.setBusinessSubSampleId(businessAssayTaskDataDO.getBusinessSubSampleId());
businessSubSampleAssessmentDO.setConfigAssayMethodId(businessAssayTaskDataDO.getConfigAssayMethodId());
businessSubSampleAssessmentDO.setConfigAssayMethodProjectId(businessAssayProjectDataDO.getConfigAssayMethodProjectId());
businessSubSampleAssessmentDO.setDictionaryProjectId(businessAssayProjectDataDO.getDictionaryProjectId());
businessSubSampleAssessmentDO.setDataType(businessAssayProjectDataDO.getDataType());
businessSubSampleAssessmentDO.setDecimalPosition(businessAssayProjectDataDO.getDecimalPosition());
businessSubSampleAssessmentDO.setAssayType(businessAssayTaskDataDO.getAssayType());
businessSubSampleAssessmentDO.setTaskType(businessAssayTaskDataDO.getTaskType());
businessSubSampleAssessmentDO.setUsage(businessAssayProjectDataDO.getUsage());
businessSubSampleAssessmentDO.setMinimumLimitValue(businessAssayProjectDataDO.getMinimumLimitValue());
businessSubSampleAssessmentDO.setSymbol(businessAssayProjectDataDO.getSymbol());
businessSubSampleAssessmentDO.setAssessmentStatus(QmsCommonConstant.NORMAL);
businessSubSampleAssessmentDO.setAssessmentValue(businessAssayProjectDataDO.getValue());
businessSubSampleAssessmentProjectDO.setBusinessSubParentSampleId(businessAssayTaskDataDO.getBusinessSubParentSampleId());
businessSubSampleAssessmentProjectDO.setBusinessSubSampleId(businessAssayTaskDataDO.getBusinessSubSampleId());
businessSubSampleAssessmentProjectDO.setConfigAssayMethodId(businessAssayTaskDataDO.getConfigAssayMethodId());
businessSubSampleAssessmentProjectDO.setConfigAssayMethodProjectId(businessAssayProjectDataDO.getConfigAssayMethodProjectId());
businessSubSampleAssessmentProjectDO.setDictionaryProjectId(businessAssayProjectDataDO.getDictionaryProjectId());
businessSubSampleAssessmentProjectDO.setDataType(businessAssayProjectDataDO.getDataType());
businessSubSampleAssessmentProjectDO.setDecimalPosition(businessAssayProjectDataDO.getDecimalPosition());
businessSubSampleAssessmentProjectDO.setAssayType(businessAssayTaskDataDO.getAssayType());
businessSubSampleAssessmentProjectDO.setTaskType(businessAssayTaskDataDO.getTaskType());
businessSubSampleAssessmentProjectDO.setUsage(businessAssayProjectDataDO.getUsage());
businessSubSampleAssessmentProjectDO.setMinimumLimitValue(businessAssayProjectDataDO.getMinimumLimitValue());
businessSubSampleAssessmentProjectDO.setSymbol(businessAssayProjectDataDO.getSymbol());
businessSubSampleAssessmentProjectDO.setAssessmentStatus(QmsCommonConstant.NORMAL);
businessSubSampleAssessmentProjectDO.setAssessmentValue(businessAssayProjectDataDO.getValue());
}
//如果为自动上报
if (QmsCommonConstant.AUTOMATIC.equals(configSubSampleMethodDO.getResultTreatmentWay())) {
automaticBusinessSubSampleIdList.add(businessSubSampleId);
}
}
}
@@ -598,18 +639,23 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
}
businessAssayTaskMapper.updateById(businessAssayTaskDO);
//插入平行判定记录
if (saveBusinessSubSampleAssessmentDOList.size() > 0) {
businessSubSampleAssessmentMapper.insertBatch(saveBusinessSubSampleAssessmentDOList);
}
if (updateBusinessSubSampleAssessmentDOList.size() > 0) {
businessSubSampleAssessmentMapper.updateBatch(updateBusinessSubSampleAssessmentDOList);
}
if (saveBusinessSubSampleAssessmentProjectDOList.size() > 0) {
businessSubSampleAssessmentProjectMapper.insertBatch(saveBusinessSubSampleAssessmentProjectDOList);
}
if (updateBusinessSubSampleAssessmentProjectDOList.size() > 0) {
businessSubSampleAssessmentProjectMapper.updateBatch(updateBusinessSubSampleAssessmentProjectDOList);
}
//执行自动上报
if (automaticBusinessSubSampleIdList.size() > 0) {
for (Long automaticBusinessSubSampleId : automaticBusinessSubSampleIdList) {
this.assessmentDataReporting(automaticBusinessSubSampleId, businessAssayTaskDO.getConfigAssayMethodId());
}
}
//插入双杯判定记录
// if (businessTeamAssessmentDOList.size() > 0) {
// businessTeamAssessmentMapper.insertBatch(businessTeamAssessmentDOList);
// }
}
// 查找匹配的允差区间
@@ -680,7 +726,10 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
private BusinessSubParentSampleMapper businessSubParentSampleMapper;
@Resource
private BusinessSubParentSampleAssessmentMapper businessSubParentSampleAssessmentMapper;
private BusinessSubParentSampleAssessmentProjectMapper businessSubParentSampleAssessmentProjectMapper;
@Resource
private SampleResultReportingService sampleResultReportingService;
@Override
@Transactional(rollbackFor = Exception.class)
@@ -691,15 +740,16 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
if (unReportedList.size() > 0) {
throw new ServiceException(1_032_100_000, "存在未上报的数据");
}
List<Long> automaticBusinessSubParentSampleIdList = new ArrayList<>();
// List<BusinessAssayReportDataDO> saveBusinessAssayReportDataDOList = new ArrayList<>();
// List<BusinessAssayReportDataDO> updateBusinessAssayReportDataDOList = new ArrayList<>();
List<BusinessSubParentSampleAssessmentDO> businessSubParentSampleAssessmentDOList = new ArrayList<>();
List<BusinessSubParentSampleAssessmentProjectDO> businessSubParentSampleAssessmentDOList = new ArrayList<>();
//分析任务已全部上报
List<BusinessAssayTaskDataDO> reportedList = businessAssayTaskDataMapper.selectIsReportedList(null, businessSubSampleId, configAssayMethodId, QmsCommonConstant.YES);
//判定结果
List<BusinessSubSampleAssessmentExtendRespVO> businessSubSampleAssessmentList = businessSubSampleAssessmentMapper.selectByBusinessSubSampleIdAndConfigAssayMethodId(businessSubSampleId, configAssayMethodId);
List<BusinessSubSampleAssessmentProjectExtendRespVO> businessSubSampleAssessmentList = businessSubSampleAssessmentProjectMapper.selectByBusinessSubSampleIdAndConfigAssayMethodId(businessSubSampleId, configAssayMethodId);
List<Long> businessSubSampleAssessmentIdList = businessSubSampleAssessmentList.stream().map(m -> m.getId()).collect(Collectors.toList());
@@ -717,23 +767,23 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
ConfigSubSampleParentMethodDO configSubSampleParentMethodDO = configSubSampleParentMethodMapper.selectByConfigSubSampleParentIdAndConfigAssayMethodId(businessSubParentSampleDO.getConfigSubSampleParentId(), configAssayMethodId);
//循环判定值
BusinessSubParentSampleAssessmentDO businessSubParentSampleAssessmentDO = null;
for (BusinessSubSampleAssessmentExtendRespVO businessSubSampleAssessment : businessSubSampleAssessmentList) {
businessSubParentSampleAssessmentDO = new BusinessSubParentSampleAssessmentDO();
businessSubParentSampleAssessmentDO.setBusinessSubParentSampleId(businessAssayTaskDataDO.getBusinessSubParentSampleId());
businessSubParentSampleAssessmentDO.setAssessmentStatus(QmsCommonConstant.NORMAL);
businessSubParentSampleAssessmentDO.setAssessmentValue(businessSubSampleAssessment.getAssessmentValue());
businessSubParentSampleAssessmentDO.setTaskType(businessSubSampleAssessment.getTaskType());
businessSubParentSampleAssessmentDO.setAssayType(businessSubSampleAssessment.getAssayType());
businessSubParentSampleAssessmentDO.setDataType(businessSubSampleAssessment.getDataType());
businessSubParentSampleAssessmentDO.setDecimalPosition(businessSubSampleAssessment.getDecimalPosition());
businessSubParentSampleAssessmentDO.setUsage(businessSubSampleAssessment.getUsage());
businessSubParentSampleAssessmentDO.setMinimumLimitValue(businessSubParentSampleAssessmentDO.getMinimumLimitValue());
businessSubParentSampleAssessmentDO.setConfigAssayMethodId(businessSubSampleAssessment.getConfigAssayMethodId());
businessSubParentSampleAssessmentDO.setConfigAssayMethodProjectId(businessSubSampleAssessment.getConfigAssayMethodProjectId());
businessSubParentSampleAssessmentDO.setDictionaryProjectId(businessSubSampleAssessment.getDictionaryProjectId());
BusinessSubParentSampleAssessmentProjectDO businessSubParentSampleAssessmentProjectDO = null;
for (BusinessSubSampleAssessmentProjectExtendRespVO businessSubSampleAssessment : businessSubSampleAssessmentList) {
businessSubParentSampleAssessmentProjectDO = new BusinessSubParentSampleAssessmentProjectDO();
businessSubParentSampleAssessmentProjectDO.setBusinessSubParentSampleId(businessAssayTaskDataDO.getBusinessSubParentSampleId());
businessSubParentSampleAssessmentProjectDO.setAssessmentStatus(QmsCommonConstant.NORMAL);
businessSubParentSampleAssessmentProjectDO.setAssessmentValue(businessSubSampleAssessment.getAssessmentValue());
businessSubParentSampleAssessmentProjectDO.setTaskType(businessSubSampleAssessment.getTaskType());
businessSubParentSampleAssessmentProjectDO.setAssayType(businessSubSampleAssessment.getAssayType());
businessSubParentSampleAssessmentProjectDO.setDataType(businessSubSampleAssessment.getDataType());
businessSubParentSampleAssessmentProjectDO.setDecimalPosition(businessSubSampleAssessment.getDecimalPosition());
businessSubParentSampleAssessmentProjectDO.setUsage(businessSubSampleAssessment.getUsage());
businessSubParentSampleAssessmentProjectDO.setMinimumLimitValue(businessSubParentSampleAssessmentProjectDO.getMinimumLimitValue());
businessSubParentSampleAssessmentProjectDO.setConfigAssayMethodId(businessSubSampleAssessment.getConfigAssayMethodId());
businessSubParentSampleAssessmentProjectDO.setConfigAssayMethodProjectId(businessSubSampleAssessment.getConfigAssayMethodProjectId());
businessSubParentSampleAssessmentProjectDO.setDictionaryProjectId(businessSubSampleAssessment.getDictionaryProjectId());
businessSubParentSampleAssessmentDOList.add(businessSubParentSampleAssessmentDO);
businessSubParentSampleAssessmentDOList.add(businessSubParentSampleAssessmentProjectDO);
}
@@ -829,14 +879,23 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
**/
if (businessSubParentSampleAssessmentDOList.size() > 0) {
businessSubParentSampleAssessmentMapper.insertBatch(businessSubParentSampleAssessmentDOList);
businessSubParentSampleAssessmentProjectMapper.insertBatch(businessSubParentSampleAssessmentDOList);
}
businessSubSampleAssessmentMapper.update(new LambdaUpdateWrapper<BusinessSubSampleAssessmentDO>()
.set(BusinessSubSampleAssessmentDO::getIsReported, QmsCommonConstant.YES)
.set(BusinessSubSampleAssessmentDO::getReporter, nickName)
.set(BusinessSubSampleAssessmentDO::getReportTime, LocalDateTime.now())
.in(BusinessSubSampleAssessmentDO::getId, businessSubSampleAssessmentIdList));
businessSubSampleAssessmentProjectMapper.update(new LambdaUpdateWrapper<BusinessSubSampleAssessmentProjectDO>()
.set(BusinessSubSampleAssessmentProjectDO::getIsReported, QmsCommonConstant.YES)
.set(BusinessSubSampleAssessmentProjectDO::getReporter, nickName)
.set(BusinessSubSampleAssessmentProjectDO::getReportTime, LocalDateTime.now())
.in(BusinessSubSampleAssessmentProjectDO::getId, businessSubSampleAssessmentIdList));
if (QmsCommonConstant.AUTOMATIC.equals(configSubSampleParentMethodDO.getResultTreatmentWay())) {
automaticBusinessSubParentSampleIdList.add(businessSubParentSampleDO.getId());
BatchResultDataReportingReqVO batchResultDataReportingReqVO = new BatchResultDataReportingReqVO();
batchResultDataReportingReqVO.setBusinessSubParentSampleIds(automaticBusinessSubParentSampleIdList);
batchResultDataReportingReqVO.setConfigAssayMethodId(configAssayMethodId);
sampleResultReportingService.batchResultDataReporting(null);
}
}
@Resource
@@ -864,6 +923,8 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
List<BusinessAssayProjectDataDO> newBusinessAssayProjectDataDOList = new ArrayList<>();
List<BusinessAssayParameterDataDO> newBusinessAssayParameterDataDOList = new ArrayList<>();
BusinessSubSampleAssessmentDO businessSubSampleAssessmentDO = businessSubSampleAssessmentMapper.selectByBusinessSubSampleIdsAndConfigAssayMethodId(businessSubSampleId, configAssayMethodId);
BusinessAssayTaskDataDO newBusinessAssayTaskDataDO = null;
List<BusinessAssayTaskDataDO> businessAssayTaskDataDOList = businessAssayTaskDataMapper.selectMaxAnalysisCountByBusinessSubSampleIdAndConfigAssayMethodId(businessSubSampleId, configAssayMethodId);
List<Long> businessAssayTaskDataDOIdList = businessAssayTaskDataDOList.stream().map(m -> m.getId()).collect(Collectors.toList());
@@ -879,6 +940,7 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
newBusinessAssayTaskDataDO.setBusinessSubParentSampleId(businessAssayTaskDataDO.getBusinessSubParentSampleId());
newBusinessAssayTaskDataDO.setBusinessSubSampleId(businessAssayTaskDataDO.getBusinessSubSampleId());
newBusinessAssayTaskDataDO.setConfigAssayMethodId(businessAssayTaskDataDO.getConfigAssayMethodId());
newBusinessAssayTaskDataDO.setBusinessSubSampleAssessmentId(businessSubSampleAssessmentDO.getId());
newBusinessAssayTaskDataDO.setAssayType(businessAssayTaskDataDO.getAssayType());
newBusinessAssayTaskDataDO.setTaskType(businessAssayTaskDataDO.getTaskType());
newBusinessAssayTaskDataDO.setConfigSampleFlowId(businessAssayTaskDataDO.getConfigSampleFlowId());
@@ -924,11 +986,15 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
//修改判定状态
//查询判定值
List<BusinessSubSampleAssessmentExtendRespVO> businessSubSampleAssessmentList = businessSubSampleAssessmentMapper.selectByBusinessSubSampleIdAndConfigAssayMethodId(businessSubSampleId, configAssayMethodId);
for (BusinessSubSampleAssessmentExtendRespVO businessSubSampleAssessmentExtendRespVO : businessSubSampleAssessmentList) {
businessSubSampleAssessmentExtendRespVO.setAssessmentValue(null);
businessSubSampleAssessmentExtendRespVO.setAssessmentStatus(QmsCommonConstant.IN_PROGRESS);
List<BusinessSubSampleAssessmentProjectExtendRespVO> businessSubSampleAssessmentList = businessSubSampleAssessmentProjectMapper.selectByBusinessSubSampleIdAndConfigAssayMethodId(businessSubSampleId, configAssayMethodId);
for (BusinessSubSampleAssessmentProjectExtendRespVO businessSubSampleAssessmentProjectExtendRespVO : businessSubSampleAssessmentList) {
businessSubSampleAssessmentProjectExtendRespVO.setAssessmentValue(null);
businessSubSampleAssessmentProjectExtendRespVO.setAssessmentStatus(QmsCommonConstant.IN_PROGRESS);
}
//修改上报状态为复测中
businessSubSampleAssessmentDO.setReportedStatus(QmsCommonConstant.ASMT_RE_INSPECTED);
businessSubSampleAssessmentMapper.updateById(businessSubSampleAssessmentDO);
if (newBusinessAssayTaskDataDOList.size() > 0) {
businessAssayTaskDataMapper.insertBatch(newBusinessAssayTaskDataDOList);
@@ -940,8 +1006,8 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
businessAssayParameterDataMapper.insertBatch(newBusinessAssayParameterDataDOList);
}
if (businessSubSampleAssessmentList.size() > 0) {
List<BusinessSubSampleAssessmentDO> businessSubSampleAssessmentDOList = BeanUtil.copyToList(businessSubSampleAssessmentList, BusinessSubSampleAssessmentDO.class);
businessSubSampleAssessmentMapper.updateBatch(businessSubSampleAssessmentDOList);
List<BusinessSubSampleAssessmentProjectDO> businessSubSampleAssessmentDOList = BeanUtil.copyToList(businessSubSampleAssessmentList, BusinessSubSampleAssessmentProjectDO.class);
businessSubSampleAssessmentProjectMapper.updateBatch(businessSubSampleAssessmentDOList);
}
}
@@ -952,7 +1018,7 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
@Override
@Transactional(rollbackFor = Exception.class)
public JSONObject modifyParallelResultAssessment(Long businessSubSampleId, Long configAssayMethodId, Long businessSubSampleAssessmentId, List<Long> businessAssayProjectDataIds) {
BusinessSubSampleAssessmentDO businessSubSampleAssessmentDO = businessSubSampleAssessmentMapper.selectById(businessSubSampleAssessmentId);
BusinessSubSampleAssessmentProjectDO businessSubSampleAssessmentProjectDO = businessSubSampleAssessmentProjectMapper.selectById(businessSubSampleAssessmentId);
//查询子样
BusinessSubSampleDO businessSubSampleDO = businessSubSampleMapper.selectById(businessSubSampleId);
//查询子样与方法的配置
@@ -964,7 +1030,7 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
BusinessAssayProjectDataReqVO businessAssayProjectDataSearch = new BusinessAssayProjectDataReqVO();
businessAssayProjectDataSearch.setBusinessSubSampleId(businessSubSampleId);
businessAssayProjectDataSearch.setConfigAssayMethodId(configAssayMethodId);
businessAssayProjectDataSearch.setConfigAssayMethodProjectId(businessSubSampleAssessmentDO.getConfigAssayMethodProjectId());
businessAssayProjectDataSearch.setConfigAssayMethodProjectId(businessSubSampleAssessmentProjectDO.getConfigAssayMethodProjectId());
List<BusinessAssayProjectDataExtendRespVO> businessAssayProjectDataList = businessAssayProjectDataMapper.selectAnalysisBy(businessAssayProjectDataSearch);
List<BusinessAssayProjectDataDO> businessAssayProjectDataDOList = BeanUtil.copyToList(businessAssayProjectDataList, BusinessAssayProjectDataDO.class);
for (BusinessAssayProjectDataDO businessAssayProjectDataDO : businessAssayProjectDataDOList) {
@@ -985,7 +1051,7 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
.collect(Collectors.toList());
// 获取小数精度
int elementScale = businessSubSampleAssessmentDO.getDecimalPosition();
int elementScale = businessSubSampleAssessmentProjectDO.getDecimalPosition();
// 计算代表值(均值\
// BigDecimal representativeValue = calculateRepresentativeValue(sortedValues, elementScale);
DefaultContext<String, Object> context = new DefaultContext<>();
@@ -999,16 +1065,16 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
}
//设置判定值
businessSubSampleAssessmentDO.setAssessmentValue(representativeValue.toPlainString());
businessSubSampleAssessmentProjectDO.setAssessmentValue(representativeValue.toPlainString());
List<ConfigAssayMethodProjectAssessmentDO> configAssayMethodProjectAssessmentDOList = configAssayMethodProjectAssessmentMapper.selectList(new LambdaQueryWrapperX<ConfigAssayMethodProjectAssessmentDO>()
.eq(ConfigAssayMethodProjectAssessmentDO::getConfigAssayMethodId, businessSubSampleAssessmentDO.getConfigAssayMethodId())
.eq(ConfigAssayMethodProjectAssessmentDO::getConfigAssayMethodProjectId, businessSubSampleAssessmentDO.getConfigAssayMethodProjectId()));
.eq(ConfigAssayMethodProjectAssessmentDO::getConfigAssayMethodId, businessSubSampleAssessmentProjectDO.getConfigAssayMethodId())
.eq(ConfigAssayMethodProjectAssessmentDO::getConfigAssayMethodProjectId, businessSubSampleAssessmentProjectDO.getConfigAssayMethodProjectId()));
// 查找匹配的允差规则
ConfigAssayMethodProjectAssessmentDO matchedRule = findMatchingRule(configAssayMethodProjectAssessmentDOList, representativeValue);
if (matchedRule == null) {
throw new ServiceException(1_032_100_000, "未找到超差判定区间范围元素ID: " + businessSubSampleAssessmentDO.getDictionaryProjectId() + ", 值: " + representativeValue);
throw new ServiceException(1_032_100_000, "未找到超差判定区间范围元素ID: " + businessSubSampleAssessmentProjectDO.getDictionaryProjectId() + ", 值: " + representativeValue);
}
// 计算允差值
@@ -1016,20 +1082,20 @@ public class SampleAnalysisAuditServiceImpl implements SampleAnalysisAuditServic
try {
allowValue = allowanceCalculatorComponent.calculateAllowableValue(new BigDecimal(matchedRule.getMinimumValue()), new BigDecimal(matchedRule.getMaximumValue()), new BigDecimal(matchedRule.getMinimumToleraanceValue()), new BigDecimal(matchedRule.getMaximumToleraanceValue()), new BigDecimal(matchedRule.getToleraanceAdjustmentValue()), representativeValue, matchedRule.getIsUseFormula(), matchedRule.getFormula(), elementScale);
} catch (Exception e) {
throw new ServiceException(1_032_100_000, "超差判定计算出错检测项目ID: " + businessSubSampleAssessmentDO.getDictionaryProjectId());
throw new ServiceException(1_032_100_000, "超差判定计算出错检测项目ID: " + businessSubSampleAssessmentProjectDO.getDictionaryProjectId());
}
// 判断相邻差值是否超差
for (int i = 0; i < sortedValues.size() - 1; i++) {
BigDecimal diff = sortedValues.get(i + 1).subtract(sortedValues.get(i)).abs();
if (diff.compareTo(allowValue) > 0) {
businessSubSampleAssessmentDO.setAssessmentStatus(QmsCommonConstant.EXCEEDS_TOLERANCE);
businessSubSampleAssessmentProjectDO.setAssessmentStatus(QmsCommonConstant.EXCEEDS_TOLERANCE);
break;
}
}
//更新判定值
businessSubSampleAssessmentMapper.updateById(businessSubSampleAssessmentDO);
businessSubSampleAssessmentProjectMapper.updateById(businessSubSampleAssessmentProjectDO);
//更新检测项目
businessAssayProjectDataMapper.updateBatch(businessAssayProjectDataDOList);

View File

@@ -21,10 +21,10 @@ import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import com.zt.plat.framework.common.util.object.BeanUtils;
import com.zt.plat.framework.security.core.util.SecurityFrameworkUtils;
import com.zt.plat.module.qms.business.bus.controller.vo.BatchResultDataReportingReqVO;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubParentSampleAssessmentExtendRespVO;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubParentSampleAssessmentProjectExtendRespVO;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubParentSampleAssessmentGroupReqVO;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubParentSampleAssessmentGroupRespVO;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentExtendRespVO;
import com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubSampleAssessmentProjectExtendRespVO;
import com.zt.plat.module.qms.business.bus.controller.vo.ModifySampleResultReportingReqVO;
import com.zt.plat.module.qms.business.bus.controller.vo.NoReportSubParentSampleAssessmentRespVO;
import com.zt.plat.module.qms.business.bus.controller.vo.RecheckSubSampleParentCreateReqVO;
@@ -36,10 +36,10 @@ import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessAssayProjectDa
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessAssayReportDataDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessAssayTaskDataDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessBaseSampleDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubParentSampleAssessmentDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubParentSampleAssessmentProjectDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubParentSampleDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAnalysisGroupDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAssessmentDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleAssessmentProjectDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleDO;
import com.zt.plat.module.qms.business.bus.dal.dataobject.BusinessSubSampleParentRecheckDO;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessAssayParameterDataMapper;
@@ -47,10 +47,10 @@ import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessAssayProjectDataMa
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessAssayReportDataMapper;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessAssayTaskDataMapper;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessBaseSampleMapper;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubParentSampleAssessmentMapper;
import com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubParentSampleAssessmentProjectMapper;
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.BusinessSubSampleAssessmentMapper;
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.BusinessSubSampleParentRecheckMapper;
import com.zt.plat.module.qms.business.bus.liteflow.param.SampleFlowInfo;
@@ -87,10 +87,10 @@ public class SampleResultReportingServiceImpl implements SampleResultReportingSe
private BusinessAssayTaskDataMapper businessAssayTaskDataMapper;
@Resource
private BusinessSubParentSampleAssessmentMapper businessSubParentSampleAssessmentMapper;
private BusinessSubParentSampleAssessmentProjectMapper businessSubParentSampleAssessmentProjectMapper;
@Resource
private BusinessSubSampleAssessmentMapper businessSubSampleAssessmentMapper;
private BusinessSubSampleAssessmentProjectMapper businessSubSampleAssessmentProjectMapper;
@Resource
private BusinessSubParentSampleMapper businessSubParentSampleMapper;
@@ -104,7 +104,7 @@ public class SampleResultReportingServiceImpl implements SampleResultReportingSe
@Override
public List<BusinessSubParentSampleAssessmentGroupRespVO> getUnReportMethodGroupList(BusinessSubParentSampleAssessmentGroupReqVO reqVO) {
List<BusinessSubParentSampleAssessmentGroupRespVO> list = businessSubParentSampleAssessmentMapper.selectUnReportMethodGroupList(reqVO);
List<BusinessSubParentSampleAssessmentGroupRespVO> list = businessSubParentSampleAssessmentProjectMapper.selectUnReportMethodGroupList(reqVO);
return list;
}
@@ -130,11 +130,11 @@ public class SampleResultReportingServiceImpl implements SampleResultReportingSe
List<Map<String, Object>> dataList = new ArrayList<>();
//查询结果报送未上报的样品
List<NoReportSubParentSampleAssessmentRespVO> noReportSubParentSampleAssessmentRespList = businessSubParentSampleAssessmentMapper.selectNoReportSubParentSampleAssessment(configAssayMethodId);
List<NoReportSubParentSampleAssessmentRespVO> noReportSubParentSampleAssessmentRespList = businessSubParentSampleAssessmentProjectMapper.selectNoReportSubParentSampleAssessment(configAssayMethodId);
//分样id列表
List<Long> businessSubParentSampleIds = noReportSubParentSampleAssessmentRespList.stream().map(m -> m.getBusinessSubParentSampleId()).collect(Collectors.toList());
//报送的检测项目数据
List<BusinessSubParentSampleAssessmentExtendRespVO> businessSubParentSampleAssessmentDOList = businessSubParentSampleAssessmentMapper.selectByBusinessSubParentSampleIdAndConfigAssayMethodId(businessSubParentSampleIds, configAssayMethodId);
List<BusinessSubParentSampleAssessmentProjectExtendRespVO> businessSubParentSampleAssessmentDOList = businessSubParentSampleAssessmentProjectMapper.selectByBusinessSubParentSampleIdAndConfigAssayMethodId(businessSubParentSampleIds, configAssayMethodId);
//获取分析任务数
List<BusinessAssayTaskDataDO> businessAssayTaskDataDOList = businessAssayTaskDataMapper.selectByBusinessSubParentSampleIdsAndConfigAssayMethodId(businessSubParentSampleIds, configAssayMethodId);
List<Long> businessSubSampleIds = businessAssayTaskDataDOList.stream().map(m -> m.getBusinessSubSampleId()).distinct().collect(Collectors.toList());
@@ -142,7 +142,7 @@ public class SampleResultReportingServiceImpl implements SampleResultReportingSe
List<BusinessSubSampleDO> businessSubSampleDOList = businessSubSampleMapper.selectByIds(businessSubSampleIds);
//获取结果判定数据
List<BusinessSubSampleAssessmentExtendRespVO> businessSubSampleAssessmentExtendRespVOList = businessSubSampleAssessmentMapper.selectByBusinessSubParentSampleIdsAndConfigAssayMethodId(businessSubParentSampleIds, configAssayMethodId);
List<BusinessSubSampleAssessmentProjectExtendRespVO> businessSubSampleAssessmentExtendRespVOList = businessSubSampleAssessmentProjectMapper.selectByBusinessSubParentSampleIdsAndConfigAssayMethodId(businessSubParentSampleIds, configAssayMethodId);
//获取复测业务数据
List<BusinessSubSampleParentRecheckDO> businessSubSampleParentRecheckDOList = businessSubSampleParentRecheckMapper.selectByRecheckBusinessSubParentSampleIdsAndRecheckConfigAssayMethodId(businessSubParentSampleIds, configAssayMethodId);
@@ -155,10 +155,10 @@ public class SampleResultReportingServiceImpl implements SampleResultReportingSe
Map<String, Object> subSampleAssessmentBeforeMap = BeanUtil.copyProperties(noReportSubParentSampleAssessmentMap, Map.class);
Map<String, Object> subSampleAssessmentMap = BeanUtil.copyProperties(noReportSubParentSampleAssessmentMap, Map.class);
List<BusinessSubParentSampleAssessmentExtendRespVO> curBusinessSubParentSampleAssessmentDOList = businessSubParentSampleAssessmentDOList.stream().filter(f -> f.getBusinessSubParentSampleId().equals(noReportSubParentSampleAssessmentRespVO.getBusinessSubParentSampleId())).collect(Collectors.toList());
List<BusinessSubParentSampleAssessmentProjectExtendRespVO> curBusinessSubParentSampleAssessmentDOList = businessSubParentSampleAssessmentDOList.stream().filter(f -> f.getBusinessSubParentSampleId().equals(noReportSubParentSampleAssessmentRespVO.getBusinessSubParentSampleId())).collect(Collectors.toList());
noReportSubParentSampleAssessmentMap.put("configAssayMethodName", "报出结果");
StringBuilder businessSubParentSampleAssessmentIds = new StringBuilder();
for (BusinessSubParentSampleAssessmentExtendRespVO businessSubParentSampleAssessmentDO : curBusinessSubParentSampleAssessmentDOList) {
for (BusinessSubParentSampleAssessmentProjectExtendRespVO businessSubParentSampleAssessmentDO : curBusinessSubParentSampleAssessmentDOList) {
noReportSubParentSampleAssessmentMap.put(businessSubParentSampleAssessmentDO.getSimpleName(), businessSubParentSampleAssessmentDO.getAssessmentValue());
businessSubParentSampleAssessmentIds.append(businessSubParentSampleAssessmentDO.getId()).append(",");
}
@@ -170,12 +170,12 @@ public class SampleResultReportingServiceImpl implements SampleResultReportingSe
BusinessSubSampleParentRecheckDO businessSubSampleParentRecheckDO = businessSubSampleParentRecheckDOList.stream().filter(f -> f.getRecheckBusinessSubParentSampleId().equals(noReportSubParentSampleAssessmentRespVO.getBusinessSubParentSampleId())).findFirst().orElse(null);
if (businessSubSampleParentRecheckDO != null) {
List<BusinessSubSampleAssessmentExtendRespVO> businessSubSampleAssessmentExtendBeforeList = businessSubSampleAssessmentMapper.selectByBusinessSubParentSampleIdAndConfigAssayMethodId(businessSubSampleParentRecheckDO.getBusinessSubParentSampleId(), businessSubSampleParentRecheckDO.getConfigAssayMethodId());
List<BusinessSubSampleAssessmentProjectExtendRespVO> businessSubSampleAssessmentExtendBeforeList = businessSubSampleAssessmentProjectMapper.selectByBusinessSubParentSampleIdAndConfigAssayMethodId(businessSubSampleParentRecheckDO.getBusinessSubParentSampleId(), businessSubSampleParentRecheckDO.getConfigAssayMethodId());
StringBuilder businessSubSampleAssessmentIdsBefore = new StringBuilder();
for (BusinessSubSampleAssessmentExtendRespVO businessSubSampleAssessmentExtendRespVO : businessSubSampleAssessmentExtendBeforeList) {
subSampleAssessmentBeforeMap.put("configAssayMethodName", businessSubSampleAssessmentExtendRespVO.getConfigAssayMethodName());
subSampleAssessmentBeforeMap.put(businessSubSampleAssessmentExtendRespVO.getSimpleName(), businessSubSampleAssessmentExtendRespVO.getAssessmentValue());
businessSubSampleAssessmentIdsBefore.append(businessSubSampleAssessmentExtendRespVO.getId()).append(",");
for (BusinessSubSampleAssessmentProjectExtendRespVO businessSubSampleAssessmentProjectExtendRespVO : businessSubSampleAssessmentExtendBeforeList) {
subSampleAssessmentBeforeMap.put("configAssayMethodName", businessSubSampleAssessmentProjectExtendRespVO.getConfigAssayMethodName());
subSampleAssessmentBeforeMap.put(businessSubSampleAssessmentProjectExtendRespVO.getSimpleName(), businessSubSampleAssessmentProjectExtendRespVO.getAssessmentValue());
businessSubSampleAssessmentIdsBefore.append(businessSubSampleAssessmentProjectExtendRespVO.getId()).append(",");
}
businessSubSampleAssessmentIdsBefore.delete(businessSubSampleAssessmentIdsBefore.length() -1, businessSubSampleAssessmentIdsBefore.length());
subSampleAssessmentBeforeMap.put("businessSubParentSampleAssessmentIds", businessSubParentSampleAssessmentIds.toString());
@@ -185,12 +185,12 @@ public class SampleResultReportingServiceImpl implements SampleResultReportingSe
}
List<BusinessSubSampleAssessmentExtendRespVO> businessSubSampleAssessmentList = businessSubSampleAssessmentExtendRespVOList.stream().filter(f -> f.getBusinessSubParentSampleId().equals(noReportSubParentSampleAssessmentRespVO.getBusinessSubParentSampleId())).collect(Collectors.toList());
List<BusinessSubSampleAssessmentProjectExtendRespVO> businessSubSampleAssessmentList = businessSubSampleAssessmentExtendRespVOList.stream().filter(f -> f.getBusinessSubParentSampleId().equals(noReportSubParentSampleAssessmentRespVO.getBusinessSubParentSampleId())).collect(Collectors.toList());
StringBuilder businessSubSampleAssessmentIds = new StringBuilder();
for (BusinessSubSampleAssessmentExtendRespVO businessSubSampleAssessmentExtendRespVO : businessSubSampleAssessmentList) {
subSampleAssessmentMap.put("configAssayMethodName", businessSubSampleAssessmentExtendRespVO.getConfigAssayMethodName());
subSampleAssessmentMap.put(businessSubSampleAssessmentExtendRespVO.getSimpleName(), businessSubSampleAssessmentExtendRespVO.getAssessmentValue());
businessSubSampleAssessmentIds.append(businessSubSampleAssessmentExtendRespVO.getId()).append(",");
for (BusinessSubSampleAssessmentProjectExtendRespVO businessSubSampleAssessmentProjectExtendRespVO : businessSubSampleAssessmentList) {
subSampleAssessmentMap.put("configAssayMethodName", businessSubSampleAssessmentProjectExtendRespVO.getConfigAssayMethodName());
subSampleAssessmentMap.put(businessSubSampleAssessmentProjectExtendRespVO.getSimpleName(), businessSubSampleAssessmentProjectExtendRespVO.getAssessmentValue());
businessSubSampleAssessmentIds.append(businessSubSampleAssessmentProjectExtendRespVO.getId()).append(",");
}
businessSubSampleAssessmentIds.delete(businessSubSampleAssessmentIds.length() -1, businessSubSampleAssessmentIds.length());
subSampleAssessmentMap.put("businessSubParentSampleAssessmentIds", businessSubParentSampleAssessmentIds.toString());
@@ -229,7 +229,7 @@ public class SampleResultReportingServiceImpl implements SampleResultReportingSe
@Override
public List<RecheckSubSampleParentMethodRespVO> getRecheckAssayMethodList(Long baseSampleId, Long businessSubParentSampleId, Long configAssayMethodId) {
//查询检查项目
List<RecheckSubSampleParentMethodRespVO> list = businessSubParentSampleAssessmentMapper.getRecheckAssayMethodList(baseSampleId, businessSubParentSampleId, configAssayMethodId);
List<RecheckSubSampleParentMethodRespVO> list = businessSubParentSampleAssessmentProjectMapper.getRecheckAssayMethodList(baseSampleId, businessSubParentSampleId, configAssayMethodId);
//过滤默认的
List<RecheckSubSampleParentMethodRespVO> resultList = list.stream().filter(f -> f.getIsRecheckDefault() != null && f.getIsRecheckDefault().equals(QmsCommonConstant.YES)).collect(Collectors.toList());
for (RecheckSubSampleParentMethodRespVO recheckSubSampleParentMethodRespVO : resultList) {
@@ -427,7 +427,7 @@ public class SampleResultReportingServiceImpl implements SampleResultReportingSe
List<BusinessAssayReportDataDO> saveBusinessAssayReportDataDOList = new ArrayList<>();
List<BusinessAssayReportDataDO> updateBusinessAssayReportDataDOList = new ArrayList<>();
List<BusinessSubParentSampleAssessmentExtendRespVO> businessSubParentSampleAssessmentExtendList = businessSubParentSampleAssessmentMapper.selectByBusinessSubParentSampleIdAndConfigAssayMethodId(reqVO.getBusinessSubParentSampleIds(), reqVO.getConfigAssayMethodId());
List<BusinessSubParentSampleAssessmentProjectExtendRespVO> businessSubParentSampleAssessmentExtendList = businessSubParentSampleAssessmentProjectMapper.selectByBusinessSubParentSampleIdAndConfigAssayMethodId(reqVO.getBusinessSubParentSampleIds(), reqVO.getConfigAssayMethodId());
List<BusinessSubParentSampleDO> businessSubParentSampleDOList = businessSubParentSampleMapper.selectByIds(reqVO.getBusinessSubParentSampleIds());
@@ -472,8 +472,8 @@ public class SampleResultReportingServiceImpl implements SampleResultReportingSe
assayDataJson = JSON.parseObject(assayData);
}
//循环判定值
List<BusinessSubParentSampleAssessmentExtendRespVO> businessSubParentSampleAssessmentList = businessSubParentSampleAssessmentExtendList.stream().filter(f -> f.getBusinessSubParentSampleId().equals(businessSubParentSampleDO.getId())).collect(Collectors.toList());
for (BusinessSubParentSampleAssessmentExtendRespVO businessSubParentSampleAssessment : businessSubParentSampleAssessmentList) {
List<BusinessSubParentSampleAssessmentProjectExtendRespVO> businessSubParentSampleAssessmentList = businessSubParentSampleAssessmentExtendList.stream().filter(f -> f.getBusinessSubParentSampleId().equals(businessSubParentSampleDO.getId())).collect(Collectors.toList());
for (BusinessSubParentSampleAssessmentProjectExtendRespVO businessSubParentSampleAssessment : businessSubParentSampleAssessmentList) {
Long configAssayMethodProjectId = businessSubParentSampleAssessment.getConfigAssayMethodProjectId();
List<ConfigProjectExtendRespVO> configProjectFeildList = configProjectList.stream().filter(f -> f.getConfigAssayMethodProjectId().equals(configAssayMethodProjectId)).collect(Collectors.toList());
for (ConfigProjectExtendRespVO configProjectFeild : configProjectFeildList) {
@@ -566,11 +566,11 @@ public class SampleResultReportingServiceImpl implements SampleResultReportingSe
List<Long> businessSubParentSampleAssessmentIdList = businessSubParentSampleAssessmentExtendList.stream().map(m -> m.getId()).collect(Collectors.toList());
businessSubParentSampleAssessmentMapper.update(new LambdaUpdateWrapper<BusinessSubParentSampleAssessmentDO>()
.set(BusinessSubParentSampleAssessmentDO::getIsReported, QmsCommonConstant.YES)
.set(BusinessSubParentSampleAssessmentDO::getReporter, nickName)
.set(BusinessSubParentSampleAssessmentDO::getReportTime, LocalDateTime.now())
.in(BusinessSubParentSampleAssessmentDO::getId, businessSubParentSampleAssessmentIdList));
businessSubParentSampleAssessmentProjectMapper.update(new LambdaUpdateWrapper<BusinessSubParentSampleAssessmentProjectDO>()
.set(BusinessSubParentSampleAssessmentProjectDO::getIsReported, QmsCommonConstant.YES)
.set(BusinessSubParentSampleAssessmentProjectDO::getReporter, nickName)
.set(BusinessSubParentSampleAssessmentProjectDO::getReportTime, LocalDateTime.now())
.in(BusinessSubParentSampleAssessmentProjectDO::getId, businessSubParentSampleAssessmentIdList));
if (updateBusinessSubSampleDOList.size() > 0) {
@@ -592,13 +592,13 @@ public class SampleResultReportingServiceImpl implements SampleResultReportingSe
public void modifySampleResultReporting(ModifySampleResultReportingReqVO reqVO) {
List<String> businessSubParentSampleAssessmentIdList = Arrays.asList(reqVO.getBusinessSubParentSampleAssessmentIds().split(","));
List<String> businessSubSampleAssessmentIdList = Arrays.asList(reqVO.getBusinessSubSampleAssessmentIds().split(","));
List<BusinessSubParentSampleAssessmentDO> businessSubParentSampleAssessmentDOList = businessSubParentSampleAssessmentMapper.selectByIds(businessSubParentSampleAssessmentIdList);
List<BusinessSubSampleAssessmentDO> businessSubSampleAssessmentDOList = businessSubSampleAssessmentMapper.selectByIds(businessSubSampleAssessmentIdList);
for (BusinessSubParentSampleAssessmentDO businessSubParentSampleAssessmentDO : businessSubParentSampleAssessmentDOList) {
BusinessSubSampleAssessmentDO businessSubSampleAssessmentDO = businessSubSampleAssessmentDOList.stream().filter(f -> f.getDictionaryProjectId().equals(businessSubParentSampleAssessmentDO.getDictionaryProjectId())).findFirst().orElse(null);
businessSubParentSampleAssessmentDO.setAssessmentValue(businessSubSampleAssessmentDO.getAssessmentValue());
List<BusinessSubParentSampleAssessmentProjectDO> businessSubParentSampleAssessmentDOList = businessSubParentSampleAssessmentProjectMapper.selectByIds(businessSubParentSampleAssessmentIdList);
List<BusinessSubSampleAssessmentProjectDO> businessSubSampleAssessmentDOList = businessSubSampleAssessmentProjectMapper.selectByIds(businessSubSampleAssessmentIdList);
for (BusinessSubParentSampleAssessmentProjectDO businessSubParentSampleAssessmentProjectDO : businessSubParentSampleAssessmentDOList) {
BusinessSubSampleAssessmentProjectDO businessSubSampleAssessmentProjectDO = businessSubSampleAssessmentDOList.stream().filter(f -> f.getDictionaryProjectId().equals(businessSubParentSampleAssessmentProjectDO.getDictionaryProjectId())).findFirst().orElse(null);
businessSubParentSampleAssessmentProjectDO.setAssessmentValue(businessSubSampleAssessmentProjectDO.getAssessmentValue());
}
businessSubParentSampleAssessmentMapper.updateBatch(businessSubParentSampleAssessmentDOList);
businessSubParentSampleAssessmentProjectMapper.updateBatch(businessSubParentSampleAssessmentDOList);
}

View File

@@ -42,34 +42,52 @@
t.CFG_ASY_MTHD_ID AS configAssayMethodId,
t.ASY_TP AS assayType,
tcam.NAME AS configAssayMethodName,
COUNT(t.BSN_SB_SMP_ID) AS sampleTaskCount
count(CASE WHEN t.RPOD_STS = 'initial' THEN 1 END) AS asmt_initial_count,
count(CASE WHEN t.RPOD_STS = 'pending_report' THEN 1 END) AS asmt_pending_report_count,
count(CASE WHEN t.RPOD_STS = 'pending_assessment' THEN 1 END) AS asmt_pending_assessment_count,
count(CASE WHEN t.RPOD_STS = 're_inspected' THEN 1 END) AS asmt_re_inspected_count,
count(CASE WHEN t.RPOD_STS = 'reported' THEN 1 END) AS asmt_reported_count
FROM
(
SELECT
tbssa.TENANT_ID ,
tbssa.BSN_SB_PRN_SMP_ID ,
tbssa.BSN_SB_SMP_ID ,
tbssa.CFG_ASY_MTHD_ID,
tbssa.ASY_TP
tbatd.TENANT_ID ,
tbatd.BSN_SB_PRN_SMP_ID ,
tbatd.BSN_SB_SMP_ID ,
tbatd.CFG_ASY_MTHD_ID,
tbatd.ASY_TP,
tbssag.ASY_DEPT_ID ,
tbssag.ASY_DEPT_NAME ,
tbssa.RPOD_STS
FROM
T_BSN_SB_SMP_ASMT tbssa
T_BSN_ASY_TSK_DAT tbatd
LEFT JOIN T_BSN_SB_SMP_ANL_GRP tbssag ON
tbatd.BSN_SB_SMP_ID = tbssag.BSN_SB_SMP_ID
AND tbatd.ASY_DEPT_ID = tbssag.ASY_DEPT_ID
AND tbatd.TENANT_ID = tbssag.TENANT_ID
LEFT JOIN T_BSN_SB_SMP_ASMT tbssa ON
tbatd.BSN_SB_SMP_ASMT_ID = tbssa.ID
AND tbatd.TENANT_ID = tbssa.TENANT_ID
WHERE
tbssa.DELETED = 0
AND tbssa.IS_RPOD = 0
tbatd.DELETED = 0
AND tbatd.TENANT_ID = 1
AND tbatd.IS_ASN_TSKD = 1
AND tbssag.SMP_STS = '已收样'
<if test="reqVO.assayDepartmentId != null and reqVO.assayDepartmentId != ''">
AND tbssag.ASY_DEPT_ID = #{reqVO.assayDepartmentId}
</if>
GROUP BY
tbssa.TENANT_ID ,
tbssa.BSN_SB_PRN_SMP_ID ,
tbssa.BSN_SB_SMP_ID ,
tbssa.CFG_ASY_MTHD_ID,
tbssa.ASY_TP
tbatd.TENANT_ID ,
tbatd.BSN_SB_PRN_SMP_ID ,
tbatd.BSN_SB_SMP_ID ,
tbatd.CFG_ASY_MTHD_ID,
tbatd.ASY_TP,
tbssag.ASY_DEPT_ID ,
tbssag.ASY_DEPT_NAME ,
tbssa.RPOD_STS
) t
LEFT JOIN T_CFG_ASY_MTHD tcam ON
t.CFG_ASY_MTHD_ID = tcam.ID
AND t.TENANT_ID = tcam.TENANT_ID
WHERE tcam.DELETED = 0
<if test="reqVO.assayDepartmentId != null and reqVO.assayDepartmentId != ''">
AND tcam.ASY_DEPT_ID = #{reqVO.assayDepartmentId}
</if>
GROUP BY
t.CFG_ASY_MTHD_ID,
t.ASY_TP,

View File

@@ -9,120 +9,4 @@
文档可见https://www.iocoder.cn/MyBatis/x-plugins/
-->
<select id="selectUnReportMethodGroupList" resultType="com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubParentSampleAssessmentGroupRespVO" >
SELECT
tbspsa.CFG_ASY_MTHD_ID AS configAssayMethodId,
tcam.NAME AS configAssayMethodName,
tcam.ASY_DEPT_ID AS assayDepartmentId,
tcam.ASY_DEPT_NAME AS assayDepartmentName,
COUNT(DISTINCT tbspsa.BSN_SB_PRN_SMP_ID) AS sampleCount
FROM
T_BSN_SB_PRN_SMP_ASMT tbspsa
LEFT JOIN T_CFG_ASY_MTHD tcam ON
tbspsa.CFG_ASY_MTHD_ID = tcam.ID
WHERE
tbspsa.DELETED = 0
AND tbspsa.IS_RPOD = 0
<if test="reqVO.configAssayMethodName != null and reqVO.configAssayMethodName != ''">
AND tcam.NAME like '%' || #{reqVO.assayDepartmentId} || '%'
</if>
<if test="reqVO.assayDepartmentId != null and reqVO.assayDepartmentId != ''">
AND tcam.ASY_DEPT_ID = #{reqVO.assayDepartmentId}
</if>
GROUP BY
tbspsa.CFG_ASY_MTHD_ID,
tcam.NAME,
tcam.ASY_DEPT_ID ,
tcam.ASY_DEPT_NAME
</select>
<select id="selectNoReportSubParentSampleAssessment" resultType="com.zt.plat.module.qms.business.bus.controller.vo.NoReportSubParentSampleAssessmentRespVO" >
SELECT
tcssp.BSE_SMP_ID AS baseSampleId,
tbsps.BSN_BSE_SMP_ID AS businessBaseSampleId,
tbssa.BSN_SB_PRN_SMP_ID AS businessSubParentSampleId,
tbssa.CFG_ASY_MTHD_ID AS configAssayMethodId ,
tbssa.TSK_TP AS taskType,
tbssa.ASY_TP AS assayType,
tbsps.CFG_SB_SMP_PRN_ID AS configSubSampleParentId,
tbsps.SMP_NAME AS sampleName,
tbs.NAME AS baseSampleName
FROM
T_BSN_SB_SMP_ASMT tbssa
LEFT JOIN T_BSN_SB_PRN_SMP tbsps ON
tbssa.BSN_SB_PRN_SMP_ID = tbsps.ID
LEFT JOIN T_CFG_SB_SMP_PRN tcssp ON
tbsps.CFG_SB_SMP_PRN_ID = tcssp.ID
LEFT JOIN T_BSE_SMP tbs ON
tcssp.BSE_SMP_ID = tbs.ID
LEFT JOIN (
SELECT
tbspsa.BSN_SB_PRN_SMP_ID ,
tbspsa.CFG_ASY_MTHD_ID ,
tbspsa.IS_RPOD
FROM
T_BSN_SB_PRN_SMP_ASMT tbspsa
WHERE
tbspsa.IS_RPOD = 0
AND tbspsa.CFG_ASY_MTHD_ID = #{configAssayMethodId}
GROUP BY
tbspsa.BSN_SB_PRN_SMP_ID ,
tbspsa.CFG_ASY_MTHD_ID ,
tbspsa.IS_RPOD
) t ON
tbssa.BSN_SB_PRN_SMP_ID = t.BSN_SB_PRN_SMP_ID
WHERE
tbssa.IS_RPOD = 1
AND t.IS_RPOD = 0
AND tbssa.CFG_ASY_MTHD_ID = #{configAssayMethodId}
GROUP BY
tcssp.BSE_SMP_ID ,
tbsps.BSN_BSE_SMP_ID ,
tbssa.BSN_SB_PRN_SMP_ID,
tbssa.CFG_ASY_MTHD_ID,
tbssa.TSK_TP ,
tbssa.ASY_TP ,
tbsps.CFG_SB_SMP_PRN_ID,
tbsps.SMP_NAME ,
tbs.NAME
</select>
<select id="getRecheckAssayMethodList" resultType="com.zt.plat.module.qms.business.bus.controller.vo.RecheckSubSampleParentMethodRespVO">
SELECT
tmasd.DIC_PRJ_ID dictionaryProjectId,
tdp.NAME AS dictionaryProjectName,
tdp.SMPL_NAME AS dictionaryProjectSimpleName,
tdp.SHW_NAME AS dictionaryProjectShowName,
tmasm.CFG_ASY_MTHD_ID AS configAssayMethodId,
tcam.NAME AS configAssayMethodName,
tmas.BSE_SMP_ID AS baseSampleId,
tbs.NAME AS baseSampleName,
tmasm.IS_RCHK_DFT AS isRecheckDefault
FROM
T_MTRL_ASY_STD_MTHD tmasm
LEFT JOIN T_MTRL_ASY_STD_DTL tmasd ON
tmasm.MTRL_ASY_STD_DTL_ID = tmasd.ID
LEFT JOIN T_MTRL_ASY_STD tmas ON
tmasd.MTRL_ASY_STD_ID = tmas.ID
LEFT JOIN T_CFG_ASY_MTHD tcam ON
tmasm.CFG_ASY_MTHD_ID = tcam.ID
LEFT JOIN T_BSE_SMP tbs ON
tmas.BSE_SMP_ID = tbs.ID
LEFT JOIN T_DIC_PRJ tdp ON tmasd.DIC_PRJ_ID = tdp.ID
WHERE
tmasm.DELETED = 0
AND tmas.BSE_SMP_ID = #{baseSampleId}
AND tmasd.DIC_PRJ_ID IN (
SELECT
tbspsa.DIC_PRJ_ID
FROM
T_BSN_SB_PRN_SMP_ASMT tbspsa
WHERE
tbspsa.BSN_SB_PRN_SMP_ID = #{businessSubParentSampleId}
AND tbspsa.CFG_ASY_MTHD_ID = #{configAssayMethodId}
)
</select>
</mapper>

View File

@@ -0,0 +1,128 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubParentSampleAssessmentProjectMapper">
<!--
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
文档可见https://www.iocoder.cn/MyBatis/x-plugins/
-->
<select id="selectUnReportMethodGroupList" resultType="com.zt.plat.module.qms.business.bus.controller.vo.BusinessSubParentSampleAssessmentGroupRespVO" >
SELECT
tbspsa.CFG_ASY_MTHD_ID AS configAssayMethodId,
tcam.NAME AS configAssayMethodName,
tcam.ASY_DEPT_ID AS assayDepartmentId,
tcam.ASY_DEPT_NAME AS assayDepartmentName,
COUNT(DISTINCT tbspsa.BSN_SB_PRN_SMP_ID) AS sampleCount
FROM
T_BSN_SB_PRN_SMP_ASMT tbspsa
LEFT JOIN T_CFG_ASY_MTHD tcam ON
tbspsa.CFG_ASY_MTHD_ID = tcam.ID
WHERE
tbspsa.DELETED = 0
AND tbspsa.IS_RPOD = 0
<if test="reqVO.configAssayMethodName != null and reqVO.configAssayMethodName != ''">
AND tcam.NAME like '%' || #{reqVO.assayDepartmentId} || '%'
</if>
<if test="reqVO.assayDepartmentId != null and reqVO.assayDepartmentId != ''">
AND tcam.ASY_DEPT_ID = #{reqVO.assayDepartmentId}
</if>
GROUP BY
tbspsa.CFG_ASY_MTHD_ID,
tcam.NAME,
tcam.ASY_DEPT_ID ,
tcam.ASY_DEPT_NAME
</select>
<select id="selectNoReportSubParentSampleAssessment" resultType="com.zt.plat.module.qms.business.bus.controller.vo.NoReportSubParentSampleAssessmentRespVO" >
SELECT
tcssp.BSE_SMP_ID AS baseSampleId,
tbsps.BSN_BSE_SMP_ID AS businessBaseSampleId,
tbssa.BSN_SB_PRN_SMP_ID AS businessSubParentSampleId,
tbssa.CFG_ASY_MTHD_ID AS configAssayMethodId ,
tbssa.TSK_TP AS taskType,
tbssa.ASY_TP AS assayType,
tbsps.CFG_SB_SMP_PRN_ID AS configSubSampleParentId,
tbsps.SMP_NAME AS sampleName,
tbs.NAME AS baseSampleName
FROM
T_BSN_SB_SMP_ASMT tbssa
LEFT JOIN T_BSN_SB_PRN_SMP tbsps ON
tbssa.BSN_SB_PRN_SMP_ID = tbsps.ID
LEFT JOIN T_CFG_SB_SMP_PRN tcssp ON
tbsps.CFG_SB_SMP_PRN_ID = tcssp.ID
LEFT JOIN T_BSE_SMP tbs ON
tcssp.BSE_SMP_ID = tbs.ID
LEFT JOIN (
SELECT
tbspsa.BSN_SB_PRN_SMP_ID ,
tbspsa.CFG_ASY_MTHD_ID ,
tbspsa.IS_RPOD
FROM
T_BSN_SB_PRN_SMP_ASMT tbspsa
WHERE
tbspsa.IS_RPOD = 0
AND tbspsa.CFG_ASY_MTHD_ID = #{configAssayMethodId}
GROUP BY
tbspsa.BSN_SB_PRN_SMP_ID ,
tbspsa.CFG_ASY_MTHD_ID ,
tbspsa.IS_RPOD
) t ON
tbssa.BSN_SB_PRN_SMP_ID = t.BSN_SB_PRN_SMP_ID
WHERE
tbssa.IS_RPOD = 1
AND t.IS_RPOD = 0
AND tbssa.CFG_ASY_MTHD_ID = #{configAssayMethodId}
GROUP BY
tcssp.BSE_SMP_ID ,
tbsps.BSN_BSE_SMP_ID ,
tbssa.BSN_SB_PRN_SMP_ID,
tbssa.CFG_ASY_MTHD_ID,
tbssa.TSK_TP ,
tbssa.ASY_TP ,
tbsps.CFG_SB_SMP_PRN_ID,
tbsps.SMP_NAME ,
tbs.NAME
</select>
<select id="getRecheckAssayMethodList" resultType="com.zt.plat.module.qms.business.bus.controller.vo.RecheckSubSampleParentMethodRespVO">
SELECT
tmasd.DIC_PRJ_ID dictionaryProjectId,
tdp.NAME AS dictionaryProjectName,
tdp.SMPL_NAME AS dictionaryProjectSimpleName,
tdp.SHW_NAME AS dictionaryProjectShowName,
tmasm.CFG_ASY_MTHD_ID AS configAssayMethodId,
tcam.NAME AS configAssayMethodName,
tmas.BSE_SMP_ID AS baseSampleId,
tbs.NAME AS baseSampleName,
tmasm.IS_RCHK_DFT AS isRecheckDefault
FROM
T_MTRL_ASY_STD_MTHD tmasm
LEFT JOIN T_MTRL_ASY_STD_DTL tmasd ON
tmasm.MTRL_ASY_STD_DTL_ID = tmasd.ID
LEFT JOIN T_MTRL_ASY_STD tmas ON
tmasd.MTRL_ASY_STD_ID = tmas.ID
LEFT JOIN T_CFG_ASY_MTHD tcam ON
tmasm.CFG_ASY_MTHD_ID = tcam.ID
LEFT JOIN T_BSE_SMP tbs ON
tmas.BSE_SMP_ID = tbs.ID
LEFT JOIN T_DIC_PRJ tdp ON tmasd.DIC_PRJ_ID = tdp.ID
WHERE
tmasm.DELETED = 0
AND tmas.BSE_SMP_ID = #{baseSampleId}
AND tmasd.DIC_PRJ_ID IN (
SELECT
tbspsa.DIC_PRJ_ID
FROM
T_BSN_SB_PRN_SMP_ASMT tbspsa
WHERE
tbspsa.BSN_SB_PRN_SMP_ID = #{businessSubParentSampleId}
AND tbspsa.CFG_ASY_MTHD_ID = #{configAssayMethodId}
)
</select>
</mapper>

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zt.plat.module.qms.business.bus.dal.mapper.BusinessSubSampleAssessmentProjectMapper">
<!--
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
文档可见https://www.iocoder.cn/MyBatis/x-plugins/
-->
</mapper>