添加委托来源与类型关系表

This commit is contained in:
2025-12-03 08:41:01 +08:00
parent 2b60bd7c7b
commit 04596350b6
23 changed files with 783 additions and 300 deletions

View File

@@ -99,6 +99,13 @@ public class BaseSampleController implements BusinessControllerMarker {
PageResult<BaseSampleDO> pageResult = baseSampleService.getBaseSamplePage(pageReqVO);
return success(BeanUtils.toBean(pageResult, BaseSampleRespVO.class));
}
@GetMapping("/list")
@Operation(summary = "获得样品大类管理列表")
public CommonResult<?> getBaseSampleList(BaseSamplePageReqVO reqVO) {
List<BaseSampleRespVO> list = baseSampleService.getBaseSampleList(reqVO);
return success(list);
}
@GetMapping("/export-excel")
@Operation(summary = "导出样品大类管理 Excel")

View File

@@ -42,4 +42,9 @@ public class BaseSamplePageReqVO extends PageParam {
@Schema(description = "检测标准数量")
private String assayStandardCount;
@Schema(description = "检验委托来源配置ID", example = "321")
private Long configEntrustSourceId;
@Schema(description = "委托类型,委托登记-entrust_registration、检验委托-entrust_inspection", example = "1")
private String entrustType;
}

View File

@@ -0,0 +1,35 @@
package com.zt.plat.module.qms.business.config.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 ConfigEntrustSourceSampleTypePageReqVO extends PageParam {
@Schema(description = "检验委托来源配置ID", example = "321")
private Long configEntrustSourceId;
@Schema(description = "样品类型_ID,字典表【T_DIC_BSN】样品类型委检样、商检分析样、商检综合样、西南铜产品", example = "30057")
private Long dictionaryBusinessId;
@Schema(description = "参数分组_Key,字典表【T_DIC_BSN】样品类型")
private String dictionaryBusinessKey;
@Schema(description = "所属部门")
private String systemDepartmentCode;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "备注")
private String remark;
}

View File

@@ -0,0 +1,43 @@
package com.zt.plat.module.qms.business.config.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 ConfigEntrustSourceSampleTypeRespVO {
@Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "2073")
@ExcelProperty("ID")
private Long id;
@Schema(description = "检验委托来源配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "321")
@ExcelProperty("检验委托来源配置ID")
private Long configEntrustSourceId;
@Schema(description = "样品类型_ID,字典表【T_DIC_BSN】样品类型委检样、商检分析样、商检综合样、西南铜产品", requiredMode = Schema.RequiredMode.REQUIRED, example = "30057")
@ExcelProperty("样品类型_ID,字典表【T_DIC_BSN】样品类型委检样、商检分析样、商检综合样、西南铜产品")
private Long dictionaryBusinessId;
@Schema(description = "参数分组_Key,字典表【T_DIC_BSN】样品类型")
@ExcelProperty("参数分组_Key,字典表【T_DIC_BSN】样品类型")
private String dictionaryBusinessKey;
@Schema(description = "所属部门")
@ExcelProperty("所属部门")
private String systemDepartmentCode;
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("创建时间")
private LocalDateTime createTime;
@Schema(description = "备注")
@ExcelProperty("备注")
private String remark;
}

View File

@@ -0,0 +1,32 @@
package com.zt.plat.module.qms.business.config.controller.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import jakarta.validation.constraints.*;
@Schema(description = "管理后台 - 检验委托来源与样品类型配置新增/修改 Request VO")
@Data
public class ConfigEntrustSourceSampleTypeSaveReqVO {
@Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "2073")
private Long id;
@Schema(description = "检验委托来源配置ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "321")
@NotEmpty(message = "检验委托来源配置ID不能为空")
private Long configEntrustSourceId;
@Schema(description = "样品类型_ID,字典表【T_DIC_BSN】样品类型委检样、商检分析样、商检综合样、西南铜产品", requiredMode = Schema.RequiredMode.REQUIRED, example = "30057")
@NotNull(message = "样品类型_ID,字典表【T_DIC_BSN】样品类型委检样、商检分析样、商检综合样、西南铜产品不能为空")
private Long dictionaryBusinessId;
@Schema(description = "参数分组_Key,字典表【T_DIC_BSN】样品类型")
private String dictionaryBusinessKey;
@Schema(description = "所属部门")
private String systemDepartmentCode;
@Schema(description = "备注")
private String remark;
}

View File

