From 9961fd3e734552a21a30c12cea39ebf3ff57227f Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期二, 20 五月 2025 09:41:08 +0800 Subject: [PATCH] 测评接口 --- ruoyi-system/src/main/java/com/ruoyi/system/dto/TQaProduceReportEvaluateDTO.java | 18 ++++++ ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TQaProduceReportServiceImpl.java | 8 ++ ruoyi-system/src/main/java/com/ruoyi/system/model/TQaTestItem.java | 10 ++ ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaProduceReportController.java | 48 ++++++++++++++- ruoyi-system/src/main/java/com/ruoyi/system/mapper/TQaProduceReportMapper.java | 7 ++ ruoyi-system/src/main/java/com/ruoyi/system/service/TQaProduceReportService.java | 6 ++ ruoyi-system/src/main/resources/mapper/system/TQaTestItemMapper.xml | 7 +- ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TSamplingRecordController.java | 10 +- ruoyi-system/src/main/java/com/ruoyi/system/model/TSamplingRecordOperation.java | 9 +- ruoyi-system/src/main/resources/mapper/system/TQaProduceReportMapper.xml | 31 ++++++++++ ruoyi-system/src/main/java/com/ruoyi/system/vo/TSamplingRecordVO.java | 7 ++ 11 files changed, 142 insertions(+), 19 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaProduceReportController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaProduceReportController.java index 3d4fcf2..3ed222b 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaProduceReportController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TQaProduceReportController.java @@ -6,13 +6,11 @@ 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.common.enums.QAProduceReportStatusEnum; -import com.ruoyi.common.enums.QaReportFileEnum; -import com.ruoyi.common.enums.QaReportTypeEnum; +import com.ruoyi.common.enums.*; import com.ruoyi.framework.web.service.TokenService; import com.ruoyi.system.dto.AuditStatusDTO; import com.ruoyi.system.dto.TQaProduceReportDTO; +import com.ruoyi.system.dto.TQaProduceReportEvaluateDTO; import com.ruoyi.system.model.TProjectTeam; import com.ruoyi.system.model.TProjectTeamStaff; import com.ruoyi.system.model.TQaProduceReport; @@ -82,6 +80,29 @@ } } return R.ok(qaProduceReportService.pageList(query)); + } + + /** + * 获取中试、生产验证分析报告;辅料;产品报告管理评定列表 + */ + //@PreAuthorize("@ss.hasPermi('system:qaProduceReport:evaluateList')") + @ApiOperation(value = "获取中试、生产验证分析报告;辅料;产品报告管理评定列表", response = TQaProduceReportQuery.class) + @PostMapping(value = "/api/t-qa-produce-report/evaluateList") + public R<PageInfo<TQaProduceReportVO>> evaluateList(@RequestBody String param) { + TQaProduceReportQuery query = JSON.parseObject(param, TQaProduceReportQuery.class); + Long userId = tokenService.getLoginUser().getUserId(); + Integer roleType = tokenService.getLoginUser().getUser().getRoleType(); + if(roleType != 1){ + // 查询用户所在项目组 + List<TProjectTeamStaff> projectTeamStaffs = projectTeamStaffService.list(Wrappers.lambdaQuery(TProjectTeamStaff.class) + .eq(TProjectTeamStaff::getUserId, userId)); + if(projectTeamStaffs.size() > 0){ + // 查询项目组id + List<String> teamIds = projectTeamStaffs.stream().map(TProjectTeamStaff::getTeamId).distinct().collect(Collectors.toList()); + query.setTeamIds(teamIds); + } + } + return R.ok(qaProduceReportService.evaluateList(query)); } /** @@ -265,6 +286,25 @@ qaProduceReportService.updateById(qaProduceReport); return R.ok(); } + + /** + * 评定QA检测项管理 + */ + //@PreAuthorize("@ss.hasPermi('system:qaTestItem:evaluate')") + @Log(title = "中试、生产验证分析报告;辅料;产品报告管理信息-评定中试、生产验证分析报告;辅料;产品报告管理信息", businessType = BusinessType.UPDATE) + @ApiOperation(value = "评定QA检测项管理",response = TQaProduceReportEvaluateDTO.class) + @PostMapping(value = "/api/t-qa-produce-report/evaluate") + public R<Boolean> evaluate(@RequestBody String param) { + TQaProduceReportEvaluateDTO dto = JSON.parseObject(param,TQaProduceReportEvaluateDTO.class); + Long userId = tokenService.getLoginUser().getUserId(); + TQaProduceReport qaProduceReport = qaProduceReportService.getById(dto); + qaProduceReport.setStatus(QAProduceReportStatusEnum.EVALUATED.getCode()); + qaProduceReport.setEvaluatePersonId(userId); + qaProduceReport.setEvaluateTime(LocalDateTime.now()); + qaProduceReport.setEvaluateScore(dto.getEvaluateScore()); + qaProduceReportService.updateById(qaProduceReport); + return R.ok(); + } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TSamplingRecordController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TSamplingRecordController.java index b743a66..4990ce4 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TSamplingRecordController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TSamplingRecordController.java @@ -7,10 +7,11 @@ import com.ruoyi.common.basic.PageInfo; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.enums.BusinessType; -import com.ruoyi.common.enums.QaReportTypeEnum; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.framework.web.service.TokenService; -import com.ruoyi.system.dto.*; +import com.ruoyi.system.dto.BatchCollectSamplesDTO; +import com.ruoyi.system.dto.BatchSendSamplesDTO; +import com.ruoyi.system.dto.TSamplingRecordDTO; import com.ruoyi.system.mapper.SysUserMapper; import com.ruoyi.system.model.*; import com.ruoyi.system.query.TSamplingRecordQuery; @@ -20,7 +21,6 @@ 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.text.SimpleDateFormat; @@ -231,7 +231,7 @@ */ //@PreAuthorize("@ss.hasPermi('system:samplingRecord:sendSamples')") @Log(title = "取样记录信息-批量送样", businessType = BusinessType.UPDATE) - @ApiOperation(value = "批量送样") + @ApiOperation(value = "批量送样",response = BatchSendSamplesDTO.class) @PostMapping(value = "/open/t-sampling-record/batchSendSamples") public R<Boolean> batchSendSamples(@RequestBody String param) { BatchSendSamplesDTO batchSendSamplesDTO = JSON.parseObject(param, BatchSendSamplesDTO.class); @@ -251,7 +251,7 @@ */ //@PreAuthorize("@ss.hasPermi('system:samplingRecord:collectSamples')") @Log(title = "取样记录信息-批量收样", businessType = BusinessType.UPDATE) - @ApiOperation(value = "批量收样") + @ApiOperation(value = "批量收样",response = BatchCollectSamplesDTO.class) @PostMapping(value = "/open/t-sampling-record/batchCollectSamples") public R<Boolean> batchCollectSamples(@RequestBody String param) { BatchCollectSamplesDTO batchCollectSamplesDTO = JSON.parseObject(param, BatchCollectSamplesDTO.class); diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/dto/TQaProduceReportEvaluateDTO.java b/ruoyi-system/src/main/java/com/ruoyi/system/dto/TQaProduceReportEvaluateDTO.java new file mode 100644 index 0000000..eb45abe --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/dto/TQaProduceReportEvaluateDTO.java @@ -0,0 +1,18 @@ +package com.ruoyi.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +@ApiModel(value = "中试、生产验证分析报告;辅料;产品报告管理信息评定DTO") +public class TQaProduceReportEvaluateDTO implements Serializable { + + @ApiModelProperty(value = "中试、生产验证分析报告;辅料;产品报告管理信息id") + private String id; + + @ApiModelProperty(value = "评定分数 逗号分隔") + private String evaluateScore; +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/TQaProduceReportMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/TQaProduceReportMapper.java index a41594c..9bb87a3 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/TQaProduceReportMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/TQaProduceReportMapper.java @@ -26,4 +26,11 @@ * @return */ List<TQaProduceReportVO> pageList(@Param("query") TQaProduceReportQuery query, @Param("pageInfo")PageInfo<TQaProduceReportVO> pageInfo); + /** + * 分页查询评定列表 + * @param query + * @param pageInfo + * @return + */ + List<TQaProduceReportVO> evaluateList(@Param("query") TQaProduceReportQuery query, @Param("pageInfo")PageInfo<TQaProduceReportVO> pageInfo); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/model/TQaTestItem.java b/ruoyi-system/src/main/java/com/ruoyi/system/model/TQaTestItem.java index 028f223..a1ecdfb 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/model/TQaTestItem.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/model/TQaTestItem.java @@ -1,6 +1,9 @@ package com.ruoyi.system.model; -import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.common.core.domain.BaseModel; import io.swagger.annotations.ApiModel; @@ -8,7 +11,6 @@ import lombok.Data; import lombok.EqualsAndHashCode; -import java.io.Serializable; import java.time.LocalDateTime; /** @@ -34,6 +36,10 @@ @TableField("team_id") private String teamId; + @ApiModelProperty(value = "提交人") + @TableField("commit_person_id") + private Long commitPersonId; + @ApiModelProperty(value = "检测项名称") @TableField("item_name") private String itemName; diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/model/TSamplingRecordOperation.java b/ruoyi-system/src/main/java/com/ruoyi/system/model/TSamplingRecordOperation.java index 76ddc0f..88df281 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/model/TSamplingRecordOperation.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/model/TSamplingRecordOperation.java @@ -1,6 +1,9 @@ package com.ruoyi.system.model; -import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.common.core.domain.BaseModel; import io.swagger.annotations.ApiModel; @@ -8,7 +11,6 @@ import lombok.Data; import lombok.EqualsAndHashCode; -import java.io.Serializable; import java.time.LocalDateTime; /** @@ -35,9 +37,8 @@ private String samplingId; @ApiModelProperty(value = "工艺时间") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @TableField("process_time") - private LocalDateTime processTime; + private String processTime; @ApiModelProperty(value = "取样名称") @TableField("sampling_name") diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/TQaProduceReportService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/TQaProduceReportService.java index 0a580c8..fba8c4d 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/TQaProduceReportService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/TQaProduceReportService.java @@ -22,4 +22,10 @@ * @return */ PageInfo<TQaProduceReportVO> pageList(TQaProduceReportQuery query); + /** + * 获取中试、生产验证分析报告;辅料;产品报告管理分页列表 + * @param query + * @return + */ + PageInfo<TQaProduceReportVO> evaluateList(TQaProduceReportQuery query); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TQaProduceReportServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TQaProduceReportServiceImpl.java index 7834bc1..7d42e53 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TQaProduceReportServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TQaProduceReportServiceImpl.java @@ -6,7 +6,6 @@ import com.ruoyi.system.model.TQaProduceReport; import com.ruoyi.system.query.TQaProduceReportQuery; import com.ruoyi.system.service.TQaProduceReportService; -import com.ruoyi.system.vo.TExperimentResultReportVO; import com.ruoyi.system.vo.TQaProduceReportVO; import org.springframework.stereotype.Service; @@ -30,4 +29,11 @@ pageInfo.setRecords(list); return pageInfo; } + @Override + public PageInfo<TQaProduceReportVO> evaluateList(TQaProduceReportQuery query) { + PageInfo<TQaProduceReportVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize()); + List<TQaProduceReportVO> list = this.baseMapper.evaluateList(query,pageInfo); + pageInfo.setRecords(list); + return pageInfo; + } } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/vo/TSamplingRecordVO.java b/ruoyi-system/src/main/java/com/ruoyi/system/vo/TSamplingRecordVO.java index b861bdc..ee24934 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/vo/TSamplingRecordVO.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/vo/TSamplingRecordVO.java @@ -12,7 +12,14 @@ @Data @ApiModel(value = "取样记录VO") public class TSamplingRecordVO extends TSamplingRecord { + @ApiModelProperty(value = "项目课题方案") + private String projectName; + @ApiModelProperty(value = "实验编号") + private String experimentCode; + + @ApiModelProperty(value = "实验名称") + private String experimentName; @ApiModelProperty(value = "取样操作记录集合") private List<TSamplingRecordOperation> samplingRecordOperations; @ApiModelProperty(value = "实验调度信息") diff --git a/ruoyi-system/src/main/resources/mapper/system/TQaProduceReportMapper.xml b/ruoyi-system/src/main/resources/mapper/system/TQaProduceReportMapper.xml index 71614f4..fbacc97 100644 --- a/ruoyi-system/src/main/resources/mapper/system/TQaProduceReportMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/TQaProduceReportMapper.xml @@ -60,5 +60,36 @@ </where> ORDER BY tqpr.create_time DESC </select> + <select id="evaluateList" resultType="com.ruoyi.system.vo.TQaProduceReportVO"> + select tqpr.id, tqpr.team_id, tqpr.report_title, tqpr.report_code, tqpr.develop_person, tqpr.develop_date, + tqpr.report_text, tqpr.report_type, tqpr.audit_person_id, tqpr.audit_time, tqpr.audit_remark, tqpr.status, + tqpr.evaluate_person_id, tqpr.evaluate_time, tqpr.evaluate_score, tqpr.create_time, tqpr.update_time, + tqpr.create_by, tqpr.update_by, tqpr.disabled, tpt.team_name as teamName + from t_qa_produce_report tqpr + left join t_project_team tpt on tpt.id = tqpr.team_id + <where> + <if test="query.reportTitle != null and query.reportTitle != ''"> + and tqpr.report_title like concat('%', #{query.reportTitle}, '%') + </if> + <if test="query.reportCode != null and query.reportCode != ''"> + and tqpr.report_code like concat('%', #{query.reportCode}, '%') + </if> + <if test="query.teamName != null and query.teamName != ''"> + and tpt.team_name like concat('%', #{query.teamName}, '%') + </if> + <if test="query.status != null"> + and tqpr.status = #{query.status} + </if> + <if test="query.teamIds != null and query.teamIds.size() > 0"> + and tqpr.team_id in + <foreach collection="query.teamIds" item="teamId" open="(" separator="," close=")"> + #{teamId} + </foreach> + </if> + AND tqpr.status in (2,3) + AND tqpr.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()} + </where> + ORDER BY tqpr.create_time DESC + </select> </mapper> diff --git a/ruoyi-system/src/main/resources/mapper/system/TQaTestItemMapper.xml b/ruoyi-system/src/main/resources/mapper/system/TQaTestItemMapper.xml index 859f822..27b55b5 100644 --- a/ruoyi-system/src/main/resources/mapper/system/TQaTestItemMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/TQaTestItemMapper.xml @@ -6,6 +6,7 @@ <resultMap id="BaseResultMap" type="com.ruoyi.system.model.TQaTestItem"> <id column="id" property="id" /> <result column="team_id" property="teamId" /> + <result column="commit_person_id" property="commitPersonId" /> <result column="item_name" property="itemName" /> <result column="item_code" property="itemCode" /> <result column="remark" property="remark" /> @@ -22,10 +23,10 @@ <!-- 通用查询结果列 --> <sql id="Base_Column_List"> - id, team_id, item_name, item_code, remark, status, evaluate_person_id, evaluate_time, evaluate_score, create_time, update_time, create_by, update_by, disabled + id, team_id,commit_person_id, item_name, item_code, remark, status, evaluate_person_id, evaluate_time, evaluate_score, create_time, update_time, create_by, update_by, disabled </sql> <select id="pageList" resultType="com.ruoyi.system.vo.TQaTestItemVO"> - select tqti.id, tqti.team_id, tqti.item_name, tqti.item_code, tqti.remark, tqti.status, tqti.evaluate_person_id, + select tqti.id, tqti.team_id,tqti.commit_person_id, tqti.item_name, tqti.item_code, tqti.remark, tqti.status, tqti.evaluate_person_id, tqti.evaluate_time, tqti.evaluate_score, tqti.create_time, tqti.update_time, tqti.create_by, tqti.update_by, tqti.disabled, tpt.team_name as teamName from t_qa_test_item tqti @@ -55,7 +56,7 @@ </select> <select id="evaluateList" resultType="com.ruoyi.system.vo.TQaTestItemVO"> - select tqti.id, tqti.team_id, tqti.item_name, tqti.item_code, tqti.remark, tqti.status, tqti.evaluate_person_id, + select tqti.id, tqti.team_id,tqti.commit_person_id, tqti.item_name, tqti.item_code, tqti.remark, tqti.status, tqti.evaluate_person_id, tqti.evaluate_time, tqti.evaluate_score, tqti.create_time, tqti.update_time, tqti.create_by, tqti.update_by, tqti.disabled, tpt.team_name as teamName from t_qa_test_item tqti -- Gitblit v1.7.1