From b73dbbbdc124ff255631059f156567a75df80165 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期二, 15 四月 2025 14:48:17 +0800 Subject: [PATCH] 实验方案管理 --- ruoyi-system/src/main/java/com/ruoyi/system/dto/ApplicationTerminationAuditDTO.java | 23 +++ ruoyi-system/src/main/java/com/ruoyi/system/dto/ApplicationTerminationDTO.java | 29 ++++ ruoyi-system/src/main/java/com/ruoyi/system/dto/TExperimentSchemeDTO.java | 18 ++ ruoyi-system/src/main/java/com/ruoyi/system/mapper/TExperimentSchemeMapper.java | 13 + ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TExperimentSchemeController.java | 209 +++++++++++++++++++++++++++++ ruoyi-system/src/main/java/com/ruoyi/system/service/TExperimentSchemeService.java | 9 + ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TExperimentSchemeServiceImpl.java | 13 + ruoyi-system/src/main/java/com/ruoyi/system/model/TExperimentDispatch.java | 4 ruoyi-system/src/main/java/com/ruoyi/system/model/TExperimentScheme.java | 4 ruoyi-system/src/main/java/com/ruoyi/system/query/TExperimentSchemeQuery.java | 20 ++ ruoyi-system/src/main/java/com/ruoyi/system/vo/TExperimentSchemeVO.java | 26 +++ ruoyi-system/src/main/resources/mapper/system/TExperimentSchemeMapper.xml | 31 ++++ 12 files changed, 395 insertions(+), 4 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TExperimentSchemeController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TExperimentSchemeController.java index d69085d..0e1c895 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TExperimentSchemeController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TExperimentSchemeController.java @@ -1,9 +1,32 @@ package com.ruoyi.web.controller.api; +import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.basic.PageInfo; +import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.framework.web.service.TokenService; +import com.ruoyi.system.dto.ApplicationTerminationAuditDTO; +import com.ruoyi.system.dto.ApplicationTerminationDTO; +import com.ruoyi.system.dto.TExperimentSchemeDTO; +import com.ruoyi.system.dto.TestMethodConfirmSheetSignDTO; +import com.ruoyi.system.mapper.SysUserMapper; +import com.ruoyi.system.model.*; +import com.ruoyi.system.query.TExperimentSchemeQuery; +import com.ruoyi.system.service.*; +import com.ruoyi.system.vo.TExperimentSchemeVO; import io.swagger.annotations.Api; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import java.time.LocalDateTime; +import java.util.List; +import java.util.Objects; /** * <p> @@ -15,8 +38,188 @@ */ @Api(tags = "实验方案管理") @RestController -@RequestMapping("/t-experiment-scheme") +@RequestMapping("") public class TExperimentSchemeController { + private final TExperimentSchemeService experimentSchemeService; + private final TokenService tokenService; + private final ISysUserService sysUserService; + private final SysUserMapper sysUserMapper; + private final TExperimentSchemePersonService experimentSchemePersonService; + private final TExperimentDispatchParticipantsService experimentDispatchParticipantsService; + private final TExperimentDispatchService experimentDispatchService; + private final TProjectProposalService projectProposalService; + @Autowired + public TExperimentSchemeController(TExperimentSchemeService experimentSchemeService, TokenService tokenService, ISysUserService sysUserService, SysUserMapper sysUserMapper, TExperimentSchemePersonService experimentSchemePersonService, TExperimentDispatchParticipantsService experimentDispatchParticipantsService, TExperimentDispatchService experimentDispatchService, TProjectProposalService projectProposalService) { + this.experimentSchemeService = experimentSchemeService; + this.tokenService = tokenService; + this.sysUserService = sysUserService; + this.sysUserMapper = sysUserMapper; + this.experimentSchemePersonService = experimentSchemePersonService; + this.experimentDispatchParticipantsService = experimentDispatchParticipantsService; + this.experimentDispatchService = experimentDispatchService; + this.projectProposalService = projectProposalService; + } + + /** + * 获取实验方案管理列表 + */ + @PreAuthorize("@ss.hasPermi('system:testMethodConfirmSheet:list')") + @ApiOperation(value = "获取实验方案分页列表") + @PostMapping(value = "/api/t-experiment-scheme/pageList") + public R<PageInfo<TExperimentSchemeVO>> pageList(@RequestBody String param) { + TExperimentSchemeQuery query = JSON.parseObject(param, TExperimentSchemeQuery.class); + return R.ok(experimentSchemeService.pageList(query)); + } + + /** + * 通过实验调度查询查询组别列表 + */ + @ApiOperation(value = "通过实验调度查询查询组别列表") + @GetMapping(value = "/open/t-experiment-scheme/getGroupByDispatchId") + public R<List<TExperimentDispatchParticipants>> getGroupByDispatchId(@RequestParam String dispatchId) { + List<TExperimentDispatchParticipants> list = experimentDispatchParticipantsService.list(Wrappers.lambdaQuery(TExperimentDispatchParticipants.class) + .eq(TExperimentDispatchParticipants::getDispatchId, dispatchId)); + return R.ok(list); + } + + /** + * 添加实验方案管理 + */ + @PreAuthorize("@ss.hasPermi('system:testMethodConfirmSheet:add')") + @Log(title = "实验方案信息-新增实验方案", businessType = BusinessType.INSERT) + @ApiOperation(value = "添加实验方案",response = TExperimentSchemeDTO.class) + @PostMapping(value = "/api/t-experiment-scheme/add") + public R<Boolean> add(@RequestBody String param) { + TExperimentSchemeDTO dto = JSON.parseObject(param,TExperimentSchemeDTO.class); + experimentSchemeService.save(dto); + List<TExperimentSchemePerson> experimentSchemePersons = dto.getExperimentSchemePersons(); + experimentSchemePersons.forEach(experimentSchemePerson -> { + experimentSchemePerson.setSchemeId(dto.getId()); + experimentSchemePerson.setCommitTime(LocalDateTime.now()); + }); + experimentSchemePersonService.saveBatch(experimentSchemePersons); + return R.ok(); + } + + /** + * 修改实验方案 + */ + @PreAuthorize("@ss.hasPermi('system:testMethodConfirmSheet:edit')") + @Log(title = "实验方案信息-修改实验方案", businessType = BusinessType.UPDATE) + @ApiOperation(value = "修改实验方案") + @PostMapping(value = "/api/t-experiment-scheme/update") + public R<Boolean> update(@RequestBody String param) { + TExperimentSchemeDTO dto = JSON.parseObject(param,TExperimentSchemeDTO.class); + experimentSchemeService.updateById(dto); + experimentSchemePersonService.remove(Wrappers.lambdaQuery(TExperimentSchemePerson.class).eq(TExperimentSchemePerson::getSchemeId,dto.getId())); + List<TExperimentSchemePerson> experimentSchemePersons = dto.getExperimentSchemePersons(); + experimentSchemePersons.forEach(experimentSchemePerson -> { + experimentSchemePerson.setSchemeId(dto.getId()); + experimentSchemePerson.setCommitTime(LocalDateTime.now()); + }); + experimentSchemePersonService.saveBatch(experimentSchemePersons); + return R.ok(); + } + + /** + * 查看实验方案详情 + */ + @PreAuthorize("@ss.hasPermi('system:testMethodConfirmSheet:detail')") + @ApiOperation(value = "查看实验方案详情") + @GetMapping(value = "/open/t-experiment-scheme/getDetailById") + public R<TExperimentSchemeVO> getDetailById(@RequestParam String id) { + TExperimentScheme experimentScheme = experimentSchemeService.getById(id); + TExperimentSchemeVO experimentSchemeVO = new TExperimentSchemeVO(); + BeanUtils.copyProperties(experimentScheme, experimentSchemeVO); + + // 查询实验调度信息 + TExperimentDispatch experimentDispatch = experimentDispatchService.getById(experimentSchemeVO.getDispatchId()); + if(Objects.nonNull(experimentDispatch)){ + // 查询课题方案名称 + TProjectProposal projectProposal = projectProposalService.getById(experimentDispatch.getProposalId()); + if(Objects.nonNull(projectProposal)){ + experimentDispatch.setProjectName(projectProposal.getProjectName()); + } + } + experimentSchemeVO.setExperimentDispatch(experimentDispatch); + + // 查询组别 + List<TExperimentDispatchParticipants> list = experimentDispatchParticipantsService.list(Wrappers.lambdaQuery(TExperimentDispatchParticipants.class) + .eq(TExperimentDispatchParticipants::getDispatchId, experimentSchemeVO.getDispatchId())); + experimentSchemeVO.setExperimentDispatchParticipants(list); + + // 获取实验人员 + List<TExperimentSchemePerson> experimentSchemePersons = experimentSchemePersonService.list(Wrappers.lambdaQuery(TExperimentSchemePerson.class) + .eq(TExperimentSchemePerson::getSchemeId, id)); + experimentSchemeVO.setExperimentSchemePersons(experimentSchemePersons); + + return R.ok(experimentSchemeVO); + } + + /** + * 删除实验方案 + */ + @PreAuthorize("@ss.hasPermi('system:testMethodConfirmSheet:delete')") + @Log(title = "实验方案信息-删除实验方案", businessType = BusinessType.DELETE) + @ApiOperation(value = "删除实验方案") + @DeleteMapping(value = "/open/t-experiment-scheme/deleteById") + public R<Boolean> deleteById(@RequestParam String id) { + // 删除试验方案人员 + experimentSchemePersonService.remove(Wrappers.lambdaQuery(TExperimentSchemePerson.class).eq(TExperimentSchemePerson::getSchemeId, id)); + return R.ok(experimentSchemeService.removeById(id)); + } + + /** + * 批量删除实验方案 + */ + @PreAuthorize("@ss.hasPermi('system:testMethodConfirmSheet:delete')") + @Log(title = "实验方案信息-删除实验方案", businessType = BusinessType.DELETE) + @ApiOperation(value = "批量删除实验方案") + @DeleteMapping(value = "/open/t-experiment-scheme/deleteByIds") + public R<Boolean> deleteByIds(@RequestBody List<String> ids) { + // 删除试验方案人员 + experimentSchemePersonService.remove(Wrappers.lambdaQuery(TExperimentSchemePerson.class).in(TExperimentSchemePerson::getSchemeId, ids)); + return R.ok(experimentSchemeService.removeByIds(ids)); + } + + /** + * 批量删除实验方案 + */ + @PreAuthorize("@ss.hasPermi('system:testMethodConfirmSheet:sign')") + @Log(title = "实验方案信息-申请中止实验", businessType = BusinessType.UPDATE) + @ApiOperation(value = "申请中止实验") + @PostMapping(value = "/api/t-experiment-scheme/applicationTermination") + public R<Boolean> applicationTermination(@RequestBody String param) { + ApplicationTerminationDTO applicationTerminationDTO = JSON.parseObject(param, ApplicationTerminationDTO.class); + experimentSchemeService.update(Wrappers.lambdaUpdate(TExperimentScheme.class) + .eq(TExperimentScheme::getId, applicationTerminationDTO.getId()) + .set(TExperimentScheme::getStatus, 2) + .set(TExperimentScheme::getStopReason, applicationTerminationDTO.getStopReason()) + .set(TExperimentScheme::getStopFile, applicationTerminationDTO.getStopFile()) + .set(TExperimentScheme::getStopFileName, applicationTerminationDTO.getStopFileName()) + .set(TExperimentScheme::getCommitSign, applicationTerminationDTO.getCommitSign())); + return R.ok(); + } + + /** + * 批量删除实验方案 + */ + @PreAuthorize("@ss.hasPermi('system:testMethodConfirmSheet:audit')") + @Log(title = "实验方案信息-申请中止实验审核", businessType = BusinessType.UPDATE) + @ApiOperation(value = "申请中止实验审核") + @PostMapping(value = "/api/t-experiment-scheme/audit") + public R<Boolean> audit(@RequestBody String param) { + ApplicationTerminationAuditDTO applicationTerminationAuditDTO = JSON.parseObject(param, ApplicationTerminationAuditDTO.class); + Long userId = tokenService.getLoginUser().getUserId(); + experimentSchemeService.update(Wrappers.lambdaUpdate(TExperimentScheme.class) + .eq(TExperimentScheme::getId, applicationTerminationAuditDTO.getId()) + .set(TExperimentScheme::getStatus, applicationTerminationAuditDTO.getStatus()) + .set(TExperimentScheme::getAuditRemark, applicationTerminationAuditDTO.getAuditRemark()) + .set(TExperimentScheme::getAuditPersonId, userId) + .set(TExperimentScheme::getAuditTime, LocalDateTime.now())); + return R.ok(); + } + } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/dto/ApplicationTerminationAuditDTO.java b/ruoyi-system/src/main/java/com/ruoyi/system/dto/ApplicationTerminationAuditDTO.java new file mode 100644 index 0000000..1fc153c --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/dto/ApplicationTerminationAuditDTO.java @@ -0,0 +1,23 @@ +package com.ruoyi.system.dto; + +import com.baomidou.mybatisplus.annotation.TableField; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +@ApiModel(value = "申请中止实验审核DTO") +public class ApplicationTerminationAuditDTO implements Serializable { + + @ApiModelProperty(value = "实验方案id") + private String id; + + @ApiModelProperty(value = "审核意见") + private String auditRemark; + + @ApiModelProperty(value = "审批状态 -1=草稿箱 1=已发送 2=申请中止待审核 3=申请中止已通过 4=申请中止已驳回 5=已封存") + private Integer status; + +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/dto/ApplicationTerminationDTO.java b/ruoyi-system/src/main/java/com/ruoyi/system/dto/ApplicationTerminationDTO.java new file mode 100644 index 0000000..6db21ed --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/dto/ApplicationTerminationDTO.java @@ -0,0 +1,29 @@ +package com.ruoyi.system.dto; + +import com.baomidou.mybatisplus.annotation.TableField; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +@ApiModel(value = "申请中止实验DTO") +public class ApplicationTerminationDTO implements Serializable { + + @ApiModelProperty(value = "实验方案id") + private String id; + + @ApiModelProperty(value = "中止原因") + private String stopReason; + + @ApiModelProperty(value = "中止文件") + private String stopFile; + + @ApiModelProperty(value = "中止文件名称") + private String stopFileName; + + @ApiModelProperty(value = "提交签字") + private String commitSign; + +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/dto/TExperimentSchemeDTO.java b/ruoyi-system/src/main/java/com/ruoyi/system/dto/TExperimentSchemeDTO.java new file mode 100644 index 0000000..001abfc --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/dto/TExperimentSchemeDTO.java @@ -0,0 +1,18 @@ +package com.ruoyi.system.dto; + +import com.ruoyi.system.model.TExperimentScheme; +import com.ruoyi.system.model.TExperimentSchemePerson; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +@ApiModel(value="实验方案管理新增编辑DTO") +public class TExperimentSchemeDTO extends TExperimentScheme { + + @ApiModelProperty(value = "实验方案人员") + private List<TExperimentSchemePerson> experimentSchemePersons; + +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/TExperimentSchemeMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/TExperimentSchemeMapper.java index 8ba9f7f..1b39665 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/TExperimentSchemeMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/TExperimentSchemeMapper.java @@ -1,7 +1,13 @@ package com.ruoyi.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.common.basic.PageInfo; import com.ruoyi.system.model.TExperimentScheme; +import com.ruoyi.system.query.TExperimentSchemeQuery; +import com.ruoyi.system.vo.TExperimentSchemeVO; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * <p> @@ -13,4 +19,11 @@ */ public interface TExperimentSchemeMapper extends BaseMapper<TExperimentScheme> { + /** + * 分页查询 + * @param query + * @param pageInfo + * @return + */ + List<TExperimentSchemeVO> pageList(@Param("query") TExperimentSchemeQuery query, @Param("pageInfo") PageInfo<TExperimentSchemeVO> pageInfo); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/model/TExperimentDispatch.java b/ruoyi-system/src/main/java/com/ruoyi/system/model/TExperimentDispatch.java index 69adafc..f7f5c8f 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/model/TExperimentDispatch.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/model/TExperimentDispatch.java @@ -65,4 +65,8 @@ @TableField("status") private Integer status; + @ApiModelProperty(value = "课题方案名称") + @TableField(exist = false) + private String projectName; + } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/model/TExperimentScheme.java b/ruoyi-system/src/main/java/com/ruoyi/system/model/TExperimentScheme.java index 6b6ae7b..e525f84 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/model/TExperimentScheme.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/model/TExperimentScheme.java @@ -67,6 +67,10 @@ @TableField("stop_file") private String stopFile; + @ApiModelProperty(value = "中止文件名称") + @TableField("stop_file_name") + private String stopFileName; + @ApiModelProperty(value = "提交签字") @TableField("commit_sign") private String commitSign; diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/query/TExperimentSchemeQuery.java b/ruoyi-system/src/main/java/com/ruoyi/system/query/TExperimentSchemeQuery.java new file mode 100644 index 0000000..be56c2c --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/query/TExperimentSchemeQuery.java @@ -0,0 +1,20 @@ +package com.ruoyi.system.query; + +import com.ruoyi.common.core.domain.model.TimeRangeQueryBody; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "实验方案管理query") +public class TExperimentSchemeQuery extends TimeRangeQueryBody { + + @ApiModelProperty(value = "项目课题方案") + private String projectName; + + @ApiModelProperty(value = "实验编号") + private String experimentCode; + + @ApiModelProperty(value = "审批状态 -1=草稿箱 1=已发送 2=申请中止待审核 3=申请中止已通过 4=申请中止已驳回 5=已封存") + private Integer status; +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/TExperimentSchemeService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/TExperimentSchemeService.java index a555b71..2c515b6 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/TExperimentSchemeService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/TExperimentSchemeService.java @@ -1,7 +1,10 @@ package com.ruoyi.system.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.common.basic.PageInfo; import com.ruoyi.system.model.TExperimentScheme; +import com.ruoyi.system.query.TExperimentSchemeQuery; +import com.ruoyi.system.vo.TExperimentSchemeVO; /** * <p> @@ -13,4 +16,10 @@ */ public interface TExperimentSchemeService extends IService<TExperimentScheme> { + /** + * 获取检验方法确认单分页列表 + * @param query + * @return + */ + PageInfo<TExperimentSchemeVO> pageList(TExperimentSchemeQuery query); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TExperimentSchemeServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TExperimentSchemeServiceImpl.java index 7c03e59..725372e 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TExperimentSchemeServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TExperimentSchemeServiceImpl.java @@ -1,10 +1,16 @@ package com.ruoyi.system.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.common.basic.PageInfo; import com.ruoyi.system.mapper.TExperimentSchemeMapper; import com.ruoyi.system.model.TExperimentScheme; +import com.ruoyi.system.query.TExperimentSchemeQuery; import com.ruoyi.system.service.TExperimentSchemeService; +import com.ruoyi.system.vo.SysOperLogVO; +import com.ruoyi.system.vo.TExperimentSchemeVO; import org.springframework.stereotype.Service; + +import java.util.List; /** * <p> @@ -17,4 +23,11 @@ @Service public class TExperimentSchemeServiceImpl extends ServiceImpl<TExperimentSchemeMapper, TExperimentScheme> implements TExperimentSchemeService { + @Override + public PageInfo<TExperimentSchemeVO> pageList(TExperimentSchemeQuery query) { + PageInfo<TExperimentSchemeVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize()); + List<TExperimentSchemeVO> list = this.baseMapper.pageList(query,pageInfo); + pageInfo.setRecords(list); + return pageInfo; + } } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/vo/TExperimentSchemeVO.java b/ruoyi-system/src/main/java/com/ruoyi/system/vo/TExperimentSchemeVO.java new file mode 100644 index 0000000..38b8bf0 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/vo/TExperimentSchemeVO.java @@ -0,0 +1,26 @@ +package com.ruoyi.system.vo; + +import com.ruoyi.system.model.TExperimentDispatch; +import com.ruoyi.system.model.TExperimentDispatchParticipants; +import com.ruoyi.system.model.TExperimentScheme; +import com.ruoyi.system.model.TExperimentSchemePerson; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +@ApiModel(value = "实验方案管理VO", description = "实验方案管理VO") +public class TExperimentSchemeVO extends TExperimentScheme { + + @ApiModelProperty(value = "实验人员信息") + private List<TExperimentSchemePerson> experimentSchemePersons; + + @ApiModelProperty(value = "实验组别") + private List<TExperimentDispatchParticipants> experimentDispatchParticipants; + + @ApiModelProperty(value = "实验调度信息") + private TExperimentDispatch experimentDispatch; + +} diff --git a/ruoyi-system/src/main/resources/mapper/system/TExperimentSchemeMapper.xml b/ruoyi-system/src/main/resources/mapper/system/TExperimentSchemeMapper.xml index 6331300..3c10907 100644 --- a/ruoyi-system/src/main/resources/mapper/system/TExperimentSchemeMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/TExperimentSchemeMapper.xml @@ -14,6 +14,7 @@ <result column="experiment_step_record" property="experimentStepRecord" /> <result column="stop_reason" property="stopReason" /> <result column="stop_file" property="stopFile" /> + <result column="stop_file_name" property="stopFileName" /> <result column="commit_sign" property="commitSign" /> <result column="status" property="status" /> <result column="audit_person_id" property="auditPersonId" /> @@ -28,7 +29,35 @@ <!-- 通用查询结果列 --> <sql id="Base_Column_List"> - id, dispatch_id, experiment_date, experiment_objective, experiment_param_route, experiment_material, experiment_device, experiment_step_record, stop_reason, stop_file, commit_sign, status, audit_person_id, audit_time, audit_remark, create_time, update_time, create_by, update_by, disabled + id, dispatch_id, experiment_date, experiment_objective, experiment_param_route, experiment_material, experiment_device, + experiment_step_record, stop_reason, stop_file,stop_file_name, commit_sign, status, audit_person_id, audit_time, audit_remark, + create_time, update_time, create_by, update_by, disabled </sql> + <select id="pageList" resultType="com.ruoyi.system.vo.TExperimentSchemeVO"> + select tes.id, tes.dispatch_id, tes.experiment_date, tes.experiment_objective, tes.experiment_param_route, + tes.experiment_material, tes.experiment_device, tes.experiment_step_record, tes.stop_reason, tes.stop_file,tes.stop_file_name, + tes.commit_sign, tes.status, tes.audit_person_id, tes.audit_time, tes.audit_remark, tes.create_time, tes.update_time, + tes.create_by, tes.update_by, tes.disabled, tpp.project_name as projectName,ted.experiment_code as experimentCode, + ted.experiment_name as experimentName + from t_experiment_scheme tes + left join t_experiment_dispatch ted on tes.dispatch_id = ted.id + left join t_project_proposal tpp on ted.project_id = tpp.id + <where> + <if test="query.status != null"> + and tes.status = #{query.status} + </if> + <if test="query.projectName != null and query.projectName != ''"> + and tpp.project_name like concat('%', #{query.projectName}, '%') + </if> + <if test="query.experimentCode != null and query.experimentCode != ''"> + and tes.experiment_code like concat('%', #{query.experimentCode}, '%') + </if> + <if test="query.startTime != null and query.startTime != '' and query.endTime != null and query.endTime != ''"> + AND tes.create_time BETWEEN #{query.startTime} AND #{query.endTime} + </if> + AND tes.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()} + </where> + ORDER BY tes.create_time DESC + </select> </mapper> -- Gitblit v1.7.1