@@ -52,10 +52,15 @@ public class BaseSampleDO extends BusinessBaseDO {
@TableField("MTRL_NAME")
private String materialName;
/**
* 样品类型_ID,字典表【T_DIC_BSN】结算样、委检样、抽查样
* 样品类型
*/
@TableField("DIC_BSN_ID")
private Long dictionaryBusinessId;
/**
* 样品类型key
*/
@TableField("DIC_BSN_KY")
private String dictionaryBusinessKey;
/**
* 所属部门
*/

View File

@@ -0,0 +1,60 @@
package com.zt.plat.module.qms.business.config.dal.dataobject;
import lombok.*;
import java.util.*;
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_cfg_entt_src_smp_tp")
@KeySequence("t_cfg_entt_src_smp_tp_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
/**
* 支持业务基类继承isBusiness=true 时继承 BusinessBaseDO否则继承 BaseDO
*/
public class ConfigEntrustSourceSampleTypeDO extends BusinessBaseDO {
/**
* ID
*/
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/**
* 检验委托来源配置ID
*/
@TableField("CFG_ENTT_SRC_ID")
private Long configEntrustSourceId;
/**
* 样品类型_ID,字典表【T_DIC_BSN】样品类型委检样、商检分析样、商检综合样、西南铜产品
*/
@TableField("DIC_BSN_ID")
private Long dictionaryBusinessId;
/**
* 参数分组_Key,字典表【T_DIC_BSN】样品类型
*/
@TableField("DIC_BSN_KY")
private String dictionaryBusinessKey;
/**
* 所属部门
*/
@TableField("SYS_DEPT_CD")
private String systemDepartmentCode;
/**
* 备注
*/
@TableField("RMK")
private String remark;
}

View File

@@ -1,10 +1,17 @@
package com.zt.plat.module.qms.business.config.dal.mapper;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.framework.common.util.object.BeanUtils;
import com.zt.plat.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.zt.plat.framework.mybatis.core.query.MPJLambdaWrapperX;
import com.zt.plat.framework.mybatis.core.mapper.BaseMapperX;
import com.zt.plat.module.qms.business.config.controller.vo.BaseSamplePageReqVO;
import com.zt.plat.module.qms.business.config.controller.vo.*;
import com.zt.plat.module.qms.business.config.dal.dataobject.BaseSampleDO;
import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigEntrustSourceSampleTypeDO;
import com.zt.plat.module.qms.enums.QmsCommonConstant;
import cn.hutool.core.util.ObjectUtil;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@@ -29,6 +36,28 @@ public interface BaseSampleMapper extends BaseMapperX<BaseSampleDO> {
.eqIfPresent(BaseSampleDO::getRemark, reqVO.getRemark())
.orderByDesc(BaseSampleDO::getId));
}
default List<BaseSampleRespVO> selectList(BaseSamplePageReqVO reqVO) {
LambdaQueryWrapperX<BaseSampleDO> queryWrapperX = new LambdaQueryWrapperX<BaseSampleDO>()
.likeIfPresent(BaseSampleDO::getName, reqVO.getName())
.eqIfPresent(BaseSampleDO::getMaterialId, reqVO.getMaterialId())
.eqIfPresent(BaseSampleDO::getMaterialCode, reqVO.getMaterialCode())
.likeIfPresent(BaseSampleDO::getMaterialName, reqVO.getMaterialName())
.eqIfPresent(BaseSampleDO::getDictionaryBusinessId, reqVO.getDictionaryBusinessId())
.eqIfPresent(BaseSampleDO::getSystemDepartmentCode, reqVO.getSystemDepartmentCode())
.betweenIfPresent(BaseSampleDO::getCreateTime, reqVO.getCreateTime())
.eqIfPresent(BaseSampleDO::getRemark, reqVO.getRemark());
if (ObjectUtil.isNotEmpty(reqVO.getConfigEntrustSourceId())) {
queryWrapperX.inSql(BaseSampleDO::getDictionaryBusinessId, "SELECT tcesst.DIC_BSN_ID FROM T_CFG_ENTT_SRC_SMP_TP tcesst WHERE tcesst.CFG_ENTT_SRC_ID = " + reqVO.getConfigEntrustSourceId());
}
if (QmsCommonConstant.ENTRUST_INSPECTION.equals(reqVO.getEntrustType())) {
queryWrapperX.inSql(BaseSampleDO::getDictionaryBusinessId, "SELECT tcesst.DIC_BSN_ID FROM T_CFG_ENTT_SRC_SMP_TP tcesst LEFT JOIN T_CFG_ENTT_SRC tces ON tcesst.CFG_ENTT_SRC_ID = tces.ID WHERE tces.ENTT_TP = '" + reqVO.getEntrustType() + "'");
}
queryWrapperX.orderByDesc(BaseSampleDO::getId);
List<BaseSampleDO> list = selectList(queryWrapperX);
return BeanUtils.toBean(list, BaseSampleRespVO.class);
}
List<BaseSampleDO> getBaseSampleListWithAssayStandardCount();

